All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:52,1
    - Dst: size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:52,1
    - Dst: size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:55,1
    - Dst: yearFraction
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:57,1
    - Dst: discount
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:58,1
    - Dst: discount
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:60,1
    - Dst: front
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:60,1
    - Dst: discount
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:60,1
    - Dst: back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' yts'
    - ' dates'
    - ' resultDayCounter'
    argTypes:
    - YieldTermStructure
    - std::vector<Date>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 62
    functionName: parRate
    functionSourceFile: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - yearFraction
    - discount
    - size
    - back
    - front
    linkageType: ''
    returnType: Rate
    signature: "Rate parRate(const YieldTermStructure& yts,\n             const std::vector<Date>&
      dates,\n             const DayCounter& resultDayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:68,1
    - Dst: fitResults
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' tag'
    - ' curve'
    argTypes:
    - std::string
    - ext::shared_ptr<FittedBondDiscountCurve>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 74
    functionName: printOutput
    functionSourceFile: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - fitResults
    linkageType: ''
    returnType: void
    signature: "void printOutput(const std::string& tag,\n                 const ext::shared_ptr<FittedBondDiscountCurve>&
      curve)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:90,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:90,1
    - Dst: linkTo
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:95,1
    - Dst: SimpleDayCounter
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:105,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:110,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:111,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:111,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:113,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:120,1
    - Dst: std::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:130,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:132,1
    - Dst: ext::make_shared<FixedRateBondHelper>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:138,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:142,1
    - Dst: ext::make_shared<FixedRateBondHelper>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:147,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:151,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:155,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:156,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:164,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:171,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:179,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:184,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:192,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:197,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:205,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:216,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:221,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:229,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:233,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:241,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:244,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:250,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:258,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:263,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:271,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:279,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:280,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:281,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:282,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:283,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:284,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:285,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:286,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:287,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:288,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:290,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:293,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:295,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:297,1
    - Dst: hasOccurred
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:300,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:301,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:302,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:306,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:306,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:308,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:308,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:309,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:309,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:312,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:312,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:313,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:315,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:315,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:316,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:318,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:318,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:319,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:321,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:321,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:322,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:324,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:324,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:325,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:327,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:327,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:328,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:330,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:330,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:331,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:333,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:333,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:334,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:347,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:348,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:349,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:351,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:353,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:355,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:357,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:359,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:361,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:363,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:369,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:370,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:371,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:372,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:373,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:374,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:375,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:376,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:377,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:378,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:380,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:383,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:385,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:387,1
    - Dst: hasOccurred
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:390,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:391,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:392,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:396,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:396,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:398,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:398,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:399,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:399,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:402,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:402,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:403,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:405,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:405,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:406,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:408,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:408,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:409,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:411,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:411,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:412,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:414,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:414,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:415,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:417,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:417,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:418,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:420,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:420,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:421,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:423,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:423,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:424,1
    - Dst: std::vector::erase
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:435,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:435,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:436,1
    - Dst: std::vector::erase
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:437,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:437,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:438,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:440,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:441,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:442,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:444,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:449,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:457,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:460,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:468,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:471,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:479,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:482,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:490,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:492,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:500,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:502,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:510,1
    - Dst: ext::make_shared<FittedBondDiscountCurve>
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:512,1
    - Dst: printOutput
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:520,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:522,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:523,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:524,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:525,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:526,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:527,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:528,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:529,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:530,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:531,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:533,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:536,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:538,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:540,1
    - Dst: hasOccurred
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:543,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:544,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:545,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:549,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:549,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:551,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:551,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:552,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:552,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:555,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:555,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:556,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:558,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:558,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:559,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:561,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:561,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:562,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:564,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:564,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:565,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:567,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:567,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:568,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:570,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:570,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:571,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:573,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:573,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:574,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:576,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:576,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:577,1
    - Dst: std::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:589,1
    - Dst: quote
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:591,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:592,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:593,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:596,1
    - Dst: setValue
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:604,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:608,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:609,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:610,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:611,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:612,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:613,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:614,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:615,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:616,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:617,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:619,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:622,1
    - Dst: bond
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:624,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:626,1
    - Dst: hasOccurred
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:629,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:630,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:631,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:635,1
    - Dst: date
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:635,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:637,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:637,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:638,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:638,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:641,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:641,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:642,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:644,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:644,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:645,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:647,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:647,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:648,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:650,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:650,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:651,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:653,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:653,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:654,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:656,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:656,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:657,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:659,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:659,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:660,1
    - Dst: setw
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:662,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:662,1
    - Dst: parRate
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:663,1
    - Dst: what
      Src: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp:669,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 108
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 676
    functionName: main
    functionSourceFile: /src/quantlib/Examples/FittedBondCurve/FittedBondCurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - Calendar::adjust
    - bond
    - QuantLib::BondFunctions::duration
    - ext::make_shared<FixedRateBondHelper>
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - setprecision
    - std::vector::push_back
    - setw
    - date
    - quote
    - ext::make_shared<FittedBondDiscountCurve>
    - QuantLib::Date::todaysDate
    - TARGET
    - std::vector::erase
    - DayCounter::yearFraction
    - setValue
    - Calendar::advance
    - SimpleDayCounter
    - std::size
    - linkTo
    - std::vector::size
    - std::vector<Rate>
    - parRate
    - printOutput
    - std::vector::begin
    - ext::make_shared<FlatForward>
    - QuantLib::detail::instance
    - what
    - hasOccurred
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: ackley
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::cos
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ackley(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:60,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:63,1
    - Dst: std::cos
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:65,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 68
    functionName: ackleyValues
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::cos
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array ackleyValues(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DotProduct
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: sphere
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - DotProduct
    linkageType: ''
    returnType: Real
    signature: Real sphere(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:76,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 81
    functionName: sphereValues
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Array
    signature: Array sphereValues(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:85,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:85,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: rosenbrock
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real rosenbrock(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:98,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: easom
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real easom(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:105,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:106,1
    - Dst: std::cos
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 112
    functionName: easomValues
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::cos
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array easomValues(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:116,1
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:116,1
    - Dst: std::sin
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:118,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:118,1
    - Dst: std::abs
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:118,1
    - Dst: std::sin
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:119,1
    - Dst: std::abs
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 120
    functionName: eggholder
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::sqrt
    - size
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real eggholder(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:124,1
    - Dst: value
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' p'
    - ' x'
    argTypes:
    - Problem
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 130
    functionName: printFunction
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - size
    - value
    linkageType: ''
    returnType: Real
    signature: Real printFunction(Problem& p, const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ArrayFunc
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:136,1
    - Dst: std::move
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - f
    argTypes:
    - RealFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: TestFunction::TestFunction
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - ArrayFunc
    linkageType: ''
    returnType: void
    signature: void TestFunction(RealFunc f, ArrayFunc fs = ArrayFunc())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 139
    functionName: TestFunction::TestFunction
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestFunction(Real (*f)(const Array&), Array (*fs)(const Array&)
      = nullptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: ~TestFunction() override
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TestFunction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: TestFunction::value
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - f_
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:144,1
    - Dst: fs_
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: TestFunction::values
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    - fs_
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:154,1
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:156,1
    - Dst: empty
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:156,1
    - Dst: empty
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:159,1
    - Dst: printFunction
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:162,1
    - Dst: minimize
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:163,1
    - Dst: printFunction
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:165,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:165,1
    - Dst: empty
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:166,1
    - Dst: printFunction
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:169,1
    - Dst: std::abs
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:170,1
    - Dst: static_cast<int>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:171,1
    - Dst: std::abs
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:171,1
    - Dst: static_cast<int>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:173,1
    - Dst: std::abs
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - ' method'
    - ' f'
    - ' endCriteria'
    - ' start'
    argTypes:
    - OptimizationMethod
    - CostFunction
    - EndCriteria
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 176
    functionName: test
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - empty
    - Constraint
    - Array
    - printFunction
    - minimize
    - Problem::currentValue
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: int
    signature: "int test(OptimizationMethod& method, CostFunction& f, const EndCriteria&
      endCriteria,\n          const Array& start, const Constraint& constraint = Constraint(),\n
      \         const Array& optimum = Array())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:184,1
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:184,1
    - Dst: ext::make_shared<ExponentialIntensity>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:192,1
    - Dst: ext::make_shared<LevyFlightWalk>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:193,1
    - Dst: test
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 201
    functionName: testFirefly
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - Array
    - test
    - ext::make_shared<ExponentialIntensity>
    - ext::make_shared<LevyFlightWalk>
    linkageType: ''
    returnType: void
    signature: void testFirefly()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - dimension
    - maxSteps
    - staticSteps
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 241
    functionName: testSimulatedAnnealing
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - test
    linkageType: ''
    returnType: void
    signature: void testSimulatedAnnealing(Size dimension, Size maxSteps, Size staticSteps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<LevenbergMarquardt>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:254,1
    - Dst: ReannealingTrivial
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:283,1
    - Dst: test
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - dimension
    - maxSteps
    - staticSteps
    - initialTemp
    - finalTemp
    argTypes:
    - Size
    - Size
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 291
    functionName: testGaussianSA
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - ReannealingTrivial
    - test
    - ext::make_shared<LevenbergMarquardt>
    linkageType: ''
    returnType: void
    signature: "void testGaussianSA(Size dimension,\n                    Size maxSteps,\n
      \                   Size staticSteps,\n                    Real initialTemp,\n
      \                   Real finalTemp,\n                    GaussianSimulatedAnnealing::ResetScheme
      resetScheme =\n                        GaussianSimulatedAnnealing::ResetToBestPoint,\n
      \                   Size resetSteps = 150,\n                    GaussianSimulatedAnnealing::LocalOptimizeScheme
      optimizeScheme =\n                        GaussianSimulatedAnnealing::EveryBestPoint,\n
      \                   const ext::shared_ptr<OptimizationMethod>& localOptimizer
      =\n                        ext::make_shared<LevenbergMarquardt>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:296,1
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:296,1
    - Dst: ext::make_shared<KNeighbors>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:305,1
    - Dst: ext::make_shared<LevyFlightInertia>
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:306,1
    - Dst: test
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 293
    functionDepth: 2
    functionLinenumber: 293
    functionLinenumberEnd: 312
    functionName: testPSO
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - Array
    - ext::make_shared<KNeighbors>
    - test
    - ext::make_shared<LevyFlightInertia>
    linkageType: ''
    returnType: void
    signature: void testPSO(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:317,1
    - Dst: Array
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:317,1
    - Dst: DifferentialEvolution::Configuration::withBounds
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:332,1
    - Dst: test
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - n
    - agents
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 314
    functionDepth: 2
    functionLinenumber: 314
    functionLinenumberEnd: 343
    functionName: testDifferentialEvolution
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - Array
    - test
    - DifferentialEvolution::Configuration::withBounds
    linkageType: ''
    returnType: void
    signature: void testDifferentialEvolution(Size n, Size agents)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testFirefly
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:354,1
    - Dst: testGaussianSA
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:360,1
    - Dst: testGaussianSA
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:361,1
    - Dst: testGaussianSA
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:362,1
    - Dst: testPSO
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:368,1
    - Dst: testPSO
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:369,1
    - Dst: testPSO
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:370,1
    - Dst: testSimulatedAnnealing
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:376,1
    - Dst: testSimulatedAnnealing
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:377,1
    - Dst: testSimulatedAnnealing
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:378,1
    - Dst: testDifferentialEvolution
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:384,1
    - Dst: testDifferentialEvolution
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:385,1
    - Dst: testDifferentialEvolution
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:386,1
    - Dst: what
      Src: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp:390,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 396
    functionName: main
    functionSourceFile: /src/quantlib/Examples/GlobalOptimizer/GlobalOptimizer.cpp
    functionUses: 0
    functionsReached:
    - testDifferentialEvolution
    - testGaussianSA
    - testFirefly
    - what
    - testSimulatedAnnealing
    - testPSO
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:54,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:62,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:64,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:65,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:78,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:79,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:80,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Replication/Replication.cpp:85,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:89,1
    - Dst: NullCalendar
      Src: /src/quantlib/Examples/Replication/Replication.cpp:89,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:91,1
    - Dst: NullCalendar
      Src: /src/quantlib/Examples/Replication/Replication.cpp:91,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:94,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:95,1
    - Dst: ext::make_shared<BlackScholesProcess>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:97,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:98,1
    - Dst: ext::make_shared<AnalyticBarrierEngine>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:100,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:101,1
    - Dst: BarrierOption::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:105,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:107,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:109,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:112,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:113,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:121,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:122,1
    - Dst: CompositeInstrument::add
      Src: /src/quantlib/Examples/Replication/Replication.cpp:123,1
    - Dst: add
      Src: /src/quantlib/Examples/Replication/Replication.cpp:124,1
    - Dst: add
      Src: /src/quantlib/Examples/Replication/Replication.cpp:125,1
    - Dst: ext::make_shared<CashOrNothingPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:127,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:128,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:129,1
    - Dst: CompositeInstrument::subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:130,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:131,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:132,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:134,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:135,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:136,1
    - Dst: CompositeInstrument::subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:137,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:138,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:139,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:148,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:149,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:150,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:151,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:155,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:156,1
    - Dst: CompositeInstrument::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:157,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:158,1
    - Dst: CompositeInstrument::subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:164,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:167,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:168,1
    - Dst: CompositeInstrument::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:170,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:172,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:175,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:176,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:184,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:185,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:186,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:187,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:189,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:190,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:191,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:192,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:194,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:196,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:197,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:198,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:200,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:203,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:204,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:212,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:213,1
    - Dst: ext::make_shared<EuropeanOption>
      Src: /src/quantlib/Examples/Replication/Replication.cpp:214,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Replication/Replication.cpp:215,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:217,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:218,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:219,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:220,1
    - Dst: subtract
      Src: /src/quantlib/Examples/Replication/Replication.cpp:222,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Replication/Replication.cpp:224,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:225,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:226,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:228,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:231,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:232,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:242,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:243,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:244,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:248,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:250,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:251,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:254,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:255,1
    - Dst: CompositeInstrument::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:257,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:259,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:262,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:263,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:265,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:267,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:270,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:271,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:273,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:275,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:278,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:279,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:287,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:288,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:289,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/Replication/Replication.cpp:293,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:295,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:296,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:299,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:300,1
    - Dst: CompositeInstrument::NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:302,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:304,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:307,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:308,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:310,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:312,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:315,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:316,1
    - Dst: NPV
      Src: /src/quantlib/Examples/Replication/Replication.cpp:318,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:320,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:323,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Replication/Replication.cpp:324,1
    - Dst: what
      Src: /src/quantlib/Examples/Replication/Replication.cpp:339,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 99
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 345
    functionName: main
    functionSourceFile: /src/quantlib/Examples/Replication/Replication.cpp
    functionUses: 0
    functionsReached:
    - BarrierOption::setPricingEngine
    - CompositeInstrument::subtract
    - Actual365Fixed
    - ext::make_shared<AnalyticBarrierEngine>
    - NPV
    - CompositeInstrument::add
    - ext::make_shared<EuropeanExercise>
    - ext::make_shared<PlainVanillaPayoff>
    - BarrierOption::NPV
    - std::setw
    - ext::make_shared<EuropeanOption>
    - ext::make_shared<AnalyticEuropeanEngine>
    - auto::setPricingEngine
    - add
    - Handle<Quote>
    - ext::make_shared<CashOrNothingPayoff>
    - auto::setValue
    - CompositeInstrument::NPV
    - NullCalendar
    - auto::NPV
    - subtract
    - ext::make_shared<FlatForward>
    - ext::make_shared<BlackConstantVol>
    - QuantLib::detail::instance
    - ext::make_shared<BlackScholesProcess>
    - what
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:55,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:55,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:56,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:56,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:57,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:57,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:58,1
    - Dst: ext::dynamic_pointer_cast<SwaptionHelper>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:66,1
    - Dst: auto::underlying
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:67,1
    - Dst: auto::underlying
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:68,1
    - Dst: auto::volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:69,1
    - Dst: auto::underlying
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:70,1
    - Dst: auto::swaption
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:71,1
    - Dst: auto::swaption
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:72,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:76,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:76,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:76,1
    - Dst: str
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:77,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:77,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:78,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:78,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - basket
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 82
    functionName: printBasket
    functionSourceFile: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp
    functionUses: 0
    functionsReached:
    - std::setprecision
    - std::setw
    - auto::underlying
    - std::ostringstream::str
    - auto::volatility
    - ext::dynamic_pointer_cast<SwaptionHelper>
    - str
    - auto::swaption
    linkageType: ''
    returnType: void
    signature: "void printBasket(\n    const std::vector<ext::shared_ptr<BlackCalibrationHelper>>
      &basket)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:90,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:90,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:91,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:92,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:92,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:93,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:94,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper>>::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:101,1
    - Dst: ext::dynamic_pointer_cast<SwaptionHelper>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:102,1
    - Dst: auto::swaption
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:103,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:106,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:106,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:106,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:107,1
    - Dst: modelValue
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:107,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:108,1
    - Dst: marketValue
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:108,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:108,1
    - Dst: impliedVolatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:109,1
    - Dst: modelValue
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:109,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:111,1
    - Dst: volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:114,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper>>::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:114,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:115,1
    - Dst: Array::back
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - basket
    - volatility
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 116
    functionName: printModelCalibration
    functionSourceFile: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - std::setprecision
    - std::setw
    - std::vector<ext::shared_ptr<BlackCalibrationHelper>>::size
    - impliedVolatility
    - std::ostringstream::str
    - marketValue
    - volatility
    - Array::size
    - modelValue
    - ext::dynamic_pointer_cast<SwaptionHelper>
    - auto::swaption
    linkageType: ''
    returnType: void
    signature: "void printModelCalibration(\n    const std::vector<ext::shared_ptr<BlackCalibrationHelper>>
      &basket,\n    const Array &volatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:132,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:135,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:140,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:141,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:143,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:144,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:144,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:145,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:146,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:146,1
    - Dst: ext::make_shared<Euribor>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:148,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:158,1
    - Dst: ext::make_shared<ConstantSwaptionVolatility>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:160,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:161,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:161,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:172,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:173,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:175,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:179,1
    - Dst: ext::make_shared<NonstandardSwap>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:183,1
    - Dst: VanillaSwap
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:183,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:184,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:185,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:189,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:190,1
    - Dst: ext::make_shared<BermudanExercise>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:192,1
    - Dst: ext::make_shared<NonstandardSwaption>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:193,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:199,1
    - Dst: std::vector::end
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:200,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:201,1
    - Dst: ext::make_shared<Gsr>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:215,1
    - Dst: ext::make_shared<Gaussian1dSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:218,1
    - Dst: ext::make_shared<Gaussian1dNonstandardSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:221,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:222,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:224,1
    - Dst: ext::make_shared<EuriborSwapIsdaFixA>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:236,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:240,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:242,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:254,1
    - Dst: auto::calibrateVolatilitiesIterative
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:261,1
    - Dst: printModelCalibration
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:264,1
    - Dst: auto::volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:264,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:271,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:275,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:288,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:293,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:306,1
    - Dst: auto::calibrateVolatilitiesIterative
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:309,1
    - Dst: printModelCalibration
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:312,1
    - Dst: auto::volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:312,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:318,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:322,1
    - Dst: Schedule::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:333,1
    - Dst: Schedule::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:334,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:335,1
    - Dst: push_back
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:336,1
    - Dst: push_back
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:337,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:340,1
    - Dst: ext::make_shared<NonstandardSwap>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:342,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:344,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:345,1
    - Dst: ext::make_shared<NonstandardSwaption>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:346,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:348,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:351,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:356,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:373,1
    - Dst: size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:374,1
    - Dst: ext::make_shared<NonstandardSwap>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:377,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:379,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:380,1
    - Dst: ext::make_shared<RebatedExercise>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:383,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:383,1
    - Dst: ext::make_shared<NonstandardSwaption>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:385,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:387,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:388,1
    - Dst: ext::make_shared<Gaussian1dNonstandardSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:392,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:395,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:399,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:404,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:417,1
    - Dst: auto::calibrateVolatilitiesIterative
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:420,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:421,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:425,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:434,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:437,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:441,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:452,1
    - Dst: auto::calibrateVolatilitiesIterative
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:455,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:456,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:460,1
    - Dst: ext::make_shared<FloatFloatSwap>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:468,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:470,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:470,1
    - Dst: Null<Real>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:471,1
    - Dst: Null<Real>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:471,1
    - Dst: ext::make_shared<FloatFloatSwaption>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:473,1
    - Dst: ext::make_shared<Gaussian1dFloatFloatSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:475,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:476,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:478,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:485,1
    - Dst: auto::leg
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:487,1
    - Dst: auto::leg
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:488,1
    - Dst: ext::make_shared<LinearTsrPricer>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:489,1
    - Dst: ext::make_shared<BlackIborCouponPricer>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:490,1
    - Dst: setCouponPricer
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:492,1
    - Dst: setCouponPricer
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:493,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:495,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:497,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:500,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:503,1
    - Dst: auto::legNPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:505,1
    - Dst: auto::legNPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:507,1
    - Dst: auto::calibrationBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:516,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:519,1
    - Dst: auto::calibrateVolatilitiesIterative
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:520,1
    - Dst: printBasket
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:523,1
    - Dst: printModelCalibration
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:524,1
    - Dst: auto::volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:524,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:530,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:533,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:540,1
    - Dst: auto::result
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:541,1
    - Dst: std::vector::begin
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:555,1
    - Dst: std::vector::end
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:556,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:558,1
    - Dst: size
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:559,1
    - Dst: ext::make_shared<MarkovFunctional>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:560,1
    - Dst: QuantLib::MarkovFunctional::ModelSettings
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:563,1
    - Dst: ext::make_shared<Gaussian1dSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:566,1
    - Dst: ext::make_shared<Gaussian1dFloatFloatSwaptionEngine>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:569,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:570,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:573,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:576,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:581,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:592,1
    - Dst: auto::result
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:593,1
    - Dst: Size::setPricingEngine
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:613,1
    - Dst: auto::calibrate
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:616,1
    - Dst: printModelCalibration
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:619,1
    - Dst: auto::volatility
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:619,1
    - Dst: auto::result
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:627,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:629,1
    - Dst: what
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:650,1
    - Dst: what
      Src: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp:654,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 108
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 658
    functionName: main
    functionSourceFile: /src/quantlib/Examples/Gaussian1dModels/Gaussian1dModels.cpp
    functionUses: 0
    functionsReached:
    - auto::leg
    - printModelCalibration
    - ext::make_shared<FloatFloatSwaption>
    - makeQuoteHandle
    - auto::calibrateVolatilitiesIterative
    - ext::make_shared<MarkovFunctional>
    - Actual360
    - Actual365Fixed
    - ext::make_shared<Gaussian1dSwaptionEngine>
    - ext::make_shared<NonstandardSwaption>
    - ext::make_shared<FloatFloatSwap>
    - std::vector::push_back
    - printBasket
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<Gaussian1dNonstandardSwaptionEngine>
    - auto::result
    - Schedule::size
    - ext::make_shared<NonstandardSwap>
    - setCouponPricer
    - ext::make_shared<BlackIborCouponPricer>
    - auto::setPricingEngine
    - size
    - Handle<Quote>
    - Size::setPricingEngine
    - auto::legNPV
    - TARGET
    - ext::make_shared<RebatedExercise>
    - auto::calibrate
    - ext::make_shared<Euribor>
    - std::setprecision
    - ext::make_shared<Gaussian1dFloatFloatSwaptionEngine>
    - Null<Real>
    - ext::make_shared<EuriborSwapIsdaFixA>
    - push_back
    - ext::make_shared<ConstantSwaptionVolatility>
    - std::vector::size
    - VanillaSwap
    - auto::calibrationBasket
    - ext::make_shared<BermudanExercise>
    - auto::NPV
    - ext::make_shared<LinearTsrPricer>
    - std::vector::begin
    - std::vector::end
    - QuantLib::MarkovFunctional::ModelSettings
    - ext::make_shared<FlatForward>
    - QuantLib::detail::instance
    - auto::volatility
    - what
    - RelinkableHandle::linkTo
    - Thirty360
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<Gsr>
    linkageType: ''
    returnType: int
    signature: int main(int, char *[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:68,1
    - Dst: end
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:68,1
    - Dst: calibrate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:70,1
    - Dst: EndCriteria
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:71,1
    - Dst: modelValue
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:77,1
    - Dst: impliedVolatility
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:78,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:83,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:84,1
    - Dst: QuantLib::io::volatility
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:84,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:85,1
    - Dst: QuantLib::io::volatility
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:86,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:87,1
    - Dst: QuantLib::io::volatility
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' model'
    - ' swaptions'
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 90
    functionName: calibrateModel
    functionSourceFile: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp
    functionUses: 0
    functionsReached:
    - std::setprecision
    - QuantLib::io::volatility
    - std::setw
    - begin
    - impliedVolatility
    - calibrate
    - modelValue
    - EndCriteria
    - end
    linkageType: ''
    returnType: void
    signature: "void calibrateModel(\n          const ext::shared_ptr<ShortRateModel>&
      model,\n          const std::vector<ext::shared_ptr<BlackCalibrationHelper>>&
      swaptions)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:99,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:101,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:104,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:114,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:118,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:120,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:122,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:131,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:135,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:136,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:136,1
    - Dst: auto::fairRate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:137,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:141,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:145,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:146,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:150,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:151,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:155,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:159,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:160,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:161,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:162,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:163,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:174,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:176,1
    - Dst: ext::make_shared<SwaptionHelper>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:176,1
    - Dst: Period
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:178,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:179,1
    - Dst: auto::tenor
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:181,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:182,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:183,1
    - Dst: std::vector::back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:186,1
    - Dst: std::list::begin
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:190,1
    - Dst: std::list::end
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:190,1
    - Dst: ext::make_shared<G2>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:194,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:195,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:196,1
    - Dst: ext::make_shared<BlackKarasinski>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:197,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:203,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:204,1
    - Dst: ext::make_shared<G2SwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:204,1
    - Dst: calibrateModel
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:206,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:208,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:209,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:210,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:211,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:212,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:218,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:219,1
    - Dst: ext::make_shared<JamshidianSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:219,1
    - Dst: calibrateModel
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:221,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:223,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:224,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:228,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:229,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:229,1
    - Dst: calibrateModel
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:231,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:233,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:234,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:238,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:239,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:239,1
    - Dst: calibrateModel
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:241,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:243,1
    - Dst: auto::params
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:244,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:251,1
    - Dst: auto::fixedLeg
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:256,1
    - Dst: size
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:257,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:258,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:259,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:259,1
    - Dst: ext::make_shared<BermudanExercise>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:262,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:269,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:269,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:270,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:271,1
    - Dst: ext::make_shared<FdG2SwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:271,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:272,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:274,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:274,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:275,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:276,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:276,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:277,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:279,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:279,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:280,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:281,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:281,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:282,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:284,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:284,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:285,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:291,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:297,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:297,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:298,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:300,1
    - Dst: ext::make_shared<FdG2SwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:300,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:301,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:304,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:304,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:305,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:307,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:307,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:308,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:311,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:311,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:312,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:314,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:314,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:315,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:318,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:318,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:319,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:326,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:332,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:332,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:333,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:335,1
    - Dst: ext::make_shared<FdG2SwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:335,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:336,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:339,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:339,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:340,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:342,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:342,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:343,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:346,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:346,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:347,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:349,1
    - Dst: ext::make_shared<FdHullWhiteSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:349,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:350,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:353,1
    - Dst: ext::make_shared<TreeSwaptionEngine>
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:353,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:354,1
    - Dst: what
      Src: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp:359,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 90
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 365
    functionName: main
    functionSourceFile: /src/quantlib/Examples/BermudanSwaption/BermudanSwaption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<HullWhite>
    - ext::make_shared<VanillaSwap>
    - std::list::begin
    - std::list::end
    - auto::tenor
    - ext::make_shared<FdG2SwaptionEngine>
    - auto::fairRate
    - ext::dynamic_pointer_cast<Coupon>
    - std::vector::emplace_back
    - std::vector::push_back
    - ext::make_shared<DiscountingSwapEngine>
    - calibrateModel
    - ext::make_shared<FdHullWhiteSwaptionEngine>
    - ext::make_shared<Euribor6M>
    - auto::setPricingEngine
    - Swaption::setPricingEngine
    - size
    - Handle<Quote>
    - auto::dayCounter
    - TARGET
    - Swaption::NPV
    - ext::make_shared<JamshidianSwaptionEngine>
    - Calendar::advance
    - QuantLib::io::rate
    - ext::make_shared<BlackKarasinski>
    - Period
    - ext::make_shared<TreeSwaptionEngine>
    - std::vector::size
    - auto::fixedLeg
    - ext::make_shared<BermudanExercise>
    - ext::make_shared<G2SwaptionEngine>
    - ext::make_shared<G2>
    - QuantLib::detail::instance
    - auto::accrualStartDate
    - what
    - ext::make_shared<SwaptionHelper>
    - setPricingEngine
    - auto::params
    - Thirty360
    - std::vector::back
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Euribor3M>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:50,1
    - Dst: Date
      Src: /src/quantlib/Examples/FRA/FRA.cpp:52,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/FRA/FRA.cpp:53,1
    - Dst: auto::fixingCalendar
      Src: /src/quantlib/Examples/FRA/FRA.cpp:55,1
    - Dst: auto::fixingDays
      Src: /src/quantlib/Examples/FRA/FRA.cpp:56,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FRA/FRA.cpp:57,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/FRA/FRA.cpp:59,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/FRA/FRA.cpp:62,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:85,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:86,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:87,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:88,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:89,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:91,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:92,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:93,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:94,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:95,1
    - Dst: auto::dayCounter
      Src: /src/quantlib/Examples/FRA/FRA.cpp:106,1
    - Dst: auto::businessDayConvention
      Src: /src/quantlib/Examples/FRA/FRA.cpp:107,1
    - Dst: auto::endOfMonth
      Src: /src/quantlib/Examples/FRA/FRA.cpp:108,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:110,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:114,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:118,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:122,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:126,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/FRA/FRA.cpp:138,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FRA/FRA.cpp:143,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FRA/FRA.cpp:144,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FRA/FRA.cpp:145,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FRA/FRA.cpp:146,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/FRA/FRA.cpp:147,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/FRA/FRA.cpp:149,1
    - Dst: auto::fixingCalendar
      Src: /src/quantlib/Examples/FRA/FRA.cpp:157,1
    - Dst: auto::businessDayConvention
      Src: /src/quantlib/Examples/FRA/FRA.cpp:159,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/FRA/FRA.cpp:164,1
    - Dst: std::size
      Src: /src/quantlib/Examples/FRA/FRA.cpp:172,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FRA/FRA.cpp:174,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:188,1
    - Dst: ForwardRateAgreement::forwardRate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:191,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:194,1
    - Dst: ForwardRateAgreement::amount
      Src: /src/quantlib/Examples/FRA/FRA.cpp:197,1
    - Dst: ForwardRateAgreement::NPV
      Src: /src/quantlib/Examples/FRA/FRA.cpp:200,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/FRA/FRA.cpp:223,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/FRA/FRA.cpp:224,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/FRA/FRA.cpp:225,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/FRA/FRA.cpp:226,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/FRA/FRA.cpp:227,1
    - Dst: std::size
      Src: /src/quantlib/Examples/FRA/FRA.cpp:230,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/FRA/FRA.cpp:232,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:247,1
    - Dst: ForwardRateAgreement::forwardRate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:250,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/FRA/FRA.cpp:253,1
    - Dst: ForwardRateAgreement::amount
      Src: /src/quantlib/Examples/FRA/FRA.cpp:256,1
    - Dst: ForwardRateAgreement::NPV
      Src: /src/quantlib/Examples/FRA/FRA.cpp:259,1
    - Dst: what
      Src: /src/quantlib/Examples/FRA/FRA.cpp:267,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 60
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 273
    functionName: main
    functionSourceFile: /src/quantlib/Examples/FRA/FRA.cpp
    functionUses: 0
    functionsReached:
    - ForwardRateAgreement::NPV
    - Date
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - ForwardRateAgreement::forwardRate
    - Date::weekday
    - std::vector::push_back
    - ActualActual
    - auto::endOfMonth
    - auto::setValue
    - auto::fixingCalendar
    - auto::dayCounter
    - ext::make_shared<Euribor3M>
    - Calendar::advance
    - QuantLib::io::rate
    - auto::businessDayConvention
    - std::size
    - ext::make_shared<FraRateHelper>
    - ForwardRateAgreement::amount
    - auto::fixingDays
    - QuantLib::detail::instance
    - what
    - RelinkableHandle::linkTo
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:40,1
    - Dst: std::cos
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' arg'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: operator()(const std::vector<Real>& arg) const
    functionSourceFile: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(const std::vector<Real>& arg) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:61,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:61,1
    - Dst: integrand
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:63,1
    - Dst: intg
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:68,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:72,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:74,1
    - Dst: ext::make_shared<TrapezoidIntegral<Default>>
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:75,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:76,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:77,1
    - Dst: testIntg
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:80,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:82,1
    - Dst: what
      Src: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 100
    functionName: main
    functionSourceFile: /src/quantlib/Examples/MultidimIntegral/MultidimIntegral.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - ext::make_shared<TrapezoidIntegral<Default>>
    - std::vector::reserve
    - static_cast<Real>
    - testIntg
    - integrand
    - std::pow
    - what
    - intg
    - std::sqrt
    - setprecision
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:76,1
    - Dst: initialRates
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:83,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:91,1
    - Dst: OrthogonalizedBumpFinder::GetVegaBumps
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - factorwiseBumping
    - ' marketModel'
    - doCaps
    argTypes:
    - bool
    - ext::shared_ptr<MarketModel>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 123
    functionName: theVegaBumps
    functionSourceFile: /src/quantlib/Examples/MarketModels/MarketModels.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - OrthogonalizedBumpFinder::GetVegaBumps
    - initialRates
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<std::vector<Matrix>>
    signature: std::vector<std::vector<Matrix>> theVegaBumps(bool factorwiseBumping,
      const ext::shared_ptr<MarketModel>& marketModel, bool doCaps)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:136,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:141,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:161,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:164,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:184,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:185,1
    - Dst: CallSpecifiedMultiProduct::evolution
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:187,1
    - Dst: std::min<Size>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:220,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:243,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:257,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:259,1
    - Dst: collectNodeData
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:262,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:270,1
    - Dst: genericLongstaffSchwartzRegression
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:274,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:286,1
    - Dst: MultiStepNothing
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:287,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:292,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:294,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:298,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:299,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:300,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:301,1
    - Dst: MultiProductComposite::finalize
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:302,1
    - Dst: AccountingEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:310,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:312,1
    - Dst: SequenceStatisticsInc::mean
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:314,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:319,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:320,1
    - Dst: MarketModelPathwiseSwap::clone
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:347,1
    - Dst: CallSpecifiedPathwiseMultiProduct::clone
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:353,1
    - Dst: PathwiseVegasOuterAccountingEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:369,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:387,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:400,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:400,1
    - Dst: isInSubset
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:407,1
    - Dst: evolutionTimes
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:407,1
    - Dst: LongstaffSchwartzExerciseStrategy::exerciseTimes
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:407,1
    - Dst: std::valarray::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:409,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:414,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:414,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:419,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:438,1
    - Dst: UpperBoundEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:440,1
    - Dst: Statistics::mean
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:441,1
    - Dst: Statistics::errorEstimate
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:442,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:444,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:447,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 450
    functionName: Bermudan
    functionSourceFile: /src/quantlib/Examples/MarketModels/MarketModels.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - MultiStepNothing
    - static_cast<Real>
    - std::vector::pop_back
    - std::valarray::size
    - ext::make_shared<LogNormalFwdRatePc>
    - std::vector::push_back
    - genericLongstaffSchwartzRegression
    - ext::make_shared<FlatVol>
    - MultiProductComposite::add
    - CallSpecifiedMultiProduct::evolution
    - PathwiseVegasOuterAccountingEngine::multiplePathValues
    - AccountingEngine::multiplePathValues
    - LongstaffSchwartzExerciseStrategy::exerciseTimes
    - Statistics::errorEstimate
    - ExerciseAdapter
    - UpperBoundEngine::multiplePathValues
    - std::vector::size
    - CallSpecifiedPathwiseMultiProduct::clone
    - MultiProductComposite::finalize
    - std::min<Size>
    - CallSpecifiedMultiProduct
    - collectNodeData
    - clock
    - Statistics::mean
    - evolutionTimes
    - MarketModelPathwiseSwap::clone
    - SequenceStatisticsInc::mean
    linkageType: ''
    returnType: int
    signature: int Bermudan()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:466,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:475,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:493,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:497,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:517,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:518,1
    - Dst: CallSpecifiedMultiProduct::evolution
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:520,1
    - Dst: std::min<Size>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:560,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:583,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:597,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:599,1
    - Dst: collectNodeData
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:602,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:610,1
    - Dst: genericLongstaffSchwartzRegression
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:614,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:627,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:629,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:632,1
    - Dst: MultiProductComposite::add
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:633,1
    - Dst: MultiProductComposite::finalize
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:634,1
    - Dst: AccountingEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:643,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:645,1
    - Dst: SequenceStatisticsInc::mean
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:647,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:652,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:653,1
    - Dst: MarketModelPathwiseInverseFloater::clone
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:683,1
    - Dst: CallSpecifiedPathwiseMultiProduct::clone
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:689,1
    - Dst: PathwiseVegasOuterAccountingEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:706,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:724,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:738,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:738,1
    - Dst: isInSubset
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:745,1
    - Dst: evolutionTimes
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:745,1
    - Dst: LongstaffSchwartzExerciseStrategy::exerciseTimes
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:745,1
    - Dst: std::valarray::size
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:747,1
    - Dst: ext::make_shared<LogNormalFwdRatePc>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:752,1
    - Dst: ext::make_shared<FlatVol>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:752,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:757,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:776,1
    - Dst: UpperBoundEngine::multiplePathValues
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:778,1
    - Dst: Statistics::mean
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:779,1
    - Dst: Statistics::errorEstimate
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:780,1
    - Dst: clock
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:782,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:785,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 48
    argCount: 1
    argNames:
    - rateLevel
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 790
    functionName: InverseFloater
    functionSourceFile: /src/quantlib/Examples/MarketModels/MarketModels.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - static_cast<Real>
    - std::vector::pop_back
    - std::valarray::size
    - ext::make_shared<LogNormalFwdRatePc>
    - MarketModelPathwiseInverseFloater::clone
    - std::vector::push_back
    - genericLongstaffSchwartzRegression
    - ext::make_shared<FlatVol>
    - MultiProductComposite::add
    - CallSpecifiedMultiProduct::evolution
    - PathwiseVegasOuterAccountingEngine::multiplePathValues
    - AccountingEngine::multiplePathValues
    - LongstaffSchwartzExerciseStrategy::exerciseTimes
    - Statistics::errorEstimate
    - ExerciseAdapter
    - UpperBoundEngine::multiplePathValues
    - std::vector::size
    - CallSpecifiedPathwiseMultiProduct::clone
    - MultiProductComposite::finalize
    - std::min<Size>
    - CallSpecifiedMultiProduct
    - collectNodeData
    - clock
    - Statistics::mean
    - evolutionTimes
    - SequenceStatisticsInc::mean
    linkageType: ''
    returnType: int
    signature: int InverseFloater(Real rateLevel)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InverseFloater
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:796,1
    - Dst: what
      Src: /src/quantlib/Examples/MarketModels/MarketModels.cpp:800,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 792
    functionDepth: 2
    functionLinenumber: 792
    functionLinenumberEnd: 806
    functionName: main
    functionSourceFile: /src/quantlib/Examples/MarketModels/MarketModels.cpp
    functionUses: 0
    functionsReached:
    - what
    - InverseFloater
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:49,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' today'
    - ' forward'
    - ' dc'
    - ' compounding'
    - ' frequency'
    argTypes:
    - Date
    - ext::shared_ptr<Quote>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: flatRate
    functionSourceFile: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - ext::make_shared<FlatForward>
    linkageType: ''
    returnType: ext::shared_ptr<YieldTermStructure>
    signature: "ext::shared_ptr<YieldTermStructure> flatRate(const Date& today,\n
      \            const ext::shared_ptr<Quote>& forward,\n             const DayCounter&
      dc,\n             const Compounding& compounding,\n             const Frequency&
      frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatRate
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:63,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' today'
    - forward
    - ' dc'
    - compounding
    - frequency
    argTypes:
    - Date
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 68
    functionName: flatRate
    functionSourceFile: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<SimpleQuote>
    - flatRate
    linkageType: ''
    returnType: ext::shared_ptr<YieldTermStructure>
    signature: "ext::shared_ptr<YieldTermStructure> flatRate(const Date& today,\n
      \            Rate forward,\n             const DayCounter& dc,\n             const
      Compounding &compounding,\n             const Frequency &frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:76,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:77,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:99,1
    - Dst: flatRate
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:102,1
    - Dst: InterestRate::rate
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:103,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:104,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:105,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:106,1
    - Dst: Date
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:113,1
    - Dst: NullCalendar
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:116,1
    - Dst: CallabilitySchedule::push_back
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:119,1
    - Dst: ext::make_shared<Callability>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:120,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:124,1
    - Dst: Date
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:130,1
    - Dst: Date
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:132,1
    - Dst: UnitedStates
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:134,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:144,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:164,1
    - Dst: ext::make_shared<TreeCallableFixedRateBondEngine>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:166,1
    - Dst: vector<Rate>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:169,1
    - Dst: CallableFixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:172,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:174,1
    - Dst: CallableFixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:182,1
    - Dst: CallableFixedRateBond::yield
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:183,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:199,1
    - Dst: ext::make_shared<TreeCallableFixedRateBondEngine>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:201,1
    - Dst: CallableFixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:203,1
    - Dst: CallableFixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:206,1
    - Dst: CallableFixedRateBond::yield
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:207,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:223,1
    - Dst: ext::make_shared<TreeCallableFixedRateBondEngine>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:225,1
    - Dst: CallableFixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:227,1
    - Dst: CallableFixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:234,1
    - Dst: CallableFixedRateBond::yield
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:235,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:251,1
    - Dst: ext::make_shared<TreeCallableFixedRateBondEngine>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:253,1
    - Dst: CallableFixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:255,1
    - Dst: CallableFixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:262,1
    - Dst: CallableFixedRateBond::yield
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:263,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:279,1
    - Dst: ext::make_shared<TreeCallableFixedRateBondEngine>
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:281,1
    - Dst: CallableFixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:283,1
    - Dst: CallableFixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:290,1
    - Dst: CallableFixedRateBond::yield
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:291,1
    - Dst: what
      Src: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp:306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 312
    functionName: main
    functionSourceFile: /src/quantlib/Examples/CallableBonds/CallableBonds.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<HullWhite>
    - vector<Rate>
    - Date
    - setprecision
    - ActualActual
    - CallableFixedRateBond::yield
    - ext::make_shared<TreeCallableFixedRateBondEngine>
    - flatRate
    - InterestRate::frequency
    - InterestRate::rate
    - Calendar::advance
    - UnitedStates
    - NullCalendar
    - InterestRate::dayCounter
    - ext::make_shared<Callability>
    - CallabilitySchedule::push_back
    - InterestRate::compounding
    - QuantLib::detail::instance
    - what
    - CallableFixedRateBond::setPricingEngine
    - CallableFixedRateBond::cleanPrice
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:67,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:70,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:71,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:74,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:76,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:79,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:82,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:89,1
    - Dst: ext::make_shared<Eonia>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:92,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:107,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:108,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:109,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:112,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:117,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:118,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:122,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:128,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:129,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:130,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:131,1
    - Dst: ext::make_shared<OISRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:137,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:138,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:139,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:145,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:145,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:145,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:146,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:146,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:146,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:147,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:147,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:147,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:148,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:148,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:148,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:149,1
    - Dst: Date
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:149,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:149,1
    - Dst: ext::make_shared<OISRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:156,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:157,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:158,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:164,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:165,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:166,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:167,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:168,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:169,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:170,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:171,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:172,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:173,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:174,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:175,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:176,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:177,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:178,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:179,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:180,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:181,1
    - Dst: ext::make_shared<OISRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:187,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:188,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:189,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, Cubic>>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:194,1
    - Dst: auto::enableExtrapolation
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:197,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:201,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:210,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:214,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:216,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:217,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:222,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:227,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:228,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:229,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:230,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:231,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:232,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:233,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:234,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:235,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:236,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:237,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:238,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:239,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:240,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:241,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:242,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:243,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:244,1
    - Dst: ext::make_shared<FraRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:250,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:251,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:253,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:259,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:260,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:261,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:262,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:263,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:264,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:265,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:266,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:267,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:268,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:269,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:270,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:271,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:272,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:273,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:274,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:275,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:280,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:285,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:286,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:290,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:292,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, Cubic>>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:299,1
    - Dst: PiecewiseYieldCurve<Discount, Cubic>::bootstrap_type
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:302,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:307,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:319,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:321,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:325,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:347,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:372,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:372,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:373,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:376,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:376,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:377,1
    - Dst: std::string
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:380,1
    - Dst: std::max
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:380,1
    - Dst: std::string::size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:380,1
    - Dst: std::string::size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:380,1
    - Dst: std::string::size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:386,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:395,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:395,1
    - Dst: auto::value
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:395,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:406,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:408,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:409,1
    - Dst: VanillaSwap::NPV
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:411,1
    - Dst: VanillaSwap::fairSpread
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:412,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:413,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:415,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:415,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:417,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:417,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:418,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:419,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:419,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:420,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:421,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:421,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:422,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:428,1
    - Dst: std::fabs
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:428,1
    - Dst: auto::value
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:428,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:430,1
    - Dst: std::fabs
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:430,1
    - Dst: auto::value
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:430,1
    - Dst: VanillaSwap::NPV
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:434,1
    - Dst: VanillaSwap::fairSpread
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:435,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:436,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:438,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:438,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:440,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:440,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:441,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:442,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:442,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:443,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:444,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:444,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:445,1
    - Dst: ext::dynamic_pointer_cast<SimpleQuote>
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:457,1
    - Dst: auto::setValue
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:458,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:462,1
    - Dst: auto::value
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:462,1
    - Dst: VanillaSwap::NPV
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:470,1
    - Dst: VanillaSwap::fairSpread
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:471,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:472,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:474,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:474,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:476,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:476,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:477,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:478,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:478,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:479,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:480,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:480,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:481,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:484,1
    - Dst: std::fabs
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:484,1
    - Dst: auto::value
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:484,1
    - Dst: VanillaSwap::NPV
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:492,1
    - Dst: VanillaSwap::fairSpread
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:493,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:494,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:496,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:496,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:498,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:498,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:499,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:500,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:500,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:501,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:502,1
    - Dst: size
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:502,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:503,1
    - Dst: what
      Src: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp:511,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 88
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 517
    functionName: main
    functionSourceFile: /src/quantlib/Examples/MulticurveBootstrapping/MulticurveBootstrapping.cpp
    functionUses: 0
    functionsReached:
    - Calendar::adjust
    - VanillaSwap::NPV
    - auto::value
    - Actual360
    - std::ostringstream::str
    - Date
    - Actual365Fixed
    - ext::make_shared<PiecewiseYieldCurve<Discount, Cubic>>
    - Date::weekday
    - std::vector::push_back
    - ext::make_shared<SwapRateHelper>
    - ext::make_shared<DiscountingSwapEngine>
    - std::string::size
    - VanillaSwap::fairRate
    - ext::make_shared<DepositRateHelper>
    - std::setw
    - ext::make_shared<Euribor6M>
    - std::fabs
    - PiecewiseYieldCurve<Discount, Cubic>::bootstrap_type
    - size
    - Handle<Quote>
    - ext::dynamic_pointer_cast<SimpleQuote>
    - auto::setValue
    - TARGET
    - std::string
    - std::setprecision
    - Calendar::advance
    - QuantLib::io::rate
    - std::max
    - auto::enableExtrapolation
    - ext::make_shared<FraRateHelper>
    - QL_REQUIRE
    - ext::make_shared<OISRateHelper>
    - QuantLib::detail::instance
    - what
    - ext::make_shared<Eonia>
    - VanillaSwap::fairSpread
    - RelinkableHandle::linkTo
    - VanillaSwap::setPricingEngine
    - Thirty360
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:86,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:87,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:89,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:92,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:96,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:97,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:98,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:99,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:100,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:101,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:102,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:104,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:105,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:106,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:107,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:108,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:109,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:110,1
    - Dst: std::string
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 6
    argNames:
    - type
    - maturity
    - strike
    - s0
    - sigma
    - r
    argTypes:
    - Option::Type
    - Time
    - Real
    - Real
    - Volatility
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 113
    functionName: ReplicationError::ReplicationError
    functionSourceFile: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::string
    - ext::make_shared<PlainVanillaPayoff>
    - BlackCalculator::vega
    - std::setw
    - BlackCalculator::value
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void ReplicationError(Option::Type type,\n                     Time
      maturity,\n                     Real strike,\n                     Real s0,\n
      \                    Volatility sigma,\n                     Rate r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - type
    - strike
    - r
    - maturity
    - sigma
    argTypes:
    - Option::Type
    - Real
    - Rate
    - Time
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 146
    functionName: ReplicationPathPricer::ReplicationPathPricer
    functionSourceFile: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ReplicationPathPricer(Option::Type type,\n                          Real
      strike,\n                          Rate r,\n                          Time maturity,\n
      \                         Volatility sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ReplicationError::compute
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:178,1
    - Dst: ReplicationError::compute
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:181,1
    - Dst: what
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 191
    functionName: main
    functionSourceFile: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp
    functionUses: 0
    functionsReached:
    - ReplicationError::compute
    - what
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:203,1
    - Dst: front
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:215,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:225,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:227,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:228,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:231,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:233,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:247,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:254,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:255,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:257,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:261,1
    - Dst: std::exp
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:272,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 285
    functionName: ReplicationPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::delta
    - QL_REQUIRE
    - std::exp
    - ext::make_shared<PlainVanillaPayoff>
    - length
    - BlackCalculator::value
    - PlainVanillaPayoff
    - std::sqrt
    - front
    linkageType: ''
    returnType: Real
    signature: Real ReplicationPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:291,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:300,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:301,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:302,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:303,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:307,1
    - Dst: ext::make_shared<BlackScholesMertonProcess>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:310,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:317,1
    - Dst: ext::make_shared<generator_type>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:322,1
    - Dst: ext::make_shared<ReplicationPathPricer>
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:329,1
    - Dst: optionType
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:330,1
    - Dst: strike
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:330,1
    - Dst: MonteCarloModel::addSamples
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:346,1
    - Dst: MonteCarloModel::sampleAccumulator
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:350,1
    - Dst: MonteCarloModel::sampleAccumulator
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:351,1
    - Dst: MonteCarloModel::sampleAccumulator
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:352,1
    - Dst: MonteCarloModel::sampleAccumulator
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:353,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:356,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:360,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:361,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:362,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:362,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:363,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:363,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:364,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:364,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:365,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:365,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:366,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - nTimeSteps
    - nSamples
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 367
    functionName: ReplicationError::compute
    functionSourceFile: /src/quantlib/Examples/DiscreteHedging/DiscreteHedging.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - ext::make_shared<BlackScholesMertonProcess>
    - MonteCarloModel::sampleAccumulator
    - ext::make_shared<generator_type>
    - strike
    - makeQuoteHandle
    - std::setprecision
    - std::setw
    - ext::make_shared<FlatForward>
    - ext::make_shared<ReplicationPathPricer>
    - QuantLib::Date::todaysDate
    - std::sqrt
    - Actual365Fixed
    - MonteCarloModel::addSamples
    - optionType
    - QuantLib::make_sequence_generator
    - TARGET
    linkageType: ''
    returnType: void
    signature: void ReplicationError::compute(Size nTimeSteps, Size nSamples)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:60,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/CDS/CDS.cpp:63,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:65,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:68,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:86,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:87,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:88,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:89,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:91,1
    - Dst: vector::reserve
      Src: /src/quantlib/Examples/CDS/CDS.cpp:93,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:95,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/CDS/CDS.cpp:96,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/Examples/CDS/CDS.cpp:100,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:102,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:102,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/CDS/CDS.cpp:103,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:105,1
    - Dst: ext::make_shared<PiecewiseDefaultCurve<HazardRate, BackwardFlat>>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:110,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:111,1
    - Dst: auto::nodes
      Src: /src/quantlib/Examples/CDS/CDS.cpp:112,1
    - Dst: QuantLib::io::percent
      Src: /src/quantlib/Examples/CDS/CDS.cpp:122,1
    - Dst: auto::survivalProbability
      Src: /src/quantlib/Examples/CDS/CDS.cpp:122,1
    - Dst: QuantLib::io::percent
      Src: /src/quantlib/Examples/CDS/CDS.cpp:124,1
    - Dst: QuantLib::io::percent
      Src: /src/quantlib/Examples/CDS/CDS.cpp:126,1
    - Dst: auto::survivalProbability
      Src: /src/quantlib/Examples/CDS/CDS.cpp:126,1
    - Dst: QuantLib::io::percent
      Src: /src/quantlib/Examples/CDS/CDS.cpp:128,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:135,1
    - Dst: MakeSchedule
      Src: /src/quantlib/Examples/CDS/CDS.cpp:137,1
    - Dst: MakeSchedule
      Src: /src/quantlib/Examples/CDS/CDS.cpp:147,1
    - Dst: MakeSchedule
      Src: /src/quantlib/Examples/CDS/CDS.cpp:157,1
    - Dst: MakeSchedule
      Src: /src/quantlib/Examples/CDS/CDS.cpp:167,1
    - Dst: CreditDefaultSwap::setPricingEngine
      Src: /src/quantlib/Examples/CDS/CDS.cpp:177,1
    - Dst: CreditDefaultSwap::setPricingEngine
      Src: /src/quantlib/Examples/CDS/CDS.cpp:178,1
    - Dst: CreditDefaultSwap::setPricingEngine
      Src: /src/quantlib/Examples/CDS/CDS.cpp:179,1
    - Dst: CreditDefaultSwap::setPricingEngine
      Src: /src/quantlib/Examples/CDS/CDS.cpp:180,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:183,1
    - Dst: CreditDefaultSwap::fairSpread
      Src: /src/quantlib/Examples/CDS/CDS.cpp:183,1
    - Dst: CreditDefaultSwap::NPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:184,1
    - Dst: CreditDefaultSwap::defaultLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:185,1
    - Dst: CreditDefaultSwap::couponLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:186,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:188,1
    - Dst: CreditDefaultSwap::fairSpread
      Src: /src/quantlib/Examples/CDS/CDS.cpp:188,1
    - Dst: CreditDefaultSwap::NPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:189,1
    - Dst: CreditDefaultSwap::defaultLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:190,1
    - Dst: CreditDefaultSwap::couponLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:191,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:193,1
    - Dst: CreditDefaultSwap::fairSpread
      Src: /src/quantlib/Examples/CDS/CDS.cpp:193,1
    - Dst: CreditDefaultSwap::NPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:194,1
    - Dst: CreditDefaultSwap::defaultLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:195,1
    - Dst: CreditDefaultSwap::couponLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:196,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:198,1
    - Dst: CreditDefaultSwap::fairSpread
      Src: /src/quantlib/Examples/CDS/CDS.cpp:198,1
    - Dst: CreditDefaultSwap::NPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:199,1
    - Dst: CreditDefaultSwap::defaultLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:200,1
    - Dst: CreditDefaultSwap::couponLegNPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 205
    functionName: example01
    functionSourceFile: /src/quantlib/Examples/CDS/CDS.cpp
    functionUses: 0
    functionsReached:
    - Calendar::adjust
    - vector::push_back
    - std::vector::reserve
    - makeQuoteHandle
    - CreditDefaultSwap::fairSpread
    - CreditDefaultSwap::NPV
    - Actual365Fixed
    - MakeSchedule
    - std::vector::push_back
    - CreditDefaultSwap::defaultLegNPV
    - auto::survivalProbability
    - QuantLib::io::percent
    - TARGET
    - CreditDefaultSwap::setPricingEngine
    - CreditDefaultSwap::couponLegNPV
    - Calendar::advance
    - QuantLib::io::rate
    - auto::nodes
    - ext::make_shared<SpreadCdsHelper>
    - vector::reserve
    - ext::make_shared<PiecewiseDefaultCurve<HazardRate, BackwardFlat>>
    - QuantLib::detail::instance
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: void
    signature: void example01()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:210,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:212,1
    - Dst: Period
      Src: /src/quantlib/Examples/CDS/CDS.cpp:212,1
    - Dst: MakeSchedule
      Src: /src/quantlib/Examples/CDS/CDS.cpp:215,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:217,1
    - Dst: std::copy
      Src: /src/quantlib/Examples/CDS/CDS.cpp:222,1
    - Dst: Schedule::begin
      Src: /src/quantlib/Examples/CDS/CDS.cpp:222,1
    - Dst: Schedule::end
      Src: /src/quantlib/Examples/CDS/CDS.cpp:222,1
    - Dst: std::ostream_iterator<Date>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:223,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:225,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:227,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:229,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:233,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:234,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:235,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:236,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:237,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:238,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:239,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:240,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:241,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:242,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:243,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:244,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:245,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:246,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:247,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:248,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:249,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:250,1
    - Dst: ext::make_shared<Euribor>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:255,1
    - Dst: Euribor
      Src: /src/quantlib/Examples/CDS/CDS.cpp:255,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:257,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:259,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:260,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:262,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:263,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:265,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:266,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:268,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:269,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:271,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:272,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:274,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:275,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:277,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:278,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:280,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:281,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:283,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:284,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:286,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:287,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:289,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:290,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:292,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:293,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:295,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CDS/CDS.cpp:296,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:301,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:302,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:303,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:304,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:305,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:306,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:307,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:308,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:309,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:310,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:311,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:312,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:313,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:314,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:315,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:316,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:317,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:318,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:319,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:322,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:323,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:323,1
    - Dst: Handle::enableExtrapolation
      Src: /src/quantlib/Examples/CDS/CDS.cpp:324,1
    - Dst: latestDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:329,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/CDS/CDS.cpp:330,1
    - Dst: Handle::zeroRate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:331,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:331,1
    - Dst: Handle::discount
      Src: /src/quantlib/Examples/CDS/CDS.cpp:332,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:336,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:336,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:336,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:339,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:339,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:340,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:340,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:340,1
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:341,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:343,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:344,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:344,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:345,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:347,1
    - Dst: auto::coupons
      Src: /src/quantlib/Examples/CDS/CDS.cpp:347,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:348,1
    - Dst: auto::accrualEndDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:348,1
    - Dst: auto::accruedAmount
      Src: /src/quantlib/Examples/CDS/CDS.cpp:349,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:349,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:352,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:353,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/CDS/CDS.cpp:356,1
    - Dst: auto::NPV
      Src: /src/quantlib/Examples/CDS/CDS.cpp:358,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:364,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:365,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:366,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:367,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:367,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:369,1
    - Dst: "ext::make_shared<\n        PiecewiseDefaultCurve<SurvivalProbability,
        LogLinear>>"
      Src: /src/quantlib/Examples/CDS/CDS.cpp:371,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:373,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:373,1
    - Dst: latestDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:377,1
    - Dst: Handle::defaultProbability
      Src: /src/quantlib/Examples/CDS/CDS.cpp:378,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/Examples/CDS/CDS.cpp:379,1
    - Dst: std::log
      Src: /src/quantlib/Examples/CDS/CDS.cpp:381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 425
    functionName: example02
    functionSourceFile: /src/quantlib/Examples/CDS/CDS.cpp
    functionUses: 0
    functionsReached:
    - Euribor
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Handle::discount
    - Schedule::begin
    - Actual360
    - Date
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - ext::shared_ptr<Claim>
    - std::ostream_iterator<Date>
    - Actual365Fixed
    - MakeSchedule
    - setprecision
    - ext::make_shared<IsdaCdsEngine>
    - std::vector::push_back
    - Handle::enableExtrapolation
    - ext::make_shared<SwapRateHelper>
    - ext::make_shared<DepositRateHelper>
    - auto::accruedAmount
    - auto::accrualEndDate
    - auto::setPricingEngine
    - TARGET
    - Handle::timeFromReference
    - ext::make_shared<Euribor>
    - Period
    - WeekendsOnly
    - ext::make_shared<CreditDefaultSwap>
    - auto::coupons
    - Handle<DefaultProbabilityTermStructure>
    - ext::make_shared<SpreadCdsHelper>
    - auto::NPV
    - std::copy
    - ext::make_shared<FlatHazardRate>
    - "ext::make_shared<\n        PiecewiseDefaultCurve<SurvivalProbability, LogLinear>>"
    - std::log
    - Handle::defaultProbability
    - QuantLib::detail::instance
    - Schedule::end
    - latestDate
    - auto::accrualStartDate
    - Thirty360
    - Handle::zeroRate
    linkageType: ''
    returnType: void
    signature: void example02()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:433,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CDS/CDS.cpp:435,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:437,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:438,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:440,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:441,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:443,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:444,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:446,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:447,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:449,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:450,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:452,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:453,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:455,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:456,1
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:462,1
    - Dst: EURCurrency
      Src: /src/quantlib/Examples/CDS/CDS.cpp:463,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:463,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:466,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:467,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:469,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:470,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:472,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:473,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:475,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:476,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:478,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:479,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:481,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:482,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:484,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:485,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:487,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:488,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:490,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:491,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:493,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:494,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:496,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:497,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:499,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:500,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:502,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:503,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:505,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:506,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:508,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:509,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:514,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:515,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:516,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:517,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:518,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:519,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:520,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:521,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:522,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:523,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:524,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:525,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:526,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:527,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:528,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:529,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:530,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:531,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:532,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:533,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:534,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:537,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:538,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:539,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:539,1
    - Dst: Handle::enableExtrapolation
      Src: /src/quantlib/Examples/CDS/CDS.cpp:540,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:544,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:545,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:546,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:546,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:547,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:548,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:549,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:550,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:550,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:551,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:552,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:553,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:554,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:554,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:555,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:556,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:557,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:558,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:558,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:559,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:560,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:561,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:562,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:562,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:563,1
    - Dst: ext::make_shared<SpreadCdsHelper>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:564,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:565,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:566,1
    - Dst: Date
      Src: /src/quantlib/Examples/CDS/CDS.cpp:566,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CDS/CDS.cpp:567,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:571,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:572,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:573,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:574,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:575,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CDS/CDS.cpp:576,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:580,1
    - Dst: "ext::make_shared<\n        PiecewiseDefaultCurve<SurvivalProbability,
        LogLinear>>"
      Src: /src/quantlib/Examples/CDS/CDS.cpp:580,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/Examples/CDS/CDS.cpp:582,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:582,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/Examples/CDS/CDS.cpp:585,1
    - Dst: latestDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:591,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/Examples/CDS/CDS.cpp:592,1
    - Dst: Handle::zeroRate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:594,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/CDS/CDS.cpp:594,1
    - Dst: latestDate
      Src: /src/quantlib/Examples/CDS/CDS.cpp:601,1
    - Dst: auto::timeFromReference
      Src: /src/quantlib/Examples/CDS/CDS.cpp:602,1
    - Dst: auto::survivalProbability
      Src: /src/quantlib/Examples/CDS/CDS.cpp:603,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 606
    functionName: example03
    functionSourceFile: /src/quantlib/Examples/CDS/CDS.cpp
    functionUses: 0
    functionsReached:
    - Actual360
    - Date
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - Actual365Fixed
    - ext::make_shared<IsdaCdsEngine>
    - std::vector::push_back
    - Handle::enableExtrapolation
    - ext::make_shared<SwapRateHelper>
    - ext::make_shared<DepositRateHelper>
    - EURCurrency
    - auto::survivalProbability
    - Handle::timeFromReference
    - ext::make_shared<IborIndex>
    - WeekendsOnly
    - Handle<DefaultProbabilityTermStructure>
    - auto::timeFromReference
    - Handle<YieldTermStructure>
    - ext::make_shared<SpreadCdsHelper>
    - "ext::make_shared<\n        PiecewiseDefaultCurve<SurvivalProbability, LogLinear>>"
    - QuantLib::detail::instance
    - latestDate
    - Thirty360
    - Handle::zeroRate
    linkageType: ''
    returnType: void
    signature: void example03()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::atoi
      Src: /src/quantlib/Examples/CDS/CDS.cpp:614,1
    - Dst: example01
      Src: /src/quantlib/Examples/CDS/CDS.cpp:618,1
    - Dst: example02
      Src: /src/quantlib/Examples/CDS/CDS.cpp:623,1
    - Dst: example03
      Src: /src/quantlib/Examples/CDS/CDS.cpp:628,1
    - Dst: what
      Src: /src/quantlib/Examples/CDS/CDS.cpp:634,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 609
    functionDepth: 2
    functionLinenumber: 609
    functionLinenumberEnd: 641
    functionName: main
    functionSourceFile: /src/quantlib/Examples/CDS/CDS.cpp
    functionUses: 0
    functionsReached:
    - std::atoi
    - example03
    - example01
    - example02
    - what
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:53,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:56,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:66,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:72,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:74,1
    - Dst: QuantLib::io::volatility
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:76,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:84,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:85,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:86,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:87,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:92,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:94,1
    - Dst: ext::make_shared<BermudanExercise>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:96,1
    - Dst: ext::make_shared<AmericanExercise>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:98,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:100,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:110,1
    - Dst: ext::make_shared<BlackScholesMertonProcess>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:111,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:123,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:123,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:124,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:126,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:126,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:127,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:128,1
    - Dst: ext::make_shared<Vasicek>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:139,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:140,1
    - Dst: ext::make_shared<AnalyticBlackVasicekEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:140,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:141,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:143,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:143,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:144,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:145,1
    - Dst: ext::make_shared<HestonProcess>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:150,1
    - Dst: ext::make_shared<HestonModel>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:153,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:154,1
    - Dst: ext::make_shared<AnalyticHestonEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:154,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:155,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:157,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:157,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:158,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:159,1
    - Dst: ext::make_shared<BatesProcess>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:164,1
    - Dst: ext::make_shared<BatesModel>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:168,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:169,1
    - Dst: ext::make_shared<BatesEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:169,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:170,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:172,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:172,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:173,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:174,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:179,1
    - Dst: ext::make_shared<BaroneAdesiWhaleyApproximationEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:179,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:180,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:182,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:183,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:184,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:184,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:189,1
    - Dst: ext::make_shared<BjerksundStenslandApproximationEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:189,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:190,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:192,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:193,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:194,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:194,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:199,1
    - Dst: ext::make_shared<QdFpAmericanEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:199,1
    - Dst: QuantLib::QdFpAmericanEngine::fastScheme
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:200,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:201,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:203,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:204,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:205,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:205,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:209,1
    - Dst: ext::make_shared<QdFpAmericanEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:209,1
    - Dst: QuantLib::QdFpAmericanEngine::accurateScheme
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:210,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:211,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:213,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:214,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:215,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:215,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:219,1
    - Dst: ext::make_shared<QdFpAmericanEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:219,1
    - Dst: QuantLib::QdFpAmericanEngine::highPrecisionScheme
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:220,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:221,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:223,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:224,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:225,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:225,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:230,1
    - Dst: ext::make_shared<IntegralEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:230,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:231,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:233,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:233,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:234,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:235,1
    - Dst: ext::make_shared<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:242,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:245,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:246,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:247,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:248,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:250,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:250,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:251,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:251,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:252,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:252,1
    - Dst: ext::make_shared<BinomialVanillaEngine<JarrowRudd>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:257,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:258,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:259,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:260,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:261,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:263,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:263,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:264,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:264,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:265,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:265,1
    - Dst: ext::make_shared<BinomialVanillaEngine<CoxRossRubinstein>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:270,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:271,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:272,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:273,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:274,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:276,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:276,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:277,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:277,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:278,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:278,1
    - Dst: ext::make_shared<BinomialVanillaEngine<AdditiveEQPBinomialTree>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:283,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:284,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:285,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:286,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:287,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:289,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:289,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:290,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:290,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:291,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:291,1
    - Dst: ext::make_shared<BinomialVanillaEngine<Trigeorgis>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:296,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:297,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:298,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:299,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:300,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:302,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:302,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:303,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:303,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:304,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:304,1
    - Dst: ext::make_shared<BinomialVanillaEngine<Tian>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:309,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:310,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:311,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:312,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:313,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:315,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:315,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:316,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:316,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:317,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:317,1
    - Dst: ext::make_shared<BinomialVanillaEngine<LeisenReimer>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:322,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:323,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:324,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:325,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:326,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:328,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:328,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:329,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:329,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:330,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:330,1
    - Dst: ext::make_shared<BinomialVanillaEngine<Joshi4>>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:335,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:336,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:337,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:338,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:339,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:341,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:341,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:342,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:342,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:343,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:343,1
    - Dst: MakeMCEuropeanEngine<PseudoRandom>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:350,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:354,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:356,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:358,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:358,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:359,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:360,1
    - Dst: MakeMCEuropeanEngine<LowDiscrepancy>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:367,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:370,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:371,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:373,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:373,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:374,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:375,1
    - Dst: MakeMCAmericanEngine<PseudoRandom>
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:380,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:386,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:387,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:389,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:390,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:391,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:391,1
    - Dst: what
      Src: /src/quantlib/Examples/EquityOption/EquityOption.cpp:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 104
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 404
    functionName: main
    functionSourceFile: /src/quantlib/Examples/EquityOption/EquityOption.cpp
    functionUses: 0
    functionsReached:
    - VanillaOption::setPricingEngine
    - ext::make_shared<QdFpAmericanEngine>
    - makeQuoteHandle
    - ext::make_shared<FdBlackScholesVanillaEngine>
    - ext::make_shared<BatesEngine>
    - ext::make_shared<HestonProcess>
    - Actual365Fixed
    - ext::make_shared<BinomialVanillaEngine<Joshi4>>
    - ext::make_shared<BatesProcess>
    - std::vector::push_back
    - QuantLib::QdFpAmericanEngine::highPrecisionScheme
    - ext::make_shared<IntegralEngine>
    - ext::make_shared<EuropeanExercise>
    - VanillaOption::NPV
    - ext::make_shared<PlainVanillaPayoff>
    - MakeMCEuropeanEngine<LowDiscrepancy>
    - std::setw
    - ext::make_shared<AnalyticEuropeanEngine>
    - MakeMCEuropeanEngine<PseudoRandom>
    - ext::make_shared<AmericanExercise>
    - ext::make_shared<AnalyticHestonEngine>
    - ext::make_shared<AnalyticBlackVasicekEngine>
    - TARGET
    - MakeMCAmericanEngine<PseudoRandom>
    - ext::make_shared<BinomialVanillaEngine<LeisenReimer>>
    - ext::make_shared<BinomialVanillaEngine<Tian>>
    - QuantLib::io::rate
    - ext::make_shared<BatesModel>
    - ext::make_shared<BinomialVanillaEngine<JarrowRudd>>
    - ext::make_shared<BinomialVanillaEngine<CoxRossRubinstein>>
    - ext::make_shared<BaroneAdesiWhaleyApproximationEngine>
    - ext::make_shared<Vasicek>
    - ext::make_shared<BermudanExercise>
    - ext::make_shared<BlackScholesMertonProcess>
    - QuantLib::io::volatility
    - QuantLib::QdFpAmericanEngine::fastScheme
    - QuantLib::QdFpAmericanEngine::accurateScheme
    - ext::make_shared<BinomialVanillaEngine<Trigeorgis>>
    - QuantLib::detail::instance
    - what
    - ext::make_shared<HestonModel>
    - ext::make_shared<BinomialVanillaEngine<AdditiveEQPBinomialTree>>
    - ext::make_shared<BjerksundStenslandApproximationEngine>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:48,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:51,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:53,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:64,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:64,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:65,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:66,1
    - Dst: std::string
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:66,1
    - Dst: std::to_string
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:66,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:69,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:70,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:70,1
    - Dst: std::vector::back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:71,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:74,1
    - Dst: std::make_pair
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:76,1
    - Dst: NorthAmericaCorpDefaultKey
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:76,1
    - Dst: EURCurrency
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:77,1
    - Dst: Period
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:78,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:80,1
    - Dst: ext::make_shared<Pool>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:83,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:84,1
    - Dst: auto::add
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:85,1
    - Dst: NorthAmericaCorpDefaultKey
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:85,1
    - Dst: EURCurrency
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:86,1
    - Dst: Period
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:86,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:88,1
    - Dst: NorthAmericaCorpDefaultKey
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:89,1
    - Dst: EURCurrency
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:89,1
    - Dst: Period
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:89,1
    - Dst: ext::make_shared<Basket>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:90,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:92,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:92,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:100,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:102,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:102,1
    - Dst: Period
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:103,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:105,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:106,1
    - Dst: ext::make_shared<GaussianLHPLossModel>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:110,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:112,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:115,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:118,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:120,1
    - Dst: ext::make_shared<GaussianBinomialLossModel>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:121,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:122,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:125,1
    - Dst: std::vector<Integer>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:131,1
    - Dst: ext::make_shared<TConstantLossLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:132,1
    - Dst: ext::make_shared<TBinomialLossModel>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:137,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:138,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:141,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:146,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:150,1
    - Dst: ext::make_shared<IHGaussPoolLossModel>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:153,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:154,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:157,1
    - Dst: "ext::make_shared<RandomDefaultLM<GaussianCopulaPolicy,\n            RandomSequenceGenerator<\n
        \               BoxMullerGaussianRng<MersenneTwisterUniformRng>>>>"
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:163,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:169,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:172,1
    - Dst: "ext::make_shared<RandomDefaultLM<TCopulaPolicy,\n            RandomSequenceGenerator<\n
        \               PolarStudentTRng<MersenneTwisterUniformRng>>>>"
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:177,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:183,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:186,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:191,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:192,1
    - Dst: std::sqrt
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:192,1
    - Dst: ext::make_shared<GaussianSpotLossLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:194,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:197,1
    - Dst: ext::make_shared<TSpotLossLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:198,1
    - Dst: ext::make_shared<RandomLossLM<GaussianCopulaPolicy>>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:206,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:208,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:211,1
    - Dst: ext::make_shared<RandomLossLM<TCopulaPolicy>>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:216,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:218,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:221,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:230,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:231,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:233,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:234,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:235,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:238,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:239,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:241,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:242,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:243,1
    - Dst: ext::make_shared<BaseCorrelationTermStructure<BilinearInterpolation>>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:244,1
    - Dst: settlementDays
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:246,1
    - Dst: calendar
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:247,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:252,1
    - Dst: ext::make_shared<GaussianLHPFlatBCLM>
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:254,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:255,1
    - Dst: auto::setLossModel
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:257,1
    - Dst: auto::expectedTrancheLoss
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:261,1
    - Dst: what
      Src: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp:267,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 273
    functionName: main
    functionSourceFile: /src/quantlib/Examples/BasketLosses/BasketLosses.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<IHGaussPoolLossModel>
    - std::to_string
    - Calendar::adjust
    - ext::make_shared<Basket>
    - auto::setLossModel
    - ext::make_shared<GaussianLHPFlatBCLM>
    - std::vector::reserve
    - "ext::make_shared<RandomDefaultLM<GaussianCopulaPolicy,\n            RandomSequenceGenerator<\n
      \               BoxMullerGaussianRng<MersenneTwisterUniformRng>>>>"
    - "ext::make_shared<RandomDefaultLM<TCopulaPolicy,\n            RandomSequenceGenerator<\n
      \               PolarStudentTRng<MersenneTwisterUniformRng>>>>"
    - NorthAmericaCorpDefaultKey
    - ext::make_shared<TBinomialLossModel>
    - ext::make_shared<GaussianSpotLossLM>
    - Actual365Fixed
    - ext::make_shared<GaussianBinomialLossModel>
    - calendar
    - std::vector::emplace_back
    - std::vector::push_back
    - GaussianCopulaPolicy::initTraits
    - EURCurrency
    - auto::expectedTrancheLoss
    - std::vector<Integer>
    - ext::make_shared<GaussianConstantLossLM>
    - TARGET
    - std::string
    - std::vector<Real>
    - Period
    - ext::make_shared<Pool>
    - auto::add
    - settlementDays
    - std::vector::size
    - ext::make_shared<RandomLossLM<GaussianCopulaPolicy>>
    - ext::make_shared<TSpotLossLM>
    - ext::make_shared<GaussianLHPLossModel>
    - std::make_pair
    - ext::make_shared<FlatHazardRate>
    - ext::make_shared<RandomLossLM<TCopulaPolicy>>
    - QuantLib::detail::instance
    - ext::make_shared<TConstantLossLM>
    - ext::make_shared<BaseCorrelationTermStructure<BilinearInterpolation>>
    - std::sqrt
    - what
    - std::vector::back
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:56,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:57,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:59,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:60,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:61,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:62,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:78,1
    - Dst: std::size
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:87,1
    - Dst: CallabilitySchedule::push_back
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:88,1
    - Dst: ext::make_shared<SoftCallability>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:89,1
    - Dst: QuantLib::IntervalPrice::IntervalPrice
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:89,1
    - Dst: Schedule::date
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:91,1
    - Dst: std::size
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:95,1
    - Dst: CallabilitySchedule::push_back
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:96,1
    - Dst: ext::make_shared<Callability>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:97,1
    - Dst: QuantLib::IntervalPrice::IntervalPrice
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:97,1
    - Dst: Schedule::date
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:100,1
    - Dst: DividendSchedule::push_back
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:105,1
    - Dst: ext::make_shared<FixedDividend>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:105,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:108,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:109,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:117,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:119,1
    - Dst: QuantLib::io::volatility
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:121,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:136,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:137,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:138,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:142,1
    - Dst: ext::make_shared<AmericanExercise>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:143,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:145,1
    - Dst: ext::make_shared<BlackScholesMertonProcess>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:156,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:161,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:163,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<JarrowRudd>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:179,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:180,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:181,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:182,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:184,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:184,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:185,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:185,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<CoxRossRubinstein>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:189,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:190,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:191,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:192,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:194,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:194,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:195,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:195,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<AdditiveEQPBinomialTree>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:199,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:200,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:201,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:202,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:204,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:204,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:205,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:205,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<Trigeorgis>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:209,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:210,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:211,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:212,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:214,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:214,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:215,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:215,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<Tian>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:219,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:220,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:221,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:222,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:224,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:224,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:225,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:225,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<LeisenReimer>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:229,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:230,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:231,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:232,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:234,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:234,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:235,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:235,1
    - Dst: ext::make_shared<BinomialConvertibleEngine<Joshi4>>
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:239,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:240,1
    - Dst: ConvertibleFixedCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:241,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:242,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:244,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:244,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:245,1
    - Dst: ConvertibleFixedCouponBond::NPV
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:245,1
    - Dst: what
      Src: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp:252,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 63
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 259
    functionName: main
    functionSourceFile: /src/quantlib/Examples/ConvertibleBonds/ConvertibleBonds.cpp
    functionUses: 0
    functionsReached:
    - Calendar::adjust
    - ext::make_shared<BinomialConvertibleEngine<AdditiveEQPBinomialTree>>
    - makeQuoteHandle
    - QuantLib::IntervalPrice::IntervalPrice
    - Actual365Fixed
    - ConvertibleFixedCouponBond::NPV
    - ext::make_shared<BinomialConvertibleEngine<JarrowRudd>>
    - ext::make_shared<BinomialConvertibleEngine<CoxRossRubinstein>>
    - ext::make_shared<EuropeanExercise>
    - ext::make_shared<BinomialConvertibleEngine<Trigeorgis>>
    - DividendSchedule::push_back
    - std::setw
    - ext::make_shared<FixedDividend>
    - QuantLib::Date::todaysDate
    - ext::make_shared<AmericanExercise>
    - ConvertibleFixedCouponBond::setPricingEngine
    - TARGET
    - Schedule::date
    - DayCounter::yearFraction
    - Calendar::advance
    - QuantLib::io::rate
    - ext::make_shared<BinomialConvertibleEngine<LeisenReimer>>
    - std::size
    - ext::make_shared<Callability>
    - CallabilitySchedule::push_back
    - ext::make_shared<BlackScholesMertonProcess>
    - QuantLib::io::volatility
    - ext::make_shared<SoftCallability>
    - QuantLib::detail::instance
    - what
    - Thirty360
    - ext::make_shared<BinomialConvertibleEngine<Joshi4>>
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<BinomialConvertibleEngine<Tian>>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:55,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:61,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:62,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:64,1
    - Dst: Date::weekday
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:67,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:90,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:91,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:92,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:93,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:94,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:98,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:99,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:100,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:101,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:102,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:123,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:123,1
    - Dst: linkTo
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:128,1
    - Dst: ext::make_shared<FixedRateBondHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:138,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:143,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:144,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:157,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:165,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount,LogLinear>>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:175,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:192,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:193,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:194,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:195,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:196,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:197,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:200,1
    - Dst: ext::make_shared<DepositRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:203,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:204,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:212,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:213,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:215,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:216,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:220,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:221,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:225,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:226,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:230,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:231,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:235,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:236,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:242,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:243,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:244,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:245,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:246,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:247,1
    - Dst: Calendar::advance
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:251,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:252,1
    - Dst: ext::make_shared<DiscountingBondEngine>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:269,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:274,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:276,1
    - Dst: Real
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:278,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:279,1
    - Dst: ZeroCouponBond::setPricingEngine
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:281,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:285,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:285,1
    - Dst: Period
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:285,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:286,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:292,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:293,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:295,1
    - Dst: FixedRateBond::setPricingEngine
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:297,1
    - Dst: ext::make_shared<Euribor>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:301,1
    - Dst: Period
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:301,1
    - Dst: auto::addFixing
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:302,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:302,1
    - Dst: auto::addFixing
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:303,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:303,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:306,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:306,1
    - Dst: Period
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:306,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:307,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:314,1
    - Dst: Natural
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:316,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:318,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:320,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:322,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:327,1
    - Dst: Date
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:328,1
    - Dst: FloatingRateBond::setPricingEngine
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:330,1
    - Dst: ext::make_shared<BlackIborCouponPricer>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:333,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:338,1
    - Dst: ext::make_shared<ConstantOptionletVolatility>
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:339,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:344,1
    - Dst: auto::setCapletVolatility
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:346,1
    - Dst: setCouponPricer
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:347,1
    - Dst: FloatingRateBond::cashflows
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:347,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:349,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:350,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:357,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:358,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:359,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:360,1
    - Dst: std::setprecision
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:369,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:371,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:372,1
    - Dst: ZeroCouponBond::NPV
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:372,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:373,1
    - Dst: FixedRateBond::NPV
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:373,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:374,1
    - Dst: FloatingRateBond::NPV
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:374,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:377,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:378,1
    - Dst: ZeroCouponBond::cleanPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:378,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:379,1
    - Dst: FixedRateBond::cleanPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:379,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:380,1
    - Dst: FloatingRateBond::cleanPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:380,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:383,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:384,1
    - Dst: ZeroCouponBond::dirtyPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:384,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:385,1
    - Dst: FixedRateBond::dirtyPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:385,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:386,1
    - Dst: FloatingRateBond::dirtyPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:386,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:389,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:390,1
    - Dst: ZeroCouponBond::accruedAmount
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:390,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:391,1
    - Dst: FixedRateBond::accruedAmount
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:391,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:392,1
    - Dst: FloatingRateBond::accruedAmount
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:392,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:395,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:396,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:397,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:397,1
    - Dst: FixedRateBond::previousCouponRate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:397,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:398,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:398,1
    - Dst: FloatingRateBond::previousCouponRate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:398,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:401,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:402,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:403,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:403,1
    - Dst: FixedRateBond::nextCouponRate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:403,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:404,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:404,1
    - Dst: FloatingRateBond::nextCouponRate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:404,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:407,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:408,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:409,1
    - Dst: ZeroCouponBond::yield
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:409,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:409,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:410,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:411,1
    - Dst: FixedRateBond::yield
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:411,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:411,1
    - Dst: std::setw
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:412,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:413,1
    - Dst: FloatingRateBond::yield
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:413,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:413,1
    - Dst: FloatingRateBond::cleanPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:423,1
    - Dst: FloatingRateBond::yield
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:423,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:423,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:423,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:426,1
    - Dst: FloatingRateBond::yield
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:426,1
    - Dst: FloatingRateBond::cleanPrice
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:426,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:427,1
    - Dst: what
      Src: /src/quantlib/Examples/Bonds/Bonds.cpp:434,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 440
    functionName: main
    functionSourceFile: /src/quantlib/Examples/Bonds/Bonds.cpp
    functionUses: 0
    functionsReached:
    - ZeroCouponBond::NPV
    - FloatingRateBond::cashflows
    - ext::make_shared<FixedRateBondHelper>
    - Real
    - Actual360
    - Date
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - ZeroCouponBond::dirtyPrice
    - Actual365Fixed
    - Date::weekday
    - std::vector::push_back
    - ext::make_shared<SwapRateHelper>
    - ActualActual
    - Natural
    - ZeroCouponBond::accruedAmount
    - ext::make_shared<DepositRateHelper>
    - FixedRateBond::previousCouponRate
    - FixedRateBond::NPV
    - FloatingRateBond::NPV
    - std::setw
    - FixedRateBond::accruedAmount
    - ZeroCouponBond::yield
    - setCouponPricer
    - ext::make_shared<Euribor6M>
    - ext::make_shared<BlackIborCouponPricer>
    - FloatingRateBond::previousCouponRate
    - auto::setCapletVolatility
    - Handle<Quote>
    - TARGET
    - ZeroCouponBond::cleanPrice
    - ext::make_shared<Euribor>
    - std::setprecision
    - Calendar::advance
    - QuantLib::io::rate
    - std::vector<Real>
    - Handle<OptionletVolatilityStructure>
    - FloatingRateBond::nextCouponRate
    - Period
    - FixedRateBond::cleanPrice
    - FixedRateBond::nextCouponRate
    - FloatingRateBond::dirtyPrice
    - FixedRateBond::yield
    - linkTo
    - ext::make_shared<ConstantOptionletVolatility>
    - std::vector<Rate>
    - FixedRateBond::dirtyPrice
    - FloatingRateBond::yield
    - FloatingRateBond::accruedAmount
    - ext::make_shared<DiscountingBondEngine>
    - FloatingRateBond::cleanPrice
    - FixedRateBond::setPricingEngine
    - FloatingRateBond::setPricingEngine
    - ZeroCouponBond::setPricingEngine
    - ext::make_shared<PiecewiseYieldCurve<Discount,LogLinear>>
    - QuantLib::detail::instance
    - what
    - RelinkableHandle::linkTo
    - Thirty360
    - auto::addFixing
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Actual360
      Src: /src/quantlib/Examples/Repo/Repo.cpp:59,1
    - Dst: NullCalendar
      Src: /src/quantlib/Examples/Repo/Repo.cpp:71,1
    - Dst: Thirty360
      Src: /src/quantlib/Examples/Repo/Repo.cpp:72,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/Repo/Repo.cpp:81,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Repo/Repo.cpp:84,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:84,1
    - Dst: ext::make_shared<FixedRateBond>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:111,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:114,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/Examples/Repo/Repo.cpp:119,1
    - Dst: ext::make_shared<DiscountingBondEngine>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:119,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Repo/Repo.cpp:121,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:121,1
    - Dst: auto::yield
      Src: /src/quantlib/Examples/Repo/Repo.cpp:122,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/Examples/Repo/Repo.cpp:134,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/Examples/Repo/Repo.cpp:134,1
    - Dst: auto::cleanPrice
      Src: /src/quantlib/Examples/Repo/Repo.cpp:147,1
    - Dst: auto::dirtyPrice
      Src: /src/quantlib/Examples/Repo/Repo.cpp:150,1
    - Dst: auto::accruedAmount
      Src: /src/quantlib/Examples/Repo/Repo.cpp:153,1
    - Dst: auto::accruedAmount
      Src: /src/quantlib/Examples/Repo/Repo.cpp:156,1
    - Dst: BondForward::spotIncome
      Src: /src/quantlib/Examples/Repo/Repo.cpp:159,1
    - Dst: BondForward::spotIncome
      Src: /src/quantlib/Examples/Repo/Repo.cpp:162,1
    - Dst: RelinkableHandle::discount
      Src: /src/quantlib/Examples/Repo/Repo.cpp:163,1
    - Dst: BondForward::NPV
      Src: /src/quantlib/Examples/Repo/Repo.cpp:169,1
    - Dst: BondForward::cleanForwardPrice
      Src: /src/quantlib/Examples/Repo/Repo.cpp:172,1
    - Dst: BondForward::forwardPrice
      Src: /src/quantlib/Examples/Repo/Repo.cpp:175,1
    - Dst: BondForward::impliedYield
      Src: /src/quantlib/Examples/Repo/Repo.cpp:178,1
    - Dst: auto::dirtyPrice
      Src: /src/quantlib/Examples/Repo/Repo.cpp:178,1
    - Dst: RelinkableHandle::zeroRate
      Src: /src/quantlib/Examples/Repo/Repo.cpp:185,1
    - Dst: what
      Src: /src/quantlib/Examples/Repo/Repo.cpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 214
    functionName: main
    functionSourceFile: /src/quantlib/Examples/Repo/Repo.cpp
    functionUses: 0
    functionsReached:
    - BondForward::NPV
    - auto::cleanPrice
    - Actual360
    - BondForward::impliedYield
    - RelinkableHandle::zeroRate
    - BondForward::cleanForwardPrice
    - ext::make_shared<FixedRateBond>
    - auto::accruedAmount
    - BondForward::forwardPrice
    - auto::setPricingEngine
    - BondForward::spotIncome
    - RelinkableHandle::discount
    - NullCalendar
    - std::vector<Rate>
    - auto::dirtyPrice
    - ext::make_shared<DiscountingBondEngine>
    - auto::yield
    - ext::make_shared<FlatForward>
    - QuantLib::detail::instance
    - what
    - RelinkableHandle::linkTo
    - Thirty360
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:56,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:61,1
    - Dst: ext::make_shared<Euribor3M>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:63,1
    - Dst: vector::reserve
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:70,1
    - Dst: vector::push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:72,1
    - Dst: ext::make_shared<SwapRateHelper>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:72,1
    - Dst: makeQuoteHandle
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:73,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:75,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:78,1
    - Dst: ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:81,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:82,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:82,1
    - Dst: auto::enableExtrapolation
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:83,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:85,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:86,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:109,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:109,1
    - Dst: Period
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:111,1
    - Dst: push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:112,1
    - Dst: push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:113,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:116,1
    - Dst: ext::make_shared<InterpolatedHazardRateCurve<BackwardFlat>>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:117,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:118,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:118,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:119,1
    - Dst: ext::make_shared<InterpolatedHazardRateCurve<BackwardFlat>>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:120,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:121,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:121,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:122,1
    - Dst: ext::make_shared<InterpolatedHazardRateCurve<BackwardFlat>>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:123,1
    - Dst: Actual360
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:124,1
    - Dst: TARGET
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:124,1
    - Dst: ext::make_shared<CounterpartyAdjSwapEngine>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:127,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:128,1
    - Dst: ext::make_shared<CounterpartyAdjSwapEngine>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:133,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:134,1
    - Dst: ext::make_shared<CounterpartyAdjSwapEngine>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:138,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:139,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:144,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:145,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:146,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:154,1
    - Dst: ActualActual
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:155,1
    - Dst: ext::make_shared<Euribor3M>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:158,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:158,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:160,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:162,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:162,1
    - Dst: Period
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:168,1
    - Dst: std::vector::size
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:180,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:181,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:182,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:183,1
    - Dst: fairRate
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:185,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:187,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:189,1
    - Dst: setprecision
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:190,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:191,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:193,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:194,1
    - Dst: fairRate
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:195,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:199,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:200,1
    - Dst: fairRate
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:201,1
    - Dst: setPricingEngine
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:204,1
    - Dst: setw
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:205,1
    - Dst: fairRate
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:206,1
    - Dst: what
      Src: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp:216,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 222
    functionName: main
    functionSourceFile: /src/quantlib/Examples/CVAIRS/CVAIRS.cpp
    functionUses: 0
    functionsReached:
    - Calendar::adjust
    - vector::push_back
    - std::vector::reserve
    - makeQuoteHandle
    - Actual360
    - ext::make_shared<PiecewiseYieldCurve<Discount, LogLinear>>
    - MakeVanillaSwap
    - setprecision
    - std::vector::emplace_back
    - std::vector::push_back
    - ext::make_shared<SwapRateHelper>
    - ActualActual
    - ext::make_shared<DiscountingSwapEngine>
    - setw
    - TARGET
    - ext::make_shared<InterpolatedHazardRateCurve<BackwardFlat>>
    - ext::make_shared<Euribor3M>
    - QuantLib::io::rate
    - ext::make_shared<CounterpartyAdjSwapEngine>
    - push_back
    - Period
    - auto::enableExtrapolation
    - enableExtrapolation
    - std::vector::size
    - Handle<YieldTermStructure>
    - vector::reserve
    - QuantLib::detail::instance
    - what
    - setPricingEngine
    - fairRate
    linkageType: ''
    returnType: int
    signature: int main(int, char* [])
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:31,1
    - Dst: date
      Src: /src/quantlib/ql/cashflow.cpp:32,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:39,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:40,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:44,1
    - Dst: ext::optional::has_value
      Src: /src/quantlib/ql/cashflow.cpp:45,1
    - Dst: QuantLib::Event::hasOccurred
      Src: /src/quantlib/ql/cashflow.cpp:48,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - ' refDate'
    - includeRefDate
    argTypes:
    - Date
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::CashFlow::hasOccurred
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - date
    - QuantLib::Event::hasOccurred
    - ext::optional::has_value
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: bool
    signature: "bool CashFlow::hasOccurred(const Date& refDate,\n                               ext::optional<bool>
      includeRefDate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlow::exCouponDate
      Src: /src/quantlib/ql/cashflow.cpp:53,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:54,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 61
    functionName: QuantLib::CashFlow::tradingExCoupon
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlow::exCouponDate
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: bool
    signature: bool CashFlow::tradingExCoupon(const Date& refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CashFlow>*>
      Src: /src/quantlib/ql/cashflow.cpp:64,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflow.cpp:66,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/cashflow.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: QuantLib::CashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CashFlow>*>
    - QuantLib::Event::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void CashFlow::accept(AcyclicVisitor& v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:31,1
    - Dst: date
      Src: /src/quantlib/ql/cashflow.cpp:32,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:39,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:40,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:44,1
    - Dst: ext::optional::has_value
      Src: /src/quantlib/ql/cashflow.cpp:45,1
    - Dst: QuantLib::Event::hasOccurred
      Src: /src/quantlib/ql/cashflow.cpp:48,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - ' refDate'
    - includeRefDate
    argTypes:
    - Date
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::CashFlow::hasOccurred
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - date
    - QuantLib::Event::hasOccurred
    - ext::optional::has_value
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: bool
    signature: "bool CashFlow::hasOccurred(const Date& refDate,\n                               ext::optional<bool>
      includeRefDate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlow::exCouponDate
      Src: /src/quantlib/ql/cashflow.cpp:53,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:54,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflow.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflow.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 61
    functionName: QuantLib::CashFlow::tradingExCoupon
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlow::exCouponDate
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: bool
    signature: bool CashFlow::tradingExCoupon(const Date& refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CashFlow>*>
      Src: /src/quantlib/ql/cashflow.cpp:64,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflow.cpp:66,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/cashflow.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: QuantLib::CashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflow.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CashFlow>*>
    - QuantLib::Event::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void CashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Exercise::Exercise
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Exercise(Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Exercise()
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Exercise()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Exercise::type
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::Exercise::date
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/exercise.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Exercise::dateAt
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date dateAt(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::EarlyExercise::EarlyExercise
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EarlyExercise(Type type,\n                      bool payoffAtExpiry
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::EarlyExercise::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool payoffAtExpiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Exercise::Exercise
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Exercise(Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Exercise()
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Exercise()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Exercise::type
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::Exercise::date
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/exercise.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Exercise::dateAt
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date dateAt(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::EarlyExercise::EarlyExercise
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EarlyExercise(Type type,\n                      bool payoffAtExpiry
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::EarlyExercise::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/exercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool payoffAtExpiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:29,1
    - Dst: empty
      Src: /src/quantlib/ql/exercise.cpp:29,1
    - Dst: back
      Src: /src/quantlib/ql/exercise.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::Exercise::lastDate
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - back
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Exercise::lastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:37,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' earliest'
    - ' latest'
    - payoffAtExpiry
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::AmericanExercise::AmericanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanExercise::AmericanExercise(const Date& earliest,\n                                       const
      Date& latest,\n                                       bool payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:47,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/exercise.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' latest'
    - payoffAtExpiry
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::AmericanExercise::AmericanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::minDate
    - std::vector<Date>
    linkageType: ''
    returnType: void
    signature: "void AmericanExercise::AmericanExercise(const Date& latest,\n                                       bool
      payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/exercise.cpp:55,1
    - Dst: std::sort
      Src: /src/quantlib/ql/exercise.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/exercise.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/exercise.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' dates'
    - payoffAtExpiry
    argTypes:
    - std::vector<Date>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: QuantLib::BermudanExercise::BermudanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::sort
    - begin
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BermudanExercise::BermudanExercise(const std::vector<Date>& dates,\n
      \                                      bool payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::EuropeanExercise::EuropeanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    linkageType: ''
    returnType: void
    signature: void EuropeanExercise::EuropeanExercise(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:29,1
    - Dst: empty
      Src: /src/quantlib/ql/exercise.cpp:29,1
    - Dst: back
      Src: /src/quantlib/ql/exercise.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::Exercise::lastDate
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - back
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Exercise::lastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:37,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' earliest'
    - ' latest'
    - payoffAtExpiry
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::AmericanExercise::AmericanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanExercise::AmericanExercise(const Date& earliest,\n                                       const
      Date& latest,\n                                       bool payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:47,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/exercise.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' latest'
    - payoffAtExpiry
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::AmericanExercise::AmericanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::minDate
    - std::vector<Date>
    linkageType: ''
    returnType: void
    signature: "void AmericanExercise::AmericanExercise(const Date& latest,\n                                       bool
      payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/exercise.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/exercise.cpp:55,1
    - Dst: std::sort
      Src: /src/quantlib/ql/exercise.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/exercise.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/exercise.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' dates'
    - payoffAtExpiry
    argTypes:
    - std::vector<Date>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: QuantLib::BermudanExercise::BermudanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::sort
    - begin
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BermudanExercise::BermudanExercise(const std::vector<Date>& dates,\n
      \                                      bool payoffAtExpiry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/exercise.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::EuropeanExercise::EuropeanExercise
    functionSourceFile: /src/quantlib/ql/exercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    linkageType: ''
    returnType: void
    signature: void EuropeanExercise::EuropeanExercise(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~PricingEngine() override
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PricingEngine() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~arguments()
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~results()
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~results()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::GenericEngine::getArguments
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PricingEngine::arguments
    signature: PricingEngine::arguments * getArguments() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::GenericEngine::getResults
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PricingEngine::results
    signature: PricingEngine::results * getResults() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/pricingengine.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::GenericEngine::reset
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericEngine::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/pricingengine.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::GenericEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~PricingEngine() override
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PricingEngine() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~arguments()
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~results()
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~results()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::GenericEngine::getArguments
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PricingEngine::arguments
    signature: PricingEngine::arguments * getArguments() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::GenericEngine::getResults
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PricingEngine::results
    signature: PricingEngine::results * getResults() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/pricingengine.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::GenericEngine::reset
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GenericEngine::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/pricingengine.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::GenericEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengine.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 99
    functionName: QL_FAIL
    functionSourceFile: /src/quantlib/ql/errors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_FAIL(message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - condition
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 113
    functionName: QL_ASSERT
    functionSourceFile: /src/quantlib/ql/errors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_ASSERT(condition,message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - condition
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 126
    functionName: QL_REQUIRE
    functionSourceFile: /src/quantlib/ql/errors.hpp
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_REQUIRE(condition,message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - condition
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 139
    functionName: QL_ENSURE
    functionSourceFile: /src/quantlib/ql/errors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_ENSURE(condition,message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::IntervalPrice::open
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real open() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::IntervalPrice::close
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real close() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::IntervalPrice::high
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real high() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::IntervalPrice::low
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real low() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::IntervalPrice::open
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real open() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::IntervalPrice::close
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real close() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::IntervalPrice::high
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real high() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::IntervalPrice::low
    functionSourceFile: /src/quantlib/ql/prices.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real low() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~discretization()
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~discretization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: ~StochasticProcess() override
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StochasticProcess() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::StochasticProcess::StochasticProcess
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StochasticProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 168
    functionName: ~discretization()
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~discretization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::StochasticProcess1D::StochasticProcess1D
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StochasticProcess1D()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::StochasticProcess1D::size
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcess1D::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/stochasticprocess.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: QuantLib::StochasticProcess1D::initialValues
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcess1D::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:256,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:256,1
    - Dst: QuantLib::StochasticProcess1D::drift
      Src: /src/quantlib/ql/stochasticprocess.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 260
    functionName: QuantLib::StochasticProcess1D::drift
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::drift
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcess1D::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:264,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:264,1
    - Dst: QuantLib::StochasticProcess1D::diffusion
      Src: /src/quantlib/ql/stochasticprocess.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::StochasticProcess1D::diffusion
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::diffusion
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix StochasticProcess1D::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:273,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:273,1
    - Dst: QuantLib::StochasticProcess1D::expectation
      Src: /src/quantlib/ql/stochasticprocess.hpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: QuantLib::StochasticProcess1D::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::expectation
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::expectation(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:282,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:282,1
    - Dst: QuantLib::StochasticProcess1D::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 286
    functionName: QuantLib::StochasticProcess1D::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess1D::stdDeviation(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:291,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:291,1
    - Dst: QuantLib::StochasticProcess1D::variance
      Src: /src/quantlib/ql/stochasticprocess.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 295
    functionName: QuantLib::StochasticProcess1D::covariance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::variance
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess1D::covariance(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:300,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:301,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:301,1
    - Dst: QuantLib::StochasticProcess1D::evolve
      Src: /src/quantlib/ql/stochasticprocess.hpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: QuantLib::StochasticProcess1D::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::evolve
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::evolve(Time t0, const Array& x0,\n                                             Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:310,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:310,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:311,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:311,1
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.hpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 315
    functionName: QuantLib::StochasticProcess1D::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess1D::apply
    - QuantLib::StochasticProcess1D::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::apply(const Array& x0,\n                                            const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~discretization()
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~discretization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: ~StochasticProcess() override
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StochasticProcess() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::StochasticProcess::StochasticProcess
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StochasticProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 168
    functionName: ~discretization()
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~discretization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::StochasticProcess1D::StochasticProcess1D
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StochasticProcess1D()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::StochasticProcess1D::size
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcess1D::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/stochasticprocess.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: QuantLib::StochasticProcess1D::initialValues
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcess1D::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:256,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:256,1
    - Dst: QuantLib::StochasticProcess1D::drift
      Src: /src/quantlib/ql/stochasticprocess.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 260
    functionName: QuantLib::StochasticProcess1D::drift
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::drift
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcess1D::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:264,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:264,1
    - Dst: QuantLib::StochasticProcess1D::diffusion
      Src: /src/quantlib/ql/stochasticprocess.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::StochasticProcess1D::diffusion
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::diffusion
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix StochasticProcess1D::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:273,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:273,1
    - Dst: QuantLib::StochasticProcess1D::expectation
      Src: /src/quantlib/ql/stochasticprocess.hpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: QuantLib::StochasticProcess1D::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::expectation
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::expectation(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:282,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:282,1
    - Dst: QuantLib::StochasticProcess1D::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 286
    functionName: QuantLib::StochasticProcess1D::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess1D::stdDeviation(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:291,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:291,1
    - Dst: QuantLib::StochasticProcess1D::variance
      Src: /src/quantlib/ql/stochasticprocess.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 295
    functionName: QuantLib::StochasticProcess1D::covariance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::variance
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess1D::covariance(\n                                    Time
      t0, const Array& x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:300,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:301,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:301,1
    - Dst: QuantLib::StochasticProcess1D::evolve
      Src: /src/quantlib/ql/stochasticprocess.hpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: QuantLib::StochasticProcess1D::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::size
    - QuantLib::StochasticProcess1D::evolve
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::evolve(Time t0, const Array& x0,\n                                             Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:310,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:310,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/stochasticprocess.hpp:311,1
    - Dst: QuantLib::StochasticProcess1D::size
      Src: /src/quantlib/ql/stochasticprocess.hpp:311,1
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.hpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 315
    functionName: QuantLib::StochasticProcess1D::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::apply
    - QuantLib::StochasticProcess1D::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess1D::apply(const Array& x0,\n                                            const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - center
    - dx
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::CenteredGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array CenteredGrid(Real center, Real dx, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - xMin
    - xMax
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: QuantLib::BoundedGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array BoundedGrid(Real xMin, Real xMax, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/grid.hpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/grid.hpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/grid.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - xMin
    - xMax
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::BoundedLogGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array BoundedLogGrid(Real xMin, Real xMax, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - center
    - dx
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::CenteredGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array CenteredGrid(Real center, Real dx, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - xMin
    - xMax
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: QuantLib::BoundedGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array BoundedGrid(Real xMin, Real xMax, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/grid.hpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/grid.hpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/grid.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - xMin
    - xMax
    - steps
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::BoundedLogGrid
    functionSourceFile: /src/quantlib/ql/grid.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array BoundedLogGrid(Real xMin, Real xMax, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:27,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/index.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::Index::addFixing
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Index::addFixings
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: "void Index::addFixing(const Date& fixingDate,\n                          Real
      fixing,\n                          bool forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:33,1
    - Dst: dates
      Src: /src/quantlib/ql/index.cpp:36,1
    - Dst: values
      Src: /src/quantlib/ql/index.cpp:37,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/index.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' t'
    - forceOverwrite
    argTypes:
    - TimeSeries<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::Index::addFixings
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 2
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - dates
    - QuantLib::Index::addFixings
    - QuantLib::Index::checkNativeFixingsAllowed
    - values
    linkageType: ''
    returnType: void
    signature: "void Index::addFixings(const TimeSeries<Real>& t,\n                           bool
      forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::Index::clearFixings
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: void Index::clearFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/index.cpp:51,1
    - Dst: QuantLib::Index::allowsNativeFixings
      Src: /src/quantlib/ql/index.cpp:51,1
    - Dst: name
      Src: /src/quantlib/ql/index.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::Index::checkNativeFixingsAllowed
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 3
    functionsReached:
    - name
    - QuantLib::Index::allowsNativeFixings
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Index::checkNativeFixingsAllowed()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:27,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/index.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 2
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::Index::addFixing
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Index::addFixings
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: "void Index::addFixing(const Date& fixingDate,\n                          Real
      fixing,\n                          bool forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:33,1
    - Dst: dates
      Src: /src/quantlib/ql/index.cpp:36,1
    - Dst: values
      Src: /src/quantlib/ql/index.cpp:37,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/index.cpp:38,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/index.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' t'
    - forceOverwrite
    argTypes:
    - TimeSeries<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::Index::addFixings
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 4
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - dates
    - QuantLib::Index::addFixings
    - QuantLib::Index::checkNativeFixingsAllowed
    - values
    linkageType: ''
    returnType: void
    signature: "void Index::addFixings(const TimeSeries<Real>& t,\n                           bool
      forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::Index::clearFixings
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: void Index::clearFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/index.cpp:51,1
    - Dst: QuantLib::Index::allowsNativeFixings
      Src: /src/quantlib/ql/index.cpp:51,1
    - Dst: name
      Src: /src/quantlib/ql/index.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::Index::checkNativeFixingsAllowed
    functionSourceFile: /src/quantlib/ql/index.cpp
    functionUses: 6
    functionsReached:
    - name
    - QuantLib::Index::allowsNativeFixings
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Index::checkNativeFixingsAllowed()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/option.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/option.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - exercise
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Option::Option
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Option(ext::shared_ptr<Payoff> payoff, ext::shared_ptr<Exercise>
      exercise)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::Option::payoff
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> payoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Option::exercise
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Exercise>
    signature: ext::shared_ptr<Exercise> exercise() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Option::arguments::arguments
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Option::arguments::validate
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/option.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Greeks::reset
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/option.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MoreGreeks::reset
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Option::arguments*>
      Src: /src/quantlib/ql/option.hpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::Option::setupArguments
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Option::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Option::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/option.hpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 109
    functionName: '& operator<<(std::ostream& out, Option::Type type)'
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/option.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/option.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - exercise
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Option::Option
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Option(ext::shared_ptr<Payoff> payoff, ext::shared_ptr<Exercise>
      exercise)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::Option::payoff
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> payoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Option::exercise
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Exercise>
    signature: ext::shared_ptr<Exercise> exercise() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Option::arguments::arguments
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Option::arguments::validate
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/option.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Greeks::reset
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/option.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MoreGreeks::reset
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Option::arguments*>
      Src: /src/quantlib/ql/option.hpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/option.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::Option::setupArguments
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Option::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Option::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/option.hpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 109
    functionName: '& operator<<(std::ostream& out, Option::Type type)'
    functionSourceFile: /src/quantlib/ql/option.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~LocalVolatilityEstimator()
    functionSourceFile: /src/quantlib/ql/volatilitymodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LocalVolatilityEstimator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~VolatilityCompositor()
    functionSourceFile: /src/quantlib/ql/volatilitymodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityCompositor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~LocalVolatilityEstimator()
    functionSourceFile: /src/quantlib/ql/volatilitymodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LocalVolatilityEstimator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~VolatilityCompositor()
    functionSourceFile: /src/quantlib/ql/volatilitymodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityCompositor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: ~TermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::TermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter TermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::timeFromReference
      Src: /src/quantlib/ql/termstructure.hpp:120,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::timeFromReference
    - maxDate
    linkageType: ''
    returnType: Time
    signature: Time TermStructure::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::TermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar TermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.hpp:128,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::TermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - QL_REQUIRE
    linkageType: ''
    returnType: Natural
    signature: Natural TermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::dayCounter
      Src: /src/quantlib/ql/termstructure.hpp:134,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::TermStructure::timeFromReference
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TermStructure::dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time TermStructure::timeFromReference(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: ~TermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::TermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter TermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::timeFromReference
      Src: /src/quantlib/ql/termstructure.hpp:120,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::timeFromReference
    - maxDate
    linkageType: ''
    returnType: Time
    signature: Time TermStructure::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::TermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar TermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.hpp:128,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::TermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - QL_REQUIRE
    linkageType: ''
    returnType: Natural
    signature: Natural TermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::dayCounter
      Src: /src/quantlib/ql/termstructure.hpp:134,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::TermStructure::timeFromReference
    functionSourceFile: /src/quantlib/ql/termstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TermStructure::dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time TermStructure::timeFromReference(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/version.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: std::size_t compiledBoostVersion()
    functionSourceFile: /src/quantlib/ql/version.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::size_t>
    linkageType: ''
    returnType: QL_FORCE_NONINLINE
    signature: QL_FORCE_NONINLINE std::size_t compiledBoostVersion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/version.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: std::size_t compiledBoostVersion()
    functionSourceFile: /src/quantlib/ql/version.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::size_t>
    linkageType: ''
    returnType: QL_FORCE_NONINLINE
    signature: QL_FORCE_NONINLINE std::size_t compiledBoostVersion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/rebatedexercise.cpp:30,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/rebatedexercise.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' exercise'
    - rebate
    - rebateSettlementDays
    - rebatePaymentCalendar
    - rebatePaymentConvention
    argTypes:
    - Exercise
    - Real
    - Natural
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::RebatedExercise::RebatedExercise
    functionSourceFile: /src/quantlib/ql/rebatedexercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - dates
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RebatedExercise::RebatedExercise(const Exercise& exercise,\n
      \                                    const Real rebate,\n                                     const
      Natural rebateSettlementDays,\n                                     Calendar
      rebatePaymentCalendar,\n                                     const BusinessDayConvention
      rebatePaymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/rebatedexercise.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.cpp:50,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' exercise'
    - ' rebates'
    - rebateSettlementDays
    - rebatePaymentCalendar
    - rebatePaymentConvention
    argTypes:
    - Exercise
    - std::vector<Real>
    - Natural
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 53
    functionName: QuantLib::RebatedExercise::RebatedExercise
    functionSourceFile: /src/quantlib/ql/rebatedexercise.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - dates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RebatedExercise::RebatedExercise(const Exercise& exercise,\n
      \                                    const std::vector<Real>& rebates,\n                                     const
      Natural rebateSettlementDays,\n                                     Calendar
      rebatePaymentCalendar,\n                                     const BusinessDayConvention
      rebatePaymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/rebatedexercise.cpp:30,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/rebatedexercise.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' exercise'
    - rebate
    - rebateSettlementDays
    - rebatePaymentCalendar
    - rebatePaymentConvention
    argTypes:
    - Exercise
    - Real
    - Natural
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::RebatedExercise::RebatedExercise
    functionSourceFile: /src/quantlib/ql/rebatedexercise.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - dates
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RebatedExercise::RebatedExercise(const Exercise& exercise,\n
      \                                    const Real rebate,\n                                     const
      Natural rebateSettlementDays,\n                                     Calendar
      rebatePaymentCalendar,\n                                     const BusinessDayConvention
      rebatePaymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/rebatedexercise.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.cpp:50,1
    - Dst: dates
      Src: /src/quantlib/ql/rebatedexercise.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' exercise'
    - ' rebates'
    - rebateSettlementDays
    - rebatePaymentCalendar
    - rebatePaymentConvention
    argTypes:
    - Exercise
    - std::vector<Real>
    - Natural
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 53
    functionName: QuantLib::RebatedExercise::RebatedExercise
    functionSourceFile: /src/quantlib/ql/rebatedexercise.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - dates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RebatedExercise::RebatedExercise(const Exercise& exercise,\n
      \                                    const std::vector<Real>& rebates,\n                                     const
      Natural rebateSettlementDays,\n                                     Calendar
      rebatePaymentCalendar,\n                                     const BusinessDayConvention
      rebatePaymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeSeries()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TimeSeries(DateIterator dBegin, DateIterator dEnd,\n                   ValueIterator
      vBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - ' firstDate'
    - begin
    - end
    argTypes:
    - Date
    - ValueIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TimeSeries(const Date& firstDate,\n                   ValueIterator
      begin, ValueIterator end)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/timeseries.hpp:97,1
    - Dst: cend
      Src: /src/quantlib/ql/timeseries.hpp:98,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/timeseries.hpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: operator[](const Date& d) const
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - cend
    - find
    - QuantLib::Null
    linkageType: ''
    returnType: T
    signature: T operator[](const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    - Dst: std::pair<Date, T>
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& operator[](const Date& d)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - std::pair<Date, T>
    - insert
    - QuantLib::Null
    linkageType: ''
    returnType: T
    signature: T & operator[](const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::TimeSeries::reverse
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reverse(const container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/timeseries.hpp:125,1
    - Dst: QuantLib::TimeSeries::end
      Src: /src/quantlib/ql/timeseries.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries::end
    - const_reverse_iterator
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/timeseries.hpp:128,1
    - Dst: QuantLib::TimeSeries::begin
      Src: /src/quantlib/ql/timeseries.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_iterator
    - QuantLib::TimeSeries::begin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: QuantLib::TimeSeries::reverse
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reverse(const container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::rbegin
      Src: /src/quantlib/ql/timeseries.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::rend
      Src: /src/quantlib/ql/timeseries.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/quantlib/ql/timeseries.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: QuantLib::TimeSeries::begin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - cbegin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/quantlib/ql/timeseries.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::TimeSeries::end
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::reverse
      Src: /src/quantlib/ql/timeseries.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: QuantLib::TimeSeries::crbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries::reverse
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::reverse
      Src: /src/quantlib/ql/timeseries.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::TimeSeries::crend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries::reverse
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::crbegin
      Src: /src/quantlib/ql/timeseries.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::crbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::crend
      Src: /src/quantlib/ql/timeseries.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::crend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - container_value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& get_time (const container_value_type& v)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & get_time (const container_value_type& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - container_value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& get_value (const container_value_type& v)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & get_value (const container_value_type& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timeseries.hpp:201,1
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/timeseries.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::TimeSeries<T,C>::firstDate
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::empty
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date TimeSeries<T,C>::firstDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timeseries.hpp:207,1
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:207,1
    - Dst: rbegin
      Src: /src/quantlib/ql/timeseries.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::TimeSeries<T,C>::lastDate
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - rbegin
    - QuantLib::TimeSeries<T,C>::empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date TimeSeries<T,C>::lastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: QuantLib::TimeSeries<T,C>::size
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    linkageType: ''
    returnType: Size
    signature: Size TimeSeries<T,C>::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::TimeSeries<T,C>::empty
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::TimeSeries<T,C>::empty
    linkageType: ''
    returnType: bool
    signature: bool TimeSeries<T,C>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/timeseries.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: QuantLib::TimeSeries<T,C>::cbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - begin
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::cbegin()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: end
      Src: /src/quantlib/ql/timeseries.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::TimeSeries<T,C>::cend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - end
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::cend() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::find
      Src: /src/quantlib/ql/timeseries.hpp:236,1
    - Dst: end
      Src: /src/quantlib/ql/timeseries.hpp:237,1
    - Dst: Null<T>
      Src: /src/quantlib/ql/timeseries.hpp:238,1
    - Dst: QuantLib::TimeSeries<T,C>::find
      Src: /src/quantlib/ql/timeseries.hpp:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 242
    functionName: QuantLib::TimeSeries<T,C>::find
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries<T,C>::find
    - end
    - Null<T>
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::find(const
      Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/timeseries.hpp:247,1
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:247,1
    - Dst: std::transform
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: QuantLib::TimeSeries<T,C>::cbegin
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: QuantLib::TimeSeries<T,C>::cend
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: QuantLib::TimeSeries<T,C>::dates
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    - QuantLib::TimeSeries<T,C>::cend
    - std::vector::reserve
    - QuantLib::TimeSeries<T,C>::cbegin
    - std::transform
    - std::back_inserter
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> TimeSeries<T,C>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/timeseries.hpp:256,1
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:256,1
    - Dst: std::transform
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: QuantLib::TimeSeries<T,C>::cbegin
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: QuantLib::TimeSeries<T,C>::cend
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 260
    functionName: QuantLib::TimeSeries<T,C>::values
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    - QuantLib::TimeSeries<T,C>::cend
    - std::vector::reserve
    - QuantLib::TimeSeries<T,C>::cbegin
    - std::transform
    - std::back_inserter
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> TimeSeries<T,C>::values() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeSeries()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TimeSeries(DateIterator dBegin, DateIterator dEnd,\n                   ValueIterator
      vBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - ' firstDate'
    - begin
    - end
    argTypes:
    - Date
    - ValueIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::TimeSeries::TimeSeries
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TimeSeries(const Date& firstDate,\n                   ValueIterator
      begin, ValueIterator end)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/timeseries.hpp:97,1
    - Dst: cend
      Src: /src/quantlib/ql/timeseries.hpp:98,1
    - Dst: Null<T>
      Src: /src/quantlib/ql/timeseries.hpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: operator[](const Date& d) const
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - cend
    - Null<T>
    - find
    linkageType: ''
    returnType: T
    signature: T operator[](const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    - Dst: std::pair<Date, T>
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    - Dst: Null<T>
      Src: /src/quantlib/ql/timeseries.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& operator[](const Date& d)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - std::pair<Date, T>
    - Null<T>
    - insert
    linkageType: ''
    returnType: T
    signature: T & operator[](const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::TimeSeries::reverse
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reverse(const container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/timeseries.hpp:125,1
    - Dst: QuantLib::TimeSeries::end
      Src: /src/quantlib/ql/timeseries.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::end
    - const_reverse_iterator
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/timeseries.hpp:128,1
    - Dst: QuantLib::TimeSeries::begin
      Src: /src/quantlib/ql/timeseries.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - const_reverse_iterator
    - QuantLib::TimeSeries::begin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: QuantLib::TimeSeries::reverse
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reverse(const container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::rbegin
      Src: /src/quantlib/ql/timeseries.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeSeries::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::rend
      Src: /src/quantlib/ql/timeseries.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeSeries::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/quantlib/ql/timeseries.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: QuantLib::TimeSeries::begin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - cbegin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/quantlib/ql/timeseries.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::TimeSeries::end
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::reverse
      Src: /src/quantlib/ql/timeseries.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: QuantLib::TimeSeries::crbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::reverse
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::reverse
      Src: /src/quantlib/ql/timeseries.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::TimeSeries::crend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeSeries::reverse
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::crbegin
      Src: /src/quantlib/ql/timeseries.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: QuantLib::TimeSeries::rbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeSeries::crbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries::crend
      Src: /src/quantlib/ql/timeseries.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: QuantLib::TimeSeries::rend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeSeries::crend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - container_value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& get_time (const container_value_type& v)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & get_time (const container_value_type& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - container_value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& get_value (const container_value_type& v)'
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & get_value (const container_value_type& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timeseries.hpp:201,1
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/timeseries.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::TimeSeries<T,C>::firstDate
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::empty
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date TimeSeries<T,C>::firstDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timeseries.hpp:207,1
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:207,1
    - Dst: rbegin
      Src: /src/quantlib/ql/timeseries.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::TimeSeries<T,C>::lastDate
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - rbegin
    - QuantLib::TimeSeries<T,C>::empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date TimeSeries<T,C>::lastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: QuantLib::TimeSeries<T,C>::size
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    linkageType: ''
    returnType: Size
    signature: Size TimeSeries<T,C>::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::empty
      Src: /src/quantlib/ql/timeseries.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::TimeSeries<T,C>::empty
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::TimeSeries<T,C>::empty
    linkageType: ''
    returnType: bool
    signature: bool TimeSeries<T,C>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/timeseries.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: QuantLib::TimeSeries<T,C>::cbegin
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - begin
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::cbegin()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: end
      Src: /src/quantlib/ql/timeseries.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::TimeSeries<T,C>::cend
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - end
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::cend() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeSeries<T,C>::find
      Src: /src/quantlib/ql/timeseries.hpp:236,1
    - Dst: end
      Src: /src/quantlib/ql/timeseries.hpp:237,1
    - Dst: Null<T>
      Src: /src/quantlib/ql/timeseries.hpp:238,1
    - Dst: QuantLib::TimeSeries<T,C>::find
      Src: /src/quantlib/ql/timeseries.hpp:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 242
    functionName: QuantLib::TimeSeries<T,C>::find
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeSeries<T,C>::find
    - end
    - Null<T>
    linkageType: ''
    returnType: typename TimeSeries<T,C>::const_iterator
    signature: typename TimeSeries<T,C>::const_iterator TimeSeries<T,C>::find(const
      Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/timeseries.hpp:247,1
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:247,1
    - Dst: std::transform
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: QuantLib::TimeSeries<T,C>::cbegin
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: QuantLib::TimeSeries<T,C>::cend
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timeseries.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: QuantLib::TimeSeries<T,C>::dates
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    - QuantLib::TimeSeries<T,C>::cend
    - std::vector::reserve
    - QuantLib::TimeSeries<T,C>::cbegin
    - std::transform
    - std::back_inserter
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> TimeSeries<T,C>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/timeseries.hpp:256,1
    - Dst: QuantLib::TimeSeries<T,C>::size
      Src: /src/quantlib/ql/timeseries.hpp:256,1
    - Dst: std::transform
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: QuantLib::TimeSeries<T,C>::cbegin
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: QuantLib::TimeSeries<T,C>::cend
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timeseries.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 260
    functionName: QuantLib::TimeSeries<T,C>::values
    functionSourceFile: /src/quantlib/ql/timeseries.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::size
    - QuantLib::TimeSeries<T,C>::cend
    - std::vector::reserve
    - QuantLib::TimeSeries<T,C>::cbegin
    - std::transform
    - std::back_inserter
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> TimeSeries<T,C>::values() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~Payoff()
    functionSourceFile: /src/quantlib/ql/payoff.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Payoff()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Payoff>*>
      Src: /src/quantlib/ql/payoff.hpp:59,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/payoff.hpp:61,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/payoff.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Payoff::accept
    functionSourceFile: /src/quantlib/ql/payoff.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<Payoff>*>
    linkageType: ''
    returnType: void
    signature: void Payoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~Payoff()
    functionSourceFile: /src/quantlib/ql/payoff.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Payoff()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Payoff>*>
      Src: /src/quantlib/ql/payoff.hpp:59,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/payoff.hpp:61,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/payoff.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Payoff::accept
    functionSourceFile: /src/quantlib/ql/payoff.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<Payoff>*>
    linkageType: ''
    returnType: void
    signature: void Payoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CashFlow() override
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CashFlow() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CashFlow::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CashFlow::exCouponDate
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date exCouponDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflow.hpp:84,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflow.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - CashFlow
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: "operator()(const CashFlow& c1,\n                        const CashFlow&
      c2) const"
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const CashFlow& c1,\n                        const
      CashFlow& c2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CashFlow() override
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CashFlow() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CashFlow::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CashFlow::exCouponDate
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date exCouponDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflow.hpp:84,1
    - Dst: date
      Src: /src/quantlib/ql/cashflow.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - CashFlow
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: "operator()(const CashFlow& c1,\n                        const CashFlow&
      c2) const"
    functionSourceFile: /src/quantlib/ql/cashflow.hpp
    functionUses: 0
    functionsReached:
    - date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const CashFlow& c1,\n                        const
      CashFlow& c2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dc
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(DayCounter dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:30,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - cal
    - dc
    argTypes:
    - Date
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(const Date& referenceDate, Calendar
      cal, DayCounter dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructure.cpp:36,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - settlementDays
    - cal
    - dc
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(Natural settlementDays, Calendar
      cal, DayCounter dc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructure.cpp:41,1
    - Dst: calendar
      Src: /src/quantlib/ql/termstructure.cpp:42,1
    - Dst: settlementDays
      Src: /src/quantlib/ql/termstructure.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: '& TermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - settlementDays
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Date
    signature: Date & TermStructure::referenceDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructure.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::TermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void TermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::TermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - allowsExtrapolation
    - referenceDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TermStructure::checkRange(const Date& d,\n                                   bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:68,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructure.cpp:68,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::TermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::maxTime
    - allowsExtrapolation
    - close_enough
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TermStructure::checkRange(Time t,\n                                   bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dc
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(DayCounter dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:30,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructure.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - cal
    - dc
    argTypes:
    - Date
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Natural>
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(const Date& referenceDate, Calendar
      cal, DayCounter dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructure.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructure.cpp:36,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - settlementDays
    - cal
    - dc
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::TermStructure::TermStructure
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void TermStructure::TermStructure(Natural settlementDays, Calendar
      cal, DayCounter dc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructure.cpp:41,1
    - Dst: calendar
      Src: /src/quantlib/ql/termstructure.cpp:42,1
    - Dst: settlementDays
      Src: /src/quantlib/ql/termstructure.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: '& TermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - settlementDays
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Date
    signature: Date & TermStructure::referenceDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructure.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::TermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void TermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructure.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.cpp:59,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructure.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::TermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - allowsExtrapolation
    - referenceDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TermStructure::checkRange(const Date& d,\n                                   bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructure.cpp:68,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructure.cpp:68,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:69,1
    - Dst: QuantLib::TermStructure::maxTime
      Src: /src/quantlib/ql/termstructure.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::TermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::maxTime
    - allowsExtrapolation
    - close_enough
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TermStructure::checkRange(Time t,\n                                   bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '&rebates() const'
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &rebates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionName: QuantLib::RebatedExercise::rebate
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real RebatedExercise::rebate(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.hpp:72,1
    - Dst: advance
      Src: /src/quantlib/ql/rebatedexercise.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::RebatedExercise::rebatePaymentDate
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached:
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date RebatedExercise::rebatePaymentDate(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '&rebates() const'
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &rebates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/rebatedexercise.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionName: QuantLib::RebatedExercise::rebate
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real RebatedExercise::rebate(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/rebatedexercise.hpp:72,1
    - Dst: advance
      Src: /src/quantlib/ql/rebatedexercise.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::RebatedExercise::rebatePaymentDate
    functionSourceFile: /src/quantlib/ql/rebatedexercise.hpp
    functionUses: 0
    functionsReached:
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date RebatedExercise::rebatePaymentDate(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Money()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::Money::Settings::Settings
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/money.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - currency
    - value
    argTypes:
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Money::Money(Currency currency, Decimal value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/money.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - currency
    argTypes:
    - Decimal
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Money::Money(Decimal value, Currency currency)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: '& Money::currency() const'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::Money::value
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Decimal
    signature: Decimal Money::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Money::Money
      Src: /src/quantlib/ql/money.hpp:182,1
    - Dst: rounding
      Src: /src/quantlib/ql/money.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::Money::rounded
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Money::Money
    - rounding
    linkageType: ''
    returnType: Money
    signature: Money Money::rounded() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: Money::operator+() const
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money Money::operator+() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: Money::operator-() const
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money Money::operator-() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: '& Money::operator*=(Decimal x)'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator*=(Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& Money::operator/=(Decimal x)'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator/=(Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: operator+(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator+(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: operator-(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator-(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Money
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: operator*(const Money& m, Decimal x)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator*(const Money& m, Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Decimal
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: operator*(Decimal x, const Money& m)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator*(Decimal x, const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Money
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: operator/(const Money& m, Decimal x)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator/(const Money& m, Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: operator!=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: operator>(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: operator>=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - value
    - ' c'
    argTypes:
    - Decimal
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: operator*(Decimal value, const Currency& c)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money operator*(Decimal value, const Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c'
    - value
    argTypes:
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionName: operator*(const Currency& c, Decimal value)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money operator*(const Currency& c, Decimal value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Money()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::Money::Settings::Settings
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/money.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - currency
    - value
    argTypes:
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 1
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Money::Money(Currency currency, Decimal value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/money.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - currency
    argTypes:
    - Decimal
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::Money::Money
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 1
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Money::Money(Decimal value, Currency currency)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: '& Money::currency() const'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::Money::value
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Decimal
    signature: Decimal Money::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Money::Money
      Src: /src/quantlib/ql/money.hpp:182,1
    - Dst: rounding
      Src: /src/quantlib/ql/money.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::Money::rounded
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Money::Money
    - rounding
    linkageType: ''
    returnType: Money
    signature: Money Money::rounded() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: Money::operator+() const
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money Money::operator+() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: Money::operator-() const
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money Money::operator-() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: '& Money::operator*=(Decimal x)'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator*=(Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& Money::operator/=(Decimal x)'
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator/=(Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: operator+(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator+(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: operator-(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator-(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Money
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: operator*(const Money& m, Decimal x)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator*(const Money& m, Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Decimal
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: operator*(Decimal x, const Money& m)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator*(Decimal x, const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Money
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: operator/(const Money& m, Decimal x)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money operator/(const Money& m, Decimal x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: operator!=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: operator>(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: operator>=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - value
    - ' c'
    argTypes:
    - Decimal
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: operator*(Decimal value, const Currency& c)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money operator*(Decimal value, const Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Money
      Src: /src/quantlib/ql/money.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c'
    - value
    argTypes:
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionName: operator*(const Currency& c, Decimal value)
    functionSourceFile: /src/quantlib/ql/money.hpp
    functionUses: 0
    functionsReached:
    - Money
    linkageType: ''
    returnType: Money
    signature: Money operator*(const Currency& c, Decimal value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.cpp:30,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.cpp:33,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.cpp:35,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/timegrid.cpp:37,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/timegrid.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - end
    - steps
    argTypes:
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    - reserve
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TimeGrid::TimeGrid(Time end, Size steps)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::closestIndex
      Src: /src/quantlib/ql/timegrid.cpp:44,1
    - Dst: close_enough
      Src: /src/quantlib/ql/timegrid.cpp:45,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.cpp:48,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:49,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:51,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:53,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.cpp:53,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:55,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:57,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:59,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.cpp:59,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:69,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:71,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:73,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 78
    functionName: QuantLib::TimeGrid::index
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeGrid::back
    - close_enough
    - std::setprecision
    - QL_FAIL
    - QuantLib::TimeGrid::front
    - QuantLib::TimeGrid::closestIndex
    linkageType: ''
    returnType: Size
    signature: Size TimeGrid::index(Time t) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.cpp:81,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.cpp:81,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/timegrid.cpp:82,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.cpp:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 95
    functionName: QuantLib::TimeGrid::closestIndex
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeGrid::begin
    - std::lower_bound
    - QuantLib::TimeGrid::end
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: Size
    signature: Size TimeGrid::closestIndex(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.cpp:30,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.cpp:33,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.cpp:35,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/timegrid.cpp:37,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/timegrid.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - end
    - steps
    argTypes:
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    - reserve
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TimeGrid::TimeGrid(Time end, Size steps)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::closestIndex
      Src: /src/quantlib/ql/timegrid.cpp:44,1
    - Dst: close_enough
      Src: /src/quantlib/ql/timegrid.cpp:45,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.cpp:48,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:49,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:51,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:53,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.cpp:53,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:55,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:57,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:59,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.cpp:59,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/timegrid.cpp:69,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:71,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:73,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/timegrid.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 78
    functionName: QuantLib::TimeGrid::index
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeGrid::back
    - close_enough
    - std::setprecision
    - QL_FAIL
    - QuantLib::TimeGrid::front
    - QuantLib::TimeGrid::closestIndex
    linkageType: ''
    returnType: Size
    signature: Size TimeGrid::index(Time t) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.cpp:81,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.cpp:81,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/timegrid.cpp:82,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.cpp:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 95
    functionName: QuantLib::TimeGrid::closestIndex
    functionSourceFile: /src/quantlib/ql/timegrid.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeGrid::begin
    - std::lower_bound
    - QuantLib::TimeGrid::end
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: Size
    signature: Size TimeGrid::closestIndex(Time t) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:32,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:33,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:36,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:39,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:39,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 4
    argNames:
    - bid
    - ask
    - last
    - close
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 44
    functionName: QuantLib::midEquivalent
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Null
    linkageType: ''
    returnType: Real
    signature: "Real midEquivalent(const Real bid,\n                       const Real
      ask,\n                       const Real last,\n                       const
      Real close)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:49,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:51,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - bid
    - ask
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::midSafe
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Null
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real midSafe(const Real bid,\n                 const Real ask)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:59,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::IntervalPrice::IntervalPrice
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::IntervalPrice()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - open
    - close
    - high
    - low
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::IntervalPrice::IntervalPrice
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::IntervalPrice(Real open, Real close, Real high,
      Real low)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/prices.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - t
    argTypes:
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: QuantLib::IntervalPrice::value
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real IntervalPrice::value(IntervalPrice::Type t) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/prices.cpp:95,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - value
    - t
    argTypes:
    - Real
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 97
    functionName: QuantLib::IntervalPrice::setValue
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: "void IntervalPrice::setValue(Real value,\n                                 IntervalPrice::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - open
    - close
    - high
    - low
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::IntervalPrice::setValues
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::setValues(Real open, Real close, Real high, Real
      low)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:114,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:122,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:124,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/prices.cpp:125,1
    - Dst: QuantLib::IntervalPrice::IntervalPrice
      Src: /src/quantlib/ql/prices.cpp:126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' d'
    - ' open'
    - ' close'
    - ' high'
    - ' low'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 130
    functionName: QuantLib::IntervalPrice::makeSeries
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::IntervalPrice::IntervalPrice
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeSeries<IntervalPrice>
    signature: "TimeSeries<IntervalPrice> IntervalPrice::makeSeries(\n                                               const
      std::vector<Date>& d,\n                                               const
      std::vector<Real>& open,\n                                               const
      std::vector<Real>& close,\n                                               const
      std::vector<Real>& high,\n                                               const
      std::vector<Real>& low)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/prices.cpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:136,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/prices.cpp:138,1
    - Dst: second::value
      Src: /src/quantlib/ql/prices.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' ts'
    - t
    argTypes:
    - TimeSeries<IntervalPrice>
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::IntervalPrice::extractValues
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - size
    - second::value
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> IntervalPrice::extractValues(\n                                           const
      TimeSeries<IntervalPrice>& ts,\n                                           IntervalPrice::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dates
      Src: /src/quantlib/ql/prices.cpp:146,1
    - Dst: QuantLib::IntervalPrice::extractValues
      Src: /src/quantlib/ql/prices.cpp:147,1
    - Dst: TimeSeries<Real>
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/prices.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ts'
    - t
    argTypes:
    - TimeSeries<IntervalPrice>
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionName: QuantLib::IntervalPrice::extractComponent
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - TimeSeries<Real>
    - std::vector::begin
    - std::vector::end
    - dates
    - QuantLib::IntervalPrice::extractValues
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: "TimeSeries<Real> IntervalPrice::extractComponent(\n                                          const
      TimeSeries<IntervalPrice>& ts,\n                                          IntervalPrice::Type
      t)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:32,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:33,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:36,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:39,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:39,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 4
    argNames:
    - bid
    - ask
    - last
    - close
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 44
    functionName: QuantLib::midEquivalent
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Null
    linkageType: ''
    returnType: Real
    signature: "Real midEquivalent(const Real bid,\n                       const Real
      ask,\n                       const Real last,\n                       const
      Real close)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:49,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:51,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/prices.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - bid
    - ask
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::midSafe
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Null
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real midSafe(const Real bid,\n                 const Real ask)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:59,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/prices.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::IntervalPrice::IntervalPrice
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::IntervalPrice()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - open
    - close
    - high
    - low
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::IntervalPrice::IntervalPrice
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::IntervalPrice(Real open, Real close, Real high,
      Real low)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/prices.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - t
    argTypes:
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: QuantLib::IntervalPrice::value
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real IntervalPrice::value(IntervalPrice::Type t) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/prices.cpp:95,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - value
    - t
    argTypes:
    - Real
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 97
    functionName: QuantLib::IntervalPrice::setValue
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: "void IntervalPrice::setValue(Real value,\n                                 IntervalPrice::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - open
    - close
    - high
    - low
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::IntervalPrice::setValues
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntervalPrice::setValues(Real open, Real close, Real high, Real
      low)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:114,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:122,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:124,1
    - Dst: begin
      Src: /src/quantlib/ql/prices.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/prices.cpp:125,1
    - Dst: QuantLib::IntervalPrice::IntervalPrice
      Src: /src/quantlib/ql/prices.cpp:126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' d'
    - ' open'
    - ' close'
    - ' high'
    - ' low'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 130
    functionName: QuantLib::IntervalPrice::makeSeries
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::IntervalPrice::IntervalPrice
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeSeries<IntervalPrice>
    signature: "TimeSeries<IntervalPrice> IntervalPrice::makeSeries(\n                                               const
      std::vector<Date>& d,\n                                               const
      std::vector<Real>& open,\n                                               const
      std::vector<Real>& close,\n                                               const
      std::vector<Real>& high,\n                                               const
      std::vector<Real>& low)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/prices.cpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/prices.cpp:136,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/prices.cpp:138,1
    - Dst: second::value
      Src: /src/quantlib/ql/prices.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' ts'
    - t
    argTypes:
    - TimeSeries<IntervalPrice>
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::IntervalPrice::extractValues
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 1
    functionsReached:
    - std::vector::reserve
    - size
    - second::value
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> IntervalPrice::extractValues(\n                                           const
      TimeSeries<IntervalPrice>& ts,\n                                           IntervalPrice::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dates
      Src: /src/quantlib/ql/prices.cpp:146,1
    - Dst: QuantLib::IntervalPrice::extractValues
      Src: /src/quantlib/ql/prices.cpp:147,1
    - Dst: TimeSeries<Real>
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/prices.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/prices.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ts'
    - t
    argTypes:
    - TimeSeries<IntervalPrice>
    - IntervalPrice::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionName: QuantLib::IntervalPrice::extractComponent
    functionSourceFile: /src/quantlib/ql/prices.cpp
    functionUses: 0
    functionsReached:
    - TimeSeries<Real>
    - std::vector::begin
    - std::vector::end
    - dates
    - QuantLib::IntervalPrice::extractValues
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: "TimeSeries<Real> IntervalPrice::extractComponent(\n                                          const
      TimeSeries<IntervalPrice>& ts,\n                                          IntervalPrice::Type
      t)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/errors.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - QL_ERROR_LINES
    - long
    - QL_ERROR_FUNCTIONS
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: format_error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: "std::string format_error(\n                       #ifdef QL_ERROR_LINES\n
      \                      const std::string& file, long line,\n                       #else\n
      \                      const std::string&, long,\n                       #endif\n
      \                      #ifdef QL_ERROR_FUNCTIONS\n                       const
      std::string& function,\n                       #else\n                       const
      std::string&,\n                       #endif\n                       const std::string&
      message)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/errors.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - std::string
    - long
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: format_error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: "std::string format_error(const std::string& file, long line,\n                             const
      std::string& function,\n                             const std::string& message)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/errors.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - QL_ERROR_LINES
    - long
    - QL_ERROR_FUNCTIONS
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: format_error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: "std::string format_error(\n                       #ifdef QL_ERROR_LINES\n
      \                      const std::string& file, long line,\n                       #else\n
      \                      const std::string&, long,\n                       #endif\n
      \                      #ifdef QL_ERROR_FUNCTIONS\n                       const
      std::string& function,\n                       #else\n                       const
      std::string&,\n                       #endif\n                       const std::string&
      message)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/errors.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - std::string
    - long
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: format_error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: "std::string format_error(const std::string& file, long line,\n                             const
      std::string& function,\n                             const std::string& message)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/quantlib/ql/errors.cpp:75,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:75,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 4
    argNames:
    - expr
    - function
    - file
    - line
    argTypes:
    - char*
    - char*
    - char*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: boost::assertion_failed
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - std::runtime_error
    - std::string
    linkageType: ''
    returnType: void
    signature: "void assertion_failed(char const * expr, char const * function,\n
      \                         char const * file, long line)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/quantlib/ql/errors.cpp:83,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:83,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:85,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - expr
    - msg
    - function
    - file
    - line
    argTypes:
    - char*
    - char*
    - char*
    - char*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: boost::assertion_failed_msg
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - std::runtime_error
    - std::string
    linkageType: ''
    returnType: void
    signature: "void assertion_failed_msg(char const * expr, char const * msg,\n                              char
      const * function, char const * file,\n                              long line)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/quantlib/ql/errors.cpp:75,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:75,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 4
    argNames:
    - expr
    - function
    - file
    - line
    argTypes:
    - char*
    - char*
    - char*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: boost::assertion_failed
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - std::runtime_error
    - std::string
    linkageType: ''
    returnType: void
    signature: "void assertion_failed(char const * expr, char const * function,\n
      \                         char const * file, long line)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/quantlib/ql/errors.cpp:83,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:83,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:85,1
    - Dst: std::string
      Src: /src/quantlib/ql/errors.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - expr
    - msg
    - function
    - file
    - line
    argTypes:
    - char*
    - char*
    - char*
    - char*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: boost::assertion_failed_msg
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - std::runtime_error
    - std::string
    linkageType: ''
    returnType: void
    signature: "void assertion_failed_msg(char const * expr, char const * msg,\n                              char
      const * function, char const * file,\n                              long line)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<std::string>
      Src: /src/quantlib/ql/errors.cpp:96,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - std::string
    - long
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::Error::Error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - ext::make_shared<std::string>
    linkageType: ''
    returnType: void
    signature: "void Error::Error(const std::string& file, long line,\n                 const
      std::string& function,\n                 const std::string& message)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_str
      Src: /src/quantlib/ql/errors.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::Error::what
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - c_str
    linkageType: ''
    returnType: char
    signature: char * Error::what() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<std::string>
      Src: /src/quantlib/ql/errors.cpp:96,1
    - Dst: format_error
      Src: /src/quantlib/ql/errors.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' file'
    - line
    - ' function'
    - ' message'
    argTypes:
    - std::string
    - long
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::Error::Error
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - format_error
    - ext::make_shared<std::string>
    linkageType: ''
    returnType: void
    signature: "void Error::Error(const std::string& file, long line,\n                 const
      std::string& function,\n                 const std::string& message)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_str
      Src: /src/quantlib/ql/errors.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::Error::what
    functionSourceFile: /src/quantlib/ql/errors.cpp
    functionUses: 0
    functionsReached:
    - c_str
    linkageType: ''
    returnType: char
    signature: char * Error::what() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/interestrate.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: QuantLib::InterestRate::InterestRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void InterestRate::InterestRate()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/interestrate.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:38,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 4
    argNames:
    - r
    - dc
    - comp
    - freq
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::InterestRate::InterestRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterestRate::InterestRate(Rate r, DayCounter dc, Compounding
      comp, Frequency freq)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:47,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/interestrate.cpp:47,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/interestrate.cpp:54,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:56,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:59,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:61,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 68
    functionName: QuantLib::InterestRate::compoundFactor
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Null<Rate>
    - Real
    - QL_FAIL
    - std::pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InterestRate::compoundFactor(Time t) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:83,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: std::log
      Src: /src/quantlib/ql/interestrate.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:95,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:107,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:108,1
    - Dst: QuantLib::InterestRate::InterestRate
      Src: /src/quantlib/ql/interestrate.cpp:111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 5
    argNames:
    - compound
    - ' resultDC'
    - comp
    - freq
    - t
    argTypes:
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 112
    functionName: QuantLib::InterestRate::impliedRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - Integer
    - Real
    - QL_FAIL
    - std::pow
    - QuantLib::InterestRate::InterestRate
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate InterestRate::impliedRate(Real compound,\n                                           const
      DayCounter& resultDC,\n                                           Compounding
      comp,\n                                           Frequency freq,\n                                           Time
      t)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/interestrate.cpp:116,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/interestrate.cpp:116,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: rate
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: compounding
      Src: /src/quantlib/ql/interestrate.cpp:120,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:128,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:128,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:131,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:141,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:146,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:153,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:153,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:157,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:157,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:158,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:162,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:163,1
    - Dst: compounding
      Src: /src/quantlib/ql/interestrate.cpp:163,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - ' out'
    - ' ir'
    argTypes:
    - std::ostream
    - InterestRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 166
    functionName: '& operator<<(std::ostream& out, const InterestRate& ir)'
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - rate
    - Null<Rate>
    - compounding
    - QuantLib::io::rate
    - dayCounter
    - Integer
    - QL_FAIL
    - frequency
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const InterestRate& ir)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/interestrate.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: QuantLib::InterestRate::InterestRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void InterestRate::InterestRate()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/interestrate.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:38,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 4
    argNames:
    - r
    - dc
    - comp
    - freq
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::InterestRate::InterestRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 1
    functionsReached:
    - std::move
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterestRate::InterestRate(Rate r, DayCounter dc, Compounding
      comp, Frequency freq)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:47,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/interestrate.cpp:47,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/interestrate.cpp:54,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:56,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:59,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:61,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 68
    functionName: QuantLib::InterestRate::compoundFactor
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Null<Rate>
    - Real
    - QL_FAIL
    - std::pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InterestRate::compoundFactor(Time t) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.cpp:83,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:89,1
    - Dst: std::log
      Src: /src/quantlib/ql/interestrate.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:95,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: Real
      Src: /src/quantlib/ql/interestrate.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:107,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:108,1
    - Dst: QuantLib::InterestRate::InterestRate
      Src: /src/quantlib/ql/interestrate.cpp:111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 5
    argNames:
    - compound
    - ' resultDC'
    - comp
    - freq
    - t
    argTypes:
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 112
    functionName: QuantLib::InterestRate::impliedRate
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - Integer
    - Real
    - QL_FAIL
    - std::pow
    - QuantLib::InterestRate::InterestRate
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate InterestRate::impliedRate(Real compound,\n                                           const
      DayCounter& resultDC,\n                                           Compounding
      comp,\n                                           Frequency freq,\n                                           Time
      t)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/interestrate.cpp:116,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/interestrate.cpp:116,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: rate
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/interestrate.cpp:119,1
    - Dst: compounding
      Src: /src/quantlib/ql/interestrate.cpp:120,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:128,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:128,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:131,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:141,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:146,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:153,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:153,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:157,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:157,1
    - Dst: frequency
      Src: /src/quantlib/ql/interestrate.cpp:158,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/interestrate.cpp:162,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.cpp:163,1
    - Dst: compounding
      Src: /src/quantlib/ql/interestrate.cpp:163,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - ' out'
    - ' ir'
    argTypes:
    - std::ostream
    - InterestRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 166
    functionName: '& operator<<(std::ostream& out, const InterestRate& ir)'
    functionSourceFile: /src/quantlib/ql/interestrate.cpp
    functionUses: 0
    functionsReached:
    - rate
    - Null<Rate>
    - compounding
    - QuantLib::io::rate
    - dayCounter
    - Integer
    - QL_FAIL
    - frequency
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const InterestRate& ir)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/currency.cpp:26,1
    - Dst: code
      Src: /src/quantlib/ql/currency.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' c'
    argTypes:
    - std::ostream
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: '& operator<<(std::ostream& out, const Currency& c)'
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - code
    - empty
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - name
    - code
    - numericCode
    - symbol
    - fractionSymbol
    - fractionsPerUnit
    - ' rounding'
    - triangulationCurrency
    - minorUnitCodes
    argTypes:
    - std::string
    - std::string
    - Integer
    - std::string
    - std::string
    - Integer
    - Rounding
    - Currency
    - std::set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: "Currency::Data::Data(std::string name,\n                         std::string
      code,\n                         Integer numericCode,\n                         std::string
      symbol,\n                         std::string fractionSymbol,\n                         Integer
      fractionsPerUnit,\n                         const Rounding& rounding,\n                         Currency
      triangulationCurrency,\n                         std::set<std::string> minorUnitCodes)"
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Currency::Data::Data(std::string name,\n                         std::string
      code,\n                         Integer numericCode,\n                         std::string
      symbol,\n                         std::string fractionSymbol,\n                         Integer
      fractionsPerUnit,\n                         const Rounding& rounding,\n                         Currency
      triangulationCurrency,\n                         std::set<std::string> minorUnitCodes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Currency::Data>
      Src: /src/quantlib/ql/currency.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' name'
    - ' code'
    - numericCode
    - ' symbol'
    - ' fractionSymbol'
    - fractionsPerUnit
    - ' rounding'
    - ' triangulationCurrency'
    - ' minorUnitCodes'
    argTypes:
    - std::string
    - std::string
    - Integer
    - std::string
    - std::string
    - Integer
    - Rounding
    - Currency
    - std::set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::Currency::Currency
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Currency::Data>
    linkageType: ''
    returnType: void
    signature: "void Currency::Currency(const std::string& name,\n                       const
      std::string& code,\n                       Integer numericCode,\n                       const
      std::string& symbol,\n                       const std::string& fractionSymbol,\n
      \                      Integer fractionsPerUnit,\n                       const
      Rounding& rounding,\n                       const Currency& triangulationCurrency,\n
      \                      const std::set<std::string>& minorUnitCodes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/currency.cpp:26,1
    - Dst: code
      Src: /src/quantlib/ql/currency.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' c'
    argTypes:
    - std::ostream
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: '& operator<<(std::ostream& out, const Currency& c)'
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - code
    - empty
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/currency.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - name
    - code
    - numericCode
    - symbol
    - fractionSymbol
    - fractionsPerUnit
    - ' rounding'
    - triangulationCurrency
    - minorUnitCodes
    argTypes:
    - std::string
    - std::string
    - Integer
    - std::string
    - std::string
    - Integer
    - Rounding
    - Currency
    - std::set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: "Currency::Data::Data(std::string name,\n                         std::string
      code,\n                         Integer numericCode,\n                         std::string
      symbol,\n                         std::string fractionSymbol,\n                         Integer
      fractionsPerUnit,\n                         const Rounding& rounding,\n                         Currency
      triangulationCurrency,\n                         std::set<std::string> minorUnitCodes)"
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Currency::Data::Data(std::string name,\n                         std::string
      code,\n                         Integer numericCode,\n                         std::string
      symbol,\n                         std::string fractionSymbol,\n                         Integer
      fractionsPerUnit,\n                         const Rounding& rounding,\n                         Currency
      triangulationCurrency,\n                         std::set<std::string> minorUnitCodes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Currency::Data>
      Src: /src/quantlib/ql/currency.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' name'
    - ' code'
    - numericCode
    - ' symbol'
    - ' fractionSymbol'
    - fractionsPerUnit
    - ' rounding'
    - ' triangulationCurrency'
    - ' minorUnitCodes'
    argTypes:
    - std::string
    - std::string
    - Integer
    - std::string
    - std::string
    - Integer
    - Rounding
    - Currency
    - std::set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::Currency::Currency
    functionSourceFile: /src/quantlib/ql/currency.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Currency::Data>
    linkageType: ''
    returnType: void
    signature: "void Currency::Currency(const std::string& name,\n                       const
      std::string& code,\n                       Integer numericCode,\n                       const
      std::string& symbol,\n                       const std::string& fractionSymbol,\n
      \                      Integer fractionsPerUnit,\n                       const
      Rounding& rounding,\n                       const Currency& triangulationCurrency,\n
      \                      const std::set<std::string>& minorUnitCodes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Quote() override
    functionSourceFile: /src/quantlib/ql/quote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Quote() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Quote() override
    functionSourceFile: /src/quantlib/ql/quote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Quote() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::DiscretizedAsset::DiscretizedAsset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~DiscretizedAsset()
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DiscretizedAsset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::DiscretizedAsset::time
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time time() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& time()'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time & time()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& values() const'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & values() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& values()'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & values()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& method() const'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> & method() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::preAdjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:114,1
    - Dst: QuantLib::DiscretizedAsset::postAdjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::DiscretizedAsset::adjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscretizedAsset::preAdjustValues
    - QuantLib::DiscretizedAsset::postAdjustValues
    linkageType: ''
    returnType: void
    signature: void adjustValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::DiscretizedAsset::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void preAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::DiscretizedAsset::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::DiscretizedDiscountBond::DiscretizedDiscountBond
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedDiscountBond()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/discretizedasset.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::DiscretizedDiscountBond::reset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void reset(Size size) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/discretizedasset.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::DiscretizedDiscountBond::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/discretizedasset.hpp:165,1
    - Dst: std::move
      Src: /src/quantlib/ql/discretizedasset.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - underlying
    - exerciseType
    - exerciseTimes
    argTypes:
    - ext::shared_ptr<DiscretizedAsset>
    - Exercise::Type
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::DiscretizedOption::DiscretizedOption
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscretizedOption(ext::shared_ptr<DiscretizedAsset> underlying,\n
      \                         Exercise::Type exerciseType,\n                          std::vector<Time>
      exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::initialize
      Src: /src/quantlib/ql/discretizedasset.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' method'
    - t
    argTypes:
    - ext::shared_ptr<Lattice>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: QuantLib::DiscretizedAsset::initialize
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::initialize
    linkageType: ''
    returnType: void
    signature: "void DiscretizedAsset::initialize(\n                             const
      ext::shared_ptr<Lattice>& method,\n                             Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::rollback
      Src: /src/quantlib/ql/discretizedasset.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - to
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::DiscretizedAsset::rollback
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::rollback(Time to)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::partialRollback
      Src: /src/quantlib/ql/discretizedasset.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - to
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: QuantLib::DiscretizedAsset::partialRollback
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::partialRollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::partialRollback(Time to)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::presentValue
      Src: /src/quantlib/ql/discretizedasset.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::DiscretizedAsset::presentValue
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::presentValue
    linkageType: ''
    returnType: Real
    signature: Real DiscretizedAsset::presentValue()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:202,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:202,1
    - Dst: QuantLib::DiscretizedAsset::preAdjustValuesImpl
      Src: /src/quantlib/ql/discretizedasset.hpp:203,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionName: QuantLib::DiscretizedAsset::preAdjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::preAdjustValuesImpl
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::preAdjustValues()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:209,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:209,1
    - Dst: QuantLib::DiscretizedAsset::postAdjustValuesImpl
      Src: /src/quantlib/ql/discretizedasset.hpp:210,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionName: QuantLib::DiscretizedAsset::postAdjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedAsset::postAdjustValuesImpl
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::postAdjustValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:216,1
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    - Dst: index
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::DiscretizedAsset::isOnTime
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - index
    - method
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool DiscretizedAsset::isOnTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: Array
      Src: /src/quantlib/ql/discretizedasset.hpp:225,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionName: QuantLib::DiscretizedOption::reset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - Array
    - method
    - adjustValues
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedOption::mandatoryTimes
      Src: /src/quantlib/ql/discretizedasset.hpp:230,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: begin
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: end
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    - Dst: end
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 237
    functionName: QuantLib::DiscretizedOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedOption::mandatoryTimes
    - begin
    - std::vector::end
    - std::vector::insert
    - end
    - std::find_if
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedOption::mandatoryTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/discretizedasset.hpp:240,1
    - Dst: std::max
      Src: /src/quantlib/ql/discretizedasset.hpp:241,1
    - Dst: values
      Src: /src/quantlib/ql/discretizedasset.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: QuantLib::DiscretizedOption::applyExerciseCondition
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - size
    - values
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::applyExerciseCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::DiscretizedAsset::DiscretizedAsset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~DiscretizedAsset()
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DiscretizedAsset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::DiscretizedAsset::time
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time time() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& time()'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time & time()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& values() const'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & values() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& values()'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & values()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& method() const'
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> & method() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::preAdjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:114,1
    - Dst: QuantLib::DiscretizedAsset::postAdjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::DiscretizedAsset::adjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscretizedAsset::preAdjustValues
    - QuantLib::DiscretizedAsset::postAdjustValues
    linkageType: ''
    returnType: void
    signature: void adjustValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::DiscretizedAsset::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void preAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::DiscretizedAsset::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::DiscretizedDiscountBond::DiscretizedDiscountBond
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedDiscountBond()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/discretizedasset.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::DiscretizedDiscountBond::reset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void reset(Size size) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/discretizedasset.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::DiscretizedDiscountBond::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/discretizedasset.hpp:165,1
    - Dst: std::move
      Src: /src/quantlib/ql/discretizedasset.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - underlying
    - exerciseType
    - exerciseTimes
    argTypes:
    - ext::shared_ptr<DiscretizedAsset>
    - Exercise::Type
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::DiscretizedOption::DiscretizedOption
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscretizedOption(ext::shared_ptr<DiscretizedAsset> underlying,\n
      \                         Exercise::Type exerciseType,\n                          std::vector<Time>
      exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::initialize
      Src: /src/quantlib/ql/discretizedasset.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' method'
    - t
    argTypes:
    - ext::shared_ptr<Lattice>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: QuantLib::DiscretizedAsset::initialize
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::initialize
    linkageType: ''
    returnType: void
    signature: "void DiscretizedAsset::initialize(\n                             const
      ext::shared_ptr<Lattice>& method,\n                             Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::rollback
      Src: /src/quantlib/ql/discretizedasset.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - to
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::DiscretizedAsset::rollback
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::rollback(Time to)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::partialRollback
      Src: /src/quantlib/ql/discretizedasset.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - to
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: QuantLib::DiscretizedAsset::partialRollback
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::partialRollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::partialRollback(Time to)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedAsset::presentValue
      Src: /src/quantlib/ql/discretizedasset.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::DiscretizedAsset::presentValue
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::presentValue
    linkageType: ''
    returnType: Real
    signature: Real DiscretizedAsset::presentValue()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:202,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:202,1
    - Dst: QuantLib::DiscretizedAsset::preAdjustValuesImpl
      Src: /src/quantlib/ql/discretizedasset.hpp:203,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionName: QuantLib::DiscretizedAsset::preAdjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::preAdjustValuesImpl
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::preAdjustValues()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:209,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:209,1
    - Dst: QuantLib::DiscretizedAsset::postAdjustValuesImpl
      Src: /src/quantlib/ql/discretizedasset.hpp:210,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionName: QuantLib::DiscretizedAsset::postAdjustValues
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedAsset::postAdjustValuesImpl
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: void
    signature: void DiscretizedAsset::postAdjustValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:216,1
    - Dst: close_enough
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    - Dst: index
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    - Dst: QuantLib::DiscretizedAsset::time
      Src: /src/quantlib/ql/discretizedasset.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::DiscretizedAsset::isOnTime
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - index
    - method
    - QuantLib::DiscretizedAsset::time
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool DiscretizedAsset::isOnTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: method
      Src: /src/quantlib/ql/discretizedasset.hpp:222,1
    - Dst: Array
      Src: /src/quantlib/ql/discretizedasset.hpp:225,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/discretizedasset.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionName: QuantLib::DiscretizedOption::reset
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - Array
    - method
    - adjustValues
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedOption::mandatoryTimes
      Src: /src/quantlib/ql/discretizedasset.hpp:230,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: begin
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: end
      Src: /src/quantlib/ql/discretizedasset.hpp:232,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    - Dst: end
      Src: /src/quantlib/ql/discretizedasset.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 237
    functionName: QuantLib::DiscretizedOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedOption::mandatoryTimes
    - begin
    - std::vector::end
    - std::vector::insert
    - end
    - std::find_if
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedOption::mandatoryTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/discretizedasset.hpp:240,1
    - Dst: std::max
      Src: /src/quantlib/ql/discretizedasset.hpp:241,1
    - Dst: values
      Src: /src/quantlib/ql/discretizedasset.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: QuantLib::DiscretizedOption::applyExerciseCondition
    functionSourceFile: /src/quantlib/ql/discretizedasset.hpp
    functionUses: 0
    functionsReached:
    - size
    - values
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::applyExerciseCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::visit
      Src: /src/quantlib/ql/quote.cpp:28,1
    - Dst: QuantLib::makeQuoteHandle
      Src: /src/quantlib/ql/quote.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - std::variant<Real, Handle<Quote>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::handleFromVariant
    functionSourceFile: /src/quantlib/ql/quote.cpp
    functionUses: 0
    functionsReached:
    - std::visit
    - QuantLib::makeQuoteHandle
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> handleFromVariant(const std::variant<Real, Handle<Quote>>&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::visit
      Src: /src/quantlib/ql/quote.cpp:28,1
    - Dst: QuantLib::makeQuoteHandle
      Src: /src/quantlib/ql/quote.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - std::variant<Real, Handle<Quote>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::handleFromVariant
    functionSourceFile: /src/quantlib/ql/quote.cpp
    functionUses: 0
    functionsReached:
    - std::visit
    - QuantLib::makeQuoteHandle
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> handleFromVariant(const std::variant<Real, Handle<Quote>>&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Handle::Link::empty
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& currentLink() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & currentLink() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/handle.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Handle::Link::update
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<T>
      Src: /src/quantlib/ql/handle.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<T>
    linkageType: ''
    returnType: void
    signature: void Handle()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Link::Link
      Src: /src/quantlib/ql/handle.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - Link::Link
    linkageType: ''
    returnType: void
    signature: "void Handle(const ext::shared_ptr<T>& p,\n                        bool
      registerAsObserver = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:85,1
    - Dst: Link::Link
      Src: /src/quantlib/ql/handle.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - Link::Link
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Handle(ext::shared_ptr<T>&& p,\n                        bool
      registerAsObserver = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: operator==(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: operator!=(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: operator<(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<T>
      Src: /src/quantlib/ql/handle.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: QuantLib::RelinkableHandle::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<T>
    linkageType: ''
    returnType: void
    signature: void RelinkableHandle()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/handle.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: Handle<T>::Link::Link(const ext::shared_ptr<T>& h, bool registerAsObserver)
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - linkTo
    linkageType: ''
    returnType: void
    signature: void Handle<T>::Link::Link(const ext::shared_ptr<T>& h, bool registerAsObserver)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/handle.hpp:151,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: Handle<T>::Link::Link(ext::shared_ptr<T>&& h, bool registerAsObserver)
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - linkTo
    linkageType: ''
    returnType: void
    signature: void Handle<T>::Link::Link(ext::shared_ptr<T>&& h, bool registerAsObserver)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/handle.hpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:160,1
    - Dst: registerWith
      Src: /src/quantlib/ql/handle.hpp:163,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/handle.hpp:164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - h
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 166
    functionName: "Handle<T>::Link::linkTo(ext::shared_ptr<T> h,\n                                        bool
      registerAsObserver)"
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - registerWith
    - unregisterWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Handle<T>::Link::linkTo(ext::shared_ptr<T> h,\n                                        bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:171,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:171,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: '& Handle<T>::currentLink() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::currentLink() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:177,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:177,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: '& Handle<T>::operator->() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:183,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:183,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: '& Handle<T>::operator*() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Handle<T>::empty
      Src: /src/quantlib/ql/handle.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::Handle<T>::empty
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Handle<T>::empty
    linkageType: ''
    returnType: bool
    signature: bool Handle<T>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: ext::shared_ptr<Observable>() const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<T>::operator
    signature: Handle<T>::operator ext::shared_ptr<Observable>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(const ext::shared_ptr<T>&
      p,\n                                                 bool registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(ext::shared_ptr<T>&& p,\n
      \                                                bool registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - p
    - registerAsObserver
    argTypes:
    - T*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(T* p,\n                                                 bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::RelinkableHandle<T>::linkTo
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::linkTo(const ext::shared_ptr<T>& h,\n                                            bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::RelinkableHandle<T>::linkTo
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::linkTo(ext::shared_ptr<T>&& h,\n                                            bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::RelinkableHandle<T>::reset
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    linkageType: ''
    returnType: void
    signature: void RelinkableHandle<T>::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Handle::Link::empty
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& currentLink() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & currentLink() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/handle.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Handle::Link::update
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<T>
      Src: /src/quantlib/ql/handle.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<T>
    linkageType: ''
    returnType: void
    signature: void Handle()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Link::Link
      Src: /src/quantlib/ql/handle.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - Link::Link
    linkageType: ''
    returnType: void
    signature: "void Handle(const ext::shared_ptr<T>& p,\n                        bool
      registerAsObserver = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:85,1
    - Dst: Link::Link
      Src: /src/quantlib/ql/handle.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::Handle::Handle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - Link::Link
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Handle(ext::shared_ptr<T>&& p,\n                        bool
      registerAsObserver = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: operator==(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: operator!=(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Handle<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: operator<(const Handle<U>& other) const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Handle<U>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<T>
      Src: /src/quantlib/ql/handle.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: QuantLib::RelinkableHandle::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<T>
    linkageType: ''
    returnType: void
    signature: void RelinkableHandle()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/handle.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: Handle<T>::Link::Link(const ext::shared_ptr<T>& h, bool registerAsObserver)
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - linkTo
    linkageType: ''
    returnType: void
    signature: void Handle<T>::Link::Link(const ext::shared_ptr<T>& h, bool registerAsObserver)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/handle.hpp:151,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: Handle<T>::Link::Link(ext::shared_ptr<T>&& h, bool registerAsObserver)
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - linkTo
    linkageType: ''
    returnType: void
    signature: void Handle<T>::Link::Link(ext::shared_ptr<T>&& h, bool registerAsObserver)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/handle.hpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:160,1
    - Dst: registerWith
      Src: /src/quantlib/ql/handle.hpp:163,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/handle.hpp:164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - h
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 166
    functionName: "Handle<T>::Link::linkTo(ext::shared_ptr<T> h,\n                                        bool
      registerAsObserver)"
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - registerWith
    - unregisterWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Handle<T>::Link::linkTo(ext::shared_ptr<T> h,\n                                        bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:171,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:171,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: '& Handle<T>::currentLink() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::currentLink() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:177,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:177,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: '& Handle<T>::operator->() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/handle.hpp:183,1
    - Dst: empty
      Src: /src/quantlib/ql/handle.hpp:183,1
    - Dst: currentLink
      Src: /src/quantlib/ql/handle.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: '& Handle<T>::operator*() const'
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<T>
    signature: ext::shared_ptr<T> & Handle<T>::operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Handle<T>::empty
      Src: /src/quantlib/ql/handle.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::Handle<T>::empty
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Handle<T>::empty
    linkageType: ''
    returnType: bool
    signature: bool Handle<T>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: ext::shared_ptr<Observable>() const
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<T>::operator
    signature: Handle<T>::operator ext::shared_ptr<Observable>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(const ext::shared_ptr<T>&
      p,\n                                                 bool registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(ext::shared_ptr<T>&& p,\n
      \                                                bool registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - p
    - registerAsObserver
    argTypes:
    - T*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::RelinkableHandle<T>::RelinkableHandle
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::RelinkableHandle(T* p,\n                                                 bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::RelinkableHandle<T>::linkTo
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::linkTo(const ext::shared_ptr<T>& h,\n                                            bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/handle.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' h'
    - registerAsObserver
    argTypes:
    - ext::shared_ptr<T>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::RelinkableHandle<T>::linkTo
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RelinkableHandle<T>::linkTo(ext::shared_ptr<T>&& h,\n                                            bool
      registerAsObserver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelinkableHandle<T>::link_::linkTo
      Src: /src/quantlib/ql/handle.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::RelinkableHandle<T>::reset
    functionSourceFile: /src/quantlib/ql/handle.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RelinkableHandle<T>::link_::linkTo
    linkageType: ''
    returnType: void
    signature: void RelinkableHandle<T>::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/settings.hpp:135,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/settings.hpp:135,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/ql/settings.hpp:136,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/settings.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: QuantLib::Date
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Date
    - QuantLib::value
    - QuantLib::Date::todaysDate
    linkageType: ''
    returnType: Settings::DateProxy::operator
    signature: Settings::DateProxy::operator Date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/settings.hpp:142,1
    - Dst: ObservableValue<Date>::operator=
      Src: /src/quantlib/ql/settings.hpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: '& Settings::DateProxy::operator=(const Date& d)'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached:
    - value
    - ObservableValue<Date>::operator=
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::DateProxy::operator=(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& Settings::evaluationDate()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::evaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: '& Settings::evaluationDate() const'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::evaluationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: '& Settings::includeReferenceDateEvents()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool & Settings::includeReferenceDateEvents()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::Settings::includeReferenceDateEvents
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Settings::includeReferenceDateEvents() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: '& Settings::includeTodaysCashFlows()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<bool>
    signature: ext::optional<bool> & Settings::includeTodaysCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::Settings::includeTodaysCashFlows
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<bool>
    signature: ext::optional<bool> Settings::includeTodaysCashFlows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: '& Settings::enforcesTodaysHistoricFixings()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool & Settings::enforcesTodaysHistoricFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::Settings::enforcesTodaysHistoricFixings
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Settings::enforcesTodaysHistoricFixings() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/settings.hpp:135,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/settings.hpp:135,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/ql/settings.hpp:136,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/settings.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: QuantLib::Date
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date
    - QuantLib::value
    - QuantLib::Date::todaysDate
    linkageType: ''
    returnType: Settings::DateProxy::operator
    signature: Settings::DateProxy::operator Date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/settings.hpp:142,1
    - Dst: ObservableValue<Date>::operator=
      Src: /src/quantlib/ql/settings.hpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: '& Settings::DateProxy::operator=(const Date& d)'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached:
    - value
    - ObservableValue<Date>::operator=
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::DateProxy::operator=(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& Settings::evaluationDate()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::evaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: '& Settings::evaluationDate() const'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings::DateProxy
    signature: Settings::DateProxy & Settings::evaluationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: '& Settings::includeReferenceDateEvents()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool & Settings::includeReferenceDateEvents()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::Settings::includeReferenceDateEvents
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Settings::includeReferenceDateEvents() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: '& Settings::includeTodaysCashFlows()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<bool>
    signature: ext::optional<bool> & Settings::includeTodaysCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::Settings::includeTodaysCashFlows
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<bool>
    signature: ext::optional<bool> Settings::includeTodaysCashFlows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: '& Settings::enforcesTodaysHistoricFixings()'
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool & Settings::enforcesTodaysHistoricFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::Settings::enforcesTodaysHistoricFixings
    functionSourceFile: /src/quantlib/ql/settings.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Settings::enforcesTodaysHistoricFixings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: Settings::DateProxy::DateProxy()
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: void Settings::DateProxy::DateProxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' p'
    argTypes:
    - std::ostream
    - Settings::DateProxy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: "& operator<<(std::ostream& out,\n                             const
      Settings::DateProxy& p)"
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             const
      Settings::DateProxy& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::Settings::Settings
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings::Settings()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/settings.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:40,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/ql/settings.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::Settings::anchorEvaluationDate
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::Date::todaysDate
    - value
    linkageType: ''
    returnType: void
    signature: void Settings::anchorEvaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Settings::resetEvaluationDate
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: void Settings::resetEvaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:50,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:51,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:52,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::SavedSettings::SavedSettings
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SavedSettings::SavedSettings()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:61,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: SavedSettings::~SavedSettings()
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SavedSettings::~SavedSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: Settings::DateProxy::DateProxy()
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: void Settings::DateProxy::DateProxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' p'
    argTypes:
    - std::ostream
    - Settings::DateProxy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: "& operator<<(std::ostream& out,\n                             const
      Settings::DateProxy& p)"
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             const
      Settings::DateProxy& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::Settings::Settings
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings::Settings()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/settings.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:40,1
    - Dst: QuantLib::Date::todaysDate
      Src: /src/quantlib/ql/settings.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::Settings::anchorEvaluationDate
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::Date::todaysDate
    - value
    linkageType: ''
    returnType: void
    signature: void Settings::anchorEvaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/settings.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Settings::resetEvaluationDate
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: void Settings::resetEvaluationDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:50,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:51,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:52,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::SavedSettings::SavedSettings
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SavedSettings::SavedSettings()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:61,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/settings.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: SavedSettings::~SavedSettings()
    functionSourceFile: /src/quantlib/ql/settings.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SavedSettings::~SavedSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:117,1
    - Dst: clear
      Src: /src/quantlib/ql/instrument.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: QuantLib::Instrument::results::reset
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isExpired
      Src: /src/quantlib/ql/instrument.hpp:131,1
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instrument.hpp:132,1
    - Dst: QuantLib::LazyObject::calculate
      Src: /src/quantlib/ql/instrument.hpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 138
    functionName: QuantLib::Instrument::calculate
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - QuantLib::LazyObject::calculate
    - isExpired
    linkageType: ''
    returnType: void
    signature: void Instrument::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:142,1
    - Dst: clear
      Src: /src/quantlib/ql/instrument.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::Instrument::setupExpired
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 1
    functionsReached:
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: void Instrument::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:147,1
    - Dst: reset
      Src: /src/quantlib/ql/instrument.hpp:148,1
    - Dst: QuantLib::Instrument::setupArguments
      Src: /src/quantlib/ql/instrument.hpp:149,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instrument.hpp:149,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instrument.hpp:150,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:151,1
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instrument.hpp:152,1
    - Dst: getResults
      Src: /src/quantlib/ql/instrument.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: QuantLib::Instrument::performCalculations
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - getResults
    - QuantLib::Instrument::fetchResults
    - reset
    - QuantLib::Instrument::setupArguments
    - getArguments
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Instrument::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instrument.hpp:157,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instrument.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 165
    functionName: QuantLib::Instrument::fetchResults
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<const Instrument::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: "void Instrument::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:169,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::Instrument::NPV
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Instrument::NPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:175,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 178
    functionName: QuantLib::Instrument::errorEstimate
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Instrument::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instrument.hpp:181,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:182,1
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 185
    functionName: '& Instrument::valuationDate() const'
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Date
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Instrument::valuationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:189,1
    - Dst: find
      Src: /src/quantlib/ql/instrument.hpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/instrument.hpp:192,1
    - Dst: ext::any_cast<T>
      Src: /src/quantlib/ql/instrument.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' tag'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 195
    functionName: QuantLib::Instrument::result
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - find
    - ext::any_cast<T>
    - end
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T Instrument::result(const std::string& tag) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instrument.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: "&\n    Instrument::additionalResults() const"
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::map<std::string, ext::any>
    signature: "std::map<std::string, ext::any> &\n    Instrument::additionalResults()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:117,1
    - Dst: clear
      Src: /src/quantlib/ql/instrument.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: QuantLib::Instrument::results::reset
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isExpired
      Src: /src/quantlib/ql/instrument.hpp:131,1
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instrument.hpp:132,1
    - Dst: QuantLib::LazyObject::calculate
      Src: /src/quantlib/ql/instrument.hpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 138
    functionName: QuantLib::Instrument::calculate
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - QuantLib::LazyObject::calculate
    - isExpired
    linkageType: ''
    returnType: void
    signature: void Instrument::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:142,1
    - Dst: clear
      Src: /src/quantlib/ql/instrument.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::Instrument::setupExpired
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 2
    functionsReached:
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: void Instrument::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:147,1
    - Dst: reset
      Src: /src/quantlib/ql/instrument.hpp:148,1
    - Dst: QuantLib::Instrument::setupArguments
      Src: /src/quantlib/ql/instrument.hpp:149,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instrument.hpp:149,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instrument.hpp:150,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:151,1
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instrument.hpp:152,1
    - Dst: getResults
      Src: /src/quantlib/ql/instrument.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: QuantLib::Instrument::performCalculations
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - getResults
    - QuantLib::Instrument::fetchResults
    - reset
    - QuantLib::Instrument::setupArguments
    - getArguments
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Instrument::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instrument.hpp:157,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instrument.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 165
    functionName: QuantLib::Instrument::fetchResults
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<const Instrument::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: "void Instrument::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:169,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::Instrument::NPV
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Instrument::NPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:175,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 178
    functionName: QuantLib::Instrument::errorEstimate
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Instrument::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instrument.hpp:181,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:182,1
    - Dst: Date
      Src: /src/quantlib/ql/instrument.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 185
    functionName: '& Instrument::valuationDate() const'
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - Date
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Instrument::valuationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/instrument.hpp:189,1
    - Dst: find
      Src: /src/quantlib/ql/instrument.hpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instrument.hpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/instrument.hpp:192,1
    - Dst: ext::any_cast<T>
      Src: /src/quantlib/ql/instrument.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' tag'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 195
    functionName: QuantLib::Instrument::result
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - find
    - ext::any_cast<T>
    - end
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T Instrument::result(const std::string& tag) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instrument.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: "&\n    Instrument::additionalResults() const"
    functionSourceFile: /src/quantlib/ql/instrument.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::map<std::string, ext::any>
    signature: "std::map<std::string, ext::any> &\n    Instrument::additionalResults()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Currency::Currency
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Currency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/currency.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::Currency::checkNonEmpty
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Currency::checkNonEmpty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& Currency::name() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& Currency::code() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::code() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Currency::checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::Currency::numericCode
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Currency::checkNonEmpty
    linkageType: ''
    returnType: Integer
    signature: Integer Currency::numericCode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& Currency::symbol() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::symbol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& Currency::fractionSymbol() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::fractionSymbol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Currency::checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::Currency::fractionsPerUnit
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Currency::checkNonEmpty
    linkageType: ''
    returnType: Integer
    signature: Integer Currency::fractionsPerUnit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: '& Currency::rounding() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: Rounding
    signature: Rounding & Currency::rounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::Currency::empty
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Currency::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: '& Currency::triangulationCurrency() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: Currency
    signature: Currency & Currency::triangulationCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: '& Currency::minorUnitCodes() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::set<std::string>
    signature: std::set<std::string> & Currency::minorUnitCodes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:180,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:180,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: name
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: name
      Src: /src/quantlib/ql/currency.hpp:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: operator==(const Currency& c1, const Currency& c2)
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Currency& c1, const Currency& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: operator!=(const Currency& c1, const Currency& c2)
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Currency& c1, const Currency& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Currency::Currency
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Currency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/currency.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::Currency::checkNonEmpty
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Currency::checkNonEmpty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& Currency::name() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& Currency::code() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::code() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Currency::checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::Currency::numericCode
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Currency::checkNonEmpty
    linkageType: ''
    returnType: Integer
    signature: Integer Currency::numericCode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& Currency::symbol() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::symbol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& Currency::fractionSymbol() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::string
    signature: std::string & Currency::fractionSymbol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Currency::checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::Currency::fractionsPerUnit
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Currency::checkNonEmpty
    linkageType: ''
    returnType: Integer
    signature: Integer Currency::fractionsPerUnit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: '& Currency::rounding() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: Rounding
    signature: Rounding & Currency::rounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::Currency::empty
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Currency::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: '& Currency::triangulationCurrency() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: Currency
    signature: Currency & Currency::triangulationCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkNonEmpty
      Src: /src/quantlib/ql/currency.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: '& Currency::minorUnitCodes() const'
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - checkNonEmpty
    linkageType: ''
    returnType: std::set<std::string>
    signature: std::set<std::string> & Currency::minorUnitCodes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:180,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:180,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: empty
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: name
      Src: /src/quantlib/ql/currency.hpp:181,1
    - Dst: name
      Src: /src/quantlib/ql/currency.hpp:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: operator==(const Currency& c1, const Currency& c2)
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Currency& c1, const Currency& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: operator!=(const Currency& c1, const Currency& c2)
    functionSourceFile: /src/quantlib/ql/currency.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Currency& c1, const Currency& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/stochasticprocess.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - disc
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: QuantLib::StochasticProcess::StochasticProcess
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void StochasticProcess::StochasticProcess(ext::shared_ptr<discretization>
      disc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/stochasticprocess.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::StochasticProcess::factors
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:39,1
    - Dst: drift
      Src: /src/quantlib/ql/stochasticprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionName: QuantLib::StochasticProcess::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - drift
    - QuantLib::StochasticProcess::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::expectation(Time t0,\n                                         const
      Array& x0,\n                                         Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diffusion
      Src: /src/quantlib/ql/stochasticprocess.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::StochasticProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess::stdDeviation(Time t0,\n                                           const
      Array& x0,\n                                           Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::covariance
      Src: /src/quantlib/ql/stochasticprocess.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::StochasticProcess::covariance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess::covariance(Time t0,\n                                         const
      Array& x0,\n                                         Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    - Dst: QuantLib::StochasticProcess::expectation
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    - Dst: QuantLib::StochasticProcess::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::StochasticProcess::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess::stdDeviation
    - QuantLib::StochasticProcess::expectation
    - QuantLib::StochasticProcess::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::evolve(Time t0, const Array& x0,\n                                    Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::StochasticProcess::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::apply(const Array& x0,\n                                   const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/stochasticprocess.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::StochasticProcess::time
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Time
    signature: Time StochasticProcess::time(const Date& ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/stochasticprocess.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::StochasticProcess::update
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void StochasticProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/stochasticprocess.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - disc
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::StochasticProcess1D::StochasticProcess1D
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void StochasticProcess1D::StochasticProcess1D(ext::shared_ptr<discretization>
      disc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:79,1
    - Dst: QuantLib::StochasticProcess1D::drift
      Src: /src/quantlib/ql/stochasticprocess.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::StochasticProcess1D::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::drift
    - QuantLib::StochasticProcess1D::apply
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::expectation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::diffusion
      Src: /src/quantlib/ql/stochasticprocess.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::StochasticProcess1D::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::diffusion
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::variance
      Src: /src/quantlib/ql/stochasticprocess.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::StochasticProcess1D::variance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::StochasticProcess1D::variance
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    - Dst: QuantLib::StochasticProcess1D::expectation
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    - Dst: QuantLib::StochasticProcess1D::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::StochasticProcess1D::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::expectation
    - QuantLib::StochasticProcess1D::stdDeviation
    - QuantLib::StochasticProcess1D::apply
    linkageType: ''
    returnType: Real
    signature: "Real StochasticProcess1D::evolve(Time t0, Real x0,\n                                     Time
      dt, Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dx
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::StochasticProcess1D::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::apply(Real x0, Real dx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/stochasticprocess.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - disc
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: QuantLib::StochasticProcess::StochasticProcess
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void StochasticProcess::StochasticProcess(ext::shared_ptr<discretization>
      disc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/stochasticprocess.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::StochasticProcess::factors
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:39,1
    - Dst: drift
      Src: /src/quantlib/ql/stochasticprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionName: QuantLib::StochasticProcess::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - drift
    - QuantLib::StochasticProcess::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::expectation(Time t0,\n                                         const
      Array& x0,\n                                         Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diffusion
      Src: /src/quantlib/ql/stochasticprocess.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::StochasticProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess::stdDeviation(Time t0,\n                                           const
      Array& x0,\n                                           Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::covariance
      Src: /src/quantlib/ql/stochasticprocess.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::StochasticProcess::covariance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcess::covariance(Time t0,\n                                         const
      Array& x0,\n                                         Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    - Dst: QuantLib::StochasticProcess::expectation
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    - Dst: QuantLib::StochasticProcess::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::StochasticProcess::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess::stdDeviation
    - QuantLib::StochasticProcess::expectation
    - QuantLib::StochasticProcess::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::evolve(Time t0, const Array& x0,\n                                    Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::StochasticProcess::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcess::apply(const Array& x0,\n                                   const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/stochasticprocess.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::StochasticProcess::time
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Time
    signature: Time StochasticProcess::time(const Date& ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/stochasticprocess.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::StochasticProcess::update
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void StochasticProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/stochasticprocess.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - disc
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::StochasticProcess1D::StochasticProcess1D
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void StochasticProcess1D::StochasticProcess1D(ext::shared_ptr<discretization>
      disc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:79,1
    - Dst: QuantLib::StochasticProcess1D::drift
      Src: /src/quantlib/ql/stochasticprocess.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::StochasticProcess1D::expectation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::StochasticProcess1D::drift
    - QuantLib::StochasticProcess1D::apply
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::expectation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::diffusion
      Src: /src/quantlib/ql/stochasticprocess.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::StochasticProcess1D::stdDeviation
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::StochasticProcess1D::diffusion
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::variance
      Src: /src/quantlib/ql/stochasticprocess.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::StochasticProcess1D::variance
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::StochasticProcess1D::variance
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcess1D::apply
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    - Dst: QuantLib::StochasticProcess1D::expectation
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    - Dst: QuantLib::StochasticProcess1D::stdDeviation
      Src: /src/quantlib/ql/stochasticprocess.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::StochasticProcess1D::evolve
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcess1D::expectation
    - QuantLib::StochasticProcess1D::stdDeviation
    - QuantLib::StochasticProcess1D::apply
    linkageType: ''
    returnType: Real
    signature: "Real StochasticProcess1D::evolve(Time t0, Real x0,\n                                     Time
      dt, Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dx
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::StochasticProcess1D::apply
    functionSourceFile: /src/quantlib/ql/stochasticprocess.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real StochasticProcess1D::apply(Real x0, Real dx) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/event.cpp:31,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/event.cpp:31,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/event.cpp:34,1
    - Dst: date
      Src: /src/quantlib/ql/event.cpp:36,1
    - Dst: date
      Src: /src/quantlib/ql/event.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - includeRefDate
    argTypes:
    - Date
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::Event::hasOccurred
    functionSourceFile: /src/quantlib/ql/event.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - date
    linkageType: ''
    returnType: bool
    signature: "bool Event::hasOccurred(const Date& d, // refDate\n                            ext::optional<bool>
      includeRefDate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Event>*>
      Src: /src/quantlib/ql/event.cpp:42,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/event.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/event.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::Event::accept
    functionSourceFile: /src/quantlib/ql/event.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<Event>*>
    linkageType: ''
    returnType: void
    signature: void Event::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/event.cpp:31,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/event.cpp:31,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/event.cpp:34,1
    - Dst: date
      Src: /src/quantlib/ql/event.cpp:36,1
    - Dst: date
      Src: /src/quantlib/ql/event.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - includeRefDate
    argTypes:
    - Date
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::Event::hasOccurred
    functionSourceFile: /src/quantlib/ql/event.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - date
    linkageType: ''
    returnType: bool
    signature: "bool Event::hasOccurred(const Date& d, // refDate\n                            ext::optional<bool>
      includeRefDate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Event>*>
      Src: /src/quantlib/ql/event.cpp:42,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/event.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/event.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::Event::accept
    functionSourceFile: /src/quantlib/ql/event.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<Event>*>
    linkageType: ''
    returnType: void
    signature: void Event::accept(AcyclicVisitor& v)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:28,1
    - Dst: Money
      Src: /src/quantlib/ql/exchangerate.cpp:29,1
    - Dst: value
      Src: /src/quantlib/ql/exchangerate.cpp:29,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:30,1
    - Dst: Money
      Src: /src/quantlib/ql/exchangerate.cpp:31,1
    - Dst: value
      Src: /src/quantlib/ql/exchangerate.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:33,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:35,1
    - Dst: first::source
      Src: /src/quantlib/ql/exchangerate.cpp:35,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:36,1
    - Dst: first::target
      Src: /src/quantlib/ql/exchangerate.cpp:36,1
    - Dst: second::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:37,1
    - Dst: first::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:38,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:39,1
    - Dst: second::source
      Src: /src/quantlib/ql/exchangerate.cpp:39,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:40,1
    - Dst: second::target
      Src: /src/quantlib/ql/exchangerate.cpp:40,1
    - Dst: first::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:41,1
    - Dst: second::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:42,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:46,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ' amount'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 48
    functionName: QuantLib::ExchangeRate::exchange
    functionSourceFile: /src/quantlib/ql/exchangerate.cpp
    functionUses: 0
    functionsReached:
    - Money
    - value
    - first::source
    - first::target
    - second::exchange
    - first::exchange
    - second::source
    - QL_FAIL
    - currency
    - second::target
    linkageType: ''
    returnType: Money
    signature: Money ExchangeRate::exchange(const Money& amount) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/exchangerate.cpp:54,1
    - Dst: ext::make_shared<ExchangeRate>
      Src: /src/quantlib/ql/exchangerate.cpp:55,1
    - Dst: ext::make_shared<ExchangeRate>
      Src: /src/quantlib/ql/exchangerate.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - ExchangeRate
    - ExchangeRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 77
    functionName: QuantLib::ExchangeRate::chain
    functionSourceFile: /src/quantlib/ql/exchangerate.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ExchangeRate>
    - QL_FAIL
    - std::make_pair
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRate::chain(const ExchangeRate& r1,\n                                     const
      ExchangeRate& r2)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:28,1
    - Dst: Money
      Src: /src/quantlib/ql/exchangerate.cpp:29,1
    - Dst: value
      Src: /src/quantlib/ql/exchangerate.cpp:29,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:30,1
    - Dst: Money
      Src: /src/quantlib/ql/exchangerate.cpp:31,1
    - Dst: value
      Src: /src/quantlib/ql/exchangerate.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:33,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:35,1
    - Dst: first::source
      Src: /src/quantlib/ql/exchangerate.cpp:35,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:36,1
    - Dst: first::target
      Src: /src/quantlib/ql/exchangerate.cpp:36,1
    - Dst: second::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:37,1
    - Dst: first::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:38,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:39,1
    - Dst: second::source
      Src: /src/quantlib/ql/exchangerate.cpp:39,1
    - Dst: currency
      Src: /src/quantlib/ql/exchangerate.cpp:40,1
    - Dst: second::target
      Src: /src/quantlib/ql/exchangerate.cpp:40,1
    - Dst: first::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:41,1
    - Dst: second::exchange
      Src: /src/quantlib/ql/exchangerate.cpp:42,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:46,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ' amount'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 48
    functionName: QuantLib::ExchangeRate::exchange
    functionSourceFile: /src/quantlib/ql/exchangerate.cpp
    functionUses: 0
    functionsReached:
    - Money
    - value
    - first::source
    - first::target
    - second::exchange
    - first::exchange
    - second::source
    - QL_FAIL
    - currency
    - second::target
    linkageType: ''
    returnType: Money
    signature: Money ExchangeRate::exchange(const Money& amount) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/exchangerate.cpp:54,1
    - Dst: ext::make_shared<ExchangeRate>
      Src: /src/quantlib/ql/exchangerate.cpp:55,1
    - Dst: ext::make_shared<ExchangeRate>
      Src: /src/quantlib/ql/exchangerate.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/exchangerate.cpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - ExchangeRate
    - ExchangeRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 77
    functionName: QuantLib::ExchangeRate::chain
    functionSourceFile: /src/quantlib/ql/exchangerate.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ExchangeRate>
    - QL_FAIL
    - std::make_pair
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRate::chain(const ExchangeRate& r1,\n                                     const
      ExchangeRate& r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Event() override
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Event() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::simple_event::simple_event
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simple_event(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::simple_event::date
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::simple_event::simple_event
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simple_event(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::simple_event::date
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Event() override
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Event() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::simple_event::simple_event
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simple_event(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::simple_event::date
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::simple_event::simple_event
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simple_event(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::simple_event::date
    functionSourceFile: /src/quantlib/ql/event.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: operator Rate() const
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator Rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::InterestRate::rate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::InterestRate::compounding
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Compounding
    signature: Compounding compounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Frequency
      Src: /src/quantlib/ql/interestrate.hpp:59,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::InterestRate::frequency
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - Frequency
    - Integer
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::InterestRate::discountFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::compoundFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discountFactor(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:76,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:78,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:81,1
    - Dst: QuantLib::InterestRate::discountFactor
      Src: /src/quantlib/ql/interestrate.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: QuantLib::InterestRate::discountFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterestRate::discountFactor
    - Date
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor discountFactor(const Date& d1,\n                                      const
      Date& d2,\n                                      const Date& refStart = Date(),\n
      \                                     const Date& refEnd = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:100,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:102,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:105,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::InterestRate::compoundFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterestRate::compoundFactor
    - Date
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real compoundFactor(const Date& d1,\n                            const
      Date& d2,\n                            const Date& refStart = Date(),\n                            const
      Date& refEnd = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:135,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:137,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:140,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - compound
    - ' resultDC'
    - comp
    - freq
    - ' d1'
    - ' d2'
    argTypes:
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 142
    functionName: QuantLib::InterestRate::impliedRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 1
    functionsReached:
    - Date
    - QuantLib::InterestRate::impliedRate
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate impliedRate(Real compound,\n                                        const
      DayCounter& resultDC,\n                                        Compounding comp,\n
      \                                       Frequency freq,\n                                        const
      Date& d1,\n                                        const Date& d2,\n                                        const
      Date& refStart = Date(),\n                                        const Date&
      refEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:158,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - comp
    - freq
    - t
    argTypes:
    - Compounding
    - Frequency
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: QuantLib::InterestRate::equivalentRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - QuantLib::InterestRate::compoundFactor
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate equivalentRate(Compounding comp,\n                                    Frequency
      freq,\n                                    Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:170,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:172,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:175,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:176,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:177,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' resultDC'
    - comp
    - freq
    - d1
    - d2
    argTypes:
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 178
    functionName: QuantLib::InterestRate::equivalentRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::InterestRate::impliedRate
    - QuantLib::InterestRate::compoundFactor
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate equivalentRate(const DayCounter& resultDC,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    Date
      d1,\n                                    Date d2,\n                                    const
      Date& refStart = Date(),\n                                    const Date& refEnd
      = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: operator Rate() const
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator Rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::InterestRate::rate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::InterestRate::compounding
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Compounding
    signature: Compounding compounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Frequency
      Src: /src/quantlib/ql/interestrate.hpp:59,1
    - Dst: Integer
      Src: /src/quantlib/ql/interestrate.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::InterestRate::frequency
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - Frequency
    - Integer
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::InterestRate::discountFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterestRate::compoundFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discountFactor(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:76,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:78,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:81,1
    - Dst: QuantLib::InterestRate::discountFactor
      Src: /src/quantlib/ql/interestrate.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: QuantLib::InterestRate::discountFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterestRate::discountFactor
    - Date
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor discountFactor(const Date& d1,\n                                      const
      Date& d2,\n                                      const Date& refStart = Date(),\n
      \                                     const Date& refEnd = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:100,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:102,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:105,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::InterestRate::compoundFactor
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterestRate::compoundFactor
    - Date
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real compoundFactor(const Date& d1,\n                            const
      Date& d2,\n                            const Date& refStart = Date(),\n                            const
      Date& refEnd = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:135,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:137,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:140,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - compound
    - ' resultDC'
    - comp
    - freq
    - ' d1'
    - ' d2'
    argTypes:
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 142
    functionName: QuantLib::InterestRate::impliedRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 4
    functionsReached:
    - Date
    - QuantLib::InterestRate::impliedRate
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate impliedRate(Real compound,\n                                        const
      DayCounter& resultDC,\n                                        Compounding comp,\n
      \                                       Frequency freq,\n                                        const
      Date& d1,\n                                        const Date& d2,\n                                        const
      Date& refStart = Date(),\n                                        const Date&
      refEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:158,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - comp
    - freq
    - t
    argTypes:
    - Compounding
    - Frequency
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: QuantLib::InterestRate::equivalentRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - QuantLib::InterestRate::compoundFactor
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate equivalentRate(Compounding comp,\n                                    Frequency
      freq,\n                                    Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:170,1
    - Dst: Date
      Src: /src/quantlib/ql/interestrate.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/interestrate.hpp:172,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:175,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/interestrate.hpp:176,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/interestrate.hpp:177,1
    - Dst: QuantLib::InterestRate::compoundFactor
      Src: /src/quantlib/ql/interestrate.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' resultDC'
    - comp
    - freq
    - d1
    - d2
    argTypes:
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 178
    functionName: QuantLib::InterestRate::equivalentRate
    functionSourceFile: /src/quantlib/ql/interestrate.hpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::InterestRate::impliedRate
    - QuantLib::InterestRate::compoundFactor
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate equivalentRate(const DayCounter& resultDC,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    Date
      d1,\n                                    Date d2,\n                                    const
      Date& refStart = Date(),\n                                    const Date& refEnd
      = Date()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.cpp:27,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.cpp:27,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instrument.cpp:32,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instrument.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::Instrument::Instrument
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - registerWith
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Instrument::Instrument()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/instrument.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instrument.cpp:40,1
    - Dst: update
      Src: /src/quantlib/ql/instrument.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::Instrument::setPricingEngine
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void Instrument::setPricingEngine(const ext::shared_ptr<PricingEngine>&
      e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instrument.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Instrument::setupArguments
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void Instrument::setupArguments(PricingEngine::arguments*) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.cpp:27,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instrument.cpp:27,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instrument.cpp:32,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instrument.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::Instrument::Instrument
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - registerWith
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Instrument::Instrument()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/instrument.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instrument.cpp:40,1
    - Dst: update
      Src: /src/quantlib/ql/instrument.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::Instrument::setPricingEngine
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void Instrument::setPricingEngine(const ext::shared_ptr<PricingEngine>&
      e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instrument.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Instrument::setupArguments
    functionSourceFile: /src/quantlib/ql/instrument.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void Instrument::setupArguments(PricingEngine::arguments*) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - F
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: INCLUDE_FILE
    functionSourceFile: /src/quantlib/ql/qldefines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INCLUDE_FILE(F)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - F
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: INCLUDE_FILE_
    functionSourceFile: /src/quantlib/ql/qldefines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INCLUDE_FILE_(F)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: partialRollback
      Src: /src/quantlib/ql/discretizedasset.cpp:31,1
    - Dst: time
      Src: /src/quantlib/ql/discretizedasset.cpp:31,1
    - Dst: preAdjustValues
      Src: /src/quantlib/ql/discretizedasset.cpp:32,1
    - Dst: QuantLib::DiscretizedOption::applyExerciseCondition
      Src: /src/quantlib/ql/discretizedasset.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/discretizedasset.cpp:41,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/discretizedasset.cpp:43,1
    - Dst: QuantLib::DiscretizedOption::applyExerciseCondition
      Src: /src/quantlib/ql/discretizedasset.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/discretizedasset.cpp:48,1
    - Dst: postAdjustValues
      Src: /src/quantlib/ql/discretizedasset.cpp:50,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 51
    functionName: QuantLib::DiscretizedOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - partialRollback
    - time
    - preAdjustValues
    - QuantLib::DiscretizedOption::applyExerciseCondition
    - QL_FAIL
    - postAdjustValues
    - size
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::postAdjustValuesImpl()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: partialRollback
      Src: /src/quantlib/ql/discretizedasset.cpp:31,1
    - Dst: time
      Src: /src/quantlib/ql/discretizedasset.cpp:31,1
    - Dst: preAdjustValues
      Src: /src/quantlib/ql/discretizedasset.cpp:32,1
    - Dst: QuantLib::DiscretizedOption::applyExerciseCondition
      Src: /src/quantlib/ql/discretizedasset.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/discretizedasset.cpp:41,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/discretizedasset.cpp:43,1
    - Dst: QuantLib::DiscretizedOption::applyExerciseCondition
      Src: /src/quantlib/ql/discretizedasset.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/discretizedasset.cpp:48,1
    - Dst: postAdjustValues
      Src: /src/quantlib/ql/discretizedasset.cpp:50,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 51
    functionName: QuantLib::DiscretizedOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/discretizedasset.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - partialRollback
    - time
    - preAdjustValues
    - QuantLib::DiscretizedOption::applyExerciseCondition
    - QL_FAIL
    - postAdjustValues
    - size
    linkageType: ''
    returnType: void
    signature: void DiscretizedOption::postAdjustValuesImpl()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/compounding.hpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' out'
    - ' compounding'
    argTypes:
    - std::ostream
    - Compounding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: '& operator<<(std::ostream& out, const Compounding& compounding)'
    functionSourceFile: /src/quantlib/ql/compounding.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Compounding& compounding)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/compounding.hpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' out'
    - ' compounding'
    argTypes:
    - std::ostream
    - Compounding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: '& operator<<(std::ostream& out, const Compounding& compounding)'
    functionSourceFile: /src/quantlib/ql/compounding.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Compounding& compounding)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~Index() override
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Index() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: '& timeSeries() const'
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: TimeSeries<Real> & timeSeries() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::Index::allowsNativeFixings
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool allowsNativeFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.hpp:104,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/index.hpp:105,1
    - Dst: name
      Src: /src/quantlib/ql/index.hpp:106,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/index.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: QuantLib::Index::addFixings
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 4
    functionsReached:
    - isValidFixingDate
    - QuantLib::detail::instance
    - name
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: "void addFixings(DateIterator dBegin,\n                        DateIterator
      dEnd,\n                        ValueIterator vBegin,\n                        bool
      forceOverwrite = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::Index::notifier
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Observable>
    signature: ext::shared_ptr<Observable> notifier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: QuantLib::Index::hasHistoricalFixing
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Index::hasHistoricalFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/index.hpp:132,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/index.hpp:132,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/index.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::Index::pastFixing
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - timeSeries
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Index::pastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/index.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::Index::update
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void Index::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~Index() override
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Index() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: '& timeSeries() const'
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: TimeSeries<Real> & timeSeries() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::Index::allowsNativeFixings
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool allowsNativeFixings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Index::checkNativeFixingsAllowed
      Src: /src/quantlib/ql/index.hpp:104,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/index.hpp:105,1
    - Dst: name
      Src: /src/quantlib/ql/index.hpp:106,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/index.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: QuantLib::Index::addFixings
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 4
    functionsReached:
    - isValidFixingDate
    - QuantLib::detail::instance
    - name
    - QuantLib::Index::checkNativeFixingsAllowed
    linkageType: ''
    returnType: void
    signature: "void addFixings(DateIterator dBegin,\n                        DateIterator
      dEnd,\n                        ValueIterator vBegin,\n                        bool
      forceOverwrite = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::Index::notifier
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Observable>
    signature: ext::shared_ptr<Observable> notifier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: QuantLib::Index::hasHistoricalFixing
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Index::hasHistoricalFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/index.hpp:132,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/index.hpp:132,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/index.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::Index::pastFixing
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - timeSeries
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Index::pastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/index.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::Index::update
    functionSourceFile: /src/quantlib/ql/index.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void Index::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Decimal>
      Src: /src/quantlib/ql/exchangerate.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::ExchangeRate::ExchangeRate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached:
    - Null<Decimal>
    linkageType: ''
    returnType: void
    signature: void ExchangeRate::ExchangeRate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/exchangerate.hpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/exchangerate.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - source
    - target
    - rate
    argTypes:
    - Currency
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::ExchangeRate::ExchangeRate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExchangeRate::ExchangeRate(Currency source, Currency target, Decimal
      rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& ExchangeRate::source() const'
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & ExchangeRate::source() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '& ExchangeRate::target() const'
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & ExchangeRate::target() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::ExchangeRate::type
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExchangeRate::Type
    signature: ExchangeRate::Type ExchangeRate::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::ExchangeRate::rate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Decimal
    signature: Decimal ExchangeRate::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Decimal>
      Src: /src/quantlib/ql/exchangerate.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::ExchangeRate::ExchangeRate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached:
    - Null<Decimal>
    linkageType: ''
    returnType: void
    signature: void ExchangeRate::ExchangeRate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/exchangerate.hpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/exchangerate.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - source
    - target
    - rate
    argTypes:
    - Currency
    - Currency
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::ExchangeRate::ExchangeRate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExchangeRate::ExchangeRate(Currency source, Currency target, Decimal
      rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& ExchangeRate::source() const'
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & ExchangeRate::source() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '& ExchangeRate::target() const'
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & ExchangeRate::target() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::ExchangeRate::type
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExchangeRate::Type
    signature: ExchangeRate::Type ExchangeRate::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::ExchangeRate::rate
    functionSourceFile: /src/quantlib/ql/exchangerate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Decimal
    signature: Decimal ExchangeRate::rate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/position.cpp:33,1
    - Dst: Integer
      Src: /src/quantlib/ql/position.cpp:33,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - p
    argTypes:
    - std::ostream
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: '& operator<<(std::ostream& out, Position::Type p)'
    functionSourceFile: /src/quantlib/ql/position.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Position::Type p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/position.cpp:33,1
    - Dst: Integer
      Src: /src/quantlib/ql/position.cpp:33,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - p
    argTypes:
    - std::ostream
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: '& operator<<(std::ostream& out, Position::Type p)'
    functionSourceFile: /src/quantlib/ql/position.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Position::Type p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeGrid()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:57,1
    - Dst: std::sort
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:62,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:62,1
    - Dst: std::unique
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/timegrid.hpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/timegrid.hpp:66,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:69,1
    - Dst: insert
      Src: /src/quantlib/ql/timegrid.hpp:71,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:71,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:72,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:72,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.hpp:74,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:74,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 78
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - insert
    - std::back_inserter
    - std::sort
    - QuantLib::TimeGrid::begin
    - resize
    - std::unique
    - push_back
    - reserve
    - QuantLib::TimeGrid::size
    - static_cast<bool (*)(Real, Real)>
    - std::adjacent_difference
    - QuantLib::TimeGrid::front
    - QuantLib::TimeGrid::end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TimeGrid(Iterator begin, Iterator end)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:88,1
    - Dst: std::sort
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:93,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:93,1
    - Dst: std::unique
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/timegrid.hpp:96,1
    - Dst: resize
      Src: /src/quantlib/ql/timegrid.hpp:97,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:97,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.hpp:99,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:106,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:106,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:107,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:109,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/timegrid.hpp:109,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/timegrid.hpp:111,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/timegrid.hpp:112,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/timegrid.hpp:112,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:115,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/timegrid.hpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:122,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:123,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:124,1
    - Dst: std::max
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: Size
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: std::lround
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: Size
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:132,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.hpp:137,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:137,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:139,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - begin
    - end
    - steps
    argTypes:
    - Iterator
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 140
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool (*)(Real, Real)>
    - std::back_inserter
    - std::sort
    - std::vector::front
    - std::vector::erase
    - Size
    - push_back
    - std::max
    - std::lround
    - std::adjacent_difference
    - reserve
    - QL_REQUIRE
    - QuantLib::TimeGrid::back
    - QuantLib::TimeGrid::begin
    - resize
    - std::vector::begin
    - std::unique
    - std::vector::end
    - QuantLib::TimeGrid::end
    - QuantLib::TimeGrid::front
    - std::vector::empty
    - std::min_element
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: void
    signature: void TimeGrid(Iterator begin, Iterator end, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<Time>::begin
      Src: /src/quantlib/ql/timegrid.hpp:142,1
    - Dst: std::initializer_list<Time>::end
      Src: /src/quantlib/ql/timegrid.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::initializer_list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - std::initializer_list<Time>::end
    - std::initializer_list<Time>::begin
    linkageType: ''
    returnType: void
    signature: void TimeGrid(std::initializer_list<Time> times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<Time>::begin
      Src: /src/quantlib/ql/timegrid.hpp:144,1
    - Dst: std::initializer_list<Time>::end
      Src: /src/quantlib/ql/timegrid.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - steps
    argTypes:
    - std::initializer_list<Time>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - std::initializer_list<Time>::end
    - std::initializer_list<Time>::begin
    linkageType: ''
    returnType: void
    signature: void TimeGrid(std::initializer_list<Time> times, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::closestIndex
      Src: /src/quantlib/ql/timegrid.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::TimeGrid::closestTime
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeGrid::closestIndex
    linkageType: ''
    returnType: Time
    signature: Time closestTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: '& mandatoryTimes() const'
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & mandatoryTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::TimeGrid::dt
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time dt(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::at
      Src: /src/quantlib/ql/timegrid.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 168
    functionName: QuantLib::TimeGrid::at
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeGrid::at
    linkageType: ''
    returnType: Time
    signature: Time at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: QuantLib::TimeGrid::size
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::empty
      Src: /src/quantlib/ql/timegrid.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::TimeGrid::empty
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeGrid::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::TimeGrid::begin
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::TimeGrid::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: QuantLib::TimeGrid::end
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::TimeGrid::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::rbegin
      Src: /src/quantlib/ql/timegrid.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::TimeGrid::rbegin
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeGrid::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::rend
      Src: /src/quantlib/ql/timegrid.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 174
    functionName: QuantLib::TimeGrid::rend
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TimeGrid::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::TimeGrid::front
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::TimeGrid::front
    linkageType: ''
    returnType: Time
    signature: Time front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::TimeGrid::back
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::TimeGrid::back
    linkageType: ''
    returnType: Time
    signature: Time back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeGrid()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:57,1
    - Dst: std::sort
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:62,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:62,1
    - Dst: std::unique
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:64,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/timegrid.hpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/timegrid.hpp:66,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:69,1
    - Dst: insert
      Src: /src/quantlib/ql/timegrid.hpp:71,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:71,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:72,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:72,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.hpp:74,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:74,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:75,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 78
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - insert
    - std::back_inserter
    - std::sort
    - QuantLib::TimeGrid::begin
    - resize
    - std::unique
    - push_back
    - reserve
    - QuantLib::TimeGrid::size
    - static_cast<bool (*)(Real, Real)>
    - std::adjacent_difference
    - QuantLib::TimeGrid::front
    - QuantLib::TimeGrid::end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TimeGrid(Iterator begin, Iterator end)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:88,1
    - Dst: std::sort
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:93,1
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:93,1
    - Dst: std::unique
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:95,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/timegrid.hpp:96,1
    - Dst: resize
      Src: /src/quantlib/ql/timegrid.hpp:97,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:97,1
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.hpp:99,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:106,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:106,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:107,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:109,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/timegrid.hpp:109,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/timegrid.hpp:111,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/timegrid.hpp:112,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/timegrid.hpp:112,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/timegrid.hpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/timegrid.hpp:115,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/timegrid.hpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:122,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:123,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:124,1
    - Dst: std::max
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: Size
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: std::lround
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: Size
      Src: /src/quantlib/ql/timegrid.hpp:129,1
    - Dst: push_back
      Src: /src/quantlib/ql/timegrid.hpp:132,1
    - Dst: reserve
      Src: /src/quantlib/ql/timegrid.hpp:137,1
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:137,1
    - Dst: std::adjacent_difference
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:138,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/timegrid.hpp:139,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - begin
    - end
    - steps
    argTypes:
    - Iterator
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 140
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool (*)(Real, Real)>
    - std::back_inserter
    - std::sort
    - std::vector::front
    - std::vector::erase
    - Size
    - push_back
    - std::max
    - std::lround
    - std::adjacent_difference
    - reserve
    - QL_REQUIRE
    - QuantLib::TimeGrid::back
    - QuantLib::TimeGrid::begin
    - resize
    - std::vector::begin
    - std::unique
    - std::vector::end
    - QuantLib::TimeGrid::end
    - QuantLib::TimeGrid::front
    - std::vector::empty
    - std::min_element
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: void
    signature: void TimeGrid(Iterator begin, Iterator end, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<Time>::begin
      Src: /src/quantlib/ql/timegrid.hpp:142,1
    - Dst: std::initializer_list<Time>::end
      Src: /src/quantlib/ql/timegrid.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::initializer_list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - std::initializer_list<Time>::end
    - std::initializer_list<Time>::begin
    linkageType: ''
    returnType: void
    signature: void TimeGrid(std::initializer_list<Time> times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<Time>::begin
      Src: /src/quantlib/ql/timegrid.hpp:144,1
    - Dst: std::initializer_list<Time>::end
      Src: /src/quantlib/ql/timegrid.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - steps
    argTypes:
    - std::initializer_list<Time>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: QuantLib::TimeGrid::TimeGrid
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - std::initializer_list<Time>::end
    - std::initializer_list<Time>::begin
    linkageType: ''
    returnType: void
    signature: void TimeGrid(std::initializer_list<Time> times, Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::closestIndex
      Src: /src/quantlib/ql/timegrid.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::TimeGrid::closestTime
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeGrid::closestIndex
    linkageType: ''
    returnType: Time
    signature: Time closestTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: '& mandatoryTimes() const'
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & mandatoryTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::TimeGrid::dt
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time dt(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::at
      Src: /src/quantlib/ql/timegrid.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 168
    functionName: QuantLib::TimeGrid::at
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeGrid::at
    linkageType: ''
    returnType: Time
    signature: Time at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::size
      Src: /src/quantlib/ql/timegrid.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: QuantLib::TimeGrid::size
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::TimeGrid::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::empty
      Src: /src/quantlib/ql/timegrid.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::TimeGrid::empty
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeGrid::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::begin
      Src: /src/quantlib/ql/timegrid.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::TimeGrid::begin
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::TimeGrid::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::end
      Src: /src/quantlib/ql/timegrid.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: QuantLib::TimeGrid::end
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::TimeGrid::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::rbegin
      Src: /src/quantlib/ql/timegrid.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::TimeGrid::rbegin
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeGrid::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::rend
      Src: /src/quantlib/ql/timegrid.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 174
    functionName: QuantLib::TimeGrid::rend
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TimeGrid::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::front
      Src: /src/quantlib/ql/timegrid.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::TimeGrid::front
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::TimeGrid::front
    linkageType: ''
    returnType: Time
    signature: Time front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TimeGrid::back
      Src: /src/quantlib/ql/timegrid.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::TimeGrid::back
    functionSourceFile: /src/quantlib/ql/timegrid.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::TimeGrid::back
    linkageType: ''
    returnType: Time
    signature: Time back() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:30,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: ExchangeRate::exchange
      Src: /src/quantlib/ql/money.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m'
    - ' target'
    argTypes:
    - Money
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::convertTo
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - currency
    - ExchangeRate::exchange
    linkageType: ''
    returnType: void
    signature: void convertTo(Money& m, const Currency& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::convertToBase
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::convertTo
    - QuantLib::detail::instance
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void convertToBase(Money& m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:48,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:53,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - f
    argTypes:
    - Money
    - Money
    - Function
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 64
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::convertToBase
    - Money::value
    - QuantLib::value
    - QuantLib::convertTo
    - f
    - QL_FAIL
    - QuantLib::detail::instance
    - currency
    linkageType: ''
    returnType: ReturnValue
    signature: ReturnValue apply(const Money& m1, const Money& m2, const Function
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:30,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: ExchangeRate::exchange
      Src: /src/quantlib/ql/money.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m'
    - ' target'
    argTypes:
    - Money
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::convertTo
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::instance
    - currency
    - ExchangeRate::exchange
    linkageType: ''
    returnType: void
    signature: void convertTo(Money& m, const Currency& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::convertToBase
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::convertTo
    - QuantLib::detail::instance
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void convertToBase(Money& m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:48,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:53,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - f
    argTypes:
    - Money
    - Money
    - Function
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 64
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::convertToBase
    - Money::value
    - QuantLib::value
    - QuantLib::convertTo
    - f
    - QL_FAIL
    - QuantLib::detail::instance
    - currency
    linkageType: ''
    returnType: ReturnValue
    signature: ReturnValue apply(const Money& m1, const Money& m2, const Function
      f)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:68,1
    - Dst: convertToBase
      Src: /src/quantlib/ql/money.cpp:72,1
    - Dst: convertToBase
      Src: /src/quantlib/ql/money.cpp:74,1
    - Dst: convertTo
      Src: /src/quantlib/ql/money.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 84
    functionName: '& Money::operator+=(const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::detail::instance
    - convertTo
    - convertToBase
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator+=(const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: '& Money::operator-=(const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator-=(const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: operator/(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::apply
    linkageType: ''
    returnType: Decimal
    signature: Decimal operator/(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: operator==(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::apply
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: operator<(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::apply
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: operator<=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::apply
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:115,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/money.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - n
    argTypes:
    - Money
    - Money
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::close
    - QuantLib::apply
    linkageType: ''
    returnType: bool
    signature: bool close(const Money& m1, const Money& m2, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:121,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/money.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - n
    argTypes:
    - Money
    - Money
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::apply
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool close_enough(const Money& m1, const Money& m2, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rounded
      Src: /src/quantlib/ql/money.cpp:127,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' m'
    argTypes:
    - std::ostream
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& operator<<(std::ostream& out, const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - currency
    - rounded
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& Money::Settings::conversionType() const'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money::ConversionType
    signature: Money::ConversionType & Money::Settings::conversionType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& Money::Settings::conversionType()'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money::ConversionType
    signature: Money::ConversionType & Money::Settings::conversionType()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& Money::Settings::baseCurrency() const'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::Settings::baseCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& Money::Settings::baseCurrency()'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::Settings::baseCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& Money::BaseCurrencyProxy::operator=(const Currency& c)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Money::BaseCurrencyProxy
    signature: Money::BaseCurrencyProxy & Money::BaseCurrencyProxy::operator=(const
      Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: Money::BaseCurrencyProxy::operator Currency() const
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Money::BaseCurrencyProxy::operator Currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - ConversionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& Money::ConversionTypeProxy::operator=(ConversionType t)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Money::ConversionTypeProxy
    signature: Money::ConversionTypeProxy & Money::ConversionTypeProxy::operator=(ConversionType
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: Money::ConversionTypeProxy::operator Money::ConversionType() const
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Money::ConversionTypeProxy::operator Money::ConversionType() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:30,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: ExchangeRate::exchange
      Src: /src/quantlib/ql/money.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m'
    - ' target'
    argTypes:
    - Money
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::convertTo
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::instance
    - currency
    - ExchangeRate::exchange
    linkageType: ''
    returnType: void
    signature: void convertTo(Money& m, const Currency& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::convertToBase
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::convertTo
    - QuantLib::detail::instance
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void convertToBase(Money& m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:48,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:53,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - f
    argTypes:
    - Money
    - Money
    - Function
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 64
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::convertToBase
    - Money::value
    - QuantLib::value
    - QuantLib::convertTo
    - f
    - QL_FAIL
    - QuantLib::detail::instance
    - currency
    linkageType: ''
    returnType: ReturnValue
    signature: ReturnValue apply(const Money& m1, const Money& m2, const Function
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:30,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:32,1
    - Dst: ExchangeRate::exchange
      Src: /src/quantlib/ql/money.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m'
    - ' target'
    argTypes:
    - Money
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::convertTo
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::instance
    - currency
    - ExchangeRate::exchange
    linkageType: ''
    returnType: void
    signature: void convertTo(Money& m, const Currency& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/money.cpp:41,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::convertToBase
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::convertTo
    - QuantLib::detail::instance
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void convertToBase(Money& m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:48,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:49,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:50,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:53,1
    - Dst: QuantLib::convertToBase
      Src: /src/quantlib/ql/money.cpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:56,1
    - Dst: QuantLib::convertTo
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:59,1
    - Dst: f
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: Money::value
      Src: /src/quantlib/ql/money.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - f
    argTypes:
    - Money
    - Money
    - Function
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 64
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::convertToBase
    - Money::value
    - QuantLib::value
    - QuantLib::convertTo
    - f
    - QL_FAIL
    - QuantLib::detail::instance
    - currency
    linkageType: ''
    returnType: ReturnValue
    signature: ReturnValue apply(const Money& m1, const Money& m2, const Function
      f)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:68,1
    - Dst: convertToBase
      Src: /src/quantlib/ql/money.cpp:72,1
    - Dst: convertToBase
      Src: /src/quantlib/ql/money.cpp:74,1
    - Dst: convertTo
      Src: /src/quantlib/ql/money.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/money.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 84
    functionName: '& Money::operator+=(const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::detail::instance
    - convertTo
    - convertToBase
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator+=(const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: '& Money::operator-=(const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money
    signature: Money & Money::operator-=(const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: apply<Decimal>
      Src: /src/quantlib/ql/money.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: operator/(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - apply<Decimal>
    linkageType: ''
    returnType: Decimal
    signature: Decimal operator/(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: apply<bool>
      Src: /src/quantlib/ql/money.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: operator==(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - apply<bool>
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: apply<bool>
      Src: /src/quantlib/ql/money.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: operator<(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - apply<bool>
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: apply<bool>
      Src: /src/quantlib/ql/money.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Money
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: operator<=(const Money& m1, const Money& m2)
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - apply<bool>
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Money& m1, const Money& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:115,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/money.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - n
    argTypes:
    - Money
    - Money
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::close
    - QuantLib::apply
    linkageType: ''
    returnType: bool
    signature: bool close(const Money& m1, const Money& m2, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::apply
      Src: /src/quantlib/ql/money.cpp:121,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/money.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - n
    argTypes:
    - Money
    - Money
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::apply
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool close_enough(const Money& m1, const Money& m2, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rounded
      Src: /src/quantlib/ql/money.cpp:127,1
    - Dst: currency
      Src: /src/quantlib/ql/money.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' m'
    argTypes:
    - std::ostream
    - Money
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& operator<<(std::ostream& out, const Money& m)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - currency
    - rounded
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Money& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& Money::Settings::conversionType() const'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money::ConversionType
    signature: Money::ConversionType & Money::Settings::conversionType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& Money::Settings::conversionType()'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Money::ConversionType
    signature: Money::ConversionType & Money::Settings::conversionType()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& Money::Settings::baseCurrency() const'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::Settings::baseCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& Money::Settings::baseCurrency()'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & Money::Settings::baseCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& Money::BaseCurrencyProxy::operator=(const Currency& c)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Money::BaseCurrencyProxy
    signature: Money::BaseCurrencyProxy & Money::BaseCurrencyProxy::operator=(const
      Currency& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: Money::BaseCurrencyProxy::operator Currency() const
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Money::BaseCurrencyProxy::operator Currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - ConversionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& Money::ConversionTypeProxy::operator=(ConversionType t)'
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Money::ConversionTypeProxy
    signature: Money::ConversionTypeProxy & Money::ConversionTypeProxy::operator=(ConversionType
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/money.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: Money::ConversionTypeProxy::operator Money::ConversionType() const
    functionSourceFile: /src/quantlib/ql/money.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Money::ConversionTypeProxy::operator Money::ConversionType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/numericalmethod.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - timeGrid
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::Lattice::Lattice
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Lattice(TimeGrid timeGrid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Lattice()
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Lattice()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/numericalmethod.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - timeGrid
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::Lattice::Lattice
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Lattice(TimeGrid timeGrid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Lattice()
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Lattice()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/numericalmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::QuantoBarrierOption::QuantoBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoBarrierOption::QuantoBarrierOption(\n                        Barrier::Type
      barrierType,\n                        Real barrier,\n                        Real
      rebate,\n                        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n
      \                       const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoBarrierOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::QuantoBarrierOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::QuantoBarrierOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::QuantoBarrierOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoBarrierOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoBarrierOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:60,1
    - Dst: dynamic_cast<const QuantoBarrierOption::results*>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:61,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::QuantoBarrierOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const QuantoBarrierOption::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: "void QuantoBarrierOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::QuantoBarrierOption::QuantoBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoBarrierOption::QuantoBarrierOption(\n                        Barrier::Type
      barrierType,\n                        Real barrier,\n                        Real
      rebate,\n                        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n
      \                       const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoBarrierOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::QuantoBarrierOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::QuantoBarrierOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoBarrierOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::QuantoBarrierOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoBarrierOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoBarrierOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:60,1
    - Dst: dynamic_cast<const QuantoBarrierOption::results*>
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:61,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantobarrieroption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::QuantoBarrierOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantobarrieroption.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const QuantoBarrierOption::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: "void QuantoBarrierOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:41,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:44,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:44,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makecms.cpp:45,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:47,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:48,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecms.cpp:52,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makecms.cpp:52,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:55,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' swapTenor'
    - ' swapIndex'
    - ' iborIndex'
    - iborSpread
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<IborIndex>
    - Spread
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::MakeCms::MakeCms
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - Null<Real>
    - dayCounter
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Actual360
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeCms::MakeCms(const Period& swapTenor,\n                     const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                     const ext::shared_ptr<IborIndex>&
      iborIndex,\n                     Spread iborSpread,\n                     const
      Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/makecms.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:65,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:68,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:68,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makecms.cpp:69,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:72,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecms.cpp:76,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makecms.cpp:76,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:77,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' swapIndex'
    - iborSpread
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<SwapIndex>
    - Spread
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 77
    functionName: QuantLib::MakeCms::MakeCms
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - tenor
    - Null<Real>
    - dayCounter
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Actual360
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeCms::MakeCms(const Period& swapTenor,\n                     const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                     Spread iborSpread,\n
      \                    const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: MakeCms::operator Swap() const
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCms::operator Swap() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makecms.cpp:88,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makecms.cpp:92,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makecms.cpp:95,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makecms.cpp:96,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:117,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:121,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/instruments/makecms.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:131,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:131,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makecms.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:134,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:134,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makecms.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:137,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:139,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:143,1
    - Dst: Swap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:146,1
    - Dst: Swap::legNPV
      Src: /src/quantlib/ql/instruments/makecms.cpp:148,1
    - Dst: Swap::legNPV
      Src: /src/quantlib/ql/instruments/makecms.cpp:148,1
    - Dst: Swap::legBPS
      Src: /src/quantlib/ql/instruments/makecms.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:152,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/makecms.cpp:152,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:156,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:160,1
    - Dst: ext::make_shared<Swap>
      Src: /src/quantlib/ql/instruments/makecms.cpp:165,1
    - Dst: ext::make_shared<Swap>
      Src: /src/quantlib/ql/instruments/makecms.cpp:167,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:168,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 170
    functionName: MakeCms::operator ext::shared_ptr<Swap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - Swap::legBPS
    - name
    - Swap::setPricingEngine
    - ext::shared_ptr::setPricingEngine
    - fixingDays
    - ext::make_shared<Swap>
    - Swap::legNPV
    - CmsLeg
    - setCouponPricer
    - IborLeg
    - QuantLib::detail::instance
    - Date
    - Null<Spread>
    - forwardingTermStructure
    - adjust
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeCms::operator ext::shared_ptr<Swap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: '& MakeCms::receiveCms(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::receiveCms(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '& MakeCms::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "&\n    MakeCms::withEffectiveDate(const Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withEffectiveDate(const Date& effectiveDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makecms.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' discountingTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "& MakeCms::withDiscountingTermStructure(\n                const
      Handle<YieldTermStructure>& discountingTermStructure)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms & MakeCms::withDiscountingTermStructure(\n                const
      Handle<YieldTermStructure>& discountingTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' couponPricer'
    argTypes:
    - ext::shared_ptr<CmsCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "& MakeCms::withCmsCouponPricer(\n                    const ext::shared_ptr<CmsCouponPricer>&
      couponPricer)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms & MakeCms::withCmsCouponPricer(\n                    const
      ext::shared_ptr<CmsCouponPricer>& couponPricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: '& MakeCms::withCmsLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeCms::withCmsLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegCalendar(const Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionName: "&\n    MakeCms::withCmsLegConvention(BusinessDayConvention bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeCms::withCmsLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& MakeCms::withCmsLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: '& MakeCms::withCmsLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '& MakeCms::withCmsLegFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeCms::withCmsLegNextToLastDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegNextToLastDate(const Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "&\n    MakeCms::withCmsLegDayCount(const DayCounter& dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegDayCount(const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeCms::withFloatingLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeCms::withFloatingLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegCalendar(const Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeCms::withFloatingLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeCms::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MakeCms::withFloatingLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MakeCms::withFloatingLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionName: "&\n    MakeCms::withFloatingLegFirstDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegFirstDate(const Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 293
    functionName: "&\n    MakeCms::withFloatingLegNextToLastDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegNextToLastDate(const Date&
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionName: "&\n    MakeCms::withFloatingLegDayCount(const DayCounter& dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegDayCount(const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 304
    functionName: '& MakeCms::withAtmSpread(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withAtmSpread(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:41,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:44,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:44,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makecms.cpp:45,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:47,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:48,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecms.cpp:52,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makecms.cpp:52,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:55,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' swapTenor'
    - ' swapIndex'
    - ' iborIndex'
    - iborSpread
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<IborIndex>
    - Spread
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::MakeCms::MakeCms
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - Null<Real>
    - dayCounter
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Actual360
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeCms::MakeCms(const Period& swapTenor,\n                     const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                     const ext::shared_ptr<IborIndex>&
      iborIndex,\n                     Spread iborSpread,\n                     const
      Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/makecms.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/makecms.cpp:65,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:68,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makecms.cpp:68,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makecms.cpp:69,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makecms.cpp:72,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecms.cpp:76,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makecms.cpp:76,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:77,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' swapIndex'
    - iborSpread
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<SwapIndex>
    - Spread
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 77
    functionName: QuantLib::MakeCms::MakeCms
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - tenor
    - Null<Real>
    - dayCounter
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Actual360
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeCms::MakeCms(const Period& swapTenor,\n                     const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                     Spread iborSpread,\n
      \                    const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: MakeCms::operator Swap() const
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCms::operator Swap() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makecms.cpp:88,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makecms.cpp:92,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makecms.cpp:95,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makecms.cpp:96,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:117,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:121,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/instruments/makecms.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:131,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:131,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makecms.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:134,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makecms.cpp:134,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makecms.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:137,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:139,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:143,1
    - Dst: Swap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:146,1
    - Dst: Swap::legNPV
      Src: /src/quantlib/ql/instruments/makecms.cpp:148,1
    - Dst: Swap::legNPV
      Src: /src/quantlib/ql/instruments/makecms.cpp:148,1
    - Dst: Swap::legBPS
      Src: /src/quantlib/ql/instruments/makecms.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecms.cpp:152,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/makecms.cpp:152,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/makecms.cpp:156,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/makecms.cpp:160,1
    - Dst: ext::make_shared<Swap>
      Src: /src/quantlib/ql/instruments/makecms.cpp:165,1
    - Dst: ext::make_shared<Swap>
      Src: /src/quantlib/ql/instruments/makecms.cpp:167,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecms.cpp:168,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 170
    functionName: MakeCms::operator ext::shared_ptr<Swap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - Swap::legBPS
    - name
    - Swap::setPricingEngine
    - ext::shared_ptr::setPricingEngine
    - fixingDays
    - ext::make_shared<Swap>
    - Swap::legNPV
    - CmsLeg
    - setCouponPricer
    - IborLeg
    - QuantLib::detail::instance
    - Date
    - Null<Spread>
    - forwardingTermStructure
    - adjust
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeCms::operator ext::shared_ptr<Swap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: '& MakeCms::receiveCms(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::receiveCms(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '& MakeCms::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "&\n    MakeCms::withEffectiveDate(const Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withEffectiveDate(const Date& effectiveDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makecms.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' discountingTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "& MakeCms::withDiscountingTermStructure(\n                const
      Handle<YieldTermStructure>& discountingTermStructure)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms & MakeCms::withDiscountingTermStructure(\n                const
      Handle<YieldTermStructure>& discountingTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' couponPricer'
    argTypes:
    - ext::shared_ptr<CmsCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "& MakeCms::withCmsCouponPricer(\n                    const ext::shared_ptr<CmsCouponPricer>&
      couponPricer)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms & MakeCms::withCmsCouponPricer(\n                    const
      ext::shared_ptr<CmsCouponPricer>& couponPricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: '& MakeCms::withCmsLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeCms::withCmsLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegCalendar(const Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionName: "&\n    MakeCms::withCmsLegConvention(BusinessDayConvention bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeCms::withCmsLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& MakeCms::withCmsLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: '& MakeCms::withCmsLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '& MakeCms::withCmsLegFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withCmsLegFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeCms::withCmsLegNextToLastDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegNextToLastDate(const Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "&\n    MakeCms::withCmsLegDayCount(const DayCounter& dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withCmsLegDayCount(const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeCms::withFloatingLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeCms::withFloatingLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegCalendar(const Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeCms::withFloatingLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeCms::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MakeCms::withFloatingLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MakeCms::withFloatingLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withFloatingLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionName: "&\n    MakeCms::withFloatingLegFirstDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegFirstDate(const Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 293
    functionName: "&\n    MakeCms::withFloatingLegNextToLastDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegNextToLastDate(const Date&
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionName: "&\n    MakeCms::withFloatingLegDayCount(const DayCounter& dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: "MakeCms &\n    MakeCms::withFloatingLegDayCount(const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 304
    functionName: '& MakeCms::withAtmSpread(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecms.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCms
    signature: MakeCms & MakeCms::withAtmSpread(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::NonstandardSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::NonstandardSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type NonstandardSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: '&NonstandardSwap::fixedNominal() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::fixedNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: '&NonstandardSwap::floatingNominal() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::floatingNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: '&NonstandardSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &NonstandardSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: '&NonstandardSwap::fixedRate() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: '&NonstandardSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &NonstandardSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: '&NonstandardSwap::floatingSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &NonstandardSwap::floatingSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: "&\n    NonstandardSwap::iborIndex() const"
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> &\n    NonstandardSwap::iborIndex() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:197,1
    - Dst: front
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: QuantLib::NonstandardSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached:
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread NonstandardSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:203,1
    - Dst: front
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: QuantLib::NonstandardSwap::gearing
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached:
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NonstandardSwap::gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: '&NonstandardSwap::spreads() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> &NonstandardSwap::spreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: '&NonstandardSwap::gearings() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::gearings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: '&NonstandardSwap::floatingDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &NonstandardSwap::floatingDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: QuantLib::NonstandardSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention NonstandardSwap::paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 224
    functionName: '&NonstandardSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &NonstandardSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: '&NonstandardSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &NonstandardSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::NonstandardSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::NonstandardSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type NonstandardSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: '&NonstandardSwap::fixedNominal() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::fixedNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: '&NonstandardSwap::floatingNominal() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::floatingNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: '&NonstandardSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &NonstandardSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: '&NonstandardSwap::fixedRate() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: '&NonstandardSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &NonstandardSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: '&NonstandardSwap::floatingSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &NonstandardSwap::floatingSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: "&\n    NonstandardSwap::iborIndex() const"
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> &\n    NonstandardSwap::iborIndex() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:197,1
    - Dst: front
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: QuantLib::NonstandardSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached:
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread NonstandardSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:203,1
    - Dst: front
      Src: /src/quantlib/ql/instruments/nonstandardswap.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: QuantLib::NonstandardSwap::gearing
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached:
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NonstandardSwap::gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: '&NonstandardSwap::spreads() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> &NonstandardSwap::spreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: '&NonstandardSwap::gearings() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &NonstandardSwap::gearings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: '&NonstandardSwap::floatingDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &NonstandardSwap::floatingDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: QuantLib::NonstandardSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention NonstandardSwap::paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 224
    functionName: '&NonstandardSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &NonstandardSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: '&NonstandardSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &NonstandardSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::EquityTotalReturnSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::EquityTotalReturnSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& equityIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<EquityIndex>
    signature: ext::shared_ptr<EquityIndex> & equityIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: '& interestRateIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: ext::shared_ptr<InterestRateIndex> & interestRateIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& schedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & schedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::EquityTotalReturnSwap::margin
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate margin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::EquityTotalReturnSwap::gearing
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& paymentCalendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & paymentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::EquityTotalReturnSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::EquityTotalReturnSwap::paymentDelay
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural paymentDelay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::EquityTotalReturnSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::EquityTotalReturnSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& equityIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<EquityIndex>
    signature: ext::shared_ptr<EquityIndex> & equityIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: '& interestRateIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: ext::shared_ptr<InterestRateIndex> & interestRateIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& schedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & schedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::EquityTotalReturnSwap::margin
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate margin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::EquityTotalReturnSwap::gearing
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& paymentCalendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & paymentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::EquityTotalReturnSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::EquityTotalReturnSwap::paymentDelay
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural paymentDelay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 154
    functionName: QuantLib::FloatFloatSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::FloatFloatSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type FloatFloatSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: '&FloatFloatSwap::nominal1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &FloatFloatSwap::nominal1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: '&FloatFloatSwap::nominal2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &FloatFloatSwap::nominal2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: '&FloatFloatSwap::schedule1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &FloatFloatSwap::schedule1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: '&FloatFloatSwap::schedule2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &FloatFloatSwap::schedule2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: "&\n    FloatFloatSwap::index1() const"
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatFloatSwap::index1()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: "&\n    FloatFloatSwap::index2() const"
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatFloatSwap::index2()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: QuantLib::FloatFloatSwap::spread1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::spread1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 217
    functionName: QuantLib::FloatFloatSwap::spread2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::spread2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 219
    functionName: QuantLib::FloatFloatSwap::gearing1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::gearing1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 221
    functionName: QuantLib::FloatFloatSwap::gearing2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::gearing2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::FloatFloatSwap::cappedRate1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::cappedRate1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::FloatFloatSwap::cappedRate2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::cappedRate2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 227
    functionName: QuantLib::FloatFloatSwap::flooredRate1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::flooredRate1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 229
    functionName: QuantLib::FloatFloatSwap::flooredRate2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::flooredRate2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: '&FloatFloatSwap::dayCount1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &FloatFloatSwap::dayCount1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: '&FloatFloatSwap::dayCount2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &FloatFloatSwap::dayCount2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionName: QuantLib::FloatFloatSwap::paymentConvention1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FloatFloatSwap::paymentConvention1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: QuantLib::FloatFloatSwap::paymentConvention2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FloatFloatSwap::paymentConvention2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 247
    functionName: '&FloatFloatSwap::leg1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &FloatFloatSwap::leg1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 249
    functionName: '&FloatFloatSwap::leg2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &FloatFloatSwap::leg2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 154
    functionName: QuantLib::FloatFloatSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::FloatFloatSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type FloatFloatSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: '&FloatFloatSwap::nominal1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &FloatFloatSwap::nominal1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: '&FloatFloatSwap::nominal2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &FloatFloatSwap::nominal2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: '&FloatFloatSwap::schedule1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &FloatFloatSwap::schedule1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: '&FloatFloatSwap::schedule2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule &FloatFloatSwap::schedule2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: "&\n    FloatFloatSwap::index1() const"
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatFloatSwap::index1()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: "&\n    FloatFloatSwap::index2() const"
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatFloatSwap::index2()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: QuantLib::FloatFloatSwap::spread1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::spread1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 217
    functionName: QuantLib::FloatFloatSwap::spread2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::spread2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 219
    functionName: QuantLib::FloatFloatSwap::gearing1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::gearing1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 221
    functionName: QuantLib::FloatFloatSwap::gearing2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::gearing2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::FloatFloatSwap::cappedRate1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::cappedRate1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::FloatFloatSwap::cappedRate2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::cappedRate2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 227
    functionName: QuantLib::FloatFloatSwap::flooredRate1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::flooredRate1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 229
    functionName: QuantLib::FloatFloatSwap::flooredRate2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> FloatFloatSwap::flooredRate2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: '&FloatFloatSwap::dayCount1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &FloatFloatSwap::dayCount1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: '&FloatFloatSwap::dayCount2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter &FloatFloatSwap::dayCount2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionName: QuantLib::FloatFloatSwap::paymentConvention1
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FloatFloatSwap::paymentConvention1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: QuantLib::FloatFloatSwap::paymentConvention2
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FloatFloatSwap::paymentConvention2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 247
    functionName: '&FloatFloatSwap::leg1() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &FloatFloatSwap::leg1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 249
    functionName: '&FloatFloatSwap::leg2() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg &FloatFloatSwap::leg2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::Swaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::Swaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::type
      Src: /src/quantlib/ql/instruments/swaption.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::Swaption::type
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Swaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: '& underlying() const'
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: ext::shared_ptr<FixedVsFloatingSwap> & underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 143
    functionName: QuantLib::Swaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::Swaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::Swaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::type
      Src: /src/quantlib/ql/instruments/swaption.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::Swaption::type
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Swaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: '& underlying() const'
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: ext::shared_ptr<FixedVsFloatingSwap> & underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 143
    functionName: QuantLib::Swaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/swaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' price'
    - type
    - ' date'
    argTypes:
    - Bond::Price
    - Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::Callability::Callability
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Callability(const Bond::Price& price, Type type, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: '& price() const'
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Bond::Price
    signature: Bond::Price & price() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Callability::type
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Callability::date
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Callability>*>
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:66,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:68,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::Callability::accept
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Callability>*>
    - auto*::visit
    - QuantLib::Event::accept
    linkageType: ''
    returnType: void
    signature: void Callability::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' price'
    - type
    - ' date'
    argTypes:
    - Bond::Price
    - Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::Callability::Callability
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Callability(const Bond::Price& price, Type type, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: '& price() const'
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Bond::Price
    signature: Bond::Price & price() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Callability::type
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Callability::date
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Callability>*>
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:66,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:68,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/instruments/callabilityschedule.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::Callability::accept
    functionSourceFile: /src/quantlib/ql/instruments/callabilityschedule.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Callability>*>
    - auto*::visit
    - QuantLib::Event::accept
    linkageType: ''
    returnType: void
    signature: void Callability::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:27,1
    - Dst: const_cast<Swaption &>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:28,1
    - Dst: ext::make_shared<NonstandardSwap>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:29,1
    - Dst: Swaption::underlying
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:30,1
    - Dst: Swaption::settlementType
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:31,1
    - Dst: Swaption::settlementMethod
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:34,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fromSwaption
    argTypes:
    - Swaption
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 44
    functionName: QuantLib::NonstandardSwaption::NonstandardSwaption
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - Swaption::settlementMethod
    - ext::shared_ptr<Payoff>
    - ext::make_shared<NonstandardSwap>
    - const_cast<Swaption &>
    - Swaption::settlementType
    - registerWith
    - Swaption::underlying
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::NonstandardSwaption(const Swaption &fromSwaption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:52,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<NonstandardSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::NonstandardSwaption::NonstandardSwaption
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwaption::NonstandardSwaption(ext::shared_ptr<NonstandardSwap>
      swap,\n                                             const ext::shared_ptr<Exercise>&
      exercise,\n                                             Settlement::Type delivery,\n
      \                                            Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:58,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::NonstandardSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool NonstandardSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NonstandardSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:64,1
    - Dst: dynamic_cast<NonstandardSwaption::arguments*>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::NonstandardSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<NonstandardSwaption::arguments*>
    - QuantLib::NonstandardSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:80,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: NonstandardSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketGeneratingEngine>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:93,1
    - Dst: reset
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:94,1
    - Dst: QuantLib::NonstandardSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:95,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:95,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:96,1
    - Dst: ext::shared_ptr::calibrationBasket
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - BasketGeneratingEngine::CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::NonstandardSwaption::calibrationBasket
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::calibrationBasket
    - reset
    - ext::dynamic_pointer_cast<BasketGeneratingEngine>
    - getArguments
    - QuantLib::NonstandardSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> NonstandardSwaption::calibrationBasket(\n
      \       const ext::shared_ptr<SwapIndex>& standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const BasketGeneratingEngine::CalibrationBasketType
      basketType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:27,1
    - Dst: const_cast<Swaption &>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:28,1
    - Dst: ext::make_shared<NonstandardSwap>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:29,1
    - Dst: Swaption::underlying
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:30,1
    - Dst: Swaption::settlementType
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:31,1
    - Dst: Swaption::settlementMethod
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:34,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fromSwaption
    argTypes:
    - Swaption
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 44
    functionName: QuantLib::NonstandardSwaption::NonstandardSwaption
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - Swaption::settlementMethod
    - ext::shared_ptr<Payoff>
    - ext::make_shared<NonstandardSwap>
    - const_cast<Swaption &>
    - Swaption::settlementType
    - registerWith
    - Swaption::underlying
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::NonstandardSwaption(const Swaption &fromSwaption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:52,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<NonstandardSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::NonstandardSwaption::NonstandardSwaption
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwaption::NonstandardSwaption(ext::shared_ptr<NonstandardSwap>
      swap,\n                                             const ext::shared_ptr<Exercise>&
      exercise,\n                                             Settlement::Type delivery,\n
      \                                            Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:58,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::NonstandardSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool NonstandardSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NonstandardSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:64,1
    - Dst: dynamic_cast<NonstandardSwaption::arguments*>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::NonstandardSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 3
    functionsReached:
    - dynamic_cast<NonstandardSwaption::arguments*>
    - QuantLib::NonstandardSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:80,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: NonstandardSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketGeneratingEngine>
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:93,1
    - Dst: reset
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:94,1
    - Dst: QuantLib::NonstandardSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:95,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:95,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:96,1
    - Dst: ext::shared_ptr::calibrationBasket
      Src: /src/quantlib/ql/instruments/nonstandardswaption.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - BasketGeneratingEngine::CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::NonstandardSwaption::calibrationBasket
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::calibrationBasket
    - reset
    - ext::dynamic_pointer_cast<BasketGeneratingEngine>
    - getArguments
    - QuantLib::NonstandardSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> NonstandardSwaption::calibrationBasket(\n
      \       const ext::shared_ptr<SwapIndex>& standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const BasketGeneratingEngine::CalibrationBasketType
      basketType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::YearOnYearInflationSwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::YearOnYearInflationSwap::paymentCalendar
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar paymentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: ~YearOnYearInflationSwap() override
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YearOnYearInflationSwap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: QuantLib::YearOnYearInflationSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::YearOnYearInflationSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type YearOnYearInflationSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::YearOnYearInflationSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: '& YearOnYearInflationSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & YearOnYearInflationSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::YearOnYearInflationSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate YearOnYearInflationSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: '& YearOnYearInflationSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & YearOnYearInflationSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& YearOnYearInflationSwap::yoySchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & YearOnYearInflationSwap::yoySchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: '& YearOnYearInflationSwap::yoyInflationIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> & YearOnYearInflationSwap::yoyInflationIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionName: QuantLib::YearOnYearInflationSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread YearOnYearInflationSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: '& YearOnYearInflationSwap::yoyDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & YearOnYearInflationSwap::yoyDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: QuantLib::YearOnYearInflationSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention YearOnYearInflationSwap::paymentConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: '& YearOnYearInflationSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & YearOnYearInflationSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: '& YearOnYearInflationSwap::yoyLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & YearOnYearInflationSwap::yoyLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::YearOnYearInflationSwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::YearOnYearInflationSwap::paymentCalendar
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar paymentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: ~YearOnYearInflationSwap() override
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YearOnYearInflationSwap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: QuantLib::YearOnYearInflationSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::YearOnYearInflationSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type YearOnYearInflationSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::YearOnYearInflationSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: '& YearOnYearInflationSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & YearOnYearInflationSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::YearOnYearInflationSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate YearOnYearInflationSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: '& YearOnYearInflationSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & YearOnYearInflationSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& YearOnYearInflationSwap::yoySchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & YearOnYearInflationSwap::yoySchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: '& YearOnYearInflationSwap::yoyInflationIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> & YearOnYearInflationSwap::yoyInflationIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionName: QuantLib::YearOnYearInflationSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread YearOnYearInflationSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: '& YearOnYearInflationSwap::yoyDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & YearOnYearInflationSwap::yoyDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: QuantLib::YearOnYearInflationSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention YearOnYearInflationSwap::paymentConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: '& YearOnYearInflationSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & YearOnYearInflationSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: '& YearOnYearInflationSwap::yoyLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & YearOnYearInflationSwap::yoyLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::BarrierOption::BarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BarrierOption::BarrierOption(\n        Barrier::Type barrierType,\n
      \       Real barrier,\n        Real rebate,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:42,1
    - Dst: dynamic_cast<BarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: QuantLib::BarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<BarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BarrierOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BarrierOption::impliedVolatility
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:59,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionName: QuantLib::BarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 1
    functionsReached:
    - DividendSchedule
    - QuantLib::BarrierOption::impliedVolatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BarrierOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:71,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:71,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:73,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:76,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:80,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:82,1
    - Dst: std::make_unique<AnalyticBarrierEngine>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:83,1
    - Dst: std::make_unique<FdBlackScholesBarrierEngine>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:92,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:95,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 7
    argNames:
    - targetValue
    - ' process'
    - ' dividends'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 102
    functionName: QuantLib::BarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 1
    functionsReached:
    - empty
    - std::make_unique<AnalyticBarrierEngine>
    - type
    - std::make_unique<FdBlackScholesBarrierEngine>
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BarrierOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const DividendSchedule& dividends,\n             Real accuracy,\n
      \            Size maxEvaluations,\n             Volatility minVol,\n             Volatility
      maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: BarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void BarrierOption::arguments::arguments()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:110,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 124
    functionName: BarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BarrierOption::arguments::validate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: BarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: bool
    signature: bool BarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::BarrierOption::BarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BarrierOption::BarrierOption(\n        Barrier::Type barrierType,\n
      \       Real barrier,\n        Real rebate,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:42,1
    - Dst: dynamic_cast<BarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: QuantLib::BarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<BarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BarrierOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BarrierOption::impliedVolatility
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:59,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionName: QuantLib::BarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 2
    functionsReached:
    - DividendSchedule
    - QuantLib::BarrierOption::impliedVolatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BarrierOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:71,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:71,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:73,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:76,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:80,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:82,1
    - Dst: std::make_unique<AnalyticBarrierEngine>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:83,1
    - Dst: std::make_unique<FdBlackScholesBarrierEngine>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:92,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:95,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 7
    argNames:
    - targetValue
    - ' process'
    - ' dividends'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 102
    functionName: QuantLib::BarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 2
    functionsReached:
    - empty
    - std::make_unique<AnalyticBarrierEngine>
    - type
    - std::make_unique<FdBlackScholesBarrierEngine>
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BarrierOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const DividendSchedule& dividends,\n             Real accuracy,\n
      \            Size maxEvaluations,\n             Volatility minVol,\n             Volatility
      maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: BarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void BarrierOption::arguments::arguments()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:110,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 124
    functionName: BarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BarrierOption::arguments::validate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barrieroption.cpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: BarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/barrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: bool
    signature: bool BarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - moneyness
    - ' resetDate'
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::QuantoForwardVanillaOption::QuantoForwardVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoForwardVanillaOption::QuantoForwardVanillaOption(\n                           Real
      moneyness,\n                           const Date& resetDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoForwardVanillaOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::QuantoForwardVanillaOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::QuantoForwardVanillaOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoForwardVanillaOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::QuantoForwardVanillaOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoForwardVanillaOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoForwardVanillaOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoForwardVanillaOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:60,1
    - Dst: dynamic_cast<const QuantoForwardVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:61,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::QuantoForwardVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 1
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const QuantoForwardVanillaOption::results*>
    - QuantLib::QuantoForwardVanillaOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void QuantoForwardVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - moneyness
    - ' resetDate'
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::QuantoForwardVanillaOption::QuantoForwardVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoForwardVanillaOption::QuantoForwardVanillaOption(\n                           Real
      moneyness,\n                           const Date& resetDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoForwardVanillaOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::QuantoForwardVanillaOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::QuantoForwardVanillaOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoForwardVanillaOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoForwardVanillaOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::QuantoForwardVanillaOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoForwardVanillaOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoForwardVanillaOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoForwardVanillaOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:60,1
    - Dst: dynamic_cast<const QuantoForwardVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:61,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::QuantoForwardVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantoforwardvanillaoption.cpp
    functionUses: 2
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const QuantoForwardVanillaOption::results*>
    - QuantLib::QuantoForwardVanillaOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void QuantoForwardVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::YoYInflationCapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& capRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & capRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& floorRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & floorRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: '& yoyLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & yoyLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' yoyLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYInflationCap::YoYInflationCap
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCap(const Leg& yoyLeg,\n            const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' yoyLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::YoYInflationFloor::YoYInflationFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void YoYInflationFloor(const Leg& yoyLeg,\n              const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' yoyLeg'
    - ' capRates'
    - ' floorRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYInflationCollar::YoYInflationCollar
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCollar(const Leg& yoyLeg,\n               const std::vector<Rate>&
      capRates,\n               const std::vector<Rate>& floorRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYInflationCapFloor::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: QuantLib::YoYInflationCapFloor::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYInflationCapFloor::impliedVolatility(\n                            Real,\n
      \                           const Handle<YoYInflationTermStructure>&,\n                            Volatility,\n
      \                           Real,\n                            Natural,\n                            Volatility,\n
      \                           Volatility) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::YoYInflationCapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& capRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & capRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& floorRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & floorRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: '& yoyLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & yoyLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' yoyLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYInflationCap::YoYInflationCap
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCap(const Leg& yoyLeg,\n            const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' yoyLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::YoYInflationFloor::YoYInflationFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void YoYInflationFloor(const Leg& yoyLeg,\n              const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' yoyLeg'
    - ' capRates'
    - ' floorRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYInflationCollar::YoYInflationCollar
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCollar(const Leg& yoyLeg,\n               const std::vector<Rate>&
      capRates,\n               const std::vector<Rate>& floorRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYInflationCapFloor::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: QuantLib::YoYInflationCapFloor::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYInflationCapFloor::impliedVolatility(\n                            Real,\n
      \                           const Handle<YoYInflationTermStructure>&,\n                            Volatility,\n
      \                           Real,\n                            Natural,\n                            Volatility,\n
      \                           Volatility) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::OneAssetOption::OneAssetOption
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OneAssetOption::OneAssetOption(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:34,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::OneAssetOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool OneAssetOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::OneAssetOption::delta
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::OneAssetOption::deltaForward
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::deltaForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::OneAssetOption::elasticity
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::elasticity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::OneAssetOption::gamma
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::OneAssetOption::theta
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::OneAssetOption::thetaPerDay
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::thetaPerDay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::OneAssetOption::vega
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::vega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:82,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::OneAssetOption::rho
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:88,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::OneAssetOption::dividendRho
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::dividendRho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:94,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::OneAssetOption::strikeSensitivity
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::strikeSensitivity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:101,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: QuantLib::OneAssetOption::itmCashProbability
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::itmCashProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::setupExpired
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: QuantLib::OneAssetOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void OneAssetOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:114,1
    - Dst: dynamic_cast<const Greeks*>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:115,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:116,1
    - Dst: dynamic_cast<const MoreGreeks*>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:132,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 147
    functionName: QuantLib::OneAssetOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const Greeks*>
    - dynamic_cast<const MoreGreeks*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void OneAssetOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::OneAssetOption::OneAssetOption
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OneAssetOption::OneAssetOption(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:34,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::OneAssetOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool OneAssetOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::OneAssetOption::delta
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::OneAssetOption::deltaForward
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::deltaForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::OneAssetOption::elasticity
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::elasticity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::OneAssetOption::gamma
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::OneAssetOption::theta
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::OneAssetOption::thetaPerDay
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::thetaPerDay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::OneAssetOption::vega
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::vega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:82,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::OneAssetOption::rho
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:88,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::OneAssetOption::dividendRho
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::dividendRho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:94,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::OneAssetOption::strikeSensitivity
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::strikeSensitivity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:101,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: QuantLib::OneAssetOption::itmCashProbability
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneAssetOption::itmCashProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::setupExpired
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: QuantLib::OneAssetOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void OneAssetOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:114,1
    - Dst: dynamic_cast<const Greeks*>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:115,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:116,1
    - Dst: dynamic_cast<const MoreGreeks*>
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:132,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/oneassetoption.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 147
    functionName: QuantLib::OneAssetOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const Greeks*>
    - dynamic_cast<const MoreGreeks*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void OneAssetOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' motherPayoff'
    - ' motherExercise'
    - daughterPayoff
    - daughterExercise
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::CompoundOption::CompoundOption
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CompoundOption::CompoundOption(const ext::shared_ptr<StrikedTypePayoff>&
      motherPayoff,\n                                   const ext::shared_ptr<Exercise>&
      motherExercise,\n                                   ext::shared_ptr<StrikedTypePayoff>
      daughterPayoff,\n                                   ext::shared_ptr<Exercise>
      daughterExercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:33,1
    - Dst: dynamic_cast<CompoundOption::arguments*>
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::CompoundOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<CompoundOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompoundOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionName: CompoundOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompoundOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' motherPayoff'
    - ' motherExercise'
    - daughterPayoff
    - daughterExercise
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::CompoundOption::CompoundOption
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CompoundOption::CompoundOption(const ext::shared_ptr<StrikedTypePayoff>&
      motherPayoff,\n                                   const ext::shared_ptr<Exercise>&
      motherExercise,\n                                   ext::shared_ptr<StrikedTypePayoff>
      daughterPayoff,\n                                   ext::shared_ptr<Exercise>
      daughterExercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:33,1
    - Dst: dynamic_cast<CompoundOption::arguments*>
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::CompoundOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<CompoundOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompoundOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/compoundoption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionName: CompoundOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/compoundoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompoundOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - barrierType
    - barrier_lo
    - barrier_hi
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - DoubleBarrier::Type
    - Real
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::DoubleBarrierOption::DoubleBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DoubleBarrierOption::DoubleBarrierOption(\n        DoubleBarrier::Type
      barrierType,\n        Real barrier_lo,\n        Real barrier_hi,\n        Real
      rebate,\n        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n        const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:41,1
    - Dst: dynamic_cast<DoubleBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::DoubleBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<DoubleBarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:60,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:60,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:62,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:65,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:69,1
    - Dst: std::make_unique<AnalyticDoubleBarrierEngine>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:71,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:78,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 88
    functionName: QuantLib::DoubleBarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<AnalyticDoubleBarrierEngine>
    - type
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility DoubleBarrierOption::impliedVolatility(\n             Real
      targetValue,\n             const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n             Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:92,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:92,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:93,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: DoubleBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 107
    functionName: DoubleBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: DoubleBarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool DoubleBarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - barrierType
    - barrier_lo
    - barrier_hi
    - rebate
    - ' payoff'
    - ' exercise'
    argTypes:
    - DoubleBarrier::Type
    - Real
    - Real
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::DoubleBarrierOption::DoubleBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DoubleBarrierOption::DoubleBarrierOption(\n        DoubleBarrier::Type
      barrierType,\n        Real barrier_lo,\n        Real barrier_hi,\n        Real
      rebate,\n        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n        const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:41,1
    - Dst: dynamic_cast<DoubleBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::DoubleBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<DoubleBarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:60,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:60,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:62,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:65,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:69,1
    - Dst: std::make_unique<AnalyticDoubleBarrierEngine>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:71,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:78,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 88
    functionName: QuantLib::DoubleBarrierOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<AnalyticDoubleBarrierEngine>
    - type
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility DoubleBarrierOption::impliedVolatility(\n             Real
      targetValue,\n             const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n             Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:92,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:92,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:93,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: DoubleBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/doublebarrieroption.cpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 107
    functionName: DoubleBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DoubleBarrierOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: DoubleBarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/doublebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool DoubleBarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::NonstandardSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::NonstandardSwaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NonstandardSwaption::type
      Src: /src/quantlib/ql/instruments/nonstandardswaption.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::NonstandardSwaption::type
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::NonstandardSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '&underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<NonstandardSwap>
    signature: ext::shared_ptr<NonstandardSwap> &underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::NonstandardSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::NonstandardSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::NonstandardSwaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NonstandardSwaption::type
      Src: /src/quantlib/ql/instruments/nonstandardswaption.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::NonstandardSwaption::type
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::NonstandardSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '&underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<NonstandardSwap>
    signature: ext::shared_ptr<NonstandardSwap> &underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::NonstandardSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::WriterExtensibleOption::payoff2
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> payoff2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::WriterExtensibleOption::exercise2
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Exercise>
    signature: ext::shared_ptr<Exercise> exercise2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::WriterExtensibleOption::payoff2
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> payoff2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::WriterExtensibleOption::exercise2
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Exercise>
    signature: ext::shared_ptr<Exercise> exercise2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::MargrabeOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::MargrabeOption::results::results
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void results()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::results::reset
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:77,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:79,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 81
    functionName: QuantLib::MargrabeOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::MultiAssetOption::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::MargrabeOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::MargrabeOption::results::results
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void results()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::results::reset
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:77,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:79,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 81
    functionName: QuantLib::MargrabeOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::MultiAssetOption::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bond.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:42,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:44,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:50,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:53,1
    - Dst: QuantLib::Bond::addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bond.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:60,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - settlementDays
    - calendar
    - ' issueDate'
    - ' coupons'
    argTypes:
    - Natural
    - Calendar
    - Date
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 61
    functionName: QuantLib::Bond::Bond
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - date
    - empty
    - std::sort
    - begin
    - std::move
    - registerWith
    - Date
    - earlier_than<ext::shared_ptr<CashFlow> >
    - QuantLib::Bond::addRedemptionsToCashflows
    - QuantLib::detail::instance
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::Bond(Natural settlementDays, Calendar calendar, const Date&
      issueDate, const Leg& coupons)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bond.cpp:69,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:72,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:75,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:77,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/bond.cpp:78,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:81,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:81,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:84,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:96,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:99,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - settlementDays
    - calendar
    - faceAmount
    - ' maturityDate'
    - ' issueDate'
    - ' cashflows'
    argTypes:
    - Natural
    - Calendar
    - Real
    - Date
    - Date
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 102
    functionName: QuantLib::Bond::Bond
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - date
    - empty
    - std::sort
    - resize
    - begin
    - std::move
    - push_back
    - registerWith
    - Date
    - earlier_than<ext::shared_ptr<CashFlow> >
    - QuantLib::detail::instance
    - QuantLib::CashFlows::maturityDate
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bond::Bond(Natural settlementDays,\n               Calendar calendar,\n
      \              Real faceAmount,\n               const Date& maturityDate,\n
      \              const Date& issueDate,\n               const Leg& cashflows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::isExpired
      Src: /src/quantlib/ql/instruments/bond.cpp:108,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: QuantLib::Bond::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::CashFlows::isExpired
    linkageType: ''
    returnType: bool
    signature: bool Bond::isExpired() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:114,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:115,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: std::distance
      Src: /src/quantlib/ql/instruments/bond.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 139
    functionName: QuantLib::Bond::notional
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - begin
    - Date
    - QuantLib::Bond::settlementDate
    - back
    - end
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real Bond::notional(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:142,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: '& Bond::redemption() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: ext::shared_ptr<CashFlow> & Bond::redemption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::startDate
      Src: /src/quantlib/ql/instruments/bond.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::Bond::startDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::startDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::startDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:152,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/instruments/bond.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 156
    functionName: QuantLib::Bond::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BondFunctions::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/instruments/bond.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Bond::isTradable
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::isTradable
    linkageType: ''
    returnType: bool
    signature: bool Bond::isTradable(Date d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:163,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:164,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/bond.cpp:167,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/bond.cpp:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 173
    functionName: QuantLib::Bond::settlementDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - advance
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Bond::settlementDate(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::dirtyPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::Bond::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::dirtyPrice
    - QuantLib::Bond::settlementDate
    linkageType: ''
    returnType: Real
    signature: Real Bond::cleanPrice() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:180,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:180,1
    - Dst: QuantLib::Bond::settlementValue
      Src: /src/quantlib/ql/instruments/bond.cpp:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::Bond::dirtyPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Bond::notional
    - QuantLib::Bond::settlementDate
    - QuantLib::Bond::settlementValue
    linkageType: ''
    returnType: Real
    signature: Real Bond::dirtyPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bond.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 192
    functionName: QuantLib::Bond::settlementValue
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Bond::settlementValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:195,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:195,1
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:196,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cleanPrice
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::Bond::settlementValue
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::notional
    - QuantLib::Bond::settlementDate
    linkageType: ''
    returnType: Real
    signature: Real Bond::settlementValue(Real cleanPrice) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:206,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:206,1
    - Dst: QuantLib::Bond::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:210,1
    - Dst: QuantLib::Bond::dirtyPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:210,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bond.cpp:212,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ' dc'
    - comp
    - freq
    - accuracy
    - maxEvaluations
    - guess
    - priceType
    argTypes:
    - DayCounter
    - Compounding
    - Frequency
    - Real
    - Size
    - Real
    - Bond::Price::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 199
    functionDepth: 3
    functionLinenumber: 199
    functionLinenumberEnd: 216
    functionName: QuantLib::Bond::yield
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - QuantLib::Bond::cleanPrice
    - QuantLib::Bond::dirtyPrice
    - QuantLib::Bond::settlementDate
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Rate
    signature: "Rate Bond::yield(const DayCounter& dc,\n                     Compounding
      comp,\n                     Frequency freq,\n                     Real accuracy,\n
      \                    Size maxEvaluations,\n                     Real guess,\n
      \                    Bond::Price::Type priceType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: QuantLib::Bond::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real Bond::cleanPrice(Rate y,\n                          const DayCounter&
      dc,\n                          Compounding comp,\n                          Frequency
      freq,\n                          Date settlement) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:231,1
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:235,1
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - y
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: QuantLib::Bond::dirtyPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::notional
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real Bond::dirtyPrice(Rate y,\n                          const DayCounter&
      dc,\n                          Compounding comp,\n                          Frequency
      freq,\n                          Date settlement) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:247,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bond.cpp:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 8
    argNames:
    - price
    - ' dc'
    - comp
    - freq
    - settlement
    - accuracy
    - maxEvaluations
    - guess
    argTypes:
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 254
    functionName: QuantLib::Bond::yield
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Rate
    signature: "Rate Bond::yield(Bond::Price price,\n                     const DayCounter&
      dc,\n                     Compounding comp,\n                     Frequency
      freq,\n                     Date settlement,\n                     Real accuracy,\n
      \                    Size maxEvaluations,\n                     Real guess)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:257,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::Bond::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Real
    signature: Real Bond::accruedAmount(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::nextCouponRate
      Src: /src/quantlib/ql/instruments/bond.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionName: QuantLib::Bond::nextCouponRate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::nextCouponRate
    linkageType: ''
    returnType: Rate
    signature: Rate Bond::nextCouponRate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::previousCouponRate
      Src: /src/quantlib/ql/instruments/bond.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: QuantLib::Bond::previousCouponRate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::previousCouponRate
    linkageType: ''
    returnType: Rate
    signature: Rate Bond::previousCouponRate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::nextCashFlowDate
      Src: /src/quantlib/ql/instruments/bond.cpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: QuantLib::Bond::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::nextCashFlowDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::nextCashFlowDate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::previousCashFlowDate
      Src: /src/quantlib/ql/instruments/bond.cpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: QuantLib::Bond::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::previousCashFlowDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::previousCashFlowDate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/bond.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::Bond::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void Bond::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Bond::arguments*>
      Src: /src/quantlib/ql/instruments/bond.cpp:286,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:287,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 292
    functionName: QuantLib::Bond::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Bond::arguments*>
    - QuantLib::Bond::settlementDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/bond.cpp:296,1
    - Dst: dynamic_cast<const Bond::results*>
      Src: /src/quantlib/ql/instruments/bond.cpp:298,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bond.cpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 302
    functionName: QuantLib::Bond::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - QL_ENSURE
    - dynamic_cast<const Bond::results*>
    linkageType: ''
    returnType: void
    signature: void Bond::fetchResults(const PricingEngine::results* r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::calculateNotionalsFromCashflows
      Src: /src/quantlib/ql/instruments/bond.cpp:306,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:310,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:311,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:312,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:313,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:313,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:317,1
    - Dst: ext::make_shared<AmortizingPayment>
      Src: /src/quantlib/ql/instruments/bond.cpp:318,1
    - Dst: ext::make_shared<Redemption>
      Src: /src/quantlib/ql/instruments/bond.cpp:321,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:322,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:323,1
    - Dst: std::stable_sort
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' redemptions'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 329
    functionName: QuantLib::Bond::addRedemptionsToCashflows
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - std::stable_sort
    - empty
    - QuantLib::Bond::calculateNotionalsFromCashflows
    - begin
    - push_back
    - end
    - earlier_than<ext::shared_ptr<CashFlow> >
    - ext::make_shared<AmortizingPayment>
    - size
    - back
    - ext::make_shared<Redemption>
    - clear
    linkageType: ''
    returnType: void
    signature: void Bond::addRedemptionsToCashflows(const std::vector<Real>& redemptions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/bond.cpp:336,1
    - Dst: QuantLib::Bond::setSingleRedemption
      Src: /src/quantlib/ql/instruments/bond.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - notional
    - redemption
    - ' date'
    argTypes:
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 338
    functionName: QuantLib::Bond::setSingleRedemption
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - Redemption::Redemption
    - QuantLib::Bond::setSingleRedemption
    linkageType: ''
    returnType: void
    signature: "void Bond::setSingleRedemption(Real notional,\n                                   Real
      redemption,\n                                   const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:342,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:343,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:344,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:346,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:349,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:352,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - notional
    - ' redemption'
    argTypes:
    - Real
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 354
    functionName: QuantLib::Bond::setSingleRedemption
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - date
    - resize
    - push_back
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: "void Bond::setSingleRedemption(Real notional,\n                                   const
      ext::shared_ptr<CashFlow>& redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::deepUpdate
      Src: /src/quantlib/ql/instruments/bond.cpp:358,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/bond.cpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 361
    functionName: QuantLib::Bond::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - update
    - QuantLib::Bond::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Bond::deepUpdate()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:364,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:365,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:367,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/instruments/bond.cpp:368,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/bond.cpp:370,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:374,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:376,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:377,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:377,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:378,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/bond.cpp:379,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:379,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:381,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:381,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:384,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:386,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:390,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:393,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:393,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:394,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:395,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 396
    functionName: QuantLib::Bond::calculateNotionalsFromCashflows
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - close
    - empty
    - push_back
    - ext::shared_ptr::nominal
    - emplace_back
    - Date
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::calculateNotionalsFromCashflows()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:400,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:401,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:401,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:403,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 404
    functionName: Bond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - Date
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::arguments::validate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bond.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:42,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:43,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:44,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:50,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:53,1
    - Dst: QuantLib::Bond::addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bond.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:60,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - settlementDays
    - calendar
    - ' issueDate'
    - ' coupons'
    argTypes:
    - Natural
    - Calendar
    - Date
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 61
    functionName: QuantLib::Bond::Bond
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - date
    - empty
    - std::sort
    - begin
    - std::move
    - registerWith
    - Date
    - earlier_than<ext::shared_ptr<CashFlow> >
    - QuantLib::Bond::addRedemptionsToCashflows
    - QuantLib::detail::instance
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::Bond(Natural settlementDays, Calendar calendar, const Date&
      issueDate, const Leg& coupons)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bond.cpp:69,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:72,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:74,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:75,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:77,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/bond.cpp:78,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:81,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:81,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:84,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:96,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:99,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bond.cpp:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - settlementDays
    - calendar
    - faceAmount
    - ' maturityDate'
    - ' issueDate'
    - ' cashflows'
    argTypes:
    - Natural
    - Calendar
    - Real
    - Date
    - Date
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 102
    functionName: QuantLib::Bond::Bond
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - date
    - empty
    - std::sort
    - resize
    - begin
    - std::move
    - push_back
    - registerWith
    - Date
    - earlier_than<ext::shared_ptr<CashFlow> >
    - QuantLib::detail::instance
    - QuantLib::CashFlows::maturityDate
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bond::Bond(Natural settlementDays,\n               Calendar calendar,\n
      \              Real faceAmount,\n               const Date& maturityDate,\n
      \              const Date& issueDate,\n               const Leg& cashflows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::isExpired
      Src: /src/quantlib/ql/instruments/bond.cpp:108,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: QuantLib::Bond::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::CashFlows::isExpired
    linkageType: ''
    returnType: bool
    signature: bool Bond::isExpired() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:114,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:115,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:127,1
    - Dst: std::distance
      Src: /src/quantlib/ql/instruments/bond.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 139
    functionName: QuantLib::Bond::notional
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 6
    functionsReached:
    - std::lower_bound
    - begin
    - Date
    - QuantLib::Bond::settlementDate
    - back
    - end
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real Bond::notional(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:142,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: '& Bond::redemption() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: ext::shared_ptr<CashFlow> & Bond::redemption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::startDate
      Src: /src/quantlib/ql/instruments/bond.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::Bond::startDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::startDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::startDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:152,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/instruments/bond.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 156
    functionName: QuantLib::Bond::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BondFunctions::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/instruments/bond.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Bond::isTradable
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::isTradable
    linkageType: ''
    returnType: bool
    signature: bool Bond::isTradable(Date d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:163,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/bond.cpp:164,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/bond.cpp:167,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/bond.cpp:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 173
    functionName: QuantLib::Bond::settlementDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 7
    functionsReached:
    - std::max
    - advance
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Bond::settlementDate(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::dirtyPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::Bond::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::dirtyPrice
    - QuantLib::Bond::settlementDate
    linkageType: ''
    returnType: Real
    signature: Real Bond::cleanPrice() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:180,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:180,1
    - Dst: QuantLib::Bond::settlementValue
      Src: /src/quantlib/ql/instruments/bond.cpp:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::Bond::dirtyPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Bond::notional
    - QuantLib::Bond::settlementDate
    - QuantLib::Bond::settlementValue
    linkageType: ''
    returnType: Real
    signature: Real Bond::dirtyPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bond.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 192
    functionName: QuantLib::Bond::settlementValue
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Bond::settlementValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:195,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:195,1
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:196,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cleanPrice
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 3
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::Bond::settlementValue
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::notional
    - QuantLib::Bond::settlementDate
    linkageType: ''
    returnType: Real
    signature: Real Bond::settlementValue(Real cleanPrice) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:206,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:206,1
    - Dst: QuantLib::Bond::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:210,1
    - Dst: QuantLib::Bond::dirtyPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:210,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bond.cpp:212,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ' dc'
    - comp
    - freq
    - accuracy
    - maxEvaluations
    - guess
    - priceType
    argTypes:
    - DayCounter
    - Compounding
    - Frequency
    - Real
    - Size
    - Real
    - Bond::Price::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 199
    functionDepth: 3
    functionLinenumber: 199
    functionLinenumberEnd: 216
    functionName: QuantLib::Bond::yield
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - QuantLib::Bond::cleanPrice
    - QuantLib::Bond::dirtyPrice
    - QuantLib::Bond::settlementDate
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Rate
    signature: "Rate Bond::yield(const DayCounter& dc,\n                     Compounding
      comp,\n                     Frequency freq,\n                     Real accuracy,\n
      \                    Size maxEvaluations,\n                     Real guess,\n
      \                    Bond::Price::Type priceType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: QuantLib::Bond::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real Bond::cleanPrice(Rate y,\n                          const DayCounter&
      dc,\n                          Compounding comp,\n                          Frequency
      freq,\n                          Date settlement) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:231,1
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/instruments/bond.cpp:235,1
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - y
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 3
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: QuantLib::Bond::dirtyPrice
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - QuantLib::Bond::notional
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real Bond::dirtyPrice(Rate y,\n                          const DayCounter&
      dc,\n                          Compounding comp,\n                          Frequency
      freq,\n                          Date settlement) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:247,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bond.cpp:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 8
    argNames:
    - price
    - ' dc'
    - comp
    - freq
    - settlement
    - accuracy
    - maxEvaluations
    - guess
    argTypes:
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 254
    functionName: QuantLib::Bond::yield
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Rate
    signature: "Rate Bond::yield(Bond::Price price,\n                     const DayCounter&
      dc,\n                     Compounding comp,\n                     Frequency
      freq,\n                     Date settlement,\n                     Real accuracy,\n
      \                    Size maxEvaluations,\n                     Real guess)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::notional
      Src: /src/quantlib/ql/instruments/bond.cpp:257,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/instruments/bond.cpp:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::Bond::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - QuantLib::Bond::notional
    linkageType: ''
    returnType: Real
    signature: Real Bond::accruedAmount(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::nextCouponRate
      Src: /src/quantlib/ql/instruments/bond.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionName: QuantLib::Bond::nextCouponRate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::nextCouponRate
    linkageType: ''
    returnType: Rate
    signature: Rate Bond::nextCouponRate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::previousCouponRate
      Src: /src/quantlib/ql/instruments/bond.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: QuantLib::Bond::previousCouponRate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::previousCouponRate
    linkageType: ''
    returnType: Rate
    signature: Rate Bond::previousCouponRate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::nextCashFlowDate
      Src: /src/quantlib/ql/instruments/bond.cpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: QuantLib::Bond::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::nextCashFlowDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::nextCashFlowDate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::previousCashFlowDate
      Src: /src/quantlib/ql/instruments/bond.cpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlement
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: QuantLib::Bond::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::previousCashFlowDate
    linkageType: ''
    returnType: Date
    signature: Date Bond::previousCashFlowDate(Date settlement) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/bond.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::Bond::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void Bond::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Bond::arguments*>
      Src: /src/quantlib/ql/instruments/bond.cpp:286,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:287,1
    - Dst: QuantLib::Bond::settlementDate
      Src: /src/quantlib/ql/instruments/bond.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 292
    functionName: QuantLib::Bond::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Bond::arguments*>
    - QuantLib::Bond::settlementDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/bond.cpp:296,1
    - Dst: dynamic_cast<const Bond::results*>
      Src: /src/quantlib/ql/instruments/bond.cpp:298,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bond.cpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 302
    functionName: QuantLib::Bond::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - QL_ENSURE
    - dynamic_cast<const Bond::results*>
    linkageType: ''
    returnType: void
    signature: void Bond::fetchResults(const PricingEngine::results* r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::calculateNotionalsFromCashflows
      Src: /src/quantlib/ql/instruments/bond.cpp:306,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:310,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:311,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:312,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:313,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:313,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bond.cpp:317,1
    - Dst: ext::make_shared<AmortizingPayment>
      Src: /src/quantlib/ql/instruments/bond.cpp:318,1
    - Dst: ext::make_shared<Redemption>
      Src: /src/quantlib/ql/instruments/bond.cpp:321,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:322,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:323,1
    - Dst: std::stable_sort
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bond.cpp:327,1
    - Dst: earlier_than<ext::shared_ptr<CashFlow> >
      Src: /src/quantlib/ql/instruments/bond.cpp:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' redemptions'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 329
    functionName: QuantLib::Bond::addRedemptionsToCashflows
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - std::stable_sort
    - empty
    - QuantLib::Bond::calculateNotionalsFromCashflows
    - begin
    - push_back
    - end
    - earlier_than<ext::shared_ptr<CashFlow> >
    - ext::make_shared<AmortizingPayment>
    - size
    - back
    - ext::make_shared<Redemption>
    - clear
    linkageType: ''
    returnType: void
    signature: void Bond::addRedemptionsToCashflows(const std::vector<Real>& redemptions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/bond.cpp:336,1
    - Dst: QuantLib::Bond::setSingleRedemption
      Src: /src/quantlib/ql/instruments/bond.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - notional
    - redemption
    - ' date'
    argTypes:
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 338
    functionName: QuantLib::Bond::setSingleRedemption
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - Redemption::Redemption
    - QuantLib::Bond::setSingleRedemption
    linkageType: ''
    returnType: void
    signature: "void Bond::setSingleRedemption(Real notional,\n                                   Real
      redemption,\n                                   const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:342,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bond.cpp:343,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:344,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:346,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bond.cpp:349,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:352,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - notional
    - ' redemption'
    argTypes:
    - Real
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 354
    functionName: QuantLib::Bond::setSingleRedemption
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - date
    - resize
    - push_back
    - Date
    - clear
    linkageType: ''
    returnType: void
    signature: "void Bond::setSingleRedemption(Real notional,\n                                   const
      ext::shared_ptr<CashFlow>& redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::deepUpdate
      Src: /src/quantlib/ql/instruments/bond.cpp:358,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/bond.cpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 361
    functionName: QuantLib::Bond::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - update
    - QuantLib::Bond::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Bond::deepUpdate()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:364,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/bond.cpp:365,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:367,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/instruments/bond.cpp:368,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/bond.cpp:370,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:374,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:376,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:377,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:377,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:378,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/bond.cpp:379,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bond.cpp:379,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:381,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/bond.cpp:381,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:384,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:386,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/bond.cpp:390,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:393,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:393,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:394,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bond.cpp:395,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 396
    functionName: QuantLib::Bond::calculateNotionalsFromCashflows
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 2
    functionsReached:
    - close
    - empty
    - push_back
    - ext::shared_ptr::nominal
    - emplace_back
    - Date
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::calculateNotionalsFromCashflows()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:400,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bond.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:401,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bond.cpp:401,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.cpp:403,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 404
    functionName: Bond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/bond.cpp
    functionUses: 0
    functionsReached:
    - Date
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Bond::arguments::validate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:56,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:57,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:57,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:60,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:60,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 13
    argNames:
    - type
    - nominal
    - ' startDate'
    - baseCPI
    - ' maturity'
    - fixCalendar
    - fixConvention
    - payCalendar
    - payConvention
    - strike
    - index
    - ' observationLag'
    - observationInterpolation
    argTypes:
    - Option::Type
    - Real
    - Date
    - Real
    - Date
    - Calendar
    - BusinessDayConvention
    - Calendar
    - BusinessDayConvention
    - Rate
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 70
    functionName: QuantLib::CPICapFloor::CPICapFloor
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - availabilityLag
    - std::move
    - detail::CPI::isInterpolated
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICapFloor::CPICapFloor(Option::Type type,\n                             Real
      nominal,\n                             const Date& startDate, // start date
      of contract (only)\n                             Real baseCPI,\n                             const
      Date& maturity, // this is pre-adjustment!\n                             Calendar
      fixCalendar,\n                             BusinessDayConvention fixConvention,\n
      \                            Calendar payCalendar,\n                             BusinessDayConvention
      payConvention,\n                             Rate strike,\n                             ext::shared_ptr<ZeroInflationIndex>
      \ index,\n                             const Period& observationLag,\n                             CPI::InterpolationType
      observationInterpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CPICapFloor::fixingDate
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - adjust
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloor::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::CPICapFloor::payDate
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - adjust
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloor::payDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CPICapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: bool
    signature: bool CPICapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: CPICapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CPICapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CPICapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:98,1
    - Dst: QuantLib::CPICapFloor::fixingDate
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:110,1
    - Dst: QuantLib::CPICapFloor::payDate
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 116
    functionName: QuantLib::CPICapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloor::fixingDate
    - QuantLib::CPICapFloor::payDate
    - dynamic_cast<CPICapFloor::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CPICapFloor::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:56,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:57,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:57,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:60,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:60,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 13
    argNames:
    - type
    - nominal
    - ' startDate'
    - baseCPI
    - ' maturity'
    - fixCalendar
    - fixConvention
    - payCalendar
    - payConvention
    - strike
    - index
    - ' observationLag'
    - observationInterpolation
    argTypes:
    - Option::Type
    - Real
    - Date
    - Real
    - Date
    - Calendar
    - BusinessDayConvention
    - Calendar
    - BusinessDayConvention
    - Rate
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 70
    functionName: QuantLib::CPICapFloor::CPICapFloor
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - availabilityLag
    - std::move
    - detail::CPI::isInterpolated
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICapFloor::CPICapFloor(Option::Type type,\n                             Real
      nominal,\n                             const Date& startDate, // start date
      of contract (only)\n                             Real baseCPI,\n                             const
      Date& maturity, // this is pre-adjustment!\n                             Calendar
      fixCalendar,\n                             BusinessDayConvention fixConvention,\n
      \                            Calendar payCalendar,\n                             BusinessDayConvention
      payConvention,\n                             Rate strike,\n                             ext::shared_ptr<ZeroInflationIndex>
      \ index,\n                             const Period& observationLag,\n                             CPI::InterpolationType
      observationInterpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CPICapFloor::fixingDate
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 1
    functionsReached:
    - adjust
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloor::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::CPICapFloor::payDate
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 1
    functionsReached:
    - adjust
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloor::payDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CPICapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: bool
    signature: bool CPICapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: CPICapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CPICapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CPICapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:98,1
    - Dst: QuantLib::CPICapFloor::fixingDate
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:110,1
    - Dst: QuantLib::CPICapFloor::payDate
      Src: /src/quantlib/ql/instruments/cpicapfloor.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 116
    functionName: QuantLib::CPICapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloor::fixingDate
    - QuantLib::CPICapFloor::payDate
    - dynamic_cast<CPICapFloor::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CPICapFloor::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:40,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - YoYInflationCapFloor::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: "& operator<<(std::ostream& out,\n                             YoYInflationCapFloor::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             YoYInflationCapFloor::Type
      t)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:53,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:57,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:66,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:66,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - type
    - yoyLeg
    - capRates
    - floorRates
    argTypes:
    - YoYInflationCapFloor::Type
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 67
    functionName: QuantLib::YoYInflationCapFloor::YoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloor::YoYInflationCapFloor(YoYInflationCapFloor::Type
      type,\n                                               Leg yoyLeg,\n                                               std::vector<Rate>
      capRates,\n                                               std::vector<Rate>
      floorRates)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:73,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:73,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:78,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:83,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:83,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:88,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:88,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - type
    - yoyLeg
    - ' strikes'
    argTypes:
    - YoYInflationCapFloor::Type
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: QuantLib::YoYInflationCapFloor::YoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloor::YoYInflationCapFloor(YoYInflationCapFloor::Type
      type,\n                                               Leg yoyLeg,\n                                               const
      std::vector<Rate>& strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:95,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::YoYInflationCapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationCapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYInflationCapFloor::startDate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationCapFloor::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYInflationCapFloor::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationCapFloor::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:111,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::YoYInflationCapFloor::lastYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - back
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationCoupon>
    signature: ext::shared_ptr<YoYInflationCoupon> YoYInflationCapFloor::lastYoYInflationCoupon()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:118,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:118,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:119,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:120,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:121,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:124,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:124,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:125,1
    - Dst: capRates
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:125,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:126,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:126,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:127,1
    - Dst: floorRates
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:127,1
    - Dst: ext::make_shared<YoYInflationCapFloor>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:129,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:129,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 131
    functionName: QuantLib::YoYInflationCapFloor::optionlet
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<YoYInflationCapFloor>
    - QuantLib::YoYInflationCapFloor::type
    - yoyLeg
    - QuantLib::io::ordinal
    - push_back
    - floorRates
    - capRates
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationCapFloor>
    signature: ext::shared_ptr<YoYInflationCapFloor> YoYInflationCapFloor::optionlet(const
      Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<YoYInflationCapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:137,1
    - Dst: auto*::startDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:139,1
    - Dst: auto*::fixingDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:140,1
    - Dst: auto*::payDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:141,1
    - Dst: auto*::accrualTimes::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:142,1
    - Dst: auto*::nominals::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:143,1
    - Dst: auto*::gearings::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:144,1
    - Dst: auto*::capRates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:145,1
    - Dst: auto*::floorRates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:146,1
    - Dst: auto*::spreads::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:147,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:155,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:156,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:157,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:158,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:161,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:163,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:164,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:165,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:172,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:177,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 179
    functionName: QuantLib::YoYInflationCapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - auto*::payDates::resize
    - auto*::nominals::resize
    - ext::shared_ptr::accrualPeriod
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - auto*::capRates::resize
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - auto*::gearings::resize
    - size
    - auto*::fixingDates::resize
    - auto*::floorRates::resize
    - auto*::spreads::resize
    - auto*::startDates::resize
    - QL_REQUIRE
    - dynamic_cast<YoYInflationCapFloor::arguments*>
    - auto*::accrualTimes::resize
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloor::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:190,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:192,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:209,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 212
    functionName: YoYInflationCapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:215,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::YoYInflationCapFloor::atmRate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::atmRate
    - referenceDate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCapFloor::atmRate(const YieldTermStructure& discountCurve)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:40,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - YoYInflationCapFloor::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: "& operator<<(std::ostream& out,\n                             YoYInflationCapFloor::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             YoYInflationCapFloor::Type
      t)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:53,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:57,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:66,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:66,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - type
    - yoyLeg
    - capRates
    - floorRates
    argTypes:
    - YoYInflationCapFloor::Type
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 67
    functionName: QuantLib::YoYInflationCapFloor::YoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloor::YoYInflationCapFloor(YoYInflationCapFloor::Type
      type,\n                                               Leg yoyLeg,\n                                               std::vector<Rate>
      capRates,\n                                               std::vector<Rate>
      floorRates)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:73,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:73,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:78,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:83,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:83,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:88,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:88,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - type
    - yoyLeg
    - ' strikes'
    argTypes:
    - YoYInflationCapFloor::Type
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: QuantLib::YoYInflationCapFloor::YoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloor::YoYInflationCapFloor(YoYInflationCapFloor::Type
      type,\n                                               Leg yoyLeg,\n                                               const
      std::vector<Rate>& strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:95,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::YoYInflationCapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationCapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYInflationCapFloor::startDate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationCapFloor::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYInflationCapFloor::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationCapFloor::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:111,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::YoYInflationCapFloor::lastYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - back
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationCoupon>
    signature: ext::shared_ptr<YoYInflationCoupon> YoYInflationCapFloor::lastYoYInflationCoupon()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:118,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:118,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:119,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:120,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:121,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:124,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:124,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:125,1
    - Dst: capRates
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:125,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:126,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:126,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:127,1
    - Dst: floorRates
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:127,1
    - Dst: ext::make_shared<YoYInflationCapFloor>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:129,1
    - Dst: QuantLib::YoYInflationCapFloor::type
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:129,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 131
    functionName: QuantLib::YoYInflationCapFloor::optionlet
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<YoYInflationCapFloor>
    - QuantLib::YoYInflationCapFloor::type
    - yoyLeg
    - QuantLib::io::ordinal
    - push_back
    - floorRates
    - capRates
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationCapFloor>
    signature: ext::shared_ptr<YoYInflationCapFloor> YoYInflationCapFloor::optionlet(const
      Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<YoYInflationCapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:137,1
    - Dst: auto*::startDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:139,1
    - Dst: auto*::fixingDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:140,1
    - Dst: auto*::payDates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:141,1
    - Dst: auto*::accrualTimes::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:142,1
    - Dst: auto*::nominals::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:143,1
    - Dst: auto*::gearings::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:144,1
    - Dst: auto*::capRates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:145,1
    - Dst: auto*::floorRates::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:146,1
    - Dst: auto*::spreads::resize
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:147,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:155,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:156,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:157,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:158,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:161,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:163,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:164,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:165,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:172,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:177,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 179
    functionName: QuantLib::YoYInflationCapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - auto*::payDates::resize
    - auto*::nominals::resize
    - ext::shared_ptr::accrualPeriod
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - auto*::capRates::resize
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - auto*::gearings::resize
    - size
    - auto*::fixingDates::resize
    - auto*::floorRates::resize
    - auto*::spreads::resize
    - auto*::startDates::resize
    - QL_REQUIRE
    - dynamic_cast<YoYInflationCapFloor::arguments*>
    - auto*::accrualTimes::resize
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloor::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:190,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:192,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:200,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:209,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 212
    functionName: YoYInflationCapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:215,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/inflationcapfloor.cpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::YoYInflationCapFloor::atmRate
    functionSourceFile: /src/quantlib/ql/instruments/inflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::atmRate
    - referenceDate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCapFloor::atmRate(const YieldTermStructure& discountCurve)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:74,1
    - Dst: QuantLib::Greeks::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:75,1
    - Dst: QuantLib::MoreGreeks::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::OneAssetOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MoreGreeks::reset
    - QuantLib::Greeks::reset
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:74,1
    - Dst: QuantLib::Greeks::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:75,1
    - Dst: QuantLib::MoreGreeks::reset
      Src: /src/quantlib/ql/instruments/oneassetoption.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::OneAssetOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/oneassetoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MoreGreeks::reset
    - QuantLib::Greeks::reset
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' payoff1'
    - ' exercise1'
    - ' payoff2'
    - exercise2
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::WriterExtensibleOption::WriterExtensibleOption
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void WriterExtensibleOption::WriterExtensibleOption(\n        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff1,\n        const ext::shared_ptr<Exercise>&
      exercise1,\n        const ext::shared_ptr<PlainVanillaPayoff>& payoff2,\n        ext::shared_ptr<Exercise>
      exercise2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:35,1
    - Dst: dynamic_cast<WriterExtensibleOption::arguments*>
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::WriterExtensibleOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<WriterExtensibleOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void WriterExtensibleOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:45,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::WriterExtensibleOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool WriterExtensibleOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: WriterExtensibleOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void WriterExtensibleOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' payoff1'
    - ' exercise1'
    - ' payoff2'
    - exercise2
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::WriterExtensibleOption::WriterExtensibleOption
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void WriterExtensibleOption::WriterExtensibleOption(\n        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff1,\n        const ext::shared_ptr<Exercise>&
      exercise1,\n        const ext::shared_ptr<PlainVanillaPayoff>& payoff2,\n        ext::shared_ptr<Exercise>
      exercise2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:35,1
    - Dst: dynamic_cast<WriterExtensibleOption::arguments*>
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::WriterExtensibleOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<WriterExtensibleOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void WriterExtensibleOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:45,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::WriterExtensibleOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool WriterExtensibleOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/writerextensibleoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: WriterExtensibleOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/writerextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void WriterExtensibleOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::VanillaOption::VanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VanillaOption::VanillaOption(\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VanillaOption::impliedVolatility
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:45,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::VanillaOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 1
    functionsReached:
    - DividendSchedule
    - QuantLib::VanillaOption::impliedVolatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility VanillaOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:58,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:58,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:60,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:63,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:67,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:69,1
    - Dst: std::make_unique<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:70,1
    - Dst: std::make_unique<AnalyticDividendEuropeanEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:76,1
    - Dst: std::make_unique<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:77,1
    - Dst: std::make_unique<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:82,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:85,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 7
    argNames:
    - targetValue
    - ' process'
    - ' dividends'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 92
    functionName: QuantLib::VanillaOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 1
    functionsReached:
    - std::make_unique<AnalyticEuropeanEngine>
    - std::make_unique<FdBlackScholesVanillaEngine>
    - empty
    - std::make_unique<AnalyticDividendEuropeanEngine>
    - type
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility VanillaOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const DividendSchedule& dividends,\n             Real accuracy,\n
      \            Size maxEvaluations,\n             Volatility minVol,\n             Volatility
      maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::VanillaOption::VanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VanillaOption::VanillaOption(\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VanillaOption::impliedVolatility
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:45,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - targetValue
    - ' process'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::VanillaOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 2
    functionsReached:
    - DividendSchedule
    - QuantLib::VanillaOption::impliedVolatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility VanillaOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Real accuracy,\n             Size maxEvaluations,\n             Volatility
      minVol,\n             Volatility maxVol) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:58,1
    - Dst: isExpired
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:58,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:60,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::clone
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:63,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:67,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:69,1
    - Dst: std::make_unique<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:70,1
    - Dst: std::make_unique<AnalyticDividendEuropeanEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:76,1
    - Dst: std::make_unique<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:77,1
    - Dst: std::make_unique<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:82,1
    - Dst: QuantLib::detail::ImpliedVolatilityHelper::calculate
      Src: /src/quantlib/ql/instruments/vanillaoption.cpp:85,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 7
    argNames:
    - targetValue
    - ' process'
    - ' dividends'
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 92
    functionName: QuantLib::VanillaOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/vanillaoption.cpp
    functionUses: 2
    functionsReached:
    - std::make_unique<AnalyticEuropeanEngine>
    - std::make_unique<FdBlackScholesVanillaEngine>
    - empty
    - std::make_unique<AnalyticDividendEuropeanEngine>
    - type
    - QL_FAIL
    - QuantLib::detail::ImpliedVolatilityHelper::clone
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::ImpliedVolatilityHelper::calculate
    - isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility VanillaOption::impliedVolatility(\n             Real targetValue,\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const DividendSchedule& dividends,\n             Real accuracy,\n
      \            Size maxEvaluations,\n             Volatility minVol,\n             Volatility
      maxVol) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:66,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:73,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:88,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:90,1
    - Dst: Leg::back
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:92,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:96,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:97,1
    - Dst: CPILeg
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:101,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:112,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:112,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:113,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:116,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:116,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 18
    argNames:
    - type
    - nominal
    - subtractInflationNominal
    - spread
    - floatDayCount
    - floatSchedule
    - ' floatPaymentRoll'
    - fixingDays
    - floatIndex
    - fixedRate
    - baseCPI
    - fixedDayCount
    - fixedSchedule
    - ' fixedPaymentRoll'
    - ' observationLag'
    - fixedIndex
    - observationInterpolation
    - inflationNominal
    argTypes:
    - Type
    - Real
    - bool
    - Spread
    - DayCounter
    - Schedule
    - BusinessDayConvention
    - Natural
    - ext::shared_ptr<IborIndex>
    - Rate
    - Real
    - DayCounter
    - Schedule
    - BusinessDayConvention
    - Period
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 130
    functionName: QuantLib::CPISwap::CPISwap
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - Leg::back
    - Leg::push_back
    - empty
    - CPILeg
    - Leg::end
    - calendar
    - Null<Real>
    - std::move
    - IborLeg
    - SimpleCashFlow::SimpleCashFlow
    - std::fabs
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPISwap::CPISwap(Type type,\n                     Real nominal,\n
      \                    bool subtractInflationNominal,\n                     //
      float + spread leg\n                     Spread spread,\n                     DayCounter
      floatDayCount,\n                     Schedule floatSchedule,\n                     const
      BusinessDayConvention& floatPaymentRoll,\n                     Natural fixingDays,\n
      \                    ext::shared_ptr<IborIndex> floatIndex,\n                     //
      fixed x inflation leg\n                     Rate fixedRate,\n                     Real
      baseCPI,\n                     DayCounter fixedDayCount,\n                     Schedule
      fixedSchedule,\n                     const BusinessDayConvention& fixedPaymentRoll,\n
      \                    const Period& observationLag,\n                     ext::shared_ptr<ZeroInflationIndex>
      fixedIndex,\n                     CPI::InterpolationType observationInterpolation,\n
      \                    Real inflationNominal)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:136,1
    - Dst: dynamic_cast<CPISwap::arguments*>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 142
    functionName: QuantLib::CPISwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<CPISwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void CPISwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:147,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionName: QuantLib::CPISwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CPISwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:153,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::CPISwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread CPISwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::CPISwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:166,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::CPISwap::floatLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::floatLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:171,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:173,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: QuantLib::CPISwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 1
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void CPISwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:184,1
    - Dst: dynamic_cast<const CPISwap::results*>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:186,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:191,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:192,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:195,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:197,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:200,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:202,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 206
    functionName: QuantLib::CPISwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 1
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - Null<Spread>
    - dynamic_cast<const CPISwap::results*>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void CPISwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: CPISwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    linkageType: ''
    returnType: void
    signature: void CPISwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:213,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:214,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: CPISwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void CPISwap::results::reset()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:66,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:73,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:88,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:90,1
    - Dst: Leg::back
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:92,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:96,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:97,1
    - Dst: CPILeg
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:101,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:112,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:112,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:113,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:116,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:116,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 18
    argNames:
    - type
    - nominal
    - subtractInflationNominal
    - spread
    - floatDayCount
    - floatSchedule
    - ' floatPaymentRoll'
    - fixingDays
    - floatIndex
    - fixedRate
    - baseCPI
    - fixedDayCount
    - fixedSchedule
    - ' fixedPaymentRoll'
    - ' observationLag'
    - fixedIndex
    - observationInterpolation
    - inflationNominal
    argTypes:
    - Type
    - Real
    - bool
    - Spread
    - DayCounter
    - Schedule
    - BusinessDayConvention
    - Natural
    - ext::shared_ptr<IborIndex>
    - Rate
    - Real
    - DayCounter
    - Schedule
    - BusinessDayConvention
    - Period
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 130
    functionName: QuantLib::CPISwap::CPISwap
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - Leg::back
    - Leg::push_back
    - empty
    - CPILeg
    - Leg::end
    - calendar
    - Null<Real>
    - std::move
    - IborLeg
    - SimpleCashFlow::SimpleCashFlow
    - std::fabs
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPISwap::CPISwap(Type type,\n                     Real nominal,\n
      \                    bool subtractInflationNominal,\n                     //
      float + spread leg\n                     Spread spread,\n                     DayCounter
      floatDayCount,\n                     Schedule floatSchedule,\n                     const
      BusinessDayConvention& floatPaymentRoll,\n                     Natural fixingDays,\n
      \                    ext::shared_ptr<IborIndex> floatIndex,\n                     //
      fixed x inflation leg\n                     Rate fixedRate,\n                     Real
      baseCPI,\n                     DayCounter fixedDayCount,\n                     Schedule
      fixedSchedule,\n                     const BusinessDayConvention& fixedPaymentRoll,\n
      \                    const Period& observationLag,\n                     ext::shared_ptr<ZeroInflationIndex>
      fixedIndex,\n                     CPI::InterpolationType observationInterpolation,\n
      \                    Real inflationNominal)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:136,1
    - Dst: dynamic_cast<CPISwap::arguments*>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 142
    functionName: QuantLib::CPISwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<CPISwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void CPISwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:147,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionName: QuantLib::CPISwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CPISwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:153,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::CPISwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread CPISwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::CPISwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:166,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::CPISwap::floatLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::floatLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:171,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:173,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: QuantLib::CPISwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 2
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void CPISwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:184,1
    - Dst: dynamic_cast<const CPISwap::results*>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:186,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:191,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:192,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:195,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:197,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:200,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:202,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 206
    functionName: QuantLib::CPISwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 2
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - Null<Spread>
    - dynamic_cast<const CPISwap::results*>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void CPISwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: CPISwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    linkageType: ''
    returnType: void
    signature: void CPISwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:213,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:214,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/cpiswap.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: CPISwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void CPISwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - barrierType
    - barrier
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::TwoAssetBarrierOption::TwoAssetBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TwoAssetBarrierOption::TwoAssetBarrierOption(\n                           Barrier::Type
      barrierType,\n                           Real barrier,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:35,1
    - Dst: dynamic_cast<TwoAssetBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoAssetBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<TwoAssetBarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TwoAssetBarrierOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:43,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::TwoAssetBarrierOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool TwoAssetBarrierOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: TwoAssetBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void TwoAssetBarrierOption::arguments::arguments()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:50,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 63
    functionName: TwoAssetBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TwoAssetBarrierOption::arguments::validate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 76
    functionName: TwoAssetBarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: bool
    signature: bool TwoAssetBarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - barrierType
    - barrier
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::TwoAssetBarrierOption::TwoAssetBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TwoAssetBarrierOption::TwoAssetBarrierOption(\n                           Barrier::Type
      barrierType,\n                           Real barrier,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:35,1
    - Dst: dynamic_cast<TwoAssetBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoAssetBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<TwoAssetBarrierOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TwoAssetBarrierOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:43,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::TwoAssetBarrierOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool TwoAssetBarrierOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: TwoAssetBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void TwoAssetBarrierOption::arguments::arguments()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:50,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 63
    functionName: TwoAssetBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TwoAssetBarrierOption::arguments::validate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 76
    functionName: TwoAssetBarrierOption::engine::triggered(Real underlying) const
    functionSourceFile: /src/quantlib/ql/instruments/twoassetbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: bool
    signature: bool TwoAssetBarrierOption::engine::triggered(Real underlying) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoOptionResults::reset
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoOptionResults::QuantoOptionResults
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoOptionResults::reset
    linkageType: ''
    returnType: void
    signature: void QuantoOptionResults()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::QuantoOptionResults::reset
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericEngine::reset
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoOptionResults::reset
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::QuantoOptionResults::QuantoOptionResults
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoOptionResults::reset
    linkageType: ''
    returnType: void
    signature: void QuantoOptionResults()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::QuantoOptionResults::reset
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GenericEngine::reset
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::QuantoVanillaOption::QuantoVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoVanillaOption::QuantoVanillaOption(\n                   const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                   const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:32,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::QuantoVanillaOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::QuantoVanillaOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::QuantoVanillaOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 3
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::QuantoVanillaOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneAssetOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoVanillaOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:58,1
    - Dst: dynamic_cast<const QuantoVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:59,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::QuantoVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const QuantoVanillaOption::results*>
    - QL_ENSURE
    - QuantLib::OneAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void QuantoVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::QuantoVanillaOption::QuantoVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuantoVanillaOption::QuantoVanillaOption(\n                   const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                   const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:32,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::QuantoVanillaOption::qvega
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qvega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::QuantoVanillaOption::qrho
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qrho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::QuantoVanillaOption::qlambda
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real QuantoVanillaOption::qlambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::setupExpired
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 3
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::QuantoVanillaOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneAssetOption::setupExpired
    linkageType: ''
    returnType: void
    signature: void QuantoVanillaOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:58,1
    - Dst: dynamic_cast<const QuantoVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:59,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/quantovanillaoption.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::QuantoVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/quantovanillaoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const QuantoVanillaOption::results*>
    - QL_ENSURE
    - QuantLib::OneAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void QuantoVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: QuantLib::CPISwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::CPISwap::type
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type CPISwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::CPISwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: QuantLib::CPISwap::subtractInflationNominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CPISwap::subtractInflationNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: QuantLib::CPISwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread CPISwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: '& CPISwap::floatDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & CPISwap::floatDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 198
    functionName: '& CPISwap::floatSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & CPISwap::floatSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: '& CPISwap::floatPaymentRoll() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention & CPISwap::floatPaymentRoll() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 200
    functionName: QuantLib::CPISwap::fixingDays
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural CPISwap::fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 201
    functionName: '& CPISwap::floatIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & CPISwap::floatIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 204
    functionName: QuantLib::CPISwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPISwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 205
    functionName: QuantLib::CPISwap::baseCPI
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 206
    functionName: '& CPISwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & CPISwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 207
    functionName: '& CPISwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & CPISwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: '& CPISwap::fixedPaymentRoll() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention & CPISwap::fixedPaymentRoll() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::CPISwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period CPISwap::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: '& CPISwap::fixedIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & CPISwap::fixedIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 211
    functionName: QuantLib::CPISwap::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType CPISwap::observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 212
    functionName: QuantLib::CPISwap::inflationNominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::inflationNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: '& CPISwap::cpiLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CPISwap::cpiLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: '& CPISwap::floatLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CPISwap::floatLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cpiswap.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: QuantLib::CPISwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::CPISwap::type
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type CPISwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::CPISwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: QuantLib::CPISwap::subtractInflationNominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CPISwap::subtractInflationNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: QuantLib::CPISwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread CPISwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: '& CPISwap::floatDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & CPISwap::floatDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 198
    functionName: '& CPISwap::floatSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & CPISwap::floatSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: '& CPISwap::floatPaymentRoll() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention & CPISwap::floatPaymentRoll() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 200
    functionName: QuantLib::CPISwap::fixingDays
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural CPISwap::fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 201
    functionName: '& CPISwap::floatIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & CPISwap::floatIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 204
    functionName: QuantLib::CPISwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPISwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 205
    functionName: QuantLib::CPISwap::baseCPI
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 206
    functionName: '& CPISwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & CPISwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 207
    functionName: '& CPISwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & CPISwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: '& CPISwap::fixedPaymentRoll() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention & CPISwap::fixedPaymentRoll() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::CPISwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period CPISwap::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: '& CPISwap::fixedIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & CPISwap::fixedIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 211
    functionName: QuantLib::CPISwap::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType CPISwap::observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 212
    functionName: QuantLib::CPISwap::inflationNominal
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPISwap::inflationNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: '& CPISwap::cpiLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CPISwap::cpiLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: '& CPISwap::floatLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpiswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CPISwap::floatLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:36,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:37,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - capFloorType
    - index
    - ' length'
    - cal
    - ' observationLag'
    - interpolation
    argTypes:
    - YoYInflationCapFloor::Type
    - ext::shared_ptr<YoYInflationIndex>
    - Size
    - Calendar
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 39
    functionName: QuantLib::MakeYoYInflationCapFloor::MakeYoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Thirty360
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeYoYInflationCapFloor::MakeYoYInflationCapFloor(YoYInflationCapFloor::Type
      capFloorType,\n                                                       ext::shared_ptr<YoYInflationIndex>
      index,\n                                                       const Size& length,\n
      \                                                      Calendar cal,\n                                                       const
      Period& observationLag,\n                                                       CPI::InterpolationType
      interpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - capFloorType
    - index
    - ' length'
    - cal
    - ' observationLag'
    argTypes:
    - YoYInflationCapFloor::Type
    - ext::shared_ptr<YoYInflationIndex>
    - Size
    - Calendar
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::MakeYoYInflationCapFloor::MakeYoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeYoYInflationCapFloor::MakeYoYInflationCapFloor(YoYInflationCapFloor::Type
      capFloorType,\n                                                       ext::shared_ptr<YoYInflationIndex>
      index,\n                                                       const Size& length,\n
      \                                                      Calendar cal,\n                                                       const
      Period& observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: MakeYoYInflationCapFloor::operator YoYInflationCapFloor() const
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeYoYInflationCapFloor::operator YoYInflationCapFloor() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:59,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:60,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:65,1
    - Dst: yoyInflationLeg
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:69,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:77,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:77,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:80,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:81,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:82,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:82,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:86,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:88,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:89,1
    - Dst: YoYInflationCapFloor::YoYInflationCapFloor
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:92,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:94,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 96
    functionName: MakeYoYInflationCapFloor::operator ext::shared_ptr<YoYInflationCapFloor>()
      const
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - referenceDate
    - Leg::end
    - Leg::erase
    - Null<Rate>
    - ext::shared_ptr::setPricingEngine
    - QuantLib::detail::instance
    - Date
    - Leg::size
    - yoyInflationLeg
    - QuantLib::CashFlows::atmRate
    - advance
    - YoYInflationCapFloor::YoYInflationCapFloor
    linkageType: ''
    returnType: void
    signature: void MakeYoYInflationCapFloor::operator ext::shared_ptr<YoYInflationCapFloor>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: '& MakeYoYInflationCapFloor::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withNominal(Real
      n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: "& MakeYoYInflationCapFloor::withEffectiveDate(\n                                            const
      Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withEffectiveDate(\n
      \                                           const Date& effectiveDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 113
    functionName: "&\n    MakeYoYInflationCapFloor::withPaymentAdjustment(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withPaymentAdjustment(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: "&\n    MakeYoYInflationCapFloor::withPaymentDayCounter(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withPaymentDayCounter(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 125
    functionName: "&\n    MakeYoYInflationCapFloor::withFixingDays(Natural n)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withFixingDays(Natural
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: '& MakeYoYInflationCapFloor::asOptionlet(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::asOptionlet(bool
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: "& MakeYoYInflationCapFloor::withPricingEngine(\n        const ext::shared_ptr<PricingEngine>&
      engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withPricingEngine(\n
      \       const ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:140,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: "&\n    MakeYoYInflationCapFloor::withStrike(Rate strike)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withStrike(Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:148,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: "&\n    MakeYoYInflationCapFloor::withAtmStrike(\n                      const
      Handle<YieldTermStructure>& nominalTermStructure)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withAtmStrike(\n
      \                     const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - forwardStart
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: "&\n    MakeYoYInflationCapFloor::withForwardStart(Period forwardStart)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withForwardStart(Period
      forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:36,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:37,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - capFloorType
    - index
    - ' length'
    - cal
    - ' observationLag'
    - interpolation
    argTypes:
    - YoYInflationCapFloor::Type
    - ext::shared_ptr<YoYInflationIndex>
    - Size
    - Calendar
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 39
    functionName: QuantLib::MakeYoYInflationCapFloor::MakeYoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Thirty360
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeYoYInflationCapFloor::MakeYoYInflationCapFloor(YoYInflationCapFloor::Type
      capFloorType,\n                                                       ext::shared_ptr<YoYInflationIndex>
      index,\n                                                       const Size& length,\n
      \                                                      Calendar cal,\n                                                       const
      Period& observationLag,\n                                                       CPI::InterpolationType
      interpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - capFloorType
    - index
    - ' length'
    - cal
    - ' observationLag'
    argTypes:
    - YoYInflationCapFloor::Type
    - ext::shared_ptr<YoYInflationIndex>
    - Size
    - Calendar
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::MakeYoYInflationCapFloor::MakeYoYInflationCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeYoYInflationCapFloor::MakeYoYInflationCapFloor(YoYInflationCapFloor::Type
      capFloorType,\n                                                       ext::shared_ptr<YoYInflationIndex>
      index,\n                                                       const Size& length,\n
      \                                                      Calendar cal,\n                                                       const
      Period& observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: MakeYoYInflationCapFloor::operator YoYInflationCapFloor() const
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeYoYInflationCapFloor::operator YoYInflationCapFloor() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:59,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:60,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:65,1
    - Dst: yoyInflationLeg
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:69,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:77,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:77,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:80,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:81,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:82,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:82,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:86,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:88,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:89,1
    - Dst: YoYInflationCapFloor::YoYInflationCapFloor
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:92,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:94,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 96
    functionName: MakeYoYInflationCapFloor::operator ext::shared_ptr<YoYInflationCapFloor>()
      const
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - referenceDate
    - Leg::end
    - Leg::erase
    - Null<Rate>
    - ext::shared_ptr::setPricingEngine
    - QuantLib::detail::instance
    - Date
    - Leg::size
    - yoyInflationLeg
    - QuantLib::CashFlows::atmRate
    - advance
    - YoYInflationCapFloor::YoYInflationCapFloor
    linkageType: ''
    returnType: void
    signature: void MakeYoYInflationCapFloor::operator ext::shared_ptr<YoYInflationCapFloor>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: '& MakeYoYInflationCapFloor::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withNominal(Real
      n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: "& MakeYoYInflationCapFloor::withEffectiveDate(\n                                            const
      Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withEffectiveDate(\n
      \                                           const Date& effectiveDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 113
    functionName: "&\n    MakeYoYInflationCapFloor::withPaymentAdjustment(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withPaymentAdjustment(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: "&\n    MakeYoYInflationCapFloor::withPaymentDayCounter(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withPaymentDayCounter(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 125
    functionName: "&\n    MakeYoYInflationCapFloor::withFixingDays(Natural n)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withFixingDays(Natural
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: '& MakeYoYInflationCapFloor::asOptionlet(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::asOptionlet(bool
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: "& MakeYoYInflationCapFloor::withPricingEngine(\n        const ext::shared_ptr<PricingEngine>&
      engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor & MakeYoYInflationCapFloor::withPricingEngine(\n
      \       const ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:140,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: "&\n    MakeYoYInflationCapFloor::withStrike(Rate strike)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withStrike(Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:148,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: "&\n    MakeYoYInflationCapFloor::withAtmStrike(\n                      const
      Handle<YieldTermStructure>& nominalTermStructure)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withAtmStrike(\n
      \                     const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - forwardStart
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: "&\n    MakeYoYInflationCapFloor::withForwardStart(Period forwardStart)"
    functionSourceFile: /src/quantlib/ql/instruments/makeyoyinflationcapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeYoYInflationCapFloor
    signature: "MakeYoYInflationCapFloor &\n    MakeYoYInflationCapFloor::withForwardStart(Period
      forwardStart)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:51,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:54,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:59,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:66,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:67,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:82,1
    - Dst: std::equal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:91,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 13
    argNames:
    - type
    - fixedNominals
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingNominals
    - floatingSchedule
    - iborIndex
    - spread
    - floatingDayCount
    - paymentConvention
    - paymentLag
    - ' paymentCalendar'
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - ext::optional<BusinessDayConvention>
    - Integer
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 104
    functionName: QuantLib::FixedVsFloatingSwap::FixedVsFloatingSwap
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - dayCounter
    - std::move
    - std::equal
    - begin
    - QL_FAIL
    - DayCounter
    - FixedRateLeg
    - calendar
    - businessDayConvention
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedVsFloatingSwap::FixedVsFloatingSwap(Type type,\n                                             std::vector<Real>
      fixedNominals,\n                                             Schedule fixedSchedule,\n
      \                                            Rate fixedRate,\n                                             DayCounter
      fixedDayCount,\n                                             std::vector<Real>
      floatingNominals,\n                                             Schedule floatingSchedule,\n
      \                                            ext::shared_ptr<IborIndex> iborIndex,\n
      \                                            Spread spread,\n                                             DayCounter
      floatingDayCount,\n                                             ext::optional<BusinessDayConvention>
      paymentConvention,\n                                             Integer paymentLag,\n
      \                                            const Calendar& paymentCalendar)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:108,1
    - Dst: dynamic_cast<FixedVsFloatingSwap::arguments*>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:110,1
    - Dst: QuantLib::FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:120,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:123,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:125,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:126,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:129,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:131,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:132,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:133,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:134,1
    - Dst: setupFloatingArguments
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 138
    functionName: QuantLib::FixedVsFloatingSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - setupFloatingArguments
    - auto::date
    - auto::nominal
    - Null<Real>
    - std::vector<Real>
    - std::vector<Date>
    - auto::accrualStartDate
    - dynamic_cast<FixedVsFloatingSwap::arguments*>
    - QuantLib::FixedVsFloatingSwap::nominal
    - size
    - auto::amount
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:142,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::FixedVsFloatingSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate FixedVsFloatingSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:148,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionName: QuantLib::FixedVsFloatingSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread FixedVsFloatingSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::FixedVsFloatingSwap::fixedLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::fixedLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::FixedVsFloatingSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:166,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::FixedVsFloatingSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:172,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::FixedVsFloatingSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:177,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:179,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: QuantLib::FixedVsFloatingSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:186,1
    - Dst: dynamic_cast<const FixedVsFloatingSwap::results*>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:188,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:193,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:194,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:197,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:199,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:204,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 183
    functionDepth: 2
    functionLinenumber: 183
    functionLinenumberEnd: 207
    functionName: QuantLib::FixedVsFloatingSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    - dynamic_cast<const FixedVsFloatingSwap::results*>
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::fetchResults(const PricingEngine::results*
      r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 238
    functionName: FixedVsFloatingSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:241,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:242,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionName: FixedVsFloatingSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::results::reset()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:51,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:54,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:59,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:66,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:67,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:82,1
    - Dst: std::equal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:91,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 13
    argNames:
    - type
    - fixedNominals
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingNominals
    - floatingSchedule
    - iborIndex
    - spread
    - floatingDayCount
    - paymentConvention
    - paymentLag
    - ' paymentCalendar'
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - ext::optional<BusinessDayConvention>
    - Integer
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 104
    functionName: QuantLib::FixedVsFloatingSwap::FixedVsFloatingSwap
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - dayCounter
    - std::move
    - std::equal
    - begin
    - QL_FAIL
    - DayCounter
    - FixedRateLeg
    - calendar
    - businessDayConvention
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedVsFloatingSwap::FixedVsFloatingSwap(Type type,\n                                             std::vector<Real>
      fixedNominals,\n                                             Schedule fixedSchedule,\n
      \                                            Rate fixedRate,\n                                             DayCounter
      fixedDayCount,\n                                             std::vector<Real>
      floatingNominals,\n                                             Schedule floatingSchedule,\n
      \                                            ext::shared_ptr<IborIndex> iborIndex,\n
      \                                            Spread spread,\n                                             DayCounter
      floatingDayCount,\n                                             ext::optional<BusinessDayConvention>
      paymentConvention,\n                                             Integer paymentLag,\n
      \                                            const Calendar& paymentCalendar)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:108,1
    - Dst: dynamic_cast<FixedVsFloatingSwap::arguments*>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:110,1
    - Dst: QuantLib::FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:120,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:123,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:125,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:126,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:129,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:131,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:132,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:133,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:134,1
    - Dst: setupFloatingArguments
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 138
    functionName: QuantLib::FixedVsFloatingSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - setupFloatingArguments
    - auto::date
    - auto::nominal
    - Null<Real>
    - std::vector<Real>
    - std::vector<Date>
    - auto::accrualStartDate
    - dynamic_cast<FixedVsFloatingSwap::arguments*>
    - QuantLib::FixedVsFloatingSwap::nominal
    - size
    - auto::amount
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:142,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::FixedVsFloatingSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate FixedVsFloatingSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:148,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionName: QuantLib::FixedVsFloatingSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread FixedVsFloatingSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::FixedVsFloatingSwap::fixedLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::fixedLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::FixedVsFloatingSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:166,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::FixedVsFloatingSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:172,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::FixedVsFloatingSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:177,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:179,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: QuantLib::FixedVsFloatingSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:186,1
    - Dst: dynamic_cast<const FixedVsFloatingSwap::results*>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:188,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:193,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:194,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:197,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:199,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:204,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 183
    functionDepth: 2
    functionLinenumber: 183
    functionLinenumberEnd: 207
    functionName: QuantLib::FixedVsFloatingSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    - dynamic_cast<const FixedVsFloatingSwap::results*>
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::fetchResults(const PricingEngine::results*
      r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:220,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:223,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:226,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 238
    functionName: FixedVsFloatingSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:241,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:242,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionName: FixedVsFloatingSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void FixedVsFloatingSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::CapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& capRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & capRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& floorRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & floorRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' floatingLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::Cap::Cap
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void Cap(const Leg& floatingLeg,\n            const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' floatingLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::Floor::Floor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void Floor(const Leg& floatingLeg,\n              const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' floatingLeg'
    - ' capRates'
    - ' floorRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::Collar::Collar
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Collar(const Leg& floatingLeg,\n               const std::vector<Rate>&
      capRates,\n               const std::vector<Rate>& floorRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/capfloor.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::CapFloor::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::CapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& capRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & capRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& floorRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & floorRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' floatingLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::Cap::Cap
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void Cap(const Leg& floatingLeg,\n            const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' floatingLeg'
    - ' exerciseRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::Floor::Floor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void Floor(const Leg& floatingLeg,\n              const std::vector<Rate>&
      exerciseRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' floatingLeg'
    - ' capRates'
    - ' floorRates'
    argTypes:
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::Collar::Collar
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Collar(const Leg& floatingLeg,\n               const std::vector<Rate>&
      capRates,\n               const std::vector<Rate>& floorRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/capfloor.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::CapFloor::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:83,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::Swap::legBPS
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real legBPS(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:89,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::Swap::legNPV
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real legNPV(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:95,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:97,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::Swap::startDiscounts
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor startDiscounts(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:101,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:103,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionName: QuantLib::Swap::endDiscounts
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor endDiscounts(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:108,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: QuantLib::Swap::npvDateDiscount
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor npvDateDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:112,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/instruments/swap.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& leg(Size j) const'
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Leg
    signature: Leg & leg(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::Swap::payer
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool payer(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:83,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::Swap::legBPS
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real legBPS(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:89,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::Swap::legNPV
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real legNPV(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:95,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:97,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::Swap::startDiscounts
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor startDiscounts(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:101,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:103,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionName: QuantLib::Swap::endDiscounts
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor endDiscounts(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swap.hpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:108,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: QuantLib::Swap::npvDateDiscount
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor npvDateDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& leg(Size j) const'
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Leg
    signature: Leg & leg(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.hpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::Swap::payer
    functionSourceFile: /src/quantlib/ql/instruments/swap.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool payer(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::VanillaForwardPayoff::VanillaForwardPayoff
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VanillaForwardPayoff(Option::Type type, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::VanillaForwardPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' payoff'
    - ' ex'
    - minExerciseRights
    - maxExerciseRights
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<SwingExercise>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::VanillaSwingOption::VanillaSwingOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VanillaSwingOption(const ext::shared_ptr<Payoff>& payoff,\n                             const
      ext::shared_ptr<SwingExercise>& ex,\n                             Size minExerciseRights,
      Size maxExerciseRights)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::VanillaSwingOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::VanillaForwardPayoff::VanillaForwardPayoff
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VanillaForwardPayoff(Option::Type type, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::VanillaForwardPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' payoff'
    - ' ex'
    - minExerciseRights
    - maxExerciseRights
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<SwingExercise>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::VanillaSwingOption::VanillaSwingOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VanillaSwingOption(const ext::shared_ptr<Payoff>& payoff,\n                             const
      ext::shared_ptr<SwingExercise>& ex,\n                             Size minExerciseRights,
      Size maxExerciseRights)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::VanillaSwingOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - barrierType
    - barrierRange
    - barrier
    - rebate
    - coverEventDate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - PartialBarrier::Range
    - Real
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 36
    functionName: QuantLib::PartialTimeBarrierOption::PartialTimeBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PartialTimeBarrierOption::PartialTimeBarrierOption(\n                           Barrier::Type
      barrierType,\n                           PartialBarrier::Range barrierRange,\n
      \                          Real barrier,\n                           Real rebate,\n
      \                          Date coverEventDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:40,1
    - Dst: dynamic_cast<PartialTimeBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::PartialTimeBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<PartialTimeBarrierOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PartialTimeBarrierOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:52,1
    - Dst: QuantLib::TermStructure::checkRange
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: PartialTimeBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::checkRange
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void PartialTimeBarrierOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:59,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:60,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:61,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:62,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: PartialTimeBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Real>
    - Date
    - lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PartialTimeBarrierOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - barrierType
    - barrierRange
    - barrier
    - rebate
    - coverEventDate
    - ' payoff'
    - ' exercise'
    argTypes:
    - Barrier::Type
    - PartialBarrier::Range
    - Real
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 36
    functionName: QuantLib::PartialTimeBarrierOption::PartialTimeBarrierOption
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PartialTimeBarrierOption::PartialTimeBarrierOption(\n                           Barrier::Type
      barrierType,\n                           PartialBarrier::Range barrierRange,\n
      \                          Real barrier,\n                           Real rebate,\n
      \                          Date coverEventDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:40,1
    - Dst: dynamic_cast<PartialTimeBarrierOption::arguments*>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::PartialTimeBarrierOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<PartialTimeBarrierOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PartialTimeBarrierOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:52,1
    - Dst: QuantLib::TermStructure::checkRange
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: PartialTimeBarrierOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::checkRange
    - QuantLib::Swaption::settlementType
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void PartialTimeBarrierOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:59,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:60,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:61,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:62,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: PartialTimeBarrierOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/partialtimebarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Real>
    - Date
    - lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PartialTimeBarrierOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Stock::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/stock.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExpired() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Stock::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/stock.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExpired() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:51,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:53,1
    - Dst: yoyInflationLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:58,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:66,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 13
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - yoySchedule
    - yoyIndex
    - ' observationLag'
    - interpolation
    - spread
    - yoyDayCount
    - paymentCalendar
    - paymentConvention
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - Spread
    - DayCounter
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 78
    functionName: QuantLib::YearOnYearInflationSwap::YearOnYearInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - Leg::end
    - std::move
    - registerWith
    - FixedRateLeg
    - yoyInflationLeg
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwap::YearOnYearInflationSwap(Type type,\n
      \                                                    Real nominal,\n                                                     Schedule
      fixedSchedule,\n                                                     Rate fixedRate,\n
      \                                                    DayCounter fixedDayCount,\n
      \                                                    Schedule yoySchedule,\n
      \                                                    ext::shared_ptr<YoYInflationIndex>
      yoyIndex,\n                                                     const Period&
      observationLag,\n                                                     CPI::InterpolationType
      interpolation,\n                                                     Spread
      spread,\n                                                     DayCounter yoyDayCount,\n
      \                                                    Calendar paymentCalendar,\n
      \                                                    BusinessDayConvention paymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - yoySchedule
    - yoyIndex
    - ' observationLag'
    - spread
    - yoyDayCount
    - paymentCalendar
    - paymentConvention
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - Spread
    - DayCounter
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: QuantLib::YearOnYearInflationSwap::YearOnYearInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwap::YearOnYearInflationSwap(Type type,\n
      \                                                    Real nominal,\n                                                     Schedule
      fixedSchedule,\n                                                     Rate fixedRate,\n
      \                                                    DayCounter fixedDayCount,\n
      \                                                    Schedule yoySchedule,\n
      \                                                    ext::shared_ptr<YoYInflationIndex>
      yoyIndex,\n                                                     const Period&
      observationLag,\n                                                     Spread
      spread,\n                                                     DayCounter yoyDayCount,\n
      \                                                    Calendar paymentCalendar,\n
      \                                                    BusinessDayConvention paymentConvention)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:98,1
    - Dst: dynamic_cast<YearOnYearInflationSwap::arguments*>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:100,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:108,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:111,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:114,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:116,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:118,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:119,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:120,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:123,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:127,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:129,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:131,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:131,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:133,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:135,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:137,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:138,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:140,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:141,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:142,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 149
    functionName: QuantLib::YearOnYearInflationSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<YearOnYearInflationSwap::arguments*>
    - fixedLeg
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::fixingDate
    - yoyLeg
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - std::vector<Real>
    - std::vector<Date>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::amount
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - ext::shared_ptr::date
    - ext::shared_ptr::spread
    - std::vector<Time>
    - size
    - std::vector<Spread>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:154,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::YearOnYearInflationSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate YearOnYearInflationSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:160,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::YearOnYearInflationSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread YearOnYearInflationSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 169
    functionName: QuantLib::YearOnYearInflationSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:173,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::YearOnYearInflationSwap::yoyLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::yoyLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:178,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:180,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::YearOnYearInflationSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:191,1
    - Dst: dynamic_cast<const YearOnYearInflationSwap::results*>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:193,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:198,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:199,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:204,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:207,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:209,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 213
    functionName: QuantLib::YearOnYearInflationSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - dynamic_cast<const YearOnYearInflationSwap::results*>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::fetchResults(const PricingEngine::results*
      r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:216,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:217,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 239
    functionName: YearOnYearInflationSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:242,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:243,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: YearOnYearInflationSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::results::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:51,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:53,1
    - Dst: yoyInflationLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:58,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:66,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 13
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - yoySchedule
    - yoyIndex
    - ' observationLag'
    - interpolation
    - spread
    - yoyDayCount
    - paymentCalendar
    - paymentConvention
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - Spread
    - DayCounter
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 78
    functionName: QuantLib::YearOnYearInflationSwap::YearOnYearInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - Leg::end
    - std::move
    - registerWith
    - FixedRateLeg
    - yoyInflationLeg
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwap::YearOnYearInflationSwap(Type type,\n
      \                                                    Real nominal,\n                                                     Schedule
      fixedSchedule,\n                                                     Rate fixedRate,\n
      \                                                    DayCounter fixedDayCount,\n
      \                                                    Schedule yoySchedule,\n
      \                                                    ext::shared_ptr<YoYInflationIndex>
      yoyIndex,\n                                                     const Period&
      observationLag,\n                                                     CPI::InterpolationType
      interpolation,\n                                                     Spread
      spread,\n                                                     DayCounter yoyDayCount,\n
      \                                                    Calendar paymentCalendar,\n
      \                                                    BusinessDayConvention paymentConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - yoySchedule
    - yoyIndex
    - ' observationLag'
    - spread
    - yoyDayCount
    - paymentCalendar
    - paymentConvention
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - Spread
    - DayCounter
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: QuantLib::YearOnYearInflationSwap::YearOnYearInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwap::YearOnYearInflationSwap(Type type,\n
      \                                                    Real nominal,\n                                                     Schedule
      fixedSchedule,\n                                                     Rate fixedRate,\n
      \                                                    DayCounter fixedDayCount,\n
      \                                                    Schedule yoySchedule,\n
      \                                                    ext::shared_ptr<YoYInflationIndex>
      yoyIndex,\n                                                     const Period&
      observationLag,\n                                                     Spread
      spread,\n                                                     DayCounter yoyDayCount,\n
      \                                                    Calendar paymentCalendar,\n
      \                                                    BusinessDayConvention paymentConvention)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:98,1
    - Dst: dynamic_cast<YearOnYearInflationSwap::arguments*>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:100,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:108,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:111,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:114,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:116,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:118,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:119,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:120,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:123,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:127,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:129,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:131,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:131,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:133,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:135,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:137,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:138,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:140,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:141,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:142,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 149
    functionName: QuantLib::YearOnYearInflationSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<YearOnYearInflationSwap::arguments*>
    - fixedLeg
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::fixingDate
    - yoyLeg
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - std::vector<Real>
    - std::vector<Date>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::amount
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - ext::shared_ptr::date
    - ext::shared_ptr::spread
    - std::vector<Time>
    - size
    - std::vector<Spread>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:154,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::YearOnYearInflationSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate YearOnYearInflationSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:160,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: QuantLib::YearOnYearInflationSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread YearOnYearInflationSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 169
    functionName: QuantLib::YearOnYearInflationSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:173,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::YearOnYearInflationSwap::yoyLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwap::yoyLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:178,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:180,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::YearOnYearInflationSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:191,1
    - Dst: dynamic_cast<const YearOnYearInflationSwap::results*>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:193,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:198,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:199,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:204,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:207,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:209,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 213
    functionName: QuantLib::YearOnYearInflationSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - dynamic_cast<const YearOnYearInflationSwap::results*>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::fetchResults(const PricingEngine::results*
      r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:216,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:217,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:224,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:227,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:230,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:233,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 239
    functionName: YearOnYearInflationSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:242,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:243,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: YearOnYearInflationSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/yearonyearinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' payoff'
    - ' maturity'
    - resetDates
    argTypes:
    - ext::shared_ptr<PercentageStrikePayoff>
    - ext::shared_ptr<EuropeanExercise>
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::CliquetOption::CliquetOption
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CliquetOption::CliquetOption(const ext::shared_ptr<PercentageStrikePayoff>&
      payoff,\n                                 const ext::shared_ptr<EuropeanExercise>&
      maturity,\n                                 std::vector<Date> resetDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:32,1
    - Dst: dynamic_cast<CliquetOption::arguments*>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionName: QuantLib::CliquetOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<CliquetOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CliquetOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:46,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:61,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:63,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 66
    functionName: CliquetOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - lastDate
    - QuantLib::Option::arguments::validate
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - empty
    - Null<Real>
    - size
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void CliquetOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' payoff'
    - ' maturity'
    - resetDates
    argTypes:
    - ext::shared_ptr<PercentageStrikePayoff>
    - ext::shared_ptr<EuropeanExercise>
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::CliquetOption::CliquetOption
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CliquetOption::CliquetOption(const ext::shared_ptr<PercentageStrikePayoff>&
      payoff,\n                                 const ext::shared_ptr<EuropeanExercise>&
      maturity,\n                                 std::vector<Date> resetDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:32,1
    - Dst: dynamic_cast<CliquetOption::arguments*>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionName: QuantLib::CliquetOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<CliquetOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CliquetOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:46,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:61,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/cliquetoption.cpp:63,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 66
    functionName: CliquetOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - lastDate
    - QuantLib::Option::arguments::validate
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - empty
    - Null<Real>
    - size
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void CliquetOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::VarianceSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:99,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::VarianceSwap::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 6
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::VarianceSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceSwap::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::VarianceSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceSwap::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::VarianceSwap::strike
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::VarianceSwap::notional
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::VarianceSwap::position
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Position::Type
    signature: Position::Type VarianceSwap::position() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::VarianceSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:99,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::VarianceSwap::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 6
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::VarianceSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceSwap::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::VarianceSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceSwap::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::VarianceSwap::strike
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::VarianceSwap::notional
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::VarianceSwap::position
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Position::Type
    signature: Position::Type VarianceSwap::position() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - moneyness
    - ' resetDate'
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::ForwardVanillaOption::ForwardVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::ForwardVanillaOption(\n                           Real
      moneyness,\n                           const Date& resetDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:35,1
    - Dst: dynamic_cast<ForwardVanillaOption::arguments*>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::ForwardVanillaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<ForwardVanillaOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:46,1
    - Dst: dynamic_cast<const ForwardVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:47,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 3
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::ForwardVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const ForwardVanillaOption::results*>
    - QuantLib::OneAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - moneyness
    - ' resetDate'
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::ForwardVanillaOption::ForwardVanillaOption
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::ForwardVanillaOption(\n                           Real
      moneyness,\n                           const Date& resetDate,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:35,1
    - Dst: dynamic_cast<ForwardVanillaOption::arguments*>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::ForwardVanillaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<ForwardVanillaOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:46,1
    - Dst: dynamic_cast<const ForwardVanillaOption::results*>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:47,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 3
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::ForwardVanillaOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const ForwardVanillaOption::results*>
    - QuantLib::OneAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaOption::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:32,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<FloatFloatSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 42
    functionName: QuantLib::FloatFloatSwaption::FloatFloatSwaption
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwaption::FloatFloatSwaption(ext::shared_ptr<FloatFloatSwap>
      swap,\n                                           const ext::shared_ptr<Exercise>&
      exercise,\n                                           Settlement::Type delivery,\n
      \                                          Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:45,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::FloatFloatSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool FloatFloatSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatFloatSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:51,1
    - Dst: dynamic_cast<FloatFloatSwaption::arguments*>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::FloatFloatSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<FloatFloatSwaption::arguments*>
    - QuantLib::FloatFloatSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwaption::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:66,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: FloatFloatSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketGeneratingEngine>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:79,1
    - Dst: reset
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:80,1
    - Dst: QuantLib::FloatFloatSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:82,1
    - Dst: ext::shared_ptr::calibrationBasket
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - BasketGeneratingEngine::CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 85
    functionName: QuantLib::FloatFloatSwaption::calibrationBasket
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatFloatSwaption::setupArguments
    - ext::shared_ptr::calibrationBasket
    - reset
    - ext::dynamic_pointer_cast<BasketGeneratingEngine>
    - getArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> FloatFloatSwaption::calibrationBasket(\n
      \       const ext::shared_ptr<SwapIndex>& standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const BasketGeneratingEngine::CalibrationBasketType
      basketType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:32,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<FloatFloatSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 42
    functionName: QuantLib::FloatFloatSwaption::FloatFloatSwaption
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    - alwaysForwardNotifications
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwaption::FloatFloatSwaption(ext::shared_ptr<FloatFloatSwap>
      swap,\n                                           const ext::shared_ptr<Exercise>&
      exercise,\n                                           Settlement::Type delivery,\n
      \                                          Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:45,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::FloatFloatSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool FloatFloatSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatFloatSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:51,1
    - Dst: dynamic_cast<FloatFloatSwaption::arguments*>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::FloatFloatSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 3
    functionsReached:
    - dynamic_cast<FloatFloatSwaption::arguments*>
    - QuantLib::FloatFloatSwaption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwaption::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:66,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: FloatFloatSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketGeneratingEngine>
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:79,1
    - Dst: reset
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:80,1
    - Dst: QuantLib::FloatFloatSwaption::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:82,1
    - Dst: ext::shared_ptr::calibrationBasket
      Src: /src/quantlib/ql/instruments/floatfloatswaption.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - BasketGeneratingEngine::CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 85
    functionName: QuantLib::FloatFloatSwaption::calibrationBasket
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatFloatSwaption::setupArguments
    - ext::shared_ptr::calibrationBasket
    - reset
    - ext::dynamic_pointer_cast<BasketGeneratingEngine>
    - getArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> FloatFloatSwaption::calibrationBasket(\n
      \       const ext::shared_ptr<SwapIndex>& standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const BasketGeneratingEngine::CalibrationBasketType
      basketType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/bondforward.cpp:40,1
    - Dst: ForwardTypePayoff::ForwardTypePayoff
      Src: /src/quantlib/ql/instruments/bondforward.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bondforward.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bondforward.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - ' valueDate'
    - ' maturityDate'
    - type
    - strike
    - settlementDays
    - ' dayCounter'
    - ' calendar'
    - businessDayConvention
    - ' bond'
    - ' discountCurve'
    - ' incomeDiscountCurve'
    argTypes:
    - Date
    - Date
    - Position::Type
    - Real
    - Natural
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<Bond>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: QuantLib::BondForward::BondForward
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - ForwardTypePayoff::ForwardTypePayoff
    - registerWith
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void BondForward::BondForward(\n                    const Date& valueDate,\n
      \                   const Date& maturityDate,\n                    Position::Type
      type,\n                    Real strike,\n                    Natural settlementDays,\n
      \                   const DayCounter& dayCounter,\n                    const
      Calendar& calendar,\n                    BusinessDayConvention businessDayConvention,\n
      \                   const ext::shared_ptr<Bond>& bond,\n                    const
      Handle<YieldTermStructure>& discountCurve,\n                    const Handle<YieldTermStructure>&
      incomeDiscountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:50,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::BondForward::cleanForwardPrice
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - accruedAmount
    - forwardValue
    linkageType: ''
    returnType: Real
    signature: Real BondForward::cleanForwardPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::BondForward::forwardPrice
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - forwardValue
    linkageType: ''
    returnType: Real
    signature: Real BondForward::forwardPrice() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bondforward.cpp:63,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bondforward.cpp:64,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bondforward.cpp:73,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bondforward.cpp:74,1
    - Dst: amount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' incomeDiscountCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 83
    functionName: QuantLib::BondForward::spotIncome
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - date
    - settlementDate
    - discount
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real BondForward::spotIncome(\n        const Handle<YieldTermStructure>&
      incomeDiscountCurve) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dirtyPrice
      Src: /src/quantlib/ql/instruments/bondforward.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::BondForward::spotValue
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - dirtyPrice
    linkageType: ''
    returnType: Real
    signature: Real BondForward::spotValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondForward::spotValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:93,1
    - Dst: QuantLib::BondForward::spotIncome
      Src: /src/quantlib/ql/instruments/bondforward.cpp:94,1
    - Dst: QuantLib::BondForward::performCalculations
      Src: /src/quantlib/ql/instruments/bondforward.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::BondForward::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondForward::performCalculations
    - QuantLib::BondForward::spotIncome
    - QuantLib::BondForward::spotValue
    linkageType: ''
    returnType: void
    signature: void BondForward::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/bondforward.cpp:40,1
    - Dst: ForwardTypePayoff::ForwardTypePayoff
      Src: /src/quantlib/ql/instruments/bondforward.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bondforward.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bondforward.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - ' valueDate'
    - ' maturityDate'
    - type
    - strike
    - settlementDays
    - ' dayCounter'
    - ' calendar'
    - businessDayConvention
    - ' bond'
    - ' discountCurve'
    - ' incomeDiscountCurve'
    argTypes:
    - Date
    - Date
    - Position::Type
    - Real
    - Natural
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<Bond>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: QuantLib::BondForward::BondForward
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - ForwardTypePayoff::ForwardTypePayoff
    - registerWith
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void BondForward::BondForward(\n                    const Date& valueDate,\n
      \                   const Date& maturityDate,\n                    Position::Type
      type,\n                    Real strike,\n                    Natural settlementDays,\n
      \                   const DayCounter& dayCounter,\n                    const
      Calendar& calendar,\n                    BusinessDayConvention businessDayConvention,\n
      \                   const ext::shared_ptr<Bond>& bond,\n                    const
      Handle<YieldTermStructure>& discountCurve,\n                    const Handle<YieldTermStructure>&
      incomeDiscountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:50,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::BondForward::cleanForwardPrice
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - accruedAmount
    - forwardValue
    linkageType: ''
    returnType: Real
    signature: Real BondForward::cleanForwardPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::BondForward::forwardPrice
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 0
    functionsReached:
    - forwardValue
    linkageType: ''
    returnType: Real
    signature: Real BondForward::forwardPrice() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bondforward.cpp:63,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bondforward.cpp:64,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bondforward.cpp:73,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bondforward.cpp:74,1
    - Dst: amount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bondforward.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' incomeDiscountCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 83
    functionName: QuantLib::BondForward::spotIncome
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 1
    functionsReached:
    - cashflows
    - date
    - settlementDate
    - discount
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real BondForward::spotIncome(\n        const Handle<YieldTermStructure>&
      incomeDiscountCurve) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dirtyPrice
      Src: /src/quantlib/ql/instruments/bondforward.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::BondForward::spotValue
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 1
    functionsReached:
    - dirtyPrice
    linkageType: ''
    returnType: Real
    signature: Real BondForward::spotValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondForward::spotValue
      Src: /src/quantlib/ql/instruments/bondforward.cpp:93,1
    - Dst: QuantLib::BondForward::spotIncome
      Src: /src/quantlib/ql/instruments/bondforward.cpp:94,1
    - Dst: QuantLib::BondForward::performCalculations
      Src: /src/quantlib/ql/instruments/bondforward.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::BondForward::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/bondforward.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondForward::performCalculations
    - QuantLib::BondForward::spotIncome
    - QuantLib::BondForward::spotValue
    linkageType: ''
    returnType: void
    signature: void BondForward::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FloatFloatSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FloatFloatSwaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatFloatSwaption::type
      Src: /src/quantlib/ql/instruments/floatfloatswaption.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::FloatFloatSwaption::type
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FloatFloatSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '&underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatFloatSwap>
    signature: ext::shared_ptr<FloatFloatSwap> &underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::FloatFloatSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FloatFloatSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Type
    signature: Settlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FloatFloatSwaption::settlementMethod
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settlement::Method
    signature: Settlement::Method settlementMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatFloatSwaption::type
      Src: /src/quantlib/ql/instruments/floatfloatswaption.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::FloatFloatSwaption::type
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatFloatSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '&underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatFloatSwap>
    signature: ext::shared_ptr<FloatFloatSwap> &underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::FloatFloatSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ZeroCouponSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::ZeroCouponSwap::baseNominal
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real baseNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::ZeroCouponSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date startDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::ZeroCouponSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: '& iborIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ZeroCouponSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::ZeroCouponSwap::baseNominal
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real baseNominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::ZeroCouponSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date startDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::ZeroCouponSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: '& iborIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - choosingDate
    - strikeCall
    - strikePut
    - ' exerciseCall'
    - exercisePut
    argTypes:
    - Date
    - Real
    - Real
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::ComplexChooserOption::ComplexChooserOption
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void ComplexChooserOption::ComplexChooserOption(\n        Date choosingDate,\n
      \       Real strikeCall,\n        Real strikePut,\n        const ext::shared_ptr<Exercise>&
      exerciseCall,\n        ext::shared_ptr<Exercise>  exercisePut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:42,1
    - Dst: dynamic_cast<ComplexChooserOption::arguments*>
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionName: QuantLib::ComplexChooserOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<ComplexChooserOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ComplexChooserOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:54,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:55,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:57,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: ComplexChooserOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ComplexChooserOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - choosingDate
    - strikeCall
    - strikePut
    - ' exerciseCall'
    - exercisePut
    argTypes:
    - Date
    - Real
    - Real
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::ComplexChooserOption::ComplexChooserOption
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void ComplexChooserOption::ComplexChooserOption(\n        Date choosingDate,\n
      \       Real strikeCall,\n        Real strikePut,\n        const ext::shared_ptr<Exercise>&
      exerciseCall,\n        ext::shared_ptr<Exercise>  exercisePut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:42,1
    - Dst: dynamic_cast<ComplexChooserOption::arguments*>
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionName: QuantLib::ComplexChooserOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<ComplexChooserOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ComplexChooserOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:54,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:55,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:57,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/complexchooseroption.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: ComplexChooserOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/complexchooseroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ComplexChooserOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - type
    - strike1
    - strike2
    - ' exercise'
    argTypes:
    - Option::Type
    - Real
    - Real
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::TwoAssetCorrelationOption::TwoAssetCorrelationOption
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void TwoAssetCorrelationOption::TwoAssetCorrelationOption(\n                           Option::Type
      type,\n                           Real strike1,\n                           Real
      strike2,\n                           const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:35,1
    - Dst: dynamic_cast<TwoAssetCorrelationOption::arguments*>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoAssetCorrelationOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::MultiAssetOption::setupArguments
    - dynamic_cast<TwoAssetCorrelationOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void TwoAssetCorrelationOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - type
    - strike1
    - strike2
    - ' exercise'
    argTypes:
    - Option::Type
    - Real
    - Real
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::TwoAssetCorrelationOption::TwoAssetCorrelationOption
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void TwoAssetCorrelationOption::TwoAssetCorrelationOption(\n                           Option::Type
      type,\n                           Real strike1,\n                           Real
      strike2,\n                           const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:35,1
    - Dst: dynamic_cast<TwoAssetCorrelationOption::arguments*>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoAssetCorrelationOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::MultiAssetOption::setupArguments
    - dynamic_cast<TwoAssetCorrelationOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void TwoAssetCorrelationOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/swaption.cpp:61,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:71,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:74,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:78,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: dynamic_cast<const Instrument::results *>
      Src: /src/quantlib/ql/instruments/swaption.cpp:82,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/swaption.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - Swaption
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - getResults
    - std::move
    - dynamic_cast<const Instrument::results *>
    - QL_FAIL
    - getArguments
    - Actual365Fixed
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper(const Swaption&
      swaption,\n                                                           Handle<YieldTermStructure>
      discountCurve,\n                                                           Real
      targetValue,\n                                                           Real
      displacement,\n                                                           VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:87,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:88,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: ImpliedSwaptionVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:95,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:96,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:97,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/swaption.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/swaption.cpp:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::ImpliedSwaptionVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/swaption.cpp:61,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:71,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:74,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:78,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: dynamic_cast<const Instrument::results *>
      Src: /src/quantlib/ql/instruments/swaption.cpp:82,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/swaption.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - Swaption
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - getResults
    - std::move
    - dynamic_cast<const Instrument::results *>
    - QL_FAIL
    - getArguments
    - Actual365Fixed
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper(const Swaption&
      swaption,\n                                                           Handle<YieldTermStructure>
      discountCurve,\n                                                           Real
      targetValue,\n                                                           Real
      displacement,\n                                                           VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:87,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:88,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: ImpliedSwaptionVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:95,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:96,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:97,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/swaption.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/swaption.cpp:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::ImpliedSwaptionVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:114,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swaption.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Settlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 116
    functionName: "& operator<<(std::ostream& out,\n                             Settlement::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Settlement::Type
      t)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:129,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swaption.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - m
    argTypes:
    - std::ostream
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 131
    functionName: '& operator<<(std::ostream& out, Settlement::Method m)'
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Settlement::Method m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/swaption.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:137,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swaption.cpp:139,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/swaption.cpp:148,1
    - Dst: ext::dynamic_pointer_cast<VanillaSwap>
      Src: /src/quantlib/ql/instruments/swaption.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<FixedVsFloatingSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 151
    functionName: QuantLib::Swaption::Swaption
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Payoff>
    - std::move
    - registerWith
    - alwaysForwardNotifications
    - ext::dynamic_pointer_cast<VanillaSwap>
    linkageType: ''
    returnType: void
    signature: "void Swaption::Swaption(ext::shared_ptr<FixedVsFloatingSwap> swap,\n
      \                      const ext::shared_ptr<Exercise>& exercise,\n                       Settlement::Type
      delivery,\n                       Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::deepUpdate
      Src: /src/quantlib/ql/instruments/swaption.cpp:154,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/swaption.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::Swaption::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 1
    functionsReached:
    - update
    - QuantLib::Swaption::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Swaption::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/swaption.cpp:159,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/swaption.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Swaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool Swaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:164,1
    - Dst: dynamic_cast<Swaption::arguments*>
      Src: /src/quantlib/ql/instruments/swaption.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 173
    functionName: QuantLib::Swaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<Swaption::arguments*>
    - QuantLib::Swaption::setupArguments
    linkageType: ''
    returnType: void
    signature: void Swaption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/swaption.cpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:178,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/swaption.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 180
    functionName: Swaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swaption::arguments::validate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:193,1
    - Dst: QuantLib::Swaption::isExpired
      Src: /src/quantlib/ql/instruments/swaption.cpp:193,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:194,1
    - Dst: QuantLib::Swaption::type
      Src: /src/quantlib/ql/instruments/swaption.cpp:194,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/swaption.cpp:198,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/swaption.cpp:198,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/swaption.cpp:203,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/instruments/swaption.cpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 10
    argNames:
    - targetValue
    - ' discountCurve'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    - type
    - displacement
    - priceType
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    - VolatilityType
    - Real
    - PriceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 205
    functionName: QuantLib::Swaption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::isExpired
    - date
    - NewtonSafe::setMaxEvaluations
    - QuantLib::Swaption::type
    - discount
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Swaption::impliedVolatility(Real targetValue,\n                                           const
      Handle<YieldTermStructure>& discountCurve,\n                                           Volatility
      guess,\n                                           Real accuracy,\n                                           Natural
      maxEvaluations,\n                                           Volatility minVol,\n
      \                                          Volatility maxVol,\n                                           VolatilityType
      type,\n                                           Real displacement,\n                                           PriceType
      priceType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - settlementType
    - settlementMethod
    argTypes:
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 220
    functionName: QuantLib::Settlement::checkTypeAndMethodConsistency
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 5
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Settlement::checkTypeAndMethodConsistency(\n                                        Settlement::Type
      settlementType,\n                                        Settlement::Method
      settlementMethod)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/swaption.cpp:61,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:71,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:74,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:78,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: dynamic_cast<const Instrument::results *>
      Src: /src/quantlib/ql/instruments/swaption.cpp:82,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/swaption.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - Swaption
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - getResults
    - std::move
    - dynamic_cast<const Instrument::results *>
    - QL_FAIL
    - getArguments
    - Actual365Fixed
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper(const Swaption&
      swaption,\n                                                           Handle<YieldTermStructure>
      discountCurve,\n                                                           Real
      targetValue,\n                                                           Real
      displacement,\n                                                           VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:87,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:88,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: ImpliedSwaptionVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:95,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:96,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:97,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/swaption.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/swaption.cpp:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::ImpliedSwaptionVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/swaption.cpp:61,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:71,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/instruments/swaption.cpp:74,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/swaption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:78,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:81,1
    - Dst: dynamic_cast<const Instrument::results *>
      Src: /src/quantlib/ql/instruments/swaption.cpp:82,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/swaption.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - Swaption
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - getResults
    - std::move
    - dynamic_cast<const Instrument::results *>
    - QL_FAIL
    - getArguments
    - Actual365Fixed
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedSwaptionVolHelper::ImpliedSwaptionVolHelper(const Swaption&
      swaption,\n                                                           Handle<YieldTermStructure>
      discountCurve,\n                                                           Real
      targetValue,\n                                                           Real
      displacement,\n                                                           VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:87,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:88,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: ImpliedSwaptionVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/swaption.cpp:95,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/swaption.cpp:96,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/swaption.cpp:97,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/swaption.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/swaption.cpp:100,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/swaption.cpp:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::ImpliedSwaptionVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedSwaptionVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:114,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swaption.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Settlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 116
    functionName: "& operator<<(std::ostream& out,\n                             Settlement::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Settlement::Type
      t)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swaption.cpp:129,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swaption.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - m
    argTypes:
    - std::ostream
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 131
    functionName: '& operator<<(std::ostream& out, Settlement::Method m)'
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Settlement::Method m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/swaption.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/swaption.cpp:137,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swaption.cpp:139,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/swaption.cpp:148,1
    - Dst: ext::dynamic_pointer_cast<VanillaSwap>
      Src: /src/quantlib/ql/instruments/swaption.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - swap
    - ' exercise'
    - delivery
    - settlementMethod
    argTypes:
    - ext::shared_ptr<FixedVsFloatingSwap>
    - ext::shared_ptr<Exercise>
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 151
    functionName: QuantLib::Swaption::Swaption
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Payoff>
    - std::move
    - registerWith
    - alwaysForwardNotifications
    - ext::dynamic_pointer_cast<VanillaSwap>
    linkageType: ''
    returnType: void
    signature: "void Swaption::Swaption(ext::shared_ptr<FixedVsFloatingSwap> swap,\n
      \                      const ext::shared_ptr<Exercise>& exercise,\n                       Settlement::Type
      delivery,\n                       Settlement::Method settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::deepUpdate
      Src: /src/quantlib/ql/instruments/swaption.cpp:154,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/swaption.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::Swaption::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 2
    functionsReached:
    - update
    - QuantLib::Swaption::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Swaption::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/swaption.cpp:159,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/swaption.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Swaption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool Swaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::setupArguments
      Src: /src/quantlib/ql/instruments/swaption.cpp:164,1
    - Dst: dynamic_cast<Swaption::arguments*>
      Src: /src/quantlib/ql/instruments/swaption.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 173
    functionName: QuantLib::Swaption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<Swaption::arguments*>
    - QuantLib::Swaption::setupArguments
    linkageType: ''
    returnType: void
    signature: void Swaption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/swaption.cpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:178,1
    - Dst: QuantLib::Settlement::checkTypeAndMethodConsistency
      Src: /src/quantlib/ql/instruments/swaption.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 180
    functionName: Swaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Settlement::checkTypeAndMethodConsistency
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swaption::arguments::validate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:193,1
    - Dst: QuantLib::Swaption::isExpired
      Src: /src/quantlib/ql/instruments/swaption.cpp:193,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:194,1
    - Dst: QuantLib::Swaption::type
      Src: /src/quantlib/ql/instruments/swaption.cpp:194,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/swaption.cpp:198,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/swaption.cpp:198,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/swaption.cpp:203,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/instruments/swaption.cpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 10
    argNames:
    - targetValue
    - ' discountCurve'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    - type
    - displacement
    - priceType
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    - VolatilityType
    - Real
    - PriceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 205
    functionName: QuantLib::Swaption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::isExpired
    - date
    - NewtonSafe::setMaxEvaluations
    - QuantLib::Swaption::type
    - discount
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Swaption::impliedVolatility(Real targetValue,\n                                           const
      Handle<YieldTermStructure>& discountCurve,\n                                           Volatility
      guess,\n                                           Real accuracy,\n                                           Natural
      maxEvaluations,\n                                           Volatility minVol,\n
      \                                          Volatility maxVol,\n                                           VolatilityType
      type,\n                                           Real displacement,\n                                           PriceType
      priceType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swaption.cpp:216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - settlementType
    - settlementMethod
    argTypes:
    - Settlement::Type
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 220
    functionName: QuantLib::Settlement::checkTypeAndMethodConsistency
    functionSourceFile: /src/quantlib/ql/instruments/swaption.cpp
    functionUses: 6
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Settlement::checkTypeAndMethodConsistency(\n                                        Settlement::Type
      settlementType,\n                                        Settlement::Method
      settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FixedVsFloatingSwap::type
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:37,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:38,1
    - Dst: FixedVsFloatingSwap::fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:38,1
    - Dst: FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:39,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:40,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:40,1
    - Dst: FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:41,1
    - Dst: FixedVsFloatingSwap::fixedSchedule
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:42,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:43,1
    - Dst: FixedVsFloatingSwap::fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:43,1
    - Dst: FixedVsFloatingSwap::fixedRate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:44,1
    - Dst: FixedVsFloatingSwap::fixedDayCount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:45,1
    - Dst: FixedVsFloatingSwap::floatingSchedule
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:46,1
    - Dst: FixedVsFloatingSwap::iborIndex
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:47,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: FixedVsFloatingSwap::spread
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:49,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:49,1
    - Dst: FixedVsFloatingSwap::floatingDayCount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:51,1
    - Dst: FixedVsFloatingSwap::paymentConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:52,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fromVanilla
    argTypes:
    - FixedVsFloatingSwap
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 56
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - FixedVsFloatingSwap::paymentConvention
    - FixedVsFloatingSwap::nominal
    - FixedVsFloatingSwap::fixedLeg
    - FixedVsFloatingSwap::fixedRate
    - FixedVsFloatingSwap::floatingDayCount
    - FixedVsFloatingSwap::floatingLeg
    - FixedVsFloatingSwap::fixedDayCount
    - FixedVsFloatingSwap::type
    - std::vector<Real>
    - FixedVsFloatingSwap::floatingSchedule
    - FixedVsFloatingSwap::iborIndex
    - FixedVsFloatingSwap::spread
    - FixedVsFloatingSwap::fixedSchedule
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::NonstandardSwap(const FixedVsFloatingSwap &fromVanilla)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:73,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:75,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:76,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:78,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:85,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 14
    argNames:
    - type
    - fixedNominal
    - ' floatingNominal'
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingSchedule
    - iborIndex
    - gearing
    - spread
    - floatingDayCount
    - intermediateCapitalExchange
    - finalCapitalExchange
    - paymentConvention
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - std::vector<Real>
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Real
    - Spread
    - DayCounter
    - bool
    - bool
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 87
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Real>
    - size
    - businessDayConvention
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwap::NonstandardSwap(const Swap::Type type,\n                                     std::vector<Real>
      fixedNominal,\n                                     const std::vector<Real>&
      floatingNominal,\n                                     Schedule fixedSchedule,\n
      \                                    std::vector<Real> fixedRate,\n                                     DayCounter
      fixedDayCount,\n                                     Schedule floatingSchedule,\n
      \                                    ext::shared_ptr<IborIndex> iborIndex,\n
      \                                    const Real gearing,\n                                     const
      Spread spread,\n                                     DayCounter floatingDayCount,\n
      \                                    const bool intermediateCapitalExchange,\n
      \                                    const bool finalCapitalExchange,\n                                     ext::optional<BusinessDayConvention>
      paymentConvention)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:108,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:115,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 14
    argNames:
    - type
    - fixedNominal
    - floatingNominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingSchedule
    - iborIndex
    - gearing
    - spread
    - floatingDayCount
    - intermediateCapitalExchange
    - finalCapitalExchange
    - paymentConvention
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - std::vector<Real>
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - std::vector<Real>
    - std::vector<Spread>
    - DayCounter
    - bool
    - bool
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 117
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - std::move
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwap::NonstandardSwap(const Swap::Type type,\n                                     std::vector<Real>
      fixedNominal,\n                                     std::vector<Real> floatingNominal,\n
      \                                    Schedule fixedSchedule,\n                                     std::vector<Real>
      fixedRate,\n                                     DayCounter fixedDayCount,\n
      \                                    Schedule floatingSchedule,\n                                     ext::shared_ptr<IborIndex>
      iborIndex,\n                                     std::vector<Real> gearing,\n
      \                                    std::vector<Spread> spread,\n                                     DayCounter
      floatingDayCount,\n                                     const bool intermediateCapitalExchange,\n
      \                                    const bool finalCapitalExchange,\n                                     ext::optional<BusinessDayConvention>
      paymentConvention)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:146,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:153,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:157,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:162,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:170,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:172,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:173,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:174,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:175,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:176,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:177,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:177,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:178,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:179,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:180,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:181,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:182,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:187,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:190,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:191,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:192,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:193,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:194,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:194,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:195,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:196,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:197,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:204,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:204,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:206,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:206,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:207,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:209,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:209,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:210,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:213,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:213,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:214,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:226,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 228
    functionName: QuantLib::NonstandardSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 3
    functionsReached:
    - close
    - date
    - ext::shared_ptr<CashFlow>
    - begin
    - push_back
    - IborLeg
    - QL_FAIL
    - registerWith
    - FixedRateLeg
    - size
    - std::advance
    - back
    - end
    - insert
    - Redemption::Redemption
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::init()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:232,1
    - Dst: dynamic_cast<NonstandardSwap::arguments*>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:234,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:244,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:247,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:247,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:248,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:248,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:250,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:250,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:252,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:254,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:256,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:257,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:258,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:261,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:263,1
    - Dst: auto*::fixedPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:263,1
    - Dst: auto*::fixedPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:264,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:265,1
    - Dst: auto*::fixedPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:265,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:267,1
    - Dst: auto*::fixedPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:269,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:271,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:274,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:278,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:282,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:282,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:284,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:284,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:286,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:286,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:287,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:287,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:288,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:288,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:290,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:290,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:292,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:294,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:296,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:297,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:298,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:299,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:300,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:301,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:303,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:306,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:310,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:311,1
    - Dst: auto*::floatingPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:312,1
    - Dst: auto*::floatingPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:313,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:313,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:314,1
    - Dst: auto*::floatingPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:314,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:316,1
    - Dst: auto*::floatingPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:318,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:320,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:328,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:332,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 56
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 333
    functionName: QuantLib::NonstandardSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - std::vector<bool>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - std::vector<Spread>
    - fixedLeg
    - floatingLeg
    - dynamic_cast<NonstandardSwap::arguments*>
    - ext::shared_ptr::accrualStartDate
    - auto*::fixedPayDates::end
    - std::vector<Date>
    - auto*::floatingPayDates::begin
    - Leg::size
    - std::find
    - QuantLib::CPISwap::setupArguments
    - iborIndex
    - auto*::floatingPayDates::end
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<CashFlow>
    - ext::dynamic_pointer_cast<IborCoupon>
    - QL_REQUIRE
    - ext::shared_ptr::amount
    - std::vector<Time>
    - ext::shared_ptr::fixingDate
    - auto*::fixedPayDates::begin
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 335
    functionName: QuantLib::NonstandardSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: QuantLib::NonstandardSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::fetchResults(const PricingEngine::results *r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 342
    functionDepth: 2
    functionLinenumber: 342
    functionLinenumberEnd: 374
    functionName: NonstandardSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 376
    functionName: NonstandardSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FixedVsFloatingSwap::type
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:37,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:38,1
    - Dst: FixedVsFloatingSwap::fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:38,1
    - Dst: FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:39,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:40,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:40,1
    - Dst: FixedVsFloatingSwap::nominal
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:41,1
    - Dst: FixedVsFloatingSwap::fixedSchedule
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:42,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:43,1
    - Dst: FixedVsFloatingSwap::fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:43,1
    - Dst: FixedVsFloatingSwap::fixedRate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:44,1
    - Dst: FixedVsFloatingSwap::fixedDayCount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:45,1
    - Dst: FixedVsFloatingSwap::floatingSchedule
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:46,1
    - Dst: FixedVsFloatingSwap::iborIndex
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:47,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: FixedVsFloatingSwap::spread
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:48,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:49,1
    - Dst: FixedVsFloatingSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:49,1
    - Dst: FixedVsFloatingSwap::floatingDayCount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:51,1
    - Dst: FixedVsFloatingSwap::paymentConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:52,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fromVanilla
    argTypes:
    - FixedVsFloatingSwap
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 56
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - FixedVsFloatingSwap::paymentConvention
    - FixedVsFloatingSwap::nominal
    - FixedVsFloatingSwap::fixedLeg
    - FixedVsFloatingSwap::fixedRate
    - FixedVsFloatingSwap::floatingDayCount
    - FixedVsFloatingSwap::floatingLeg
    - FixedVsFloatingSwap::fixedDayCount
    - FixedVsFloatingSwap::type
    - std::vector<Real>
    - FixedVsFloatingSwap::floatingSchedule
    - FixedVsFloatingSwap::iborIndex
    - FixedVsFloatingSwap::spread
    - FixedVsFloatingSwap::fixedSchedule
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::NonstandardSwap(const FixedVsFloatingSwap &fromVanilla)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:73,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:75,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:76,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:78,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:85,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 14
    argNames:
    - type
    - fixedNominal
    - ' floatingNominal'
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingSchedule
    - iborIndex
    - gearing
    - spread
    - floatingDayCount
    - intermediateCapitalExchange
    - finalCapitalExchange
    - paymentConvention
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - std::vector<Real>
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Real
    - Spread
    - DayCounter
    - bool
    - bool
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 87
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Real>
    - size
    - businessDayConvention
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwap::NonstandardSwap(const Swap::Type type,\n                                     std::vector<Real>
      fixedNominal,\n                                     const std::vector<Real>&
      floatingNominal,\n                                     Schedule fixedSchedule,\n
      \                                    std::vector<Real> fixedRate,\n                                     DayCounter
      fixedDayCount,\n                                     Schedule floatingSchedule,\n
      \                                    ext::shared_ptr<IborIndex> iborIndex,\n
      \                                    const Real gearing,\n                                     const
      Spread spread,\n                                     DayCounter floatingDayCount,\n
      \                                    const bool intermediateCapitalExchange,\n
      \                                    const bool finalCapitalExchange,\n                                     ext::optional<BusinessDayConvention>
      paymentConvention)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:108,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:115,1
    - Dst: QuantLib::NonstandardSwap::init
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 14
    argNames:
    - type
    - fixedNominal
    - floatingNominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatingSchedule
    - iborIndex
    - gearing
    - spread
    - floatingDayCount
    - intermediateCapitalExchange
    - finalCapitalExchange
    - paymentConvention
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - std::vector<Real>
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - std::vector<Real>
    - std::vector<Spread>
    - DayCounter
    - bool
    - bool
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 117
    functionName: QuantLib::NonstandardSwap::NonstandardSwap
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - std::move
    - QuantLib::NonstandardSwap::init
    linkageType: ''
    returnType: void
    signature: "void NonstandardSwap::NonstandardSwap(const Swap::Type type,\n                                     std::vector<Real>
      fixedNominal,\n                                     std::vector<Real> floatingNominal,\n
      \                                    Schedule fixedSchedule,\n                                     std::vector<Real>
      fixedRate,\n                                     DayCounter fixedDayCount,\n
      \                                    Schedule floatingSchedule,\n                                     ext::shared_ptr<IborIndex>
      iborIndex,\n                                     std::vector<Real> gearing,\n
      \                                    std::vector<Spread> spread,\n                                     DayCounter
      floatingDayCount,\n                                     const bool intermediateCapitalExchange,\n
      \                                    const bool finalCapitalExchange,\n                                     ext::optional<BusinessDayConvention>
      paymentConvention)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:146,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:153,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:157,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:162,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:170,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:172,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:173,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:174,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:175,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:176,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:177,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:177,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:178,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:179,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:180,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:181,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:182,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:187,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:190,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:191,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:192,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:193,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:194,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:194,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:195,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:196,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:197,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:204,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:204,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:205,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:206,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:206,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:207,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:209,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:209,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:208,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:210,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:213,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:213,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:214,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:226,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 228
    functionName: QuantLib::NonstandardSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 6
    functionsReached:
    - close
    - date
    - ext::shared_ptr<CashFlow>
    - begin
    - push_back
    - IborLeg
    - QL_FAIL
    - registerWith
    - FixedRateLeg
    - size
    - std::advance
    - back
    - end
    - insert
    - Redemption::Redemption
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::init()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:232,1
    - Dst: dynamic_cast<NonstandardSwap::arguments*>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:234,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:244,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:247,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:247,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:248,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:248,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:250,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:250,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:252,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:254,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:256,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:257,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:258,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:261,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:263,1
    - Dst: auto*::fixedPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:263,1
    - Dst: auto*::fixedPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:264,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:265,1
    - Dst: auto*::fixedPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:265,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:267,1
    - Dst: auto*::fixedPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:269,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:271,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:274,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:278,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:282,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:282,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:284,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:284,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:286,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:286,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:287,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:287,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:288,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:288,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:290,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:290,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:292,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:294,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:296,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:297,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:298,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:299,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:300,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:301,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:303,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:306,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:310,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:311,1
    - Dst: auto*::floatingPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:312,1
    - Dst: auto*::floatingPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:313,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:313,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:314,1
    - Dst: auto*::floatingPayDates::end
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:314,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:316,1
    - Dst: auto*::floatingPayDates::begin
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:318,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:320,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:328,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:332,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 56
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 333
    functionName: QuantLib::NonstandardSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - std::vector<bool>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - std::vector<Spread>
    - fixedLeg
    - floatingLeg
    - dynamic_cast<NonstandardSwap::arguments*>
    - ext::shared_ptr::accrualStartDate
    - auto*::fixedPayDates::end
    - std::vector<Date>
    - auto*::floatingPayDates::begin
    - Leg::size
    - std::find
    - QuantLib::CPISwap::setupArguments
    - iborIndex
    - auto*::floatingPayDates::end
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<CashFlow>
    - ext::dynamic_pointer_cast<IborCoupon>
    - QL_REQUIRE
    - ext::shared_ptr::amount
    - std::vector<Time>
    - ext::shared_ptr::fixingDate
    - auto*::fixedPayDates::begin
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 335
    functionName: QuantLib::NonstandardSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: QuantLib::NonstandardSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::fetchResults(const PricingEngine::results *r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:344,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:347,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:353,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:356,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:362,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:365,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:368,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 342
    functionDepth: 2
    functionLinenumber: 342
    functionLinenumberEnd: 374
    functionName: NonstandardSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/nonstandardswap.cpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 376
    functionName: NonstandardSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/nonstandardswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    linkageType: ''
    returnType: void
    signature: void NonstandardSwap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/averagetype.cpp:36,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/averagetype.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Average::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: "& operator<<(std::ostream& out,\n                             Average::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/averagetype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Average::Type
      type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/averagetype.cpp:36,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/averagetype.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Average::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: "& operator<<(std::ostream& out,\n                             Average::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/averagetype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Average::Type
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - type
    - premium
    - secondExpiryDate
    - secondStrike
    - ' payoff'
    - ' exercise'
    argTypes:
    - Option::Type
    - Real
    - Date
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::HolderExtensibleOption::HolderExtensibleOption
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HolderExtensibleOption::HolderExtensibleOption(\n                           Option::Type
      type,\n                           Real premium,\n                           Date
      secondExpiryDate,\n                           Real secondStrike,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:39,1
    - Dst: dynamic_cast<HolderExtensibleOption::arguments*>
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::HolderExtensibleOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<HolderExtensibleOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HolderExtensibleOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:50,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:51,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: 'HolderExtensibleOption:: arguments::validate() const'
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: 'void HolderExtensibleOption:: arguments::validate() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - type
    - premium
    - secondExpiryDate
    - secondStrike
    - ' payoff'
    - ' exercise'
    argTypes:
    - Option::Type
    - Real
    - Date
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::HolderExtensibleOption::HolderExtensibleOption
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HolderExtensibleOption::HolderExtensibleOption(\n                           Option::Type
      type,\n                           Real premium,\n                           Date
      secondExpiryDate,\n                           Real secondStrike,\n                           const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                           const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:39,1
    - Dst: dynamic_cast<HolderExtensibleOption::arguments*>
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::HolderExtensibleOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<HolderExtensibleOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HolderExtensibleOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:50,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:51,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/holderextensibleoption.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: 'HolderExtensibleOption:: arguments::validate() const'
    functionSourceFile: /src/quantlib/ql/instruments/holderextensibleoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: 'void HolderExtensibleOption:: arguments::validate() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:114,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:114,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::OvernightIndexedSwap::paymentFrequency
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - fixedSchedule
    - floatingSchedule
    linkageType: ''
    returnType: Frequency
    signature: Frequency paymentFrequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingNominals
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: '& overnightNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingNominals
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & overnightNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: '& overnightSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingSchedule
    linkageType: ''
    returnType: Schedule
    signature: Schedule & overnightSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: '& overnightIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: '& overnightLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLeg
    linkageType: ''
    returnType: Leg
    signature: Leg & overnightLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::OvernightIndexedSwap::averagingMethod
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RateAveraging::Type
    signature: RateAveraging::Type averagingMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::OvernightIndexedSwap::lookbackDays
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lookbackDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::OvernightIndexedSwap::lockoutDays
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lockoutDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::OvernightIndexedSwap::applyObservationShift
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool applyObservationShift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLegBPS
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::OvernightIndexedSwap::overnightLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLegBPS
    linkageType: ''
    returnType: Real
    signature: Real overnightLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLegNPV
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::OvernightIndexedSwap::overnightLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLegNPV
    linkageType: ''
    returnType: Real
    signature: Real overnightLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:114,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:114,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::OvernightIndexedSwap::paymentFrequency
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - fixedSchedule
    - floatingSchedule
    linkageType: ''
    returnType: Frequency
    signature: Frequency paymentFrequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingNominals
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: '& overnightNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingNominals
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & overnightNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: '& overnightSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingSchedule
    linkageType: ''
    returnType: Schedule
    signature: Schedule & overnightSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: '& overnightIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: '& overnightLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLeg
    linkageType: ''
    returnType: Leg
    signature: Leg & overnightLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::OvernightIndexedSwap::averagingMethod
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RateAveraging::Type
    signature: RateAveraging::Type averagingMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::OvernightIndexedSwap::lookbackDays
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lookbackDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::OvernightIndexedSwap::lockoutDays
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lockoutDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::OvernightIndexedSwap::applyObservationShift
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool applyObservationShift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLegBPS
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::OvernightIndexedSwap::overnightLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLegBPS
    linkageType: ''
    returnType: Real
    signature: Real overnightLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLegNPV
      Src: /src/quantlib/ql/instruments/overnightindexedswap.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::OvernightIndexedSwap::overnightLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.hpp
    functionUses: 0
    functionsReached:
    - floatingLegNPV
    linkageType: ''
    returnType: Real
    signature: Real overnightLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:37,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:42,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:44,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:46,1
    - Dst: auto::setPricer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' paymentDate'
    - ' startDate'
    - ' maturityDate'
    - nominal
    - ' index'
    argTypes:
    - Date
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionName: QuantLib::compoundedSubPeriodicCoupon
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - auto::setPricer
    - endOfMonth
    - fixingDays
    - MakeSchedule
    - businessDayConvention
    - ext::make_shared<MultipleResetsCoupon>
    - fixingCalendar
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> compoundedSubPeriodicCoupon(const Date&
      paymentDate,\n                                    const Date& startDate,\n                                    const
      Date& maturityDate,\n                                    Real nominal,\n                                    const
      ext::shared_ptr<IborIndex>& index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:37,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:42,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:44,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:46,1
    - Dst: auto::setPricer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' paymentDate'
    - ' startDate'
    - ' maturityDate'
    - nominal
    - ' index'
    argTypes:
    - Date
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionName: QuantLib::compoundedSubPeriodicCoupon
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - auto::setPricer
    - endOfMonth
    - fixingDays
    - MakeSchedule
    - businessDayConvention
    - ext::make_shared<MultipleResetsCoupon>
    - fixingCalendar
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> compoundedSubPeriodicCoupon(const Date&
      paymentDate,\n                                    const Date& startDate,\n                                    const
      Date& maturityDate,\n                                    Real nominal,\n                                    const
      ext::shared_ptr<IborIndex>& index)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:65,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:70,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:72,1
    - Dst: compoundedSubPeriodicCoupon
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 8
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 89
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - compoundedSubPeriodicCoupon
    - registerWith
    - advance
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   ext::shared_ptr<IborIndex>
      iborIndex,\n                                   const Calendar& paymentCalendar,\n
      \                                  BusinessDayConvention paymentConvention,\n
      \                                  Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:104,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:109,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:110,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - fixedPayment
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 111
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - SimpleCashFlow::SimpleCashFlow
    - ext::shared_ptr<CashFlow>
    - std::move
    - push_back
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   Real fixedPayment,\n
      \                                  ext::shared_ptr<IborIndex> iborIndex,\n                                   const
      Calendar& paymentCalendar,\n                                   BusinessDayConvention
      paymentConvention,\n                                   Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:127,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:133,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:133,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - fixedRate
    - ' fixedDayCounter'
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Rate
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 135
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>
    - std::move
    - push_back
    - FixedRateCoupon::FixedRateCoupon
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   Rate fixedRate,\n                                   const
      DayCounter& fixedDayCounter,\n                                   ext::shared_ptr<IborIndex>
      iborIndex,\n                                   const Calendar& paymentCalendar,\n
      \                                  BusinessDayConvention paymentConvention,\n
      \                                  Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::ZeroCouponSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: QuantLib::ZeroCouponSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:152,1
    - Dst: QuantLib::ZeroCouponSwap::floatingLegNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:153,1
    - Dst: endDiscounts
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 154
    functionName: QuantLib::ZeroCouponSwap::fairFixedPayment
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - endDiscounts
    - payer
    - QuantLib::ZeroCouponSwap::floatingLegNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fairFixedPayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroCouponSwap::fairFixedPayment
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:162,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionName: QuantLib::ZeroCouponSwap::fairFixedRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - QuantLib::ZeroCouponSwap::fairFixedPayment
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroCouponSwap::fairFixedRate(const DayCounter& dayCounter) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: '& ZeroCouponSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: '& ZeroCouponSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:171,1
    - Dst: amount
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::ZeroCouponSwap::fixedPayment
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - fixedLeg
    - amount
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fixedPayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:37,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:42,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:44,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:46,1
    - Dst: auto::setPricer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' paymentDate'
    - ' startDate'
    - ' maturityDate'
    - nominal
    - ' index'
    argTypes:
    - Date
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionName: QuantLib::compoundedSubPeriodicCoupon
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - auto::setPricer
    - endOfMonth
    - fixingDays
    - MakeSchedule
    - businessDayConvention
    - ext::make_shared<MultipleResetsCoupon>
    - fixingCalendar
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> compoundedSubPeriodicCoupon(const Date&
      paymentDate,\n                                    const Date& startDate,\n                                    const
      Date& maturityDate,\n                                    Real nominal,\n                                    const
      ext::shared_ptr<IborIndex>& index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:37,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:42,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:44,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:46,1
    - Dst: auto::setPricer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' paymentDate'
    - ' startDate'
    - ' maturityDate'
    - nominal
    - ' index'
    argTypes:
    - Date
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionName: QuantLib::compoundedSubPeriodicCoupon
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - auto::setPricer
    - endOfMonth
    - fixingDays
    - MakeSchedule
    - businessDayConvention
    - ext::make_shared<MultipleResetsCoupon>
    - fixingCalendar
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> compoundedSubPeriodicCoupon(const Date&
      paymentDate,\n                                    const Date& startDate,\n                                    const
      Date& maturityDate,\n                                    Real nominal,\n                                    const
      ext::shared_ptr<IborIndex>& index)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:65,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:70,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:72,1
    - Dst: compoundedSubPeriodicCoupon
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 8
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 89
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - compoundedSubPeriodicCoupon
    - registerWith
    - advance
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   ext::shared_ptr<IborIndex>
      iborIndex,\n                                   const Calendar& paymentCalendar,\n
      \                                  BusinessDayConvention paymentConvention,\n
      \                                  Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:104,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:109,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:110,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - fixedPayment
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 111
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - SimpleCashFlow::SimpleCashFlow
    - ext::shared_ptr<CashFlow>
    - std::move
    - push_back
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   Real fixedPayment,\n
      \                                  ext::shared_ptr<IborIndex> iborIndex,\n                                   const
      Calendar& paymentCalendar,\n                                   BusinessDayConvention
      paymentConvention,\n                                   Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:127,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:133,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:133,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - type
    - baseNominal
    - ' startDate'
    - ' maturityDate'
    - fixedRate
    - ' fixedDayCounter'
    - iborIndex
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Rate
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 135
    functionName: QuantLib::ZeroCouponSwap::ZeroCouponSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>
    - std::move
    - push_back
    - FixedRateCoupon::FixedRateCoupon
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponSwap::ZeroCouponSwap(Type type,\n                                   Real
      baseNominal,\n                                   const Date& startDate,\n                                   const
      Date& maturityDate,\n                                   Rate fixedRate,\n                                   const
      DayCounter& fixedDayCounter,\n                                   ext::shared_ptr<IborIndex>
      iborIndex,\n                                   const Calendar& paymentCalendar,\n
      \                                  BusinessDayConvention paymentConvention,\n
      \                                  Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::ZeroCouponSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: QuantLib::ZeroCouponSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 1
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payer
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:152,1
    - Dst: QuantLib::ZeroCouponSwap::floatingLegNPV
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:153,1
    - Dst: endDiscounts
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 154
    functionName: QuantLib::ZeroCouponSwap::fairFixedPayment
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 1
    functionsReached:
    - endDiscounts
    - payer
    - QuantLib::ZeroCouponSwap::floatingLegNPV
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fairFixedPayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroCouponSwap::fairFixedPayment
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:162,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionName: QuantLib::ZeroCouponSwap::fairFixedRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - QuantLib::ZeroCouponSwap::fairFixedPayment
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroCouponSwap::fairFixedRate(const DayCounter& dayCounter) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 167
    functionName: '& ZeroCouponSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 169
    functionName: '& ZeroCouponSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:171,1
    - Dst: amount
      Src: /src/quantlib/ql/instruments/zerocouponswap.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::ZeroCouponSwap::fixedPayment
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponswap.cpp
    functionUses: 0
    functionsReached:
    - fixedLeg
    - amount
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponSwap::fixedPayment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: startDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:37,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:38,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:43,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: ext::make_shared<EquityCashFlow>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' schedule'
    - ' equityIndex'
    - nominal
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::createEquityCashFlow
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - Calendar::advance
    - Calendar::empty
    - calendar
    - startDate
    - ext::make_shared<EquityCashFlow>
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> createEquityCashFlow(const Schedule& schedule,\n
      \                            const ext::shared_ptr<EquityIndex>& equityIndex,\n
      \                            Real nominal,\n                             const
      Calendar& paymentCalendar,\n                             BusinessDayConvention
      paymentConvention,\n                             Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LegType
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - schedule
    - ' interestRateIndex'
    - nominal
    - ' dayCounter'
    - margin
    - gearing
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<IndexType>
    - Real
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 69
    functionName: QuantLib::createInterestLeg
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - LegType
    - std::move
    linkageType: ''
    returnType: Leg
    signature: "Leg createInterestLeg(Schedule schedule,\n                              const
      ext::shared_ptr<IndexType>& interestRateIndex,\n                              Real
      nominal,\n                              const DayCounter& dayCounter,\n                              Rate
      margin,\n                              Real gearing,\n                              const
      Calendar& paymentCalendar,\n                              BusinessDayConvention
      paymentConvention,\n                              Natural paymentDelay)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: startDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:37,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:38,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:43,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: ext::make_shared<EquityCashFlow>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' schedule'
    - ' equityIndex'
    - nominal
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::createEquityCashFlow
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - Calendar::advance
    - Calendar::empty
    - calendar
    - startDate
    - ext::make_shared<EquityCashFlow>
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> createEquityCashFlow(const Schedule& schedule,\n
      \                            const ext::shared_ptr<EquityIndex>& equityIndex,\n
      \                            Real nominal,\n                             const
      Calendar& paymentCalendar,\n                             BusinessDayConvention
      paymentConvention,\n                             Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LegType
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - schedule
    - ' interestRateIndex'
    - nominal
    - ' dayCounter'
    - margin
    - gearing
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<IndexType>
    - Real
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 69
    functionName: QuantLib::createInterestLeg
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - LegType
    - std::move
    linkageType: ''
    returnType: Leg
    signature: "Leg createInterestLeg(Schedule schedule,\n                              const
      ext::shared_ptr<IndexType>& interestRateIndex,\n                              Real
      nominal,\n                              const DayCounter& dayCounter,\n                              Rate
      margin,\n                              Real gearing,\n                              const
      Calendar& paymentCalendar,\n                              BusinessDayConvention
      paymentConvention,\n                              Natural paymentDelay)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:92,1
    - Dst: createEquityCashFlow
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:94,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 11
    argNames:
    - equityIndex
    - interestRateIndex
    - type
    - nominal
    - schedule
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<InterestRateIndex>
    - Type
    - Real
    - Schedule
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 109
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - end
    - createEquityCashFlow
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(\n        ext::shared_ptr<EquityIndex>
      equityIndex,\n        ext::shared_ptr<InterestRateIndex> interestRateIndex,\n
      \       Type type,\n        Real nominal,\n        Schedule schedule,\n        DayCounter
      dayCounter,\n        Rate margin,\n        Real gearing,\n        Calendar paymentCalendar,\n
      \       BusinessDayConvention paymentConvention,\n        Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:122,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:126,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:127,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:130,1
    - Dst: createInterestLeg<IborIndex, IborLeg>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:136,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 11
    argNames:
    - type
    - nominal
    - schedule
    - equityIndex
    - ' interestRateIndex'
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - createInterestLeg<IborIndex, IborLeg>
    - begin
    - std::move
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(Type type,\n                                                 Real
      nominal,\n                                                 Schedule schedule,\n
      \                                                ext::shared_ptr<EquityIndex>
      equityIndex,\n                                                 const ext::shared_ptr<IborIndex>&
      interestRateIndex,\n                                                 DayCounter
      dayCounter,\n                                                 Rate margin,\n
      \                                                Real gearing,\n                                                 Calendar
      paymentCalendar,\n                                                 BusinessDayConvention
      paymentConvention,\n                                                 Natural
      paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:151,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:159,1
    - Dst: createInterestLeg<OvernightIndex, OvernightLeg>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:165,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 11
    argNames:
    - type
    - nominal
    - schedule
    - equityIndex
    - ' interestRateIndex'
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<OvernightIndex>
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 167
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - createInterestLeg<OvernightIndex, OvernightLeg>
    - begin
    - std::move
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(Type type,\n                                                 Real
      nominal,\n                                                 Schedule schedule,\n
      \                                                ext::shared_ptr<EquityIndex>
      equityIndex,\n                                                 const ext::shared_ptr<OvernightIndex>&
      interestRateIndex,\n                                                 DayCounter
      dayCounter,\n                                                 Rate margin,\n
      \                                                Real gearing,\n                                                 Calendar
      paymentCalendar,\n                                                 BusinessDayConvention
      paymentConvention,\n                                                 Natural
      paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& EquityTotalReturnSwap::equityLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & EquityTotalReturnSwap::equityLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: '& EquityTotalReturnSwap::interestRateLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & EquityTotalReturnSwap::interestRateLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::EquityTotalReturnSwap::equityLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::equityLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::EquityTotalReturnSwap::interestRateLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::interestRateLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legBPS
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:191,1
    - Dst: QuantLib::EquityTotalReturnSwap::interestRateLegNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:192,1
    - Dst: QuantLib::EquityTotalReturnSwap::margin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:192,1
    - Dst: QuantLib::EquityTotalReturnSwap::equityLegNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: QuantLib::EquityTotalReturnSwap::fairMargin
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityTotalReturnSwap::interestRateLegNPV
    - legBPS
    - QuantLib::EquityTotalReturnSwap::equityLegNPV
    - QuantLib::EquityTotalReturnSwap::margin
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::fairMargin() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: startDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:37,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:38,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:43,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: ext::make_shared<EquityCashFlow>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' schedule'
    - ' equityIndex'
    - nominal
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::createEquityCashFlow
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - Calendar::advance
    - Calendar::empty
    - calendar
    - startDate
    - ext::make_shared<EquityCashFlow>
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> createEquityCashFlow(const Schedule& schedule,\n
      \                            const ext::shared_ptr<EquityIndex>& equityIndex,\n
      \                            Real nominal,\n                             const
      Calendar& paymentCalendar,\n                             BusinessDayConvention
      paymentConvention,\n                             Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LegType
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - schedule
    - ' interestRateIndex'
    - nominal
    - ' dayCounter'
    - margin
    - gearing
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<IndexType>
    - Real
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 69
    functionName: QuantLib::createInterestLeg
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - LegType
    - std::move
    linkageType: ''
    returnType: Leg
    signature: "Leg createInterestLeg(Schedule schedule,\n                              const
      ext::shared_ptr<IndexType>& interestRateIndex,\n                              Real
      nominal,\n                              const DayCounter& dayCounter,\n                              Rate
      margin,\n                              Real gearing,\n                              const
      Calendar& paymentCalendar,\n                              BusinessDayConvention
      paymentConvention,\n                              Natural paymentDelay)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: startDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:37,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:38,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:42,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:43,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:46,1
    - Dst: ext::make_shared<EquityCashFlow>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' schedule'
    - ' equityIndex'
    - nominal
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::createEquityCashFlow
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - Calendar::advance
    - Calendar::empty
    - calendar
    - startDate
    - ext::make_shared<EquityCashFlow>
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CashFlow>
    signature: "ext::shared_ptr<CashFlow> createEquityCashFlow(const Schedule& schedule,\n
      \                            const ext::shared_ptr<EquityIndex>& equityIndex,\n
      \                            Real nominal,\n                             const
      Calendar& paymentCalendar,\n                             BusinessDayConvention
      paymentConvention,\n                             Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LegType
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - schedule
    - ' interestRateIndex'
    - nominal
    - ' dayCounter'
    - margin
    - gearing
    - ' paymentCalendar'
    - paymentConvention
    - paymentDelay
    argTypes:
    - Schedule
    - ext::shared_ptr<IndexType>
    - Real
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 69
    functionName: QuantLib::createInterestLeg
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - LegType
    - std::move
    linkageType: ''
    returnType: Leg
    signature: "Leg createInterestLeg(Schedule schedule,\n                              const
      ext::shared_ptr<IndexType>& interestRateIndex,\n                              Real
      nominal,\n                              const DayCounter& dayCounter,\n                              Rate
      margin,\n                              Real gearing,\n                              const
      Calendar& paymentCalendar,\n                              BusinessDayConvention
      paymentConvention,\n                              Natural paymentDelay)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:92,1
    - Dst: createEquityCashFlow
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:94,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 11
    argNames:
    - equityIndex
    - interestRateIndex
    - type
    - nominal
    - schedule
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<InterestRateIndex>
    - Type
    - Real
    - Schedule
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 109
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - end
    - createEquityCashFlow
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(\n        ext::shared_ptr<EquityIndex>
      equityIndex,\n        ext::shared_ptr<InterestRateIndex> interestRateIndex,\n
      \       Type type,\n        Real nominal,\n        Schedule schedule,\n        DayCounter
      dayCounter,\n        Rate margin,\n        Real gearing,\n        Calendar paymentCalendar,\n
      \       BusinessDayConvention paymentConvention,\n        Natural paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:122,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:126,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:127,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:130,1
    - Dst: createInterestLeg<IborIndex, IborLeg>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:136,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 11
    argNames:
    - type
    - nominal
    - schedule
    - equityIndex
    - ' interestRateIndex'
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - createInterestLeg<IborIndex, IborLeg>
    - begin
    - std::move
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(Type type,\n                                                 Real
      nominal,\n                                                 Schedule schedule,\n
      \                                                ext::shared_ptr<EquityIndex>
      equityIndex,\n                                                 const ext::shared_ptr<IborIndex>&
      interestRateIndex,\n                                                 DayCounter
      dayCounter,\n                                                 Rate margin,\n
      \                                                Real gearing,\n                                                 Calendar
      paymentCalendar,\n                                                 BusinessDayConvention
      paymentConvention,\n                                                 Natural
      paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:151,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:159,1
    - Dst: createInterestLeg<OvernightIndex, OvernightLeg>
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:165,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 11
    argNames:
    - type
    - nominal
    - schedule
    - equityIndex
    - ' interestRateIndex'
    - dayCounter
    - margin
    - gearing
    - paymentCalendar
    - paymentConvention
    - paymentDelay
    argTypes:
    - Type
    - Real
    - Schedule
    - ext::shared_ptr<EquityIndex>
    - ext::shared_ptr<OvernightIndex>
    - DayCounter
    - Rate
    - Real
    - Calendar
    - BusinessDayConvention
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 167
    functionName: QuantLib::EquityTotalReturnSwap::EquityTotalReturnSwap
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - createInterestLeg<OvernightIndex, OvernightLeg>
    - begin
    - std::move
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void EquityTotalReturnSwap::EquityTotalReturnSwap(Type type,\n                                                 Real
      nominal,\n                                                 Schedule schedule,\n
      \                                                ext::shared_ptr<EquityIndex>
      equityIndex,\n                                                 const ext::shared_ptr<OvernightIndex>&
      interestRateIndex,\n                                                 DayCounter
      dayCounter,\n                                                 Rate margin,\n
      \                                                Real gearing,\n                                                 Calendar
      paymentCalendar,\n                                                 BusinessDayConvention
      paymentConvention,\n                                                 Natural
      paymentDelay)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& EquityTotalReturnSwap::equityLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & EquityTotalReturnSwap::equityLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: '& EquityTotalReturnSwap::interestRateLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - leg
    linkageType: ''
    returnType: Leg
    signature: Leg & EquityTotalReturnSwap::interestRateLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::EquityTotalReturnSwap::equityLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 1
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::equityLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::EquityTotalReturnSwap::interestRateLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 1
    functionsReached:
    - legNPV
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::interestRateLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legBPS
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:191,1
    - Dst: QuantLib::EquityTotalReturnSwap::interestRateLegNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:192,1
    - Dst: QuantLib::EquityTotalReturnSwap::margin
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:192,1
    - Dst: QuantLib::EquityTotalReturnSwap::equityLegNPV
      Src: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: QuantLib::EquityTotalReturnSwap::fairMargin
    functionSourceFile: /src/quantlib/ql/instruments/equitytotalreturnswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityTotalReturnSwap::interestRateLegNPV
    - legBPS
    - QuantLib::EquityTotalReturnSwap::equityLegNPV
    - QuantLib::EquityTotalReturnSwap::margin
    linkageType: ''
    returnType: Real
    signature: Real EquityTotalReturnSwap::fairMargin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/multiassetoption.hpp:68,1
    - Dst: QuantLib::Greeks::reset
      Src: /src/quantlib/ql/instruments/multiassetoption.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiAssetOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Greeks::reset
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/multiassetoption.hpp:68,1
    - Dst: QuantLib::Greeks::reset
      Src: /src/quantlib/ql/instruments/multiassetoption.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiAssetOption::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Greeks::reset
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:25,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:26,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:27,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:28,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' instrument'
    - multiplier
    argTypes:
    - ext::shared_ptr<Instrument>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 38
    functionName: QuantLib::CompositeInstrument::add
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - update
    - emplace_back
    - registerWith
    - alwaysForwardNotifications
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::add(const ext::shared_ptr<Instrument>& instrument,
      Real multiplier)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeInstrument::add
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' instrument'
    - multiplier
    argTypes:
    - ext::shared_ptr<Instrument>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::CompositeInstrument::subtract
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CompositeInstrument::add
    linkageType: ''
    returnType: void
    signature: "void CompositeInstrument::subtract(\n           const ext::shared_ptr<Instrument>&
      instrument, Real multiplier)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: first::isExpired
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::CompositeInstrument::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - first::isExpired
    linkageType: ''
    returnType: bool
    signature: bool CompositeInstrument::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: first::NPV
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionName: QuantLib::CompositeInstrument::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - first::NPV
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: first::deepUpdate
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:62,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::CompositeInstrument::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - update
    - first::deepUpdate
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:25,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:26,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:27,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:28,1
    - Dst: alwaysForwardNotifications
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' instrument'
    - multiplier
    argTypes:
    - ext::shared_ptr<Instrument>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 38
    functionName: QuantLib::CompositeInstrument::add
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 1
    functionsReached:
    - update
    - emplace_back
    - registerWith
    - alwaysForwardNotifications
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::add(const ext::shared_ptr<Instrument>& instrument,
      Real multiplier)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeInstrument::add
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' instrument'
    - multiplier
    argTypes:
    - ext::shared_ptr<Instrument>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::CompositeInstrument::subtract
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CompositeInstrument::add
    linkageType: ''
    returnType: void
    signature: "void CompositeInstrument::subtract(\n           const ext::shared_ptr<Instrument>&
      instrument, Real multiplier)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: first::isExpired
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::CompositeInstrument::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - first::isExpired
    linkageType: ''
    returnType: bool
    signature: bool CompositeInstrument::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: first::NPV
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionName: QuantLib::CompositeInstrument::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - first::NPV
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: first::deepUpdate
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:62,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/compositeinstrument.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::CompositeInstrument::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/compositeinstrument.cpp
    functionUses: 0
    functionsReached:
    - update
    - first::deepUpdate
    linkageType: ''
    returnType: void
    signature: void CompositeInstrument::deepUpdate()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:27,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:28,1
    - Dst: unregisterWithAll
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:30,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' instrument'
    - ' leg'
    - unregisterCoupons
    argTypes:
    - Instrument
    - Leg
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 0
    functionsReached:
    - unregisterWith
    - registerWithObservables
    - unregisterWithAll
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Instrument& instrument, const Leg& leg,
      bool unregisterCoupons)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legs
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:36,1
    - Dst: QuantLib::simplifyNotificationGraph
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' swap'
    - unregisterCoupons
    argTypes:
    - Swap
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 1
    functionsReached:
    - legs
    - QuantLib::simplifyNotificationGraph
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Swap& swap, const bool unregisterCoupons)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::simplifyNotificationGraph
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:41,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' bond'
    - unregisterCoupons
    argTypes:
    - Bond
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 2
    functionsReached:
    - cashflows
    - QuantLib::simplifyNotificationGraph
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Bond& bond, const bool unregisterCoupons)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:27,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:28,1
    - Dst: unregisterWithAll
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:30,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' instrument'
    - ' leg'
    - unregisterCoupons
    argTypes:
    - Instrument
    - Leg
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 2
    functionsReached:
    - unregisterWith
    - registerWithObservables
    - unregisterWithAll
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Instrument& instrument, const Leg& leg,
      bool unregisterCoupons)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: legs
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:36,1
    - Dst: QuantLib::simplifyNotificationGraph
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' swap'
    - unregisterCoupons
    argTypes:
    - Swap
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 3
    functionsReached:
    - legs
    - QuantLib::simplifyNotificationGraph
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Swap& swap, const bool unregisterCoupons)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::simplifyNotificationGraph
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:41,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' bond'
    - unregisterCoupons
    argTypes:
    - Bond
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::simplifyNotificationGraph
    functionSourceFile: /src/quantlib/ql/instruments/simplifynotificationgraph.cpp
    functionUses: 4
    functionsReached:
    - cashflows
    - QuantLib::simplifyNotificationGraph
    linkageType: ''
    returnType: void
    signature: void simplifyNotificationGraph(Bond& bond, const bool unregisterCoupons)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MultiAssetOption::MultiAssetOption
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MultiAssetOption::MultiAssetOption(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:35,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiAssetOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool MultiAssetOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::MultiAssetOption::delta
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::MultiAssetOption::gamma
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::MultiAssetOption::theta
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiAssetOption::vega
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::vega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiAssetOption::rho
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiAssetOption::dividendRho
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::dividendRho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiAssetOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiAssetOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<MultiAssetOption::arguments*>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: QuantLib::MultiAssetOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<MultiAssetOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void MultiAssetOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:89,1
    - Dst: dynamic_cast<const Greeks*>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:90,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 98
    functionName: QuantLib::MultiAssetOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const Greeks*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void MultiAssetOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MultiAssetOption::MultiAssetOption
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MultiAssetOption::MultiAssetOption(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:35,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiAssetOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool MultiAssetOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::MultiAssetOption::delta
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::MultiAssetOption::gamma
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::MultiAssetOption::theta
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiAssetOption::vega
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::vega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiAssetOption::rho
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiAssetOption::dividendRho
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MultiAssetOption::dividendRho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiAssetOption::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiAssetOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<MultiAssetOption::arguments*>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: QuantLib::MultiAssetOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<MultiAssetOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void MultiAssetOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:89,1
    - Dst: dynamic_cast<const Greeks*>
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:90,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/multiassetoption.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 98
    functionName: QuantLib::MultiAssetOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/multiassetoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const Greeks*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void MultiAssetOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:38,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - averageType
    - runningAccumulator
    - pastFixings
    - fixingDates
    - ' payoff'
    - ' exercise'
    argTypes:
    - Average::Type
    - Real
    - Size
    - std::vector<Date>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 52
    functionName: QuantLib::DiscreteAveragingAsianOption::DiscreteAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - QL_FAIL
    - end
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::DiscreteAveragingAsianOption(\n
      \       Average::Type averageType,\n        Real runningAccumulator,\n        Size
      pastFixings,\n        std::vector<Date> fixingDates,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - averageType
    - fixingDates
    - ' payoff'
    - ' exercise'
    - allPastFixings
    argTypes:
    - Average::Type
    - std::vector<Date>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::DiscreteAveragingAsianOption::DiscreteAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::DiscreteAveragingAsianOption(\n
      \       Average::Type averageType,\n        std::vector<Date> fixingDates,\n
      \       const ext::shared_ptr<StrikedTypePayoff>& payoff,\n        const ext::shared_ptr<Exercise>&
      exercise,\n        std::vector<Real> allPastFixings)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:75,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/asianoption.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/asianoption.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/asianoption.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:102,1
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/asianoption.cpp:107,1
    - Dst: dynamic_cast<DiscreteAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 115
    functionName: QuantLib::DiscreteAveragingAsianOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - std::vector<Date>
    - QL_FAIL
    - QuantLib::detail::instance
    - dynamic_cast<DiscreteAveragingAsianOption::arguments*>
    - size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/asianoption.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:121,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/asianoption.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:122,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:131,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 140
    functionName: DiscreteAveragingAsianOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Size>
    - Integer
    - Null<Real>
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscreteAveragingAsianOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - averageType
    - ' payoff'
    - ' exercise'
    argTypes:
    - Average::Type
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::ContinuousAveragingAsianOption::ContinuousAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousAveragingAsianOption::ContinuousAveragingAsianOption(\n
      \       Average::Type averageType,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/asianoption.cpp:155,1
    - Dst: dynamic_cast<ContinuousAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 160
    functionName: QuantLib::ContinuousAveragingAsianOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<ContinuousAveragingAsianOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousAveragingAsianOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/asianoption.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/asianoption.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionName: ContinuousAveragingAsianOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousAveragingAsianOption::arguments::validate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:38,1
    - Dst: std::sort
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/asianoption.cpp:39,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - averageType
    - runningAccumulator
    - pastFixings
    - fixingDates
    - ' payoff'
    - ' exercise'
    argTypes:
    - Average::Type
    - Real
    - Size
    - std::vector<Date>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 52
    functionName: QuantLib::DiscreteAveragingAsianOption::DiscreteAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - QL_FAIL
    - end
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::DiscreteAveragingAsianOption(\n
      \       Average::Type averageType,\n        Real runningAccumulator,\n        Size
      pastFixings,\n        std::vector<Date> fixingDates,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/asianoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - averageType
    - fixingDates
    - ' payoff'
    - ' exercise'
    - allPastFixings
    argTypes:
    - Average::Type
    - std::vector<Date>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::DiscreteAveragingAsianOption::DiscreteAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::DiscreteAveragingAsianOption(\n
      \       Average::Type averageType,\n        std::vector<Date> fixingDates,\n
      \       const ext::shared_ptr<StrikedTypePayoff>& payoff,\n        const ext::shared_ptr<Exercise>&
      exercise,\n        std::vector<Real> allPastFixings)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:75,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/asianoption.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/asianoption.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/asianoption.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:102,1
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/asianoption.cpp:107,1
    - Dst: dynamic_cast<DiscreteAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 115
    functionName: QuantLib::DiscreteAveragingAsianOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - std::vector<Date>
    - QL_FAIL
    - QuantLib::detail::instance
    - dynamic_cast<DiscreteAveragingAsianOption::arguments*>
    - size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscreteAveragingAsianOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/asianoption.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:121,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/asianoption.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:122,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:131,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/asianoption.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 140
    functionName: DiscreteAveragingAsianOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Size>
    - Integer
    - Null<Real>
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscreteAveragingAsianOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - averageType
    - ' payoff'
    - ' exercise'
    argTypes:
    - Average::Type
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::ContinuousAveragingAsianOption::ContinuousAveragingAsianOption
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousAveragingAsianOption::ContinuousAveragingAsianOption(\n
      \       Average::Type averageType,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/asianoption.cpp:155,1
    - Dst: dynamic_cast<ContinuousAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/instruments/asianoption.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 160
    functionName: QuantLib::ContinuousAveragingAsianOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::setupArguments
    - dynamic_cast<ContinuousAveragingAsianOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousAveragingAsianOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/asianoption.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/asianoption.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/asianoption.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionName: ContinuousAveragingAsianOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousAveragingAsianOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:46,1
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/assetswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - parSwap
    - bond
    - bondCleanPrice
    - nonParRepayment
    - gearing
    - ' iborIndex'
    - spread
    - ' floatingDayCounter'
    - dealMaturity
    - payBondCoupon
    argTypes:
    - bool
    - ext::shared_ptr<Bond>
    - Real
    - Real
    - Real
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: QuantLib::AssetSwap::AssetSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AssetSwap::AssetSwap(bool parSwap,\n                         ext::shared_ptr<Bond>
      bond,\n                         Real bondCleanPrice,\n                         Real
      nonParRepayment,\n                         Real gearing,\n                         const
      ext::shared_ptr<IborIndex>& iborIndex,\n                         Spread spread,\n
      \                        const DayCounter& floatingDayCounter,\n                         Date
      dealMaturity,\n                         bool payBondCoupon)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:61,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:66,1
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:66,1
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:70,1
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/assetswap.cpp:71,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:71,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:72,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/assetswap.cpp:73,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/assetswap.cpp:74,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/assetswap.cpp:75,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/assetswap.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:79,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:81,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:83,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:83,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:87,1
    - Dst: Schedule::front
      Src: /src/quantlib/ql/instruments/assetswap.cpp:87,1
    - Dst: Schedule::front
      Src: /src/quantlib/ql/instruments/assetswap.cpp:90,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/assetswap.cpp:95,1
    - Dst: Schedule::until
      Src: /src/quantlib/ql/instruments/assetswap.cpp:97,1
    - Dst: Schedule::startDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:101,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:102,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:104,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/assetswap.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:114,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/assetswap.cpp:122,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/assetswap.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:129,1
    - Dst: auto::accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:131,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:133,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:134,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:139,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:140,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:142,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:142,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:143,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:147,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:148,1
    - Dst: OvernightLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:155,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:163,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:163,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:175,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/assetswap.cpp:176,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/assetswap.cpp:176,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:180,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:181,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:185,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:186,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/assetswap.cpp:193,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 11
    argNames:
    - payBondCoupon
    - bond
    - bondCleanPrice
    - ' iborIndex'
    - spread
    - floatSchedule
    - ' floatingDayCounter'
    - parSwap
    - gearing
    - nonParRepayment
    - dealMaturity
    argTypes:
    - bool
    - ext::shared_ptr<Bond>
    - Real
    - ext::shared_ptr<IborIndex>
    - Spread
    - Schedule
    - DayCounter
    - bool
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 202
    functionName: QuantLib::AssetSwap::AssetSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule::calendar
    - registerWith
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - maturityDate
    - cashflows
    - tenor
    - date
    - empty
    - ext::make_shared<SimpleCashFlow>
    - accruedAmount
    - begin
    - ext::dynamic_pointer_cast<OvernightIndex>
    - Schedule::startDate
    - IborLeg
    - auto::accruedAmount
    - OvernightLeg
    - Schedule::front
    - auto::amount
    - Schedule::until
    - Schedule
    - fixingCalendar
    - notional
    - Null<Real>
    - push_back
    - Schedule::empty
    - end
    - insert
    - QL_REQUIRE
    - settlementDate
    - std::move
    - hasOccurred
    - businessDayConvention
    - Schedule::back
    linkageType: ''
    returnType: void
    signature: "void AssetSwap::AssetSwap(bool payBondCoupon,\n                         ext::shared_ptr<Bond>
      bond,\n                         Real bondCleanPrice,\n                         const
      ext::shared_ptr<IborIndex>& iborIndex,\n                         Spread spread,\n
      \                        Schedule floatSchedule,\n                         const
      DayCounter& floatingDayCounter,\n                         bool parSwap,\n                         Real
      gearing,\n                         Real nonParRepayment,\n                         Date
      dealMaturity)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/assetswap.cpp:206,1
    - Dst: dynamic_cast<AssetSwap::arguments*>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:208,1
    - Dst: bondLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:213,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:216,1
    - Dst: vector<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:219,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:221,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:223,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:224,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:225,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:228,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:232,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:234,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:234,1
    - Dst: vector<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:238,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:240,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:242,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:243,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:244,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/assetswap.cpp:245,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/assetswap.cpp:246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 248
    functionName: QuantLib::AssetSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - floatingLeg
    - ext::shared_ptr::fixingDate
    - bondLeg
    - vector<Time>
    - vector<Real>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::amount
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - ext::shared_ptr::date
    - vector<Spread>
    - ext::shared_ptr::spread
    - size
    - vector<Date>
    - dynamic_cast<AssetSwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void AssetSwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:252,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:255,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:255,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/assetswap.cpp:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 261
    functionName: QuantLib::AssetSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - Null<Spread>
    - calculate
    linkageType: ''
    returnType: Spread
    signature: Spread AssetSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::AssetSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:271,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: QuantLib::AssetSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::floatingLegNPV() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:278,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:279,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:282,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:282,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:284,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 297
    functionName: QuantLib::AssetSwap::fairCleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - notional
    - calculate
    - Null<Real>
    - accruedAmount
    - Null<DiscountFactor>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::fairCleanPrice() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:300,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:301,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:304,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:304,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 311
    functionName: QuantLib::AssetSwap::fairNonParRepayment
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - notional
    - calculate
    - Null<Real>
    - Null<DiscountFactor>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::fairNonParRepayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/assetswap.cpp:314,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:315,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:316,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 313
    functionDepth: 2
    functionLinenumber: 313
    functionLinenumberEnd: 318
    functionName: QuantLib::AssetSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void AssetSwap::setupExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/assetswap.cpp:321,1
    - Dst: dynamic_cast<const AssetSwap::results*>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:322,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:328,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:329,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 320
    functionDepth: 2
    functionLinenumber: 320
    functionLinenumberEnd: 332
    functionName: QuantLib::AssetSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Null<Spread>
    - dynamic_cast<const AssetSwap::results*>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void AssetSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 353
    functionName: AssetSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AssetSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/assetswap.cpp:356,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:357,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:358,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 360
    functionName: AssetSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    - Null<Real>
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void AssetSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:46,1
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/assetswap.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - parSwap
    - bond
    - bondCleanPrice
    - nonParRepayment
    - gearing
    - ' iborIndex'
    - spread
    - ' floatingDayCounter'
    - dealMaturity
    - payBondCoupon
    argTypes:
    - bool
    - ext::shared_ptr<Bond>
    - Real
    - Real
    - Real
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: QuantLib::AssetSwap::AssetSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AssetSwap::AssetSwap(bool parSwap,\n                         ext::shared_ptr<Bond>
      bond,\n                         Real bondCleanPrice,\n                         Real
      nonParRepayment,\n                         Real gearing,\n                         const
      ext::shared_ptr<IborIndex>& iborIndex,\n                         Spread spread,\n
      \                        const DayCounter& floatingDayCounter,\n                         Date
      dealMaturity,\n                         bool payBondCoupon)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:61,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:66,1
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:66,1
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:70,1
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/assetswap.cpp:71,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:71,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:72,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/assetswap.cpp:73,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/assetswap.cpp:74,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/assetswap.cpp:75,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/assetswap.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:79,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:81,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:83,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:83,1
    - Dst: Schedule::back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:87,1
    - Dst: Schedule::front
      Src: /src/quantlib/ql/instruments/assetswap.cpp:87,1
    - Dst: Schedule::front
      Src: /src/quantlib/ql/instruments/assetswap.cpp:90,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/assetswap.cpp:95,1
    - Dst: Schedule::until
      Src: /src/quantlib/ql/instruments/assetswap.cpp:97,1
    - Dst: Schedule::startDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:101,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:102,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:104,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/assetswap.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:114,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/assetswap.cpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:121,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/assetswap.cpp:122,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/assetswap.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:129,1
    - Dst: auto::accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:131,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:133,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:134,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:139,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:140,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:142,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:142,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:143,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:147,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:148,1
    - Dst: OvernightLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:155,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:163,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/assetswap.cpp:163,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:175,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/assetswap.cpp:176,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/assetswap.cpp:176,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:180,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:181,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:185,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/assetswap.cpp:186,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/assetswap.cpp:193,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 11
    argNames:
    - payBondCoupon
    - bond
    - bondCleanPrice
    - ' iborIndex'
    - spread
    - floatSchedule
    - ' floatingDayCounter'
    - parSwap
    - gearing
    - nonParRepayment
    - dealMaturity
    argTypes:
    - bool
    - ext::shared_ptr<Bond>
    - Real
    - ext::shared_ptr<IborIndex>
    - Spread
    - Schedule
    - DayCounter
    - bool
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 202
    functionName: QuantLib::AssetSwap::AssetSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule::calendar
    - registerWith
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - maturityDate
    - cashflows
    - tenor
    - date
    - empty
    - ext::make_shared<SimpleCashFlow>
    - accruedAmount
    - begin
    - ext::dynamic_pointer_cast<OvernightIndex>
    - Schedule::startDate
    - IborLeg
    - auto::accruedAmount
    - OvernightLeg
    - Schedule::front
    - auto::amount
    - Schedule::until
    - Schedule
    - fixingCalendar
    - notional
    - Null<Real>
    - push_back
    - Schedule::empty
    - end
    - insert
    - QL_REQUIRE
    - settlementDate
    - std::move
    - hasOccurred
    - businessDayConvention
    - Schedule::back
    linkageType: ''
    returnType: void
    signature: "void AssetSwap::AssetSwap(bool payBondCoupon,\n                         ext::shared_ptr<Bond>
      bond,\n                         Real bondCleanPrice,\n                         const
      ext::shared_ptr<IborIndex>& iborIndex,\n                         Spread spread,\n
      \                        Schedule floatSchedule,\n                         const
      DayCounter& floatingDayCounter,\n                         bool parSwap,\n                         Real
      gearing,\n                         Real nonParRepayment,\n                         Date
      dealMaturity)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/assetswap.cpp:206,1
    - Dst: dynamic_cast<AssetSwap::arguments*>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:208,1
    - Dst: bondLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:213,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:216,1
    - Dst: vector<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:219,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:221,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:223,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:224,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:225,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/assetswap.cpp:228,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:232,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:234,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:234,1
    - Dst: vector<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:238,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:240,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:242,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/assetswap.cpp:243,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:244,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/assetswap.cpp:245,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/assetswap.cpp:246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 248
    functionName: QuantLib::AssetSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - floatingLeg
    - ext::shared_ptr::fixingDate
    - bondLeg
    - vector<Time>
    - vector<Real>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::amount
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - ext::shared_ptr::date
    - vector<Spread>
    - ext::shared_ptr::spread
    - size
    - vector<Date>
    - dynamic_cast<AssetSwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    linkageType: ''
    returnType: void
    signature: void AssetSwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:252,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:255,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:255,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/assetswap.cpp:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 261
    functionName: QuantLib::AssetSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - Null<Spread>
    - calculate
    linkageType: ''
    returnType: Spread
    signature: Spread AssetSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::AssetSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:271,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: QuantLib::AssetSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::floatingLegNPV() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:278,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:279,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:282,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:282,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:284,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/assetswap.cpp:289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 297
    functionName: QuantLib::AssetSwap::fairCleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - notional
    - calculate
    - Null<Real>
    - accruedAmount
    - Null<DiscountFactor>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::fairCleanPrice() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/assetswap.cpp:300,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:301,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:304,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:304,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/assetswap.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 311
    functionName: QuantLib::AssetSwap::fairNonParRepayment
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - notional
    - calculate
    - Null<Real>
    - Null<DiscountFactor>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwap::fairNonParRepayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/assetswap.cpp:314,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:315,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:316,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 313
    functionDepth: 2
    functionLinenumber: 313
    functionLinenumberEnd: 318
    functionName: QuantLib::AssetSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void AssetSwap::setupExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/assetswap.cpp:321,1
    - Dst: dynamic_cast<const AssetSwap::results*>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:322,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:328,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:329,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 320
    functionDepth: 2
    functionLinenumber: 320
    functionLinenumberEnd: 332
    functionName: QuantLib::AssetSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Null<Spread>
    - dynamic_cast<const AssetSwap::results*>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void AssetSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:338,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:341,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:344,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:347,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/assetswap.cpp:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 353
    functionName: AssetSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AssetSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/assetswap.cpp:356,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:357,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:358,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/assetswap.cpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 360
    functionName: AssetSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    - Null<Real>
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void AssetSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - choosingDate
    - strike
    - ' exercise'
    argTypes:
    - Date
    - Real
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::SimpleChooserOption::SimpleChooserOption
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void SimpleChooserOption::SimpleChooserOption(Date choosingDate,\n
      \                                            Real strike,\n                                             const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:34,1
    - Dst: dynamic_cast<SimpleChooserOption::arguments*>
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: QuantLib::SimpleChooserOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<SimpleChooserOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleChooserOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:43,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SimpleChooserOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleChooserOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - choosingDate
    - strike
    - ' exercise'
    argTypes:
    - Date
    - Real
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::SimpleChooserOption::SimpleChooserOption
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: void
    signature: "void SimpleChooserOption::SimpleChooserOption(Date choosingDate,\n
      \                                            Real strike,\n                                             const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:34,1
    - Dst: dynamic_cast<SimpleChooserOption::arguments*>
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: QuantLib::SimpleChooserOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<SimpleChooserOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleChooserOption::setupArguments(PricingEngine::arguments*
      args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:43,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/simplechooseroption.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SimpleChooserOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - Date
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleChooserOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: QuantLib::VanillaSwap::floatingNominals
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:46,1
    - Dst: QuantLib::VanillaSwap::floatingDayCount
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:47,1
    - Dst: QuantLib::VanillaSwap::paymentConvention
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:48,1
    - Dst: QuantLib::VanillaSwap::spread
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 11
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatSchedule
    - index
    - spread
    - floatingDayCount
    - paymentConvention
    - useIndexedCoupons
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - ext::optional<BusinessDayConvention>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 53
    functionName: QuantLib::VanillaSwap::VanillaSwap
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswap.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - QuantLib::VanillaSwap::floatingDayCount
    - QuantLib::VanillaSwap::paymentConvention
    - std::move
    - IborLeg
    - registerWith
    - QuantLib::VanillaSwap::spread
    - floatingSchedule
    - QuantLib::VanillaSwap::floatingNominals
    linkageType: ''
    returnType: void
    signature: "void VanillaSwap::VanillaSwap(Type type,\n                             Real
      nominal,\n                             Schedule fixedSchedule,\n                             Rate
      fixedRate,\n                             DayCounter fixedDayCount,\n                             Schedule
      floatSchedule,\n                             ext::shared_ptr<IborIndex> index,\n
      \                            Spread spread,\n                             DayCounter
      floatingDayCount,\n                             ext::optional<BusinessDayConvention>
      paymentConvention,\n                             ext::optional<bool> useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:57,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:59,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:60,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:61,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:62,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:65,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:67,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:68,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:69,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:71,1
    - Dst: auto::accrualPeriod
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:72,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:73,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:75,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - args
    argTypes:
    - arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 80
    functionName: QuantLib::VanillaSwap::setupFloatingArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswap.cpp
    functionUses: 0
    functionsReached:
    - auto::accrualPeriod
    - floatingLeg
    - auto::date
    - auto::nominal
    - auto::spread
    - Null<Real>
    - auto::amount
    - std::vector<Real>
    - std::vector<Date>
    - ext::dynamic_pointer_cast<IborCoupon>
    - auto::accrualStartDate
    - std::vector<Time>
    - size
    - auto::fixingDate
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: void VanillaSwap::setupFloatingArguments(arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:42,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:45,1
    - Dst: QuantLib::VanillaSwap::floatingNominals
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:46,1
    - Dst: QuantLib::VanillaSwap::floatingDayCount
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:47,1
    - Dst: QuantLib::VanillaSwap::paymentConvention
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:48,1
    - Dst: QuantLib::VanillaSwap::spread
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 11
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDayCount
    - floatSchedule
    - index
    - spread
    - floatingDayCount
    - paymentConvention
    - useIndexedCoupons
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Spread
    - DayCounter
    - ext::optional<BusinessDayConvention>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 53
    functionName: QuantLib::VanillaSwap::VanillaSwap
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswap.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - QuantLib::VanillaSwap::floatingDayCount
    - QuantLib::VanillaSwap::paymentConvention
    - std::move
    - IborLeg
    - registerWith
    - QuantLib::VanillaSwap::spread
    - floatingSchedule
    - QuantLib::VanillaSwap::floatingNominals
    linkageType: ''
    returnType: void
    signature: "void VanillaSwap::VanillaSwap(Type type,\n                             Real
      nominal,\n                             Schedule fixedSchedule,\n                             Rate
      fixedRate,\n                             DayCounter fixedDayCount,\n                             Schedule
      floatSchedule,\n                             ext::shared_ptr<IborIndex> index,\n
      \                            Spread spread,\n                             DayCounter
      floatingDayCount,\n                             ext::optional<BusinessDayConvention>
      paymentConvention,\n                             ext::optional<bool> useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:57,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:59,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:60,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:61,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:62,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:65,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:67,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:68,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:69,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:71,1
    - Dst: auto::accrualPeriod
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:72,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:73,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:75,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/vanillaswap.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - args
    argTypes:
    - arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 80
    functionName: QuantLib::VanillaSwap::setupFloatingArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswap.cpp
    functionUses: 0
    functionsReached:
    - auto::accrualPeriod
    - floatingLeg
    - auto::date
    - auto::nominal
    - auto::spread
    - Null<Real>
    - auto::amount
    - std::vector<Real>
    - std::vector<Date>
    - ext::dynamic_pointer_cast<IborCoupon>
    - auto::accrualStartDate
    - std::vector<Time>
    - size
    - auto::fixingDate
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: void VanillaSwap::setupFloatingArguments(arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/basketoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::BasketPayoff::BasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BasketPayoff(ext::shared_ptr<Payoff> p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~BasketPayoff() override
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BasketPayoff() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketPayoff::name
      Src: /src/quantlib/ql/instruments/basketoption.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::BasketPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BasketPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketPayoff::description
      Src: /src/quantlib/ql/instruments/basketoption.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::BasketPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BasketPayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accumulate
      Src: /src/quantlib/ql/instruments/basketoption.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: operator()(const Array &a) const
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - accumulate
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array &a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::BasketPayoff::basePayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> basePayoff()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::MinBasketPayoff::MinBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MinBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: QuantLib::MaxBasketPayoff::MaxBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MaxBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::MaxBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/basketoption.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - weights
    argTypes:
    - ext::shared_ptr<Payoff>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: QuantLib::AverageBasketPayoff::AverageBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AverageBasketPayoff(const ext::shared_ptr<Payoff>& p, Array weights)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/basketoption.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - ext::shared_ptr<Payoff>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::AverageBasketPayoff::AverageBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    linkageType: ''
    returnType: void
    signature: "void AverageBasketPayoff(const ext::shared_ptr<Payoff> &p,\n                            Size
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/basketoption.hpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:79,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/basketoption.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::SpreadBasketPayoff::SpreadBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SpreadBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/basketoption.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/basketoption.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::SpreadBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/basketoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::BasketPayoff::BasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BasketPayoff(ext::shared_ptr<Payoff> p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~BasketPayoff() override
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BasketPayoff() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketPayoff::name
      Src: /src/quantlib/ql/instruments/basketoption.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::BasketPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BasketPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketPayoff::description
      Src: /src/quantlib/ql/instruments/basketoption.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::BasketPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BasketPayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accumulate
      Src: /src/quantlib/ql/instruments/basketoption.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: operator()(const Array &a) const
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - accumulate
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array &a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::BasketPayoff::basePayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> basePayoff()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::MinBasketPayoff::MinBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MinBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: QuantLib::MaxBasketPayoff::MaxBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MaxBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::MaxBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/basketoption.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' p'
    - weights
    argTypes:
    - ext::shared_ptr<Payoff>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: QuantLib::AverageBasketPayoff::AverageBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AverageBasketPayoff(const ext::shared_ptr<Payoff>& p, Array weights)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/basketoption.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - ext::shared_ptr<Payoff>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::AverageBasketPayoff::AverageBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    linkageType: ''
    returnType: void
    signature: "void AverageBasketPayoff(const ext::shared_ptr<Payoff> &p,\n                            Size
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/basketoption.hpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/basketoption.hpp:79,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/basketoption.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/basketoption.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - ext::shared_ptr<Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::SpreadBasketPayoff::SpreadBasketPayoff
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SpreadBasketPayoff(const ext::shared_ptr<Payoff> &p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/basketoption.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/basketoption.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::SpreadBasketPayoff::accumulate
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real accumulate(const Array& a) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' firstLeg'
    - ' secondLeg'
    argTypes:
    - Leg
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void Swap::Swap(const Leg& firstLeg,\n               const Leg& secondLeg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' legs'
    - ' payer'
    argTypes:
    - std::vector<Leg>
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 60
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Swap::Swap(const std::vector<Leg>& legs,\n               const
      std::vector<bool>& payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - legs
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Swap::Swap(Size legs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:71,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/swap.cpp:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: QuantLib::Swap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool Swap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/swap.cpp:79,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::Swap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - QuantLib::Instrument::setupExpired
    - begin
    linkageType: ''
    returnType: void
    signature: void Swap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Swap::arguments*>
      Src: /src/quantlib/ql/instruments/swap.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::Swap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Swap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/swap.cpp:96,1
    - Dst: dynamic_cast<const Swap::results*>
      Src: /src/quantlib/ql/instruments/swap.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:99,1
    - Dst: auto*::legNPV::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: auto*::legNPV::size
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: auto*::legBPS::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: auto*::legBPS::size
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: auto*::startDiscounts::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: auto*::startDiscounts::size
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:123,1
    - Dst: auto*::endDiscounts::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: auto*::endDiscounts::size
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:132,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:135,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:138,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 140
    functionName: QuantLib::Swap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - auto*::legNPV::size
    - std::fill
    - auto*::legBPS::size
    - auto*::startDiscounts::empty
    - auto*::startDiscounts::size
    - QuantLib::Instrument::fetchResults
    - Null<Real>
    - auto*::endDiscounts::empty
    - begin
    - Null<DiscountFactor>
    - dynamic_cast<const Swap::results*>
    - auto*::legBPS::empty
    - auto*::legNPV::empty
    - auto*::endDiscounts::size
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::Swap::numberOfLegs
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size Swap::numberOfLegs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: '& Swap::legs() const'
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Leg>
    signature: std::vector<Leg> & Swap::legs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:147,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/swap.cpp:147,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/swap.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:149,1
    - Dst: std::min
      Src: /src/quantlib/ql/instruments/swap.cpp:150,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/swap.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 152
    functionName: QuantLib::Swap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - empty
    - QuantLib::CashFlows::startDate
    - size
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date Swap::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:155,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/swap.cpp:155,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/swap.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:157,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/swap.cpp:158,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/swap.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionName: QuantLib::Swap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::max
    - QuantLib::CashFlows::maturityDate
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Swap::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swap::deepUpdate
      Src: /src/quantlib/ql/instruments/swap.cpp:165,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/swap.cpp:168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 169
    functionName: QuantLib::Swap::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 1
    functionsReached:
    - update
    - QuantLib::Swap::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Swap::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: Swap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/swap.cpp:177,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:178,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:179,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:180,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:181,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionName: Swap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::Instrument::results::reset
    - Null<DiscountFactor>
    linkageType: ''
    returnType: void
    signature: void Swap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swap.cpp:192,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swap.cpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: '& operator<<(std::ostream& out, Swap::Type t)'
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Swap::Type t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' firstLeg'
    - ' secondLeg'
    argTypes:
    - Leg
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void Swap::Swap(const Leg& firstLeg,\n               const Leg& secondLeg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/swap.cpp:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' legs'
    - ' payer'
    argTypes:
    - std::vector<Leg>
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 60
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Swap::Swap(const std::vector<Leg>& legs,\n               const
      std::vector<bool>& payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - legs
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::Swap::Swap
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Swap::Swap(Size legs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:71,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/swap.cpp:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: QuantLib::Swap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool Swap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/swap.cpp:79,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:80,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:81,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:82,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::Swap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - QuantLib::Instrument::setupExpired
    - begin
    linkageType: ''
    returnType: void
    signature: void Swap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Swap::arguments*>
      Src: /src/quantlib/ql/instruments/swap.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::Swap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Swap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/swap.cpp:96,1
    - Dst: dynamic_cast<const Swap::results*>
      Src: /src/quantlib/ql/instruments/swap.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:99,1
    - Dst: auto*::legNPV::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: auto*::legNPV::size
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:102,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.cpp:106,1
    - Dst: auto*::legBPS::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: auto*::legBPS::size
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:110,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/swap.cpp:114,1
    - Dst: auto*::startDiscounts::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: auto*::startDiscounts::size
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:118,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:122,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:123,1
    - Dst: auto*::endDiscounts::empty
      Src: /src/quantlib/ql/instruments/swap.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: auto*::endDiscounts::size
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:127,1
    - Dst: std::fill
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/swap.cpp:131,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:132,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:135,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:138,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 140
    functionName: QuantLib::Swap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - auto*::legNPV::size
    - std::fill
    - auto*::legBPS::size
    - auto*::startDiscounts::empty
    - auto*::startDiscounts::size
    - QuantLib::Instrument::fetchResults
    - Null<Real>
    - auto*::endDiscounts::empty
    - begin
    - Null<DiscountFactor>
    - dynamic_cast<const Swap::results*>
    - auto*::legBPS::empty
    - auto*::legNPV::empty
    - auto*::endDiscounts::size
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::Swap::numberOfLegs
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size Swap::numberOfLegs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: '& Swap::legs() const'
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Leg>
    signature: std::vector<Leg> & Swap::legs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:147,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/swap.cpp:147,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/swap.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:149,1
    - Dst: std::min
      Src: /src/quantlib/ql/instruments/swap.cpp:150,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/swap.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 152
    functionName: QuantLib::Swap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - empty
    - QuantLib::CashFlows::startDate
    - size
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date Swap::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:155,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/swap.cpp:155,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/swap.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:157,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/swap.cpp:158,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/swap.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionName: QuantLib::Swap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::max
    - QuantLib::CashFlows::maturityDate
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Swap::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swap::deepUpdate
      Src: /src/quantlib/ql/instruments/swap.cpp:165,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/swap.cpp:168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 169
    functionName: QuantLib::Swap::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 2
    functionsReached:
    - update
    - QuantLib::Swap::deepUpdate
    linkageType: ''
    returnType: void
    signature: void Swap::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/swap.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: Swap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Swap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/swap.cpp:177,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:178,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:179,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:180,1
    - Dst: clear
      Src: /src/quantlib/ql/instruments/swap.cpp:181,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/instruments/swap.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionName: Swap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::Instrument::results::reset
    - Null<DiscountFactor>
    linkageType: ''
    returnType: void
    signature: void Swap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/swap.cpp:192,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/swap.cpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: '& operator<<(std::ostream& out, Swap::Type t)'
    functionSourceFile: /src/quantlib/ql/instruments/swap.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Swap::Type t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::ZeroCouponInflationSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::ZeroCouponInflationSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::ZeroCouponInflationSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date startDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroCouponInflationSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::ZeroCouponInflationSwap::fixedCalendar
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar fixedCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::ZeroCouponInflationSwap::fixedConvention
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention fixedConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::ZeroCouponInflationSwap::dayCounter
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::ZeroCouponInflationSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ZeroCouponInflationSwap::inflationIndex
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> inflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::ZeroCouponInflationSwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::ZeroCouponInflationSwap::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::ZeroCouponInflationSwap::adjustObservationDates
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool adjustObservationDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::ZeroCouponInflationSwap::inflationCalendar
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar inflationCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::ZeroCouponInflationSwap::inflationConvention
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention inflationConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::ZeroCouponInflationSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::ZeroCouponInflationSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::ZeroCouponInflationSwap::startDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date startDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroCouponInflationSwap::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::ZeroCouponInflationSwap::fixedCalendar
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar fixedCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::ZeroCouponInflationSwap::fixedConvention
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention fixedConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::ZeroCouponInflationSwap::dayCounter
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::ZeroCouponInflationSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ZeroCouponInflationSwap::inflationIndex
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> inflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::ZeroCouponInflationSwap::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::ZeroCouponInflationSwap::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::ZeroCouponInflationSwap::adjustObservationDates
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool adjustObservationDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::ZeroCouponInflationSwap::inflationCalendar
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar inflationCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::ZeroCouponInflationSwap::inflationConvention
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention inflationConvention() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarriertype.cpp:38,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/doublebarriertype.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - DoubleBarrier::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                             DoubleBarrier::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/doublebarriertype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             DoubleBarrier::Type
      type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/doublebarriertype.cpp:38,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/doublebarriertype.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - DoubleBarrier::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                             DoubleBarrier::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/doublebarriertype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             DoubleBarrier::Type
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - capFloorType
    - ' tenor'
    - ' iborIndex'
    - strike
    - ' forwardStart'
    argTypes:
    - CapFloor::Type
    - Period
    - ext::shared_ptr<IborIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MakeCapFloor::MakeCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - MakeVanillaSwap
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void MakeCapFloor::MakeCapFloor(CapFloor::Type capFloorType,\n                               const
      Period& tenor,\n                               const ext::shared_ptr<IborIndex>&
      iborIndex,\n                               Rate strike,\n                               const
      Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: MakeCapFloor::operator CapFloor() const
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCapFloor::operator CapFloor() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VanillaSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:49,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:51,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:51,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:54,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:55,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:56,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:56,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:60,1
    - Dst: ext::dynamic_pointer_cast<BlackCapFloorEngine>
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:66,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:68,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:69,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:72,1
    - Dst: CapFloor::CapFloor
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:75,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 79
    functionName: MakeCapFloor::operator ext::shared_ptr<CapFloor>() const
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - QL_REQUIRE
    - CapFloor::CapFloor
    - Leg::end
    - Leg::erase
    - VanillaSwap::floatingLeg
    - Null<Rate>
    - ext::shared_ptr::termStructure
    - ext::shared_ptr::setPricingEngine
    - Leg::size
    - Handle::referenceDate
    - QuantLib::CashFlows::atmRate
    - ext::dynamic_pointer_cast<BlackCapFloorEngine>
    linkageType: ''
    returnType: void
    signature: void MakeCapFloor::operator ext::shared_ptr<CapFloor>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withNominal
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: '& MakeCapFloor::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withNominal
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withEffectiveDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' effectiveDate'
    - firstCapletExcluded
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: "& MakeCapFloor::withEffectiveDate(const Date& effectiveDate,\n
      \                                                 bool firstCapletExcluded)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withEffectiveDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor & MakeCapFloor::withEffectiveDate(const Date& effectiveDate,\n
      \                                                 bool firstCapletExcluded)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegTenor
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: '& MakeCapFloor::withTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegTenor
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegCalendar
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: '& MakeCapFloor::withCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegCalendar
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegConvention
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: '& MakeCapFloor::withConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegConvention
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: "&\n    MakeCapFloor::withTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegTerminationDateConvention
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor &\n    MakeCapFloor::withTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegRule
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& MakeCapFloor::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegRule
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegEndOfMonth
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& MakeCapFloor::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegEndOfMonth
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegFirstDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& MakeCapFloor::withFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegFirstDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegNextToLastDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& MakeCapFloor::withNextToLastDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegNextToLastDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withNextToLastDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegDayCount
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& MakeCapFloor::withDayCount(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegDayCount
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withDayCount(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: '& MakeCapFloor::asOptionlet(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::asOptionlet(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: "& MakeCapFloor::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor & MakeCapFloor::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - capFloorType
    - ' tenor'
    - ' iborIndex'
    - strike
    - ' forwardStart'
    argTypes:
    - CapFloor::Type
    - Period
    - ext::shared_ptr<IborIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MakeCapFloor::MakeCapFloor
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - MakeVanillaSwap
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void MakeCapFloor::MakeCapFloor(CapFloor::Type capFloorType,\n                               const
      Period& tenor,\n                               const ext::shared_ptr<IborIndex>&
      iborIndex,\n                               Rate strike,\n                               const
      Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: MakeCapFloor::operator CapFloor() const
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCapFloor::operator CapFloor() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VanillaSwap::floatingLeg
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:49,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:51,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:51,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:54,1
    - Dst: Leg::end
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:55,1
    - Dst: Leg::erase
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:56,1
    - Dst: Leg::begin
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:56,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:60,1
    - Dst: ext::dynamic_pointer_cast<BlackCapFloorEngine>
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:66,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:68,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:69,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:72,1
    - Dst: CapFloor::CapFloor
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:75,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 79
    functionName: MakeCapFloor::operator ext::shared_ptr<CapFloor>() const
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - Leg::begin
    - QL_REQUIRE
    - CapFloor::CapFloor
    - Leg::end
    - Leg::erase
    - VanillaSwap::floatingLeg
    - Null<Rate>
    - ext::shared_ptr::termStructure
    - ext::shared_ptr::setPricingEngine
    - Leg::size
    - Handle::referenceDate
    - QuantLib::CashFlows::atmRate
    - ext::dynamic_pointer_cast<BlackCapFloorEngine>
    linkageType: ''
    returnType: void
    signature: void MakeCapFloor::operator ext::shared_ptr<CapFloor>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withNominal
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: '& MakeCapFloor::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withNominal
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withEffectiveDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' effectiveDate'
    - firstCapletExcluded
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: "& MakeCapFloor::withEffectiveDate(const Date& effectiveDate,\n
      \                                                 bool firstCapletExcluded)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withEffectiveDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor & MakeCapFloor::withEffectiveDate(const Date& effectiveDate,\n
      \                                                 bool firstCapletExcluded)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegTenor
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: '& MakeCapFloor::withTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegTenor
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withTenor(const Period& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegCalendar
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: '& MakeCapFloor::withCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegCalendar
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegConvention
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: '& MakeCapFloor::withConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegConvention
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: "&\n    MakeCapFloor::withTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegTerminationDateConvention
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor &\n    MakeCapFloor::withTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegRule
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& MakeCapFloor::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegRule
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegEndOfMonth
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& MakeCapFloor::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegEndOfMonth
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegFirstDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& MakeCapFloor::withFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegFirstDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegNextToLastDate
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& MakeCapFloor::withNextToLastDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegNextToLastDate
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withNextToLastDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFloatingLegDayCount
      Src: /src/quantlib/ql/instruments/makecapfloor.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& MakeCapFloor::withDayCount(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached:
    - withFloatingLegDayCount
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::withDayCount(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: '& MakeCapFloor::asOptionlet(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCapFloor
    signature: MakeCapFloor & MakeCapFloor::asOptionlet(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: "& MakeCapFloor::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makecapfloor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCapFloor
    signature: "MakeCapFloor & MakeCapFloor::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/asianoption.hpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/asianoption.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/instruments/asianoption.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::DiscreteAveragingAsianOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/asianoption.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::ContinuousAveragingAsianOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/asianoption.hpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/asianoption.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/instruments/asianoption.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::DiscreteAveragingAsianOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/instruments/asianoption.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::ContinuousAveragingAsianOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/asianoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Swaption::settlementType
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::ForwardOptionArguments::ForwardOptionArguments
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void ForwardOptionArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:71,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:74,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:75,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:77,1
    - Dst: QuantLib::ForwardOptionArguments<ArgumentsType>::exercise::lastDate
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::ForwardOptionArguments<ArgumentsType>::validate
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Real>
    - QuantLib::detail::instance
    - Date
    - QuantLib::ForwardOptionArguments<ArgumentsType>::exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ForwardOptionArguments<ArgumentsType>::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::ForwardOptionArguments::ForwardOptionArguments
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void ForwardOptionArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:71,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:74,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:75,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:77,1
    - Dst: QuantLib::ForwardOptionArguments<ArgumentsType>::exercise::lastDate
      Src: /src/quantlib/ql/instruments/forwardvanillaoption.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::ForwardOptionArguments<ArgumentsType>::validate
    functionSourceFile: /src/quantlib/ql/instruments/forwardvanillaoption.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - Null<Real>
    - QuantLib::detail::instance
    - Date
    - QuantLib::ForwardOptionArguments<ArgumentsType>::exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ForwardOptionArguments<ArgumentsType>::validate() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:55,1
    - Dst: detail::CPI::effectiveInterpolationType
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:57,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:59,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:59,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:67,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:71,1
    - Dst: BusinessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:73,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:76,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:77,1
    - Dst: ext::make_shared<ZeroInflationCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:82,1
    - Dst: auto::baseDate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:86,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:87,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:93,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:93,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:97,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:99,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 14
    argNames:
    - type
    - nominal
    - ' startDate'
    - ' maturity'
    - fixCalendar
    - fixConvention
    - dayCounter
    - fixedRate
    - ' infIndex'
    - ' observationLag'
    - observationInterpolation
    - adjustInfObsDates
    - infCalendar
    - infConvention
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Rate
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - bool
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 118
    functionName: QuantLib::ZeroCouponInflationSwap::ZeroCouponInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - inflationYearFraction
    - detail::CPI::effectiveInterpolationType
    - BusinessDayConvention
    - auto::baseDate
    - detail::CPI::isInterpolated
    - ext::make_shared<SimpleCashFlow>
    - availabilityLag
    - std::move
    - push_back
    - QL_FAIL
    - std::pow
    - registerWith
    - frequency
    - adjust
    - auto::fixingDate
    - ext::make_shared<ZeroInflationCashFlow>
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponInflationSwap::ZeroCouponInflationSwap(\n        Type
      type,\n        Real nominal,\n        const Date& startDate, // start date of
      contract (only)\n        const Date& maturity,  // this is pre-adjustment!\n
      \       Calendar fixCalendar,\n        BusinessDayConvention fixConvention,\n
      \       DayCounter dayCounter,\n        Rate fixedRate,\n        const ext::shared_ptr<ZeroInflationIndex>&
      infIndex,\n        const Period& observationLag,\n        CPI::InterpolationType
      observationInterpolation,\n        bool adjustInfObsDates,\n        Calendar
      infCalendar,\n        BusinessDayConvention infConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IndexedCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:128,1
    - Dst: at
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:129,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:132,1
    - Dst: ext::shared_ptr::notional
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:132,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:134,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:134,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:135,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 144
    functionName: QuantLib::ZeroCouponInflationSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::notional
    - inflationYearFraction
    - at
    - ext::dynamic_pointer_cast<IndexedCashFlow>
    - ext::shared_ptr::amount
    - std::pow
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:149,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 151
    functionName: QuantLib::ZeroCouponInflationSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:155,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: QuantLib::ZeroCouponInflationSwap::inflationLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::inflationLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: '& ZeroCouponInflationSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponInflationSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: '& ZeroCouponInflationSwap::inflationLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponInflationSwap::inflationLeg() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:55,1
    - Dst: detail::CPI::effectiveInterpolationType
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:57,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:59,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:59,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:65,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:67,1
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:71,1
    - Dst: BusinessDayConvention
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:73,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:76,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:77,1
    - Dst: ext::make_shared<ZeroInflationCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:82,1
    - Dst: auto::baseDate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:86,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:87,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:93,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:93,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:97,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:99,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 14
    argNames:
    - type
    - nominal
    - ' startDate'
    - ' maturity'
    - fixCalendar
    - fixConvention
    - dayCounter
    - fixedRate
    - ' infIndex'
    - ' observationLag'
    - observationInterpolation
    - adjustInfObsDates
    - infCalendar
    - infConvention
    argTypes:
    - Type
    - Real
    - Date
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Rate
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - bool
    - Calendar
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 118
    functionName: QuantLib::ZeroCouponInflationSwap::ZeroCouponInflationSwap
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - inflationYearFraction
    - detail::CPI::effectiveInterpolationType
    - BusinessDayConvention
    - auto::baseDate
    - detail::CPI::isInterpolated
    - ext::make_shared<SimpleCashFlow>
    - availabilityLag
    - std::move
    - push_back
    - QL_FAIL
    - std::pow
    - registerWith
    - frequency
    - adjust
    - auto::fixingDate
    - ext::make_shared<ZeroInflationCashFlow>
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponInflationSwap::ZeroCouponInflationSwap(\n        Type
      type,\n        Real nominal,\n        const Date& startDate, // start date of
      contract (only)\n        const Date& maturity,  // this is pre-adjustment!\n
      \       Calendar fixCalendar,\n        BusinessDayConvention fixConvention,\n
      \       DayCounter dayCounter,\n        Rate fixedRate,\n        const ext::shared_ptr<ZeroInflationIndex>&
      infIndex,\n        const Period& observationLag,\n        CPI::InterpolationType
      observationInterpolation,\n        bool adjustInfObsDates,\n        Calendar
      infCalendar,\n        BusinessDayConvention infConvention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IndexedCashFlow>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:128,1
    - Dst: at
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:129,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:132,1
    - Dst: ext::shared_ptr::notional
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:132,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:134,1
    - Dst: frequency
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:134,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:135,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 144
    functionName: QuantLib::ZeroCouponInflationSwap::fairRate
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::notional
    - inflationYearFraction
    - at
    - ext::dynamic_pointer_cast<IndexedCashFlow>
    - ext::shared_ptr::amount
    - std::pow
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:149,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 151
    functionName: QuantLib::ZeroCouponInflationSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:155,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: QuantLib::ZeroCouponInflationSwap::inflationLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroCouponInflationSwap::inflationLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: '& ZeroCouponInflationSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponInflationSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: '& ZeroCouponInflationSwap::inflationLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/zerocouponinflationswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & ZeroCouponInflationSwap::inflationLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:32,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - tenor
    - couponRate
    argTypes:
    - Period
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::MakeCreditDefaultSwap::MakeCreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void MakeCreditDefaultSwap::MakeCreditDefaultSwap(const Period &tenor,\n
      \                                                const Real couponRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:39,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - termDate
    - couponRate
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::MakeCreditDefaultSwap::MakeCreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void MakeCreditDefaultSwap::MakeCreditDefaultSwap(const Date &termDate,\n
      \                                                const Real couponRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: MakeCreditDefaultSwap::operator CreditDefaultSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCreditDefaultSwap::operator CreditDefaultSwap() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makecds.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makecds.cpp:49,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/makecds.cpp:50,1
    - Dst: cdsMaturity
      Src: /src/quantlib/ql/instruments/makecds.cpp:62,1
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/instruments/makecds.cpp:75,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/instruments/makecds.cpp:78,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecds.cpp:80,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 83
    functionName: MakeCreditDefaultSwap::operator ext::shared_ptr<CreditDefaultSwap>()
      const
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::setPricingEngine
    - cdsMaturity
    - ext::make_shared<CreditDefaultSwap>
    - WeekendsOnly
    - QuantLib::detail::instance
    - Date
    - ext::shared_ptr<Claim>
    linkageType: ''
    returnType: void
    signature: void MakeCreditDefaultSwap::operator ext::shared_ptr<CreditDefaultSwap>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - upfrontRate
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "&\n    MakeCreditDefaultSwap::withUpfrontRate(Real upfrontRate)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withUpfrontRate(Real
      upfrontRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - side
    argTypes:
    - Protection::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: "&\n    MakeCreditDefaultSwap::withSide(Protection::Side side)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withSide(Protection::Side
      side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nominal
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '&MakeCreditDefaultSwap::withNominal(Real nominal)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap &MakeCreditDefaultSwap::withNominal(Real nominal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - couponTenor
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: "&\n    MakeCreditDefaultSwap::withCouponTenor(Period couponTenor)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withCouponTenor(Period
      couponTenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dayCounter
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: "&\n    MakeCreditDefaultSwap::withDayCounter(DayCounter &dayCounter)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withDayCounter(DayCounter
      &dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lastPeriodDayCounter
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: "&MakeCreditDefaultSwap::withLastPeriodDayCounter(\n        DayCounter
      &lastPeriodDayCounter)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &MakeCreditDefaultSwap::withLastPeriodDayCounter(\n
      \       DayCounter &lastPeriodDayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rule
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& MakeCreditDefaultSwap::withDateGenerationRule(DateGeneration::Rule
      rule)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withDateGenerationRule(DateGeneration::Rule
      rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cashSettlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: '& MakeCreditDefaultSwap::withCashSettlementDays(Natural cashSettlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withCashSettlementDays(Natural
      cashSettlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - engine
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionName: "&MakeCreditDefaultSwap::withPricingEngine(\n        const ext::shared_ptr<PricingEngine>
      &engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &MakeCreditDefaultSwap::withPricingEngine(\n
      \       const ext::shared_ptr<PricingEngine> &engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tradeDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: '& MakeCreditDefaultSwap::withTradeDate(const Date& tradeDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withTradeDate(const
      Date& tradeDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:32,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - tenor
    - couponRate
    argTypes:
    - Period
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::MakeCreditDefaultSwap::MakeCreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void MakeCreditDefaultSwap::MakeCreditDefaultSwap(const Period &tenor,\n
      \                                                const Real couponRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:39,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makecds.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - termDate
    - couponRate
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::MakeCreditDefaultSwap::MakeCreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void MakeCreditDefaultSwap::MakeCreditDefaultSwap(const Date &termDate,\n
      \                                                const Real couponRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: MakeCreditDefaultSwap::operator CreditDefaultSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeCreditDefaultSwap::operator CreditDefaultSwap() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makecds.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makecds.cpp:49,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/makecds.cpp:50,1
    - Dst: cdsMaturity
      Src: /src/quantlib/ql/instruments/makecds.cpp:62,1
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/instruments/makecds.cpp:75,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/instruments/makecds.cpp:78,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makecds.cpp:80,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 83
    functionName: MakeCreditDefaultSwap::operator ext::shared_ptr<CreditDefaultSwap>()
      const
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::setPricingEngine
    - cdsMaturity
    - ext::make_shared<CreditDefaultSwap>
    - WeekendsOnly
    - QuantLib::detail::instance
    - Date
    - ext::shared_ptr<Claim>
    linkageType: ''
    returnType: void
    signature: void MakeCreditDefaultSwap::operator ext::shared_ptr<CreditDefaultSwap>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - upfrontRate
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "&\n    MakeCreditDefaultSwap::withUpfrontRate(Real upfrontRate)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withUpfrontRate(Real
      upfrontRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - side
    argTypes:
    - Protection::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: "&\n    MakeCreditDefaultSwap::withSide(Protection::Side side)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withSide(Protection::Side
      side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nominal
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '&MakeCreditDefaultSwap::withNominal(Real nominal)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap &MakeCreditDefaultSwap::withNominal(Real nominal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - couponTenor
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: "&\n    MakeCreditDefaultSwap::withCouponTenor(Period couponTenor)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withCouponTenor(Period
      couponTenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dayCounter
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: "&\n    MakeCreditDefaultSwap::withDayCounter(DayCounter &dayCounter)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &\n    MakeCreditDefaultSwap::withDayCounter(DayCounter
      &dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lastPeriodDayCounter
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: "&MakeCreditDefaultSwap::withLastPeriodDayCounter(\n        DayCounter
      &lastPeriodDayCounter)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &MakeCreditDefaultSwap::withLastPeriodDayCounter(\n
      \       DayCounter &lastPeriodDayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rule
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& MakeCreditDefaultSwap::withDateGenerationRule(DateGeneration::Rule
      rule)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withDateGenerationRule(DateGeneration::Rule
      rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cashSettlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: '& MakeCreditDefaultSwap::withCashSettlementDays(Natural cashSettlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withCashSettlementDays(Natural
      cashSettlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - engine
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionName: "&MakeCreditDefaultSwap::withPricingEngine(\n        const ext::shared_ptr<PricingEngine>
      &engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: "MakeCreditDefaultSwap &MakeCreditDefaultSwap::withPricingEngine(\n
      \       const ext::shared_ptr<PricingEngine> &engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tradeDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: '& MakeCreditDefaultSwap::withTradeDate(const Date& tradeDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makecds.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeCreditDefaultSwap
    signature: MakeCreditDefaultSwap & MakeCreditDefaultSwap::withTradeDate(const
      Date& tradeDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:28,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - Q1
    - Q2
    - ' exercise'
    argTypes:
    - Integer
    - Integer
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::MargrabeOption::MargrabeOption
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void MargrabeOption::MargrabeOption(Integer Q1,\n                                   Integer
      Q2,\n                                   const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::MargrabeOption::delta1
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::delta1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::MargrabeOption::delta2
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::delta2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::MargrabeOption::gamma1
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::gamma1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::MargrabeOption::gamma2
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::gamma2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:57,1
    - Dst: dynamic_cast<MargrabeOption::arguments*>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::MargrabeOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<MargrabeOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:69,1
    - Dst: Null<Integer>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:70,1
    - Dst: Null<Integer>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: MargrabeOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Integer>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:76,1
    - Dst: dynamic_cast<const MargrabeOption::results*>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: QuantLib::MargrabeOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<const MargrabeOption::results*>
    - QuantLib::MultiAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:28,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - Q1
    - Q2
    - ' exercise'
    argTypes:
    - Integer
    - Integer
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::MargrabeOption::MargrabeOption
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void MargrabeOption::MargrabeOption(Integer Q1,\n                                   Integer
      Q2,\n                                   const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:34,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::MargrabeOption::delta1
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::delta1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::MargrabeOption::delta2
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::delta2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::MargrabeOption::gamma1
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::gamma1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: QuantLib::MargrabeOption::gamma2
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MargrabeOption::gamma2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:57,1
    - Dst: dynamic_cast<MargrabeOption::arguments*>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::MargrabeOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<MargrabeOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:69,1
    - Dst: Null<Integer>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:70,1
    - Dst: Null<Integer>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: MargrabeOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Integer>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::fetchResults
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:76,1
    - Dst: dynamic_cast<const MargrabeOption::results*>
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/margrabeoption.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: QuantLib::MargrabeOption::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/margrabeoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dynamic_cast<const MargrabeOption::results*>
    - QuantLib::MultiAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: void MargrabeOption::fetchResults(const PricingEngine::results* r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::Bond::Price::Price
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void Price()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - type
    argTypes:
    - Real
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Bond::Price::Price
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Price(Real amount, Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.hpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::Bond::Price::amount
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Bond::Price::type
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Bond::Price::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:307,1
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/bond.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionName: QuantLib::Bond::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionName: QuantLib::Bond::settlementDays
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural Bond::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 324
    functionName: '& Bond::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Bond::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionName: '& Bond::notionals() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Bond::notionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionName: '& Bond::cashflows() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & Bond::cashflows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionName: '& Bond::redemptions() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & Bond::redemptions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: QuantLib::Bond::issueDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Bond::issueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::Bond::Price::Price
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void Price()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - type
    argTypes:
    - Real
    - Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Bond::Price::Price
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Price(Real amount, Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bond.hpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::Bond::Price::amount
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Bond::Price::type
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Bond::Price::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bond.hpp:307,1
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/bond.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionName: QuantLib::Bond::results::reset
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionName: QuantLib::Bond::settlementDays
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural Bond::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 324
    functionName: '& Bond::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Bond::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionName: '& Bond::notionals() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Bond::notionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionName: '& Bond::cashflows() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & Bond::cashflows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionName: '& Bond::redemptions() const'
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & Bond::redemptions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: QuantLib::Bond::issueDate
    functionSourceFile: /src/quantlib/ql/instruments/bond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Bond::issueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::NullPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string NullPayoff::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NullPayoff::name
      Src: /src/quantlib/ql/instruments/payoffs.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::NullPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NullPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string NullPayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: NullPayoff::operator()(Real) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real NullPayoff::operator()(Real) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<NullPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:40,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:42,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::NullPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::Payoff::accept
    - dynamic_cast<Visitor<NullPayoff>*>
    linkageType: ''
    returnType: void
    signature: void NullPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/instruments/payoffs.cpp:51,1
    - Dst: QuantLib::TypePayoff::optionType
      Src: /src/quantlib/ql/instruments/payoffs.cpp:51,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::TypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TypePayoff::optionType
    - std::ostringstream::str
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string TypePayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: FloatingTypePayoff::operator()(Real) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real FloatingTypePayoff::operator()(Real) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:68,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:70,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - price
    - strike
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: FloatingTypePayoff::operator()(Real price, Real strike) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real FloatingTypePayoff::operator()(Real price, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:78,1
    - Dst: QuantLib::StrikedTypePayoff::strike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:79,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::StrikedTypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TypePayoff::description
    - QuantLib::StrikedTypePayoff::strike
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string StrikedTypePayoff::description() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FloatingTypePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:84,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:86,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingTypePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<FloatingTypePayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void FloatingTypePayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:94,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionName: PlainVanillaPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real PlainVanillaPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<PlainVanillaPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:103,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:105,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 108
    functionName: QuantLib::PlainVanillaPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<PlainVanillaPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void PlainVanillaPayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:113,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:113,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:115,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: PercentageStrikePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Real
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real PercentageStrikePayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<PercentageStrikePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:122,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:124,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionName: QuantLib::PercentageStrikePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::Payoff::accept
    - dynamic_cast<Visitor<PercentageStrikePayoff>*>
    linkageType: ''
    returnType: void
    signature: void PercentageStrikePayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 138
    functionName: AssetOrNothingPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real AssetOrNothingPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AssetOrNothingPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:141,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:143,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 146
    functionName: QuantLib::AssetOrNothingPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<AssetOrNothingPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void AssetOrNothingPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:150,1
    - Dst: QuantLib::CashOrNothingPayoff::cashPayoff
      Src: /src/quantlib/ql/instruments/payoffs.cpp:150,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::CashOrNothingPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - QuantLib::CashOrNothingPayoff::cashPayoff
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string CashOrNothingPayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 163
    functionName: CashOrNothingPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real CashOrNothingPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CashOrNothingPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:166,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:168,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionName: QuantLib::CashOrNothingPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<CashOrNothingPayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void CashOrNothingPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:174,1
    - Dst: QuantLib::GapPayoff::secondStrike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:174,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 3
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: QuantLib::GapPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - QuantLib::GapPayoff::secondStrike
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string GapPayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:181,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:183,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: GapPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Real
    linkageType: ''
    returnType: Real
    signature: Real GapPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<GapPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:190,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:192,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 195
    functionName: QuantLib::GapPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<GapPayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void GapPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: SuperFundPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - Real
    linkageType: ''
    returnType: Real
    signature: Real SuperFundPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SuperFundPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:202,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:204,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::SuperFundPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<SuperFundPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void SuperFundPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: QuantLib::SuperSharePayoff::secondStrike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: QuantLib::SuperSharePayoff::cashPayoff
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 3
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: QuantLib::SuperSharePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SuperSharePayoff::cashPayoff
    - QuantLib::SuperSharePayoff::secondStrike
    - std::ostringstream::str
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string SuperSharePayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: SuperSharePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SuperSharePayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SuperSharePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:219,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:221,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: QuantLib::SuperSharePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<SuperSharePayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void SuperSharePayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::NullPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string NullPayoff::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NullPayoff::name
      Src: /src/quantlib/ql/instruments/payoffs.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::NullPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NullPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string NullPayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: NullPayoff::operator()(Real) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real NullPayoff::operator()(Real) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<NullPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:40,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:42,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::NullPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::Payoff::accept
    - dynamic_cast<Visitor<NullPayoff>*>
    linkageType: ''
    returnType: void
    signature: void NullPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/instruments/payoffs.cpp:51,1
    - Dst: QuantLib::TypePayoff::optionType
      Src: /src/quantlib/ql/instruments/payoffs.cpp:51,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::TypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TypePayoff::optionType
    - std::ostringstream::str
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string TypePayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: FloatingTypePayoff::operator()(Real) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real FloatingTypePayoff::operator()(Real) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:68,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:70,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - price
    - strike
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: FloatingTypePayoff::operator()(Real price, Real strike) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real FloatingTypePayoff::operator()(Real price, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:78,1
    - Dst: QuantLib::StrikedTypePayoff::strike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:79,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::StrikedTypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::TypePayoff::description
    - QuantLib::StrikedTypePayoff::strike
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string StrikedTypePayoff::description() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FloatingTypePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:84,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:86,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingTypePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<FloatingTypePayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void FloatingTypePayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:94,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionName: PlainVanillaPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real PlainVanillaPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<PlainVanillaPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:103,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:105,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 108
    functionName: QuantLib::PlainVanillaPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<PlainVanillaPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void PlainVanillaPayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:113,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:113,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:115,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: PercentageStrikePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Real
    - std::max<Real>
    linkageType: ''
    returnType: Real
    signature: Real PercentageStrikePayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<PercentageStrikePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:122,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:124,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionName: QuantLib::PercentageStrikePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::Payoff::accept
    - dynamic_cast<Visitor<PercentageStrikePayoff>*>
    linkageType: ''
    returnType: void
    signature: void PercentageStrikePayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 138
    functionName: AssetOrNothingPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real AssetOrNothingPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AssetOrNothingPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:141,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:143,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 146
    functionName: QuantLib::AssetOrNothingPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<AssetOrNothingPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void AssetOrNothingPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:150,1
    - Dst: QuantLib::CashOrNothingPayoff::cashPayoff
      Src: /src/quantlib/ql/instruments/payoffs.cpp:150,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::CashOrNothingPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - QuantLib::CashOrNothingPayoff::cashPayoff
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string CashOrNothingPayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 163
    functionName: CashOrNothingPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real CashOrNothingPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CashOrNothingPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:166,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:168,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionName: QuantLib::CashOrNothingPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<CashOrNothingPayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void CashOrNothingPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:174,1
    - Dst: QuantLib::GapPayoff::secondStrike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:174,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 3
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: QuantLib::GapPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - QuantLib::GapPayoff::secondStrike
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string GapPayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:181,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:183,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/payoffs.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: GapPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Real
    linkageType: ''
    returnType: Real
    signature: Real GapPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<GapPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:190,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:192,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 195
    functionName: QuantLib::GapPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<GapPayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void GapPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/instruments/payoffs.cpp:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: SuperFundPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - Real
    linkageType: ''
    returnType: Real
    signature: Real SuperFundPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SuperFundPayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:202,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:204,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::SuperFundPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<SuperFundPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void SuperFundPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrikedTypePayoff::description
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: QuantLib::SuperSharePayoff::secondStrike
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: QuantLib::SuperSharePayoff::cashPayoff
      Src: /src/quantlib/ql/instruments/payoffs.cpp:210,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/payoffs.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 3
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: QuantLib::SuperSharePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SuperSharePayoff::cashPayoff
    - QuantLib::SuperSharePayoff::secondStrike
    - std::ostringstream::str
    - QuantLib::StrikedTypePayoff::description
    linkageType: ''
    returnType: std::string
    signature: std::string SuperSharePayoff::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: SuperSharePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SuperSharePayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SuperSharePayoff>*>
      Src: /src/quantlib/ql/instruments/payoffs.cpp:219,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/payoffs.cpp:221,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/payoffs.cpp:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: QuantLib::SuperSharePayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<SuperSharePayoff>*>
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void SuperSharePayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::FixedVsFloatingSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FixedVsFloatingSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type FixedVsFloatingSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: QuantLib::FixedVsFloatingSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: '& FixedVsFloatingSwap::nominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::nominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: '& FixedVsFloatingSwap::fixedNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::fixedNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '& FixedVsFloatingSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & FixedVsFloatingSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::FixedVsFloatingSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate FixedVsFloatingSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: '& FixedVsFloatingSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & FixedVsFloatingSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: '& FixedVsFloatingSwap::floatingNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::floatingNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: '& FixedVsFloatingSwap::floatingSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & FixedVsFloatingSwap::floatingSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: '& FixedVsFloatingSwap::iborIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & FixedVsFloatingSwap::iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::FixedVsFloatingSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread FixedVsFloatingSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: '& FixedVsFloatingSwap::floatingDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & FixedVsFloatingSwap::floatingDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::FixedVsFloatingSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FixedVsFloatingSwap::paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: '& FixedVsFloatingSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & FixedVsFloatingSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: '& FixedVsFloatingSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & FixedVsFloatingSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::FixedVsFloatingSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FixedVsFloatingSwap::type
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type FixedVsFloatingSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: QuantLib::FixedVsFloatingSwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FixedVsFloatingSwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: '& FixedVsFloatingSwap::nominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::nominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: '& FixedVsFloatingSwap::fixedNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::fixedNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '& FixedVsFloatingSwap::fixedSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & FixedVsFloatingSwap::fixedSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::FixedVsFloatingSwap::fixedRate
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate FixedVsFloatingSwap::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: '& FixedVsFloatingSwap::fixedDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & FixedVsFloatingSwap::fixedDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: '& FixedVsFloatingSwap::floatingNominals() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FixedVsFloatingSwap::floatingNominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: '& FixedVsFloatingSwap::floatingSchedule() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: Schedule & FixedVsFloatingSwap::floatingSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: '& FixedVsFloatingSwap::iborIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & FixedVsFloatingSwap::iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::FixedVsFloatingSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread FixedVsFloatingSwap::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: '& FixedVsFloatingSwap::floatingDayCount() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & FixedVsFloatingSwap::floatingDayCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::FixedVsFloatingSwap::paymentConvention
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention FixedVsFloatingSwap::paymentConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: '& FixedVsFloatingSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & FixedVsFloatingSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: '& FixedVsFloatingSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/fixedvsfloatingswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & FixedVsFloatingSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - position
    - strike
    - notional
    - ' startDate'
    - ' maturityDate'
    argTypes:
    - Position::Type
    - Real
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::VarianceSwap::VarianceSwap
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VarianceSwap::VarianceSwap(\n                          Position::Type
      position,\n                          Real strike,\n                          Real
      notional,\n                          const Date& startDate,\n                          const
      Date& maturityDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:37,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::VarianceSwap::variance
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:42,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::VarianceSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VarianceSwap::arguments*>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::VarianceSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VarianceSwap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:58,1
    - Dst: dynamic_cast<const VarianceSwap::results*>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::VarianceSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const VarianceSwap::results*>
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:69,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 70
    functionName: VarianceSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::VarianceSwap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VarianceSwap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - position
    - strike
    - notional
    - ' startDate'
    - ' maturityDate'
    argTypes:
    - Position::Type
    - Real
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::VarianceSwap::VarianceSwap
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VarianceSwap::VarianceSwap(\n                          Position::Type
      position,\n                          Real strike,\n                          Real
      notional,\n                          const Date& startDate,\n                          const
      Date& maturityDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:37,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::VarianceSwap::variance
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real VarianceSwap::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:42,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::VarianceSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VarianceSwap::arguments*>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::VarianceSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VarianceSwap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:58,1
    - Dst: dynamic_cast<const VarianceSwap::results*>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::VarianceSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const VarianceSwap::results*>
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:64,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:69,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 70
    functionName: VarianceSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/varianceswap.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::VarianceSwap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/varianceswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VarianceSwap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& overnightIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::OvernightIndexFuture::valueDate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date valueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::OvernightIndexFuture::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& overnightIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::OvernightIndexFuture::valueDate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date valueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::OvernightIndexFuture::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:39,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - overnightIndex
    - ' valueDate'
    - ' maturityDate'
    - convexityAdjustment
    - averagingMethod
    argTypes:
    - ext::shared_ptr<OvernightIndex>
    - Date
    - Date
    - Handle<Quote>
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::OvernightIndexFuture::OvernightIndexFuture
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexFuture::OvernightIndexFuture(ext::shared_ptr<OvernightIndex>
      overnightIndex,\n                                               const Date&
      valueDate,\n                                               const Date& maturityDate,\n
      \                                              Handle<Quote> convexityAdjustment,\n
      \                                              RateAveraging::Type averagingMethod)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:43,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:44,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:45,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:46,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:50,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:51,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:57,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:57,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:61,1
    - Dst: Handle::forwardRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:62,1
    - Dst: Handle::forwardRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:68,1
    - Dst: std::min
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:68,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 73
    functionName: QuantLib::OvernightIndexFuture::averagedRate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - timeSeries
    - Calendar::adjust
    - DayCounter::yearFraction
    - name
    - dayCounter
    - Calendar::advance
    - Null<Real>
    - std::min
    - QuantLib::detail::instance
    - Handle::forwardRate
    - forwardingTermStructure
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::averagedRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:76,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:78,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:79,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:86,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:90,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:96,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:96,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:97,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:108,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:109,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:110,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:117,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:117,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 121
    functionName: QuantLib::OvernightIndexFuture::compoundedRate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - timeSeries
    - Calendar::adjust
    - DayCounter::yearFraction
    - Handle::discount
    - name
    - dayCounter
    - Null<Real>
    - Calendar::advance
    - QuantLib::detail::instance
    - forwardingTermStructure
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::compoundedRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFuture::averagedRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:126,1
    - Dst: QuantLib::OvernightIndexFuture::compoundedRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:130,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::OvernightIndexFuture::rate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    - QuantLib::OvernightIndexFuture::compoundedRate
    - QuantLib::OvernightIndexFuture::averagedRate
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::OvernightIndexFuture::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool OvernightIndexFuture::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:139,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::OvernightIndexFuture::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFuture::convexityAdjustment
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:143,1
    - Dst: QuantLib::OvernightIndexFuture::rate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::OvernightIndexFuture::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OvernightIndexFuture::convexityAdjustment
    - QuantLib::OvernightIndexFuture::rate
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFuture::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:39,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - overnightIndex
    - ' valueDate'
    - ' maturityDate'
    - convexityAdjustment
    - averagingMethod
    argTypes:
    - ext::shared_ptr<OvernightIndex>
    - Date
    - Date
    - Handle<Quote>
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::OvernightIndexFuture::OvernightIndexFuture
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexFuture::OvernightIndexFuture(ext::shared_ptr<OvernightIndex>
      overnightIndex,\n                                               const Date&
      valueDate,\n                                               const Date& maturityDate,\n
      \                                              Handle<Quote> convexityAdjustment,\n
      \                                              RateAveraging::Type averagingMethod)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:43,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:44,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:45,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:46,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:50,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:51,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:57,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:57,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:61,1
    - Dst: Handle::forwardRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:62,1
    - Dst: Handle::forwardRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:68,1
    - Dst: std::min
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:68,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 73
    functionName: QuantLib::OvernightIndexFuture::averagedRate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - Calendar::adjust
    - DayCounter::yearFraction
    - name
    - dayCounter
    - Calendar::advance
    - Null<Real>
    - std::min
    - QuantLib::detail::instance
    - Handle::forwardRate
    - forwardingTermStructure
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::averagedRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:76,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:78,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:79,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:86,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:90,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:96,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:96,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:97,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:108,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:109,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:110,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:117,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:117,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 121
    functionName: QuantLib::OvernightIndexFuture::compoundedRate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - Calendar::adjust
    - DayCounter::yearFraction
    - Handle::discount
    - name
    - dayCounter
    - Null<Real>
    - Calendar::advance
    - QuantLib::detail::instance
    - forwardingTermStructure
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::compoundedRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFuture::averagedRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:126,1
    - Dst: QuantLib::OvernightIndexFuture::compoundedRate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:130,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::OvernightIndexFuture::rate
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - Integer
    - QuantLib::OvernightIndexFuture::compoundedRate
    - QuantLib::OvernightIndexFuture::averagedRate
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::OvernightIndexFuture::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool OvernightIndexFuture::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:139,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::OvernightIndexFuture::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 1
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFuture::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFuture::convexityAdjustment
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:143,1
    - Dst: QuantLib::OvernightIndexFuture::rate
      Src: /src/quantlib/ql/instruments/overnightindexfuture.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::OvernightIndexFuture::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexfuture.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OvernightIndexFuture::convexityAdjustment
    - QuantLib::OvernightIndexFuture::rate
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFuture::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' engine'
    - ' vol'
    - targetValue
    argTypes:
    - PricingEngine
    - SimpleQuote
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::PriceError::PriceError
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - dynamic_cast<const Instrument::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PriceError::PriceError(const PricingEngine& engine,\n                               SimpleQuote&
      vol,\n                               Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:51,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: PriceError::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real PriceError::operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' engine'
    - ' vol'
    - targetValue
    argTypes:
    - PricingEngine
    - SimpleQuote
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::PriceError::PriceError
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - dynamic_cast<const Instrument::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PriceError::PriceError(const PricingEngine& engine,\n                               SimpleQuote&
      vol,\n                               Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:51,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: PriceError::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real PriceError::operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:72,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:76,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' instrument'
    - ' engine'
    - ' volQuote'
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Instrument
    - PricingEngine
    - SimpleQuote
    - Real
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::ImpliedVolatilityHelper::calculate
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - setupArguments
    - getArguments
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ImpliedVolatilityHelper::calculate(\n                                                 const
      Instrument& instrument,\n                                                 const
      PricingEngine& engine,\n                                                 SimpleQuote&
      volQuote,\n                                                 Real targetValue,\n
      \                                                Real accuracy,\n                                                 Natural
      maxEvaluations,\n                                                 Volatility
      minVol,\n                                                 Volatility maxVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:92,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:94,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:96,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:97,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:98,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' process'
    - ' volQuote'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SimpleQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::detail::ImpliedVolatilityHelper::clone
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - riskFreeRate
    - Handle::calendar
    - Handle::referenceDate
    - ext::shared_ptr<BlackVolTermStructure>
    - Handle<Quote>
    - BlackConstantVol::BlackConstantVol
    - Handle::dayCounter
    - stateVariable
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> ImpliedVolatilityHelper::clone(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const ext::shared_ptr<SimpleQuote>& volQuote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:72,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:76,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' instrument'
    - ' engine'
    - ' volQuote'
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Instrument
    - PricingEngine
    - SimpleQuote
    - Real
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::ImpliedVolatilityHelper::calculate
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - setupArguments
    - getArguments
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ImpliedVolatilityHelper::calculate(\n                                                 const
      Instrument& instrument,\n                                                 const
      PricingEngine& engine,\n                                                 SimpleQuote&
      volQuote,\n                                                 Real targetValue,\n
      \                                                Real accuracy,\n                                                 Natural
      maxEvaluations,\n                                                 Volatility
      minVol,\n                                                 Volatility maxVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:92,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:94,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:96,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:97,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:98,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' process'
    - ' volQuote'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SimpleQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::detail::ImpliedVolatilityHelper::clone
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - riskFreeRate
    - Handle::calendar
    - Handle::referenceDate
    - ext::shared_ptr<BlackVolTermStructure>
    - Handle<Quote>
    - BlackConstantVol::BlackConstantVol
    - Handle::dayCounter
    - stateVariable
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> ImpliedVolatilityHelper::clone(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const ext::shared_ptr<SimpleQuote>& volQuote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' engine'
    - ' vol'
    - targetValue
    argTypes:
    - PricingEngine
    - SimpleQuote
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::PriceError::PriceError
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - dynamic_cast<const Instrument::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PriceError::PriceError(const PricingEngine& engine,\n                               SimpleQuote&
      vol,\n                               Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:51,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: PriceError::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real PriceError::operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' engine'
    - ' vol'
    - targetValue
    argTypes:
    - PricingEngine
    - SimpleQuote
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::PriceError::PriceError
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - dynamic_cast<const Instrument::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PriceError::PriceError(const PricingEngine& engine,\n                               SimpleQuote&
      vol,\n                               Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:51,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: PriceError::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real PriceError::operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:72,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:76,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' instrument'
    - ' engine'
    - ' volQuote'
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Instrument
    - PricingEngine
    - SimpleQuote
    - Real
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::ImpliedVolatilityHelper::calculate
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - setupArguments
    - getArguments
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ImpliedVolatilityHelper::calculate(\n                                                 const
      Instrument& instrument,\n                                                 const
      PricingEngine& engine,\n                                                 SimpleQuote&
      volQuote,\n                                                 Real targetValue,\n
      \                                                Real accuracy,\n                                                 Natural
      maxEvaluations,\n                                                 Volatility
      minVol,\n                                                 Volatility maxVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:92,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:94,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:96,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:97,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:98,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' process'
    - ' volQuote'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SimpleQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::detail::ImpliedVolatilityHelper::clone
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - riskFreeRate
    - Handle::calendar
    - Handle::referenceDate
    - ext::shared_ptr<BlackVolTermStructure>
    - Handle<Quote>
    - BlackConstantVol::BlackConstantVol
    - Handle::dayCounter
    - stateVariable
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> ImpliedVolatilityHelper::clone(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const ext::shared_ptr<SimpleQuote>& volQuote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:71,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:72,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:76,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' instrument'
    - ' engine'
    - ' volQuote'
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Instrument
    - PricingEngine
    - SimpleQuote
    - Real
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::ImpliedVolatilityHelper::calculate
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - setupArguments
    - getArguments
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ImpliedVolatilityHelper::calculate(\n                                                 const
      Instrument& instrument,\n                                                 const
      PricingEngine& engine,\n                                                 SimpleQuote&
      volQuote,\n                                                 Real targetValue,\n
      \                                                Real accuracy,\n                                                 Natural
      maxEvaluations,\n                                                 Volatility
      minVol,\n                                                 Volatility maxVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:92,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:94,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:96,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:97,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:98,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:95,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/instruments/impliedvolatility.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' process'
    - ' volQuote'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SimpleQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::detail::ImpliedVolatilityHelper::clone
    functionSourceFile: /src/quantlib/ql/instruments/impliedvolatility.cpp
    functionUses: 6
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - riskFreeRate
    - Handle::calendar
    - Handle::referenceDate
    - ext::shared_ptr<BlackVolTermStructure>
    - Handle<Quote>
    - BlackConstantVol::BlackConstantVol
    - Handle::dayCounter
    - stateVariable
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> ImpliedVolatilityHelper::clone(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            const ext::shared_ptr<SimpleQuote>& volQuote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makeois.cpp:38,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:39,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:40,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeois.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' overnightIndex'
    - fixedRate
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<OvernightIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::MakeOIS::MakeOIS
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - Null<Natural>
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeOIS::MakeOIS(const Period& swapTenor,\n                     const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                     Rate
      fixedRate,\n                     const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: MakeOIS::operator OvernightIndexedSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeOIS::operator OvernightIndexedSwap() const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:51,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makeois.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<Sonia>
      Src: /src/quantlib/ql/instruments/makeois.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<Corra>
      Src: /src/quantlib/ql/instruments/makeois.cpp:60,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeois.cpp:68,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:71,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeois.cpp:72,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makeois.cpp:75,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:76,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:78,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/instruments/makeois.cpp:84,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:91,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeois.cpp:93,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeois.cpp:135,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeois.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeois.cpp:147,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/instruments/makeois.cpp:147,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makeois.cpp:149,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:151,1
    - Dst: OvernightIndexedSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:153,1
    - Dst: OvernightIndexedSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:155,1
    - Dst: OvernightIndexedSwap::fairRate
      Src: /src/quantlib/ql/instruments/makeois.cpp:157,1
    - Dst: OvernightIndexedSwap::OvernightIndexedSwap
      Src: /src/quantlib/ql/instruments/makeois.cpp:160,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeois.cpp:173,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:175,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:177,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:179,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 182
    functionName: MakeOIS::operator ext::shared_ptr<OvernightIndexedSwap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<Corra>
    - ext::shared_ptr::setPricingEngine
    - length
    - Date
    - Null<Rate>
    - ext::dynamic_pointer_cast<Sonia>
    - adjust
    - OvernightIndexedSwap::fairRate
    - name
    - OvernightIndexedSwap::OvernightIndexedSwap
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Handle::empty
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - Null<Natural>
    - isEndOfMonth
    - QuantLib::detail::instance
    - OvernightIndexedSwap::setPricingEngine
    linkageType: ''
    returnType: void
    signature: void MakeOIS::operator ext::shared_ptr<OvernightIndexedSwap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& MakeOIS::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::receiveFixed(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& MakeOIS::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withType(Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& MakeOIS::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: '& MakeOIS::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withSettlementDays(Natural settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: '& MakeOIS::withEffectiveDate(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withEffectiveDate(const Date& effectiveDate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:212,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makeois.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: '& MakeOIS::withTerminationDate(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - Date
    - Period
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTerminationDate(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegPaymentFrequency
      Src: /src/quantlib/ql/instruments/makeois.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: '& MakeOIS::withPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegPaymentFrequency
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: '& MakeOIS::withFixedLegPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: '& MakeOIS::withOvernightLegPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: '& MakeOIS::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: '& MakeOIS::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: '& MakeOIS::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionName: '& MakeOIS::withCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegCalendar
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeOIS::withFixedLegCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: '& MakeOIS::withOvernightLegCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegRule
      Src: /src/quantlib/ql/instruments/makeois.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: '& MakeOIS::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegRule
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: '& MakeOIS::withFixedLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: '& MakeOIS::withOvernightLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/makeois.cpp:277,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: "& MakeOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeOIS
    signature: "MakeOIS & MakeOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 286
    functionName: "& MakeOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: "MakeOIS & MakeOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: '& MakeOIS::withFixedLegDayCount(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegDayCount(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionName: '& MakeOIS::withConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegConvention
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 300
    functionName: '& MakeOIS::withFixedLegConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: '& MakeOIS::withOvernightLegConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:308,1
    - Dst: withOvernightLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: '& MakeOIS::withTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegTerminationDateConvention
    - withOvernightLegTerminationDateConvention
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionName: '& MakeOIS::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& MakeOIS::withOvernightLegTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegEndOfMonth
      Src: /src/quantlib/ql/instruments/makeois.cpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 324
    functionName: '& MakeOIS::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegEndOfMonth
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: '& MakeOIS::withFixedLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 336
    functionName: '& MakeOIS::withOvernightLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionName: '& MakeOIS::withOvernightLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegSpread(Spread sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - telescopicValueDates
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionName: '& MakeOIS::withTelescopicValueDates(bool telescopicValueDates)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTelescopicValueDates(bool telescopicValueDates)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionName: '& MakeOIS::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withAveragingMethod(RateAveraging::Type averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lookbackDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 356
    functionName: '& MakeOIS::withLookbackDays(Natural lookbackDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withLookbackDays(Natural lookbackDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lockoutDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 361
    functionName: '& MakeOIS::withLockoutDays(Natural lockoutDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withLockoutDays(Natural lockoutDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - applyObservationShift
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 366
    functionName: '& MakeOIS::withObservationShift(bool applyObservationShift)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withObservationShift(bool applyObservationShift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makeois.cpp:38,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:39,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:40,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeois.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' overnightIndex'
    - fixedRate
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<OvernightIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::MakeOIS::MakeOIS
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - Null<Natural>
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeOIS::MakeOIS(const Period& swapTenor,\n                     const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                     Rate
      fixedRate,\n                     const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: MakeOIS::operator OvernightIndexedSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeOIS::operator OvernightIndexedSwap() const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:51,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makeois.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<Sonia>
      Src: /src/quantlib/ql/instruments/makeois.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<Corra>
      Src: /src/quantlib/ql/instruments/makeois.cpp:60,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeois.cpp:68,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:71,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeois.cpp:72,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makeois.cpp:75,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:76,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeois.cpp:78,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/instruments/makeois.cpp:84,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:91,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeois.cpp:93,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeois.cpp:135,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeois.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeois.cpp:147,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/instruments/makeois.cpp:147,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makeois.cpp:149,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:151,1
    - Dst: OvernightIndexedSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:153,1
    - Dst: OvernightIndexedSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:155,1
    - Dst: OvernightIndexedSwap::fairRate
      Src: /src/quantlib/ql/instruments/makeois.cpp:157,1
    - Dst: OvernightIndexedSwap::OvernightIndexedSwap
      Src: /src/quantlib/ql/instruments/makeois.cpp:160,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeois.cpp:173,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:175,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:177,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:179,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 182
    functionName: MakeOIS::operator ext::shared_ptr<OvernightIndexedSwap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<Corra>
    - ext::shared_ptr::setPricingEngine
    - length
    - Date
    - Null<Rate>
    - ext::dynamic_pointer_cast<Sonia>
    - adjust
    - OvernightIndexedSwap::fairRate
    - name
    - OvernightIndexedSwap::OvernightIndexedSwap
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Handle::empty
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - Null<Natural>
    - isEndOfMonth
    - QuantLib::detail::instance
    - OvernightIndexedSwap::setPricingEngine
    linkageType: ''
    returnType: void
    signature: void MakeOIS::operator ext::shared_ptr<OvernightIndexedSwap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& MakeOIS::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::receiveFixed(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& MakeOIS::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withType(Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& MakeOIS::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: '& MakeOIS::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withSettlementDays(Natural settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: '& MakeOIS::withEffectiveDate(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withEffectiveDate(const Date& effectiveDate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeois.cpp:212,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makeois.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: '& MakeOIS::withTerminationDate(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - Date
    - Period
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTerminationDate(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegPaymentFrequency
      Src: /src/quantlib/ql/instruments/makeois.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: '& MakeOIS::withPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegPaymentFrequency
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: '& MakeOIS::withFixedLegPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: '& MakeOIS::withOvernightLegPaymentFrequency(Frequency f)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegPaymentFrequency(Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: '& MakeOIS::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: '& MakeOIS::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: '& MakeOIS::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegCalendar
      Src: /src/quantlib/ql/instruments/makeois.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionName: '& MakeOIS::withCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegCalendar
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeOIS::withFixedLegCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: '& MakeOIS::withOvernightLegCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegRule
      Src: /src/quantlib/ql/instruments/makeois.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: '& MakeOIS::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegRule
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: '& MakeOIS::withFixedLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: '& MakeOIS::withOvernightLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/makeois.cpp:277,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makeois.cpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: "& MakeOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeOIS
    signature: "MakeOIS & MakeOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 286
    functionName: "& MakeOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: "MakeOIS & MakeOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: '& MakeOIS::withFixedLegDayCount(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegDayCount(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionName: '& MakeOIS::withConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegConvention
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 300
    functionName: '& MakeOIS::withFixedLegConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegConvention(BusinessDayConvention bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: '& MakeOIS::withOvernightLegConvention(BusinessDayConvention bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:308,1
    - Dst: withOvernightLegTerminationDateConvention
      Src: /src/quantlib/ql/instruments/makeois.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: '& MakeOIS::withTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegTerminationDateConvention
    - withOvernightLegTerminationDateConvention
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionName: '& MakeOIS::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& MakeOIS::withOvernightLegTerminationDateConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegTerminationDateConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: withFixedLegEndOfMonth
      Src: /src/quantlib/ql/instruments/makeois.cpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 324
    functionName: '& MakeOIS::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached:
    - withFixedLegEndOfMonth
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: '& MakeOIS::withFixedLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withFixedLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 336
    functionName: '& MakeOIS::withOvernightLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionName: '& MakeOIS::withOvernightLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withOvernightLegSpread(Spread sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - telescopicValueDates
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionName: '& MakeOIS::withTelescopicValueDates(bool telescopicValueDates)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withTelescopicValueDates(bool telescopicValueDates)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionName: '& MakeOIS::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withAveragingMethod(RateAveraging::Type averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lookbackDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 356
    functionName: '& MakeOIS::withLookbackDays(Natural lookbackDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withLookbackDays(Natural lookbackDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lockoutDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 361
    functionName: '& MakeOIS::withLockoutDays(Natural lockoutDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withLockoutDays(Natural lockoutDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - applyObservationShift
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 366
    functionName: '& MakeOIS::withObservationShift(bool applyObservationShift)'
    functionSourceFile: /src/quantlib/ql/instruments/makeois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeOIS
    signature: MakeOIS & MakeOIS::withObservationShift(bool applyObservationShift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:58,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:58,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:59,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:61,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:62,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:63,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:64,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:66,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:67,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:68,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:69,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:70,1
    - Dst: QuantLib::FloatFloatSwap::init
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 21
    argNames:
    - type
    - nominal1
    - nominal2
    - schedule1
    - index1
    - dayCount1
    - schedule2
    - index2
    - dayCount2
    - intermediateCapitalExchange
    - finalCapitalExchange
    - gearing1
    - spread1
    - cappedRate1
    - flooredRate1
    - gearing2
    - spread2
    - cappedRate2
    - flooredRate2
    - ' paymentConvention1'
    - ' paymentConvention2'
    argTypes:
    - Swap::Type
    - Real
    - Real
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - bool
    - bool
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 75
    functionName: QuantLib::FloatFloatSwap::FloatFloatSwap
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule::size
    - std::vector<Real>
    - std::move
    - size
    - QuantLib::FloatFloatSwap::init
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::FloatFloatSwap(const Swap::Type type,\n                                   const
      Real nominal1,\n                                   const Real nominal2,\n                                   Schedule
      schedule1,\n                                   ext::shared_ptr<InterestRateIndex>
      index1,\n                                   DayCounter dayCount1,\n                                   Schedule
      schedule2,\n                                   ext::shared_ptr<InterestRateIndex>
      index2,\n                                   DayCounter dayCount2,\n                                   const
      bool intermediateCapitalExchange,\n                                   const
      bool finalCapitalExchange,\n                                   const Real gearing1,\n
      \                                  const Real spread1,\n                                   const
      Real cappedRate1,\n                                   const Real flooredRate1,\n
      \                                  const Real gearing2,\n                                   const
      Real spread2,\n                                   const Real cappedRate2,\n
      \                                  const Real flooredRate2,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention1,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:104,1
    - Dst: QuantLib::FloatFloatSwap::init
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 21
    argNames:
    - type
    - nominal1
    - nominal2
    - schedule1
    - index1
    - dayCount1
    - schedule2
    - index2
    - dayCount2
    - intermediateCapitalExchange
    - finalCapitalExchange
    - gearing1
    - spread1
    - cappedRate1
    - flooredRate1
    - gearing2
    - spread2
    - cappedRate2
    - flooredRate2
    - ' paymentConvention1'
    - ' paymentConvention2'
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - bool
    - bool
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 109
    functionName: QuantLib::FloatFloatSwap::FloatFloatSwap
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatFloatSwap::init
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::FloatFloatSwap(const Swap::Type type,\n                                   std::vector<Real>
      nominal1,\n                                   std::vector<Real> nominal2,\n
      \                                  Schedule schedule1,\n                                   ext::shared_ptr<InterestRateIndex>
      index1,\n                                   DayCounter dayCount1,\n                                   Schedule
      schedule2,\n                                   ext::shared_ptr<InterestRateIndex>
      index2,\n                                   DayCounter dayCount2,\n                                   const
      bool intermediateCapitalExchange,\n                                   const
      bool finalCapitalExchange,\n                                   std::vector<Real>
      gearing1,\n                                   std::vector<Real> spread1,\n                                   std::vector<Real>
      cappedRate1,\n                                   std::vector<Real> flooredRate1,\n
      \                                  std::vector<Real> gearing2,\n                                   std::vector<Real>
      spread2,\n                                   std::vector<Real> cappedRate2,\n
      \                                  std::vector<Real> flooredRate2,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention1,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention2)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:118,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:140,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:145,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:150,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:152,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:153,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:153,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:154,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:155,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:155,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:156,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:157,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:158,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:159,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:160,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:162,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:164,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:166,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:173,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:178,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:178,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:185,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:197,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:209,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:214,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:214,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:223,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:226,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:230,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:232,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:234,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:236,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:238,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:242,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:244,1
    - Dst: IborLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:249,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:254,1
    - Dst: IborLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:255,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:256,1
    - Dst: IborLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:257,1
    - Dst: IborLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:263,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:268,1
    - Dst: IborLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:269,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:270,1
    - Dst: IborLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:271,1
    - Dst: CmsLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:282,1
    - Dst: CmsLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:283,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:284,1
    - Dst: CmsLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:285,1
    - Dst: CmsLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:291,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:296,1
    - Dst: CmsLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:297,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:298,1
    - Dst: CmsLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:299,1
    - Dst: CmsSpreadLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:305,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:310,1
    - Dst: CmsSpreadLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:311,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:312,1
    - Dst: CmsSpreadLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:313,1
    - Dst: CmsSpreadLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:319,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:324,1
    - Dst: CmsSpreadLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:325,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:326,1
    - Dst: CmsSpreadLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:327,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:332,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:334,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:335,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:336,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:337,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:338,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:339,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:339,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:340,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:341,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:342,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:346,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:348,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:349,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:350,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:351,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:352,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:353,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:353,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:354,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:355,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:356,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:363,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:363,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:365,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:365,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:366,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:366,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:368,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:368,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:371,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:371,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:372,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:374,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:374,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:375,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:387,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 151
    argCount: 2
    argNames:
    - paymentConvention1
    - paymentConvention2
    argTypes:
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 389
    functionName: QuantLib::FloatFloatSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 2
    functionsReached:
    - close
    - IborLeg::withNotionals
    - CmsLeg::withCaps
    - registerWith
    - IborLeg::withCaps
    - back
    - CmsLeg::withFloors
    - IborLeg::withFloors
    - ext::dynamic_pointer_cast<IborIndex>
    - date
    - empty
    - ext::shared_ptr<CashFlow>
    - begin
    - size
    - std::advance
    - CmsLeg::withNotionals
    - CmsSpreadLeg::withCaps
    - Null<Real>
    - std::vector<Real>
    - push_back
    - QL_FAIL
    - end
    - insert
    - Redemption::Redemption
    - QL_REQUIRE
    - CmsSpreadLeg::withFloors
    - ext::dynamic_pointer_cast<SwapIndex>
    - ext::dynamic_pointer_cast<SwapSpreadIndex>
    - CmsSpreadLeg::withNotionals
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::init(\n        ext::optional<BusinessDayConvention>
      paymentConvention1,\n        ext::optional<BusinessDayConvention> paymentConvention2)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:393,1
    - Dst: dynamic_cast<FloatFloatSwap::arguments*>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:395,1
    - Dst: leg1
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:406,1
    - Dst: leg2
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:407,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:410,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:410,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:412,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:412,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:415,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:415,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:417,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:417,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:425,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:425,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:427,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:427,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:434,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:436,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:438,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:439,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:440,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:441,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:442,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:443,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:445,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:448,1
    - Dst: ext::dynamic_pointer_cast<CappedFlooredCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:451,1
    - Dst: ext::shared_ptr::cap
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:454,1
    - Dst: ext::shared_ptr::floor
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:455,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:459,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:461,1
    - Dst: auto*::leg1PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:461,1
    - Dst: auto*::leg1PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:462,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:463,1
    - Dst: auto*::leg1PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:463,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:465,1
    - Dst: auto*::leg1PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:467,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:469,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:476,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:480,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:482,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:484,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:485,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:486,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:487,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:488,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:489,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:491,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:494,1
    - Dst: ext::dynamic_pointer_cast<CappedFlooredCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:497,1
    - Dst: ext::shared_ptr::cap
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:500,1
    - Dst: ext::shared_ptr::floor
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:501,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:505,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:507,1
    - Dst: auto*::leg2PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:507,1
    - Dst: auto*::leg2PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:508,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:508,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:509,1
    - Dst: auto*::leg2PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:509,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:511,1
    - Dst: auto*::leg2PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:513,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:515,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:522,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 77
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 391
    functionDepth: 2
    functionLinenumber: 391
    functionLinenumberEnd: 525
    functionName: QuantLib::FloatFloatSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - auto*::leg1PayDates::end
    - ext::dynamic_pointer_cast<CappedFlooredCoupon>
    - std::vector<bool>
    - ext::shared_ptr::accrualPeriod
    - auto*::leg1PayDates::begin
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualStartDate
    - std::vector<Date>
    - auto*::leg2PayDates::begin
    - Leg::size
    - std::find
    - QuantLib::CPISwap::setupArguments
    - ext::shared_ptr::cap
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<CashFlow>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - QL_REQUIRE
    - auto*::leg2PayDates::end
    - leg1
    - ext::shared_ptr::amount
    - ext::shared_ptr::floor
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    - leg2
    - dynamic_cast<FloatFloatSwap::arguments*>
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 527
    functionName: QuantLib::FloatFloatSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 529
    functionDepth: 2
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionName: QuantLib::FloatFloatSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::fetchResults(const PricingEngine::results *r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:535,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:579,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 533
    functionDepth: 2
    functionLinenumber: 533
    functionLinenumberEnd: 581
    functionName: FloatFloatSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 583
    functionName: FloatFloatSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:58,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:58,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:59,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:61,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:62,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:63,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:64,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:66,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:67,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:68,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:69,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:70,1
    - Dst: QuantLib::FloatFloatSwap::init
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 21
    argNames:
    - type
    - nominal1
    - nominal2
    - schedule1
    - index1
    - dayCount1
    - schedule2
    - index2
    - dayCount2
    - intermediateCapitalExchange
    - finalCapitalExchange
    - gearing1
    - spread1
    - cappedRate1
    - flooredRate1
    - gearing2
    - spread2
    - cappedRate2
    - flooredRate2
    - ' paymentConvention1'
    - ' paymentConvention2'
    argTypes:
    - Swap::Type
    - Real
    - Real
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - bool
    - bool
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 75
    functionName: QuantLib::FloatFloatSwap::FloatFloatSwap
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - Schedule::size
    - std::vector<Real>
    - std::move
    - size
    - QuantLib::FloatFloatSwap::init
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::FloatFloatSwap(const Swap::Type type,\n                                   const
      Real nominal1,\n                                   const Real nominal2,\n                                   Schedule
      schedule1,\n                                   ext::shared_ptr<InterestRateIndex>
      index1,\n                                   DayCounter dayCount1,\n                                   Schedule
      schedule2,\n                                   ext::shared_ptr<InterestRateIndex>
      index2,\n                                   DayCounter dayCount2,\n                                   const
      bool intermediateCapitalExchange,\n                                   const
      bool finalCapitalExchange,\n                                   const Real gearing1,\n
      \                                  const Real spread1,\n                                   const
      Real cappedRate1,\n                                   const Real flooredRate1,\n
      \                                  const Real gearing2,\n                                   const
      Real spread2,\n                                   const Real cappedRate2,\n
      \                                  const Real flooredRate2,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention1,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:104,1
    - Dst: QuantLib::FloatFloatSwap::init
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 21
    argNames:
    - type
    - nominal1
    - nominal2
    - schedule1
    - index1
    - dayCount1
    - schedule2
    - index2
    - dayCount2
    - intermediateCapitalExchange
    - finalCapitalExchange
    - gearing1
    - spread1
    - cappedRate1
    - flooredRate1
    - gearing2
    - spread2
    - cappedRate2
    - flooredRate2
    - ' paymentConvention1'
    - ' paymentConvention2'
    argTypes:
    - Swap::Type
    - std::vector<Real>
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<InterestRateIndex>
    - DayCounter
    - bool
    - bool
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 109
    functionName: QuantLib::FloatFloatSwap::FloatFloatSwap
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatFloatSwap::init
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::FloatFloatSwap(const Swap::Type type,\n                                   std::vector<Real>
      nominal1,\n                                   std::vector<Real> nominal2,\n
      \                                  Schedule schedule1,\n                                   ext::shared_ptr<InterestRateIndex>
      index1,\n                                   DayCounter dayCount1,\n                                   Schedule
      schedule2,\n                                   ext::shared_ptr<InterestRateIndex>
      index2,\n                                   DayCounter dayCount2,\n                                   const
      bool intermediateCapitalExchange,\n                                   const
      bool finalCapitalExchange,\n                                   std::vector<Real>
      gearing1,\n                                   std::vector<Real> spread1,\n                                   std::vector<Real>
      cappedRate1,\n                                   std::vector<Real> flooredRate1,\n
      \                                  std::vector<Real> gearing2,\n                                   std::vector<Real>
      spread2,\n                                   std::vector<Real> cappedRate2,\n
      \                                  std::vector<Real> flooredRate2,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention1,\n                                   const
      ext::optional<BusinessDayConvention>& paymentConvention2)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:118,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:140,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:145,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:150,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:152,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:153,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:153,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:154,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:155,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:155,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:156,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:157,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:158,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:159,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:160,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:161,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:162,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:163,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:164,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:165,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:166,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:173,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:178,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:178,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:185,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:197,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:202,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:209,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:214,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:214,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:223,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:226,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:230,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:232,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:234,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:236,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:238,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:242,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:244,1
    - Dst: IborLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:249,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:254,1
    - Dst: IborLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:255,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:256,1
    - Dst: IborLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:257,1
    - Dst: IborLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:263,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:268,1
    - Dst: IborLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:269,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:270,1
    - Dst: IborLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:271,1
    - Dst: CmsLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:282,1
    - Dst: CmsLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:283,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:284,1
    - Dst: CmsLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:285,1
    - Dst: CmsLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:291,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:296,1
    - Dst: CmsLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:297,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:298,1
    - Dst: CmsLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:299,1
    - Dst: CmsSpreadLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:305,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:310,1
    - Dst: CmsSpreadLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:311,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:312,1
    - Dst: CmsSpreadLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:313,1
    - Dst: CmsSpreadLeg::withNotionals
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:319,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:324,1
    - Dst: CmsSpreadLeg::withCaps
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:325,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:326,1
    - Dst: CmsSpreadLeg::withFloors
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:327,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:332,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:334,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:335,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:336,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:337,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:338,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:339,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:339,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:340,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:341,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:342,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:346,1
    - Dst: close
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:348,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:349,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:350,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:351,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:352,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:353,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:353,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:354,1
    - Dst: std::advance
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:355,1
    - Dst: insert
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:356,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:363,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:363,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:364,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:365,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:365,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:366,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:366,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: Redemption::Redemption
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:367,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:368,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:368,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:371,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:371,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:372,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:374,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:374,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:375,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:387,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 151
    argCount: 2
    argNames:
    - paymentConvention1
    - paymentConvention2
    argTypes:
    - ext::optional<BusinessDayConvention>
    - ext::optional<BusinessDayConvention>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 389
    functionName: QuantLib::FloatFloatSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 4
    functionsReached:
    - close
    - IborLeg::withNotionals
    - CmsLeg::withCaps
    - registerWith
    - IborLeg::withCaps
    - back
    - CmsLeg::withFloors
    - IborLeg::withFloors
    - ext::dynamic_pointer_cast<IborIndex>
    - date
    - empty
    - ext::shared_ptr<CashFlow>
    - begin
    - size
    - std::advance
    - CmsLeg::withNotionals
    - CmsSpreadLeg::withCaps
    - Null<Real>
    - std::vector<Real>
    - push_back
    - QL_FAIL
    - end
    - insert
    - Redemption::Redemption
    - QL_REQUIRE
    - CmsSpreadLeg::withFloors
    - ext::dynamic_pointer_cast<SwapIndex>
    - ext::dynamic_pointer_cast<SwapSpreadIndex>
    - CmsSpreadLeg::withNotionals
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void FloatFloatSwap::init(\n        ext::optional<BusinessDayConvention>
      paymentConvention1,\n        ext::optional<BusinessDayConvention> paymentConvention2)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:393,1
    - Dst: dynamic_cast<FloatFloatSwap::arguments*>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:395,1
    - Dst: leg1
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:406,1
    - Dst: leg2
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:407,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:410,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:410,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:412,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:412,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:415,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:415,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:417,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:417,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:420,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:422,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:425,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:425,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:427,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:427,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:430,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:432,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:434,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:436,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:438,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:439,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:440,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:441,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:442,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:443,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:445,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:448,1
    - Dst: ext::dynamic_pointer_cast<CappedFlooredCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:451,1
    - Dst: ext::shared_ptr::cap
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:454,1
    - Dst: ext::shared_ptr::floor
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:455,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:459,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:461,1
    - Dst: auto*::leg1PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:461,1
    - Dst: auto*::leg1PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:462,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:463,1
    - Dst: auto*::leg1PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:463,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:465,1
    - Dst: auto*::leg1PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:467,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:469,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:476,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:480,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:482,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:484,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:485,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:486,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:487,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:488,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:489,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:491,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:494,1
    - Dst: ext::dynamic_pointer_cast<CappedFlooredCoupon>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:497,1
    - Dst: ext::shared_ptr::cap
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:500,1
    - Dst: ext::shared_ptr::floor
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:501,1
    - Dst: ext::dynamic_pointer_cast<CashFlow>
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:505,1
    - Dst: std::find
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:507,1
    - Dst: auto*::leg2PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:507,1
    - Dst: auto*::leg2PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:508,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:508,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:509,1
    - Dst: auto*::leg2PayDates::end
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:509,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:511,1
    - Dst: auto*::leg2PayDates::begin
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:513,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:515,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:522,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 77
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 391
    functionDepth: 2
    functionLinenumber: 391
    functionLinenumberEnd: 525
    functionName: QuantLib::FloatFloatSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - auto*::leg1PayDates::end
    - ext::dynamic_pointer_cast<CappedFlooredCoupon>
    - std::vector<bool>
    - ext::shared_ptr::accrualPeriod
    - auto*::leg1PayDates::begin
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualStartDate
    - std::vector<Date>
    - auto*::leg2PayDates::begin
    - Leg::size
    - std::find
    - QuantLib::CPISwap::setupArguments
    - ext::shared_ptr::cap
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<CashFlow>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - QL_REQUIRE
    - auto*::leg2PayDates::end
    - leg1
    - ext::shared_ptr::amount
    - ext::shared_ptr::floor
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    - leg2
    - dynamic_cast<FloatFloatSwap::arguments*>
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::setupArguments(PricingEngine::arguments *args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 527
    functionName: QuantLib::FloatFloatSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 529
    functionDepth: 2
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionName: QuantLib::FloatFloatSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::fetchResults(const PricingEngine::results *r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:535,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:537,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:539,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:541,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:543,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:545,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:547,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:549,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:551,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:553,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:555,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:558,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:560,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:562,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:564,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:566,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:568,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:570,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:572,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:574,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:576,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:579,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 533
    functionDepth: 2
    functionLinenumber: 533
    functionLinenumberEnd: 581
    functionName: FloatFloatSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/instruments/floatfloatswap.cpp:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 583
    functionName: FloatFloatSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/floatfloatswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VarianceSwap::results::reset
    linkageType: ''
    returnType: void
    signature: void FloatFloatSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: '& ForwardRateAgreement::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & ForwardRateAgreement::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::ForwardRateAgreement::businessDayConvention
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention ForwardRateAgreement::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: '& ForwardRateAgreement::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & ForwardRateAgreement::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::ForwardRateAgreement::discountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> ForwardRateAgreement::discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: '& ForwardRateAgreement::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & ForwardRateAgreement::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::ForwardRateAgreement::businessDayConvention
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention ForwardRateAgreement::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: '& ForwardRateAgreement::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & ForwardRateAgreement::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::ForwardRateAgreement::discountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> ForwardRateAgreement::discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::TypePayoff::optionType
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Option::Type
    signature: Option::Type optionType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::TypePayoff::TypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TypePayoff(Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::FloatingTypePayoff::FloatingTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FloatingTypePayoff(Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::FloatingTypePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::StrikedTypePayoff::strike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::StrikedTypePayoff::StrikedTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StrikedTypePayoff(Option::Type type,\n                          Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::PlainVanillaPayoff::PlainVanillaPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PlainVanillaPayoff(Option::Type type,\n                           Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::PlainVanillaPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - moneyness
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::PercentageStrikePayoff::PercentageStrikePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PercentageStrikePayoff(Option::Type type,\n                               Real
      moneyness)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::PercentageStrikePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AssetOrNothingPayoff::AssetOrNothingPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AssetOrNothingPayoff(Option::Type type,\n                             Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: QuantLib::AssetOrNothingPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - cashPayoff
    argTypes:
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::CashOrNothingPayoff::CashOrNothingPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CashOrNothingPayoff(Option::Type type,\n                            Real
      strike,\n                            Real cashPayoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::CashOrNothingPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::CashOrNothingPayoff::cashPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cashPayoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - secondStrike
    argTypes:
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::GapPayoff::GapPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GapPayoff(Option::Type type,\n                  Real strike,\n
      \                 Real secondStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 186
    functionName: QuantLib::GapPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::GapPayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:213,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - strike
    - secondStrike
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 219
    functionName: QuantLib::SuperFundPayoff::SuperFundPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SuperFundPayoff(Real strike,\n                        Real secondStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::SuperFundPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::SuperFundPayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - secondStrike
    - cashPayoff
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 242
    functionName: QuantLib::SuperSharePayoff::SuperSharePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SuperSharePayoff(Real strike,\n                         Real
      secondStrike,\n                         Real cashPayoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 246
    functionName: QuantLib::SuperSharePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 251
    functionName: QuantLib::SuperSharePayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 252
    functionName: QuantLib::SuperSharePayoff::cashPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cashPayoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::TypePayoff::optionType
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Option::Type
    signature: Option::Type optionType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::TypePayoff::TypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TypePayoff(Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::FloatingTypePayoff::FloatingTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FloatingTypePayoff(Option::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::FloatingTypePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::StrikedTypePayoff::strike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::StrikedTypePayoff::StrikedTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StrikedTypePayoff(Option::Type type,\n                          Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::PlainVanillaPayoff::PlainVanillaPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PlainVanillaPayoff(Option::Type type,\n                           Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::PlainVanillaPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - moneyness
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::PercentageStrikePayoff::PercentageStrikePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PercentageStrikePayoff(Option::Type type,\n                               Real
      moneyness)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::PercentageStrikePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AssetOrNothingPayoff::AssetOrNothingPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AssetOrNothingPayoff(Option::Type type,\n                             Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: QuantLib::AssetOrNothingPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - cashPayoff
    argTypes:
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::CashOrNothingPayoff::CashOrNothingPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CashOrNothingPayoff(Option::Type type,\n                            Real
      strike,\n                            Real cashPayoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::CashOrNothingPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::CashOrNothingPayoff::cashPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cashPayoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - secondStrike
    argTypes:
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::GapPayoff::GapPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GapPayoff(Option::Type type,\n                  Real strike,\n
      \                 Real secondStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 186
    functionName: QuantLib::GapPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::GapPayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:213,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - strike
    - secondStrike
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 219
    functionName: QuantLib::SuperFundPayoff::SuperFundPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SuperFundPayoff(Real strike,\n                        Real secondStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::SuperFundPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::SuperFundPayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/payoffs.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - secondStrike
    - cashPayoff
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 242
    functionName: QuantLib::SuperSharePayoff::SuperSharePayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SuperSharePayoff(Real strike,\n                         Real
      secondStrike,\n                         Real cashPayoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 246
    functionName: QuantLib::SuperSharePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 251
    functionName: QuantLib::SuperSharePayoff::secondStrike
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 252
    functionName: QuantLib::SuperSharePayoff::cashPayoff
    functionSourceFile: /src/quantlib/ql/instruments/payoffs.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cashPayoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::EuropeanOption::EuropeanOption
    functionSourceFile: /src/quantlib/ql/instruments/europeanoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EuropeanOption::EuropeanOption(\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::EuropeanOption::EuropeanOption
    functionSourceFile: /src/quantlib/ql/instruments/europeanoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EuropeanOption::EuropeanOption(\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' index'
    - ' valueDate'
    - type
    - strikeForwardRate
    - notionalAmount
    - discountCurve
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    - Position::Type
    - Rate
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::ForwardRateAgreement::ForwardRateAgreement
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - maturityDate
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardRateAgreement::ForwardRateAgreement(const ext::shared_ptr<IborIndex>&
      index,\n                                               const Date& valueDate,\n
      \                                              Position::Type type,\n                                               Rate
      strikeForwardRate,\n                                               Real notionalAmount,\n
      \                                              Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:47,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:48,1
    - Dst: QuantLib::ForwardRateAgreement::businessDayConvention
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:50,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:58,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 7
    argNames:
    - ' index'
    - ' valueDate'
    - ' maturityDate'
    - type
    - strikeForwardRate
    - notionalAmount
    - discountCurve
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    - Date
    - Position::Type
    - Rate
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 64
    functionName: QuantLib::ForwardRateAgreement::ForwardRateAgreement
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - QuantLib::ForwardRateAgreement::businessDayConvention
    - std::move
    - registerWith
    - QuantLib::detail::instance
    - InterestRate
    - adjust
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardRateAgreement::ForwardRateAgreement(const ext::shared_ptr<IborIndex>&
      index,\n                                               const Date& valueDate,\n
      \                                              const Date& maturityDate,\n                                               Position::Type
      type,\n                                               Rate strikeForwardRate,\n
      \                                              Real notionalAmount,\n                                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::fixingDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::ForwardRateAgreement::fixingDate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardRateAgreement::fixingDate
    linkageType: ''
    returnType: Date
    signature: Date ForwardRateAgreement::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::ForwardRateAgreement::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool ForwardRateAgreement::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::ForwardRateAgreement::amount
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ForwardRateAgreement::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::ForwardRateAgreement::forwardRate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: InterestRate
    signature: InterestRate ForwardRateAgreement::forwardRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:85,1
    - Dst: QuantLib::ForwardRateAgreement::calculateForwardRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::ForwardRateAgreement::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - QuantLib::ForwardRateAgreement::calculateForwardRate
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::calculateAmount
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:90,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:92,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:92,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::ForwardRateAgreement::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardRateAgreement::calculateAmount
    - Handle::discount
    - empty
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: fixing
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: QuantLib::ForwardRateAgreement::fixingDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:103,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:103,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:104,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:106,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::ForwardRateAgreement::calculateForwardRate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardRateAgreement::fixingDate
    - dayCounter
    - InterestRate
    - fixing
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::calculateForwardRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::calculateForwardRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:111,1
    - Dst: rate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:113,1
    - Dst: rate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:114,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 3
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: QuantLib::ForwardRateAgreement::calculateAmount
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 1
    functionsReached:
    - dayCounter
    - rate
    - QuantLib::ForwardRateAgreement::calculateForwardRate
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::calculateAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' index'
    - ' valueDate'
    - type
    - strikeForwardRate
    - notionalAmount
    - discountCurve
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    - Position::Type
    - Rate
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::ForwardRateAgreement::ForwardRateAgreement
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - maturityDate
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardRateAgreement::ForwardRateAgreement(const ext::shared_ptr<IborIndex>&
      index,\n                                               const Date& valueDate,\n
      \                                              Position::Type type,\n                                               Rate
      strikeForwardRate,\n                                               Real notionalAmount,\n
      \                                              Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:47,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:48,1
    - Dst: QuantLib::ForwardRateAgreement::businessDayConvention
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:50,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:58,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 7
    argNames:
    - ' index'
    - ' valueDate'
    - ' maturityDate'
    - type
    - strikeForwardRate
    - notionalAmount
    - discountCurve
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    - Date
    - Position::Type
    - Rate
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 64
    functionName: QuantLib::ForwardRateAgreement::ForwardRateAgreement
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - QuantLib::ForwardRateAgreement::businessDayConvention
    - std::move
    - registerWith
    - QuantLib::detail::instance
    - InterestRate
    - adjust
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardRateAgreement::ForwardRateAgreement(const ext::shared_ptr<IborIndex>&
      index,\n                                               const Date& valueDate,\n
      \                                              const Date& maturityDate,\n                                               Position::Type
      type,\n                                               Rate strikeForwardRate,\n
      \                                              Real notionalAmount,\n                                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::fixingDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::ForwardRateAgreement::fixingDate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ForwardRateAgreement::fixingDate
    linkageType: ''
    returnType: Date
    signature: Date ForwardRateAgreement::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::ForwardRateAgreement::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool ForwardRateAgreement::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::ForwardRateAgreement::amount
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ForwardRateAgreement::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::ForwardRateAgreement::forwardRate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: InterestRate
    signature: InterestRate ForwardRateAgreement::forwardRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:85,1
    - Dst: QuantLib::ForwardRateAgreement::calculateForwardRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::ForwardRateAgreement::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - QuantLib::ForwardRateAgreement::calculateForwardRate
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::calculateAmount
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:90,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:92,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:92,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 4
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::ForwardRateAgreement::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardRateAgreement::calculateAmount
    - Handle::discount
    - empty
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: fixing
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: QuantLib::ForwardRateAgreement::fixingDate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:99,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:103,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:103,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:104,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:106,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::ForwardRateAgreement::calculateForwardRate
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ForwardRateAgreement::fixingDate
    - dayCounter
    - InterestRate
    - fixing
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::calculateForwardRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateAgreement::calculateForwardRate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:111,1
    - Dst: rate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:113,1
    - Dst: rate
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:114,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/forwardrateagreement.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 3
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: QuantLib::ForwardRateAgreement::calculateAmount
    functionSourceFile: /src/quantlib/ql/instruments/forwardrateagreement.cpp
    functionUses: 2
    functionsReached:
    - dayCounter
    - rate
    - QuantLib::ForwardRateAgreement::calculateForwardRate
    linkageType: ''
    returnType: void
    signature: void ForwardRateAgreement::calculateAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::CliquetOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:66,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/cliquetoption.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::CliquetOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/cliquetoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::AssetSwap::parSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool parSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::AssetSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::AssetSwap::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cleanPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::AssetSwap::nonParRepayment
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonParRepayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '& bond() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Bond>
    signature: ext::shared_ptr<Bond> & bond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::AssetSwap::payBondCoupon
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool payBondCoupon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: '& bondLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & bondLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::AssetSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::AssetSwap::parSwap
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool parSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::AssetSwap::spread
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::AssetSwap::cleanPrice
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real cleanPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::AssetSwap::nonParRepayment
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonParRepayment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '& bond() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Bond>
    signature: ext::shared_ptr<Bond> & bond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::AssetSwap::payBondCoupon
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool payBondCoupon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: '& bondLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & bondLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::AssetSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/assetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/stock.cpp:25,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/stock.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - quote
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::Stock::Stock
    functionSourceFile: /src/quantlib/ql/instruments/stock.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void Stock::Stock(Handle<Quote> quote)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stock.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/stock.cpp:28,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/stock.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Stock::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/stock.cpp
    functionUses: 0
    functionsReached:
    - value
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Stock::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/stock.cpp:25,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/stock.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - quote
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::Stock::Stock
    functionSourceFile: /src/quantlib/ql/instruments/stock.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void Stock::Stock(Handle<Quote> quote)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stock.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/stock.cpp:28,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/stock.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Stock::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/stock.cpp
    functionUses: 0
    functionsReached:
    - value
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Stock::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~Claim() override
    functionSourceFile: /src/quantlib/ql/instruments/claim.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Claim() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/instruments/claim.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::Claim::update
    functionSourceFile: /src/quantlib/ql/instruments/claim.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~Claim() override
    functionSourceFile: /src/quantlib/ql/instruments/claim.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Claim() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/instruments/claim.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::Claim::update
    functionSourceFile: /src/quantlib/ql/instruments/claim.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::CPICapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option::Type
    signature: Option::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::CPICapFloor::nominal
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::CPICapFloor::strike
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: '& index() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::CPICapFloor::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::CPICapFloor::type
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option::Type
    signature: Option::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::CPICapFloor::nominal
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::CPICapFloor::strike
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: '& index() const'
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::CPICapFloor::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/cpicapfloor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:48,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:50,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:51,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' index'
    - fixedRate
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<IborIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: QuantLib::MakeVanillaSwap::MakeVanillaSwap
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - Null<Natural>
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeVanillaSwap::MakeVanillaSwap(const Period& swapTenor,\n                                     const
      ext::shared_ptr<IborIndex>& index,\n                                     Rate
      fixedRate,\n                                     const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: MakeVanillaSwap::operator VanillaSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeVanillaSwap::operator VanillaSwap() const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:63,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:66,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:69,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:73,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:74,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:76,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:78,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:81,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:82,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:88,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:90,1
    - Dst: currency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:98,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:100,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:103,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:104,1
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:105,1
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:106,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:107,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:108,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:109,1
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:110,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:111,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:112,1
    - Dst: HKDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:113,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:114,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:117,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:135,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:138,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:139,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:140,1
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:140,1
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:141,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:142,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:143,1
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:143,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:144,1
    - Dst: HKDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:144,1
    - Dst: THBCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:145,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:148,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:152,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:160,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:160,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:162,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:164,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:166,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:168,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:170,1
    - Dst: VanillaSwap::VanillaSwap
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:173,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:179,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:181,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:183,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:185,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 188
    functionName: MakeVanillaSwap::operator ext::shared_ptr<VanillaSwap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - VanillaSwap::VanillaSwap
    - HKDCurrency
    - ext::shared_ptr::setPricingEngine
    - SEKCurrency
    - JPYCurrency
    - Actual360
    - length
    - THBCurrency
    - Date
    - DayCounter
    - AUDCurrency
    - CHFCurrency
    - Actual365Fixed
    - VanillaSwap::fairRate
    - Null<Rate>
    - EURCurrency
    - adjust
    - USDCurrency
    - GBPCurrency
    - name
    - valueDate
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Period
    - QL_FAIL
    - Handle::empty
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - Null<Natural>
    - QuantLib::detail::instance
    - currency
    - VanillaSwap::setPricingEngine
    - Thirty360
    linkageType: ''
    returnType: void
    signature: void MakeVanillaSwap::operator ext::shared_ptr<VanillaSwap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: '& MakeVanillaSwap::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::receiveFixed(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: '& MakeVanillaSwap::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withType(Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: '& MakeVanillaSwap::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: '& MakeVanillaSwap::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withSettlementDays(Natural settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionName: "&\n    MakeVanillaSwap::withEffectiveDate(const Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withEffectiveDate(const Date&
      effectiveDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:220,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: "&\n    MakeVanillaSwap::withTerminationDate(const Date& terminationDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - Period
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withTerminationDate(const
      Date& terminationDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: '& MakeVanillaSwap::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: '& MakeVanillaSwap::withPaymentConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withPaymentConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:239,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 242
    functionName: "& MakeVanillaSwap::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap & MakeVanillaSwap::withDiscountingTermStructure(\n
      \                                       const Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "& MakeVanillaSwap::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap & MakeVanillaSwap::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeVanillaSwap::withFixedLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegTenor(const Period&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeVanillaSwap::withFixedLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegCalendar(const
      Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeVanillaSwap::withFixedLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeVanillaSwap::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MakeVanillaSwap::withFixedLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MakeVanillaSwap::withFixedLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 286
    functionName: '& MakeVanillaSwap::withFixedLegFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegFirstDate(const Date&
      d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 292
    functionName: "&\n    MakeVanillaSwap::withFixedLegNextToLastDate(const Date&
      d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegNextToLastDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: "&\n    MakeVanillaSwap::withFixedLegDayCount(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegDayCount(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionName: '& MakeVanillaSwap::withFloatingLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegTenor(const Period&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 309
    functionName: "&\n    MakeVanillaSwap::withFloatingLegCalendar(const Calendar&
      cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegCalendar(const
      Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 315
    functionName: "&\n    MakeVanillaSwap::withFloatingLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 321
    functionName: "&\n    MakeVanillaSwap::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: '& MakeVanillaSwap::withFloatingLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionName: '& MakeVanillaSwap::withFloatingLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: "&\n    MakeVanillaSwap::withFloatingLegFirstDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegFirstDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: "&\n    MakeVanillaSwap::withFloatingLegNextToLastDate(const Date&
      d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegNextToLastDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: "&\n    MakeVanillaSwap::withFloatingLegDayCount(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegDayCount(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: '& MakeVanillaSwap::withFloatingLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegSpread(Spread sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& MakeVanillaSwap::withIndexedCoupons(const ext::optional<bool>&
      b)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withIndexedCoupons(const ext::optional<bool>&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& MakeVanillaSwap::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withAtParCoupons(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:48,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:50,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:51,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' swapTenor'
    - ' index'
    - fixedRate
    - ' forwardStart'
    argTypes:
    - Period
    - ext::shared_ptr<IborIndex>
    - Rate
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: QuantLib::MakeVanillaSwap::MakeVanillaSwap
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - Null<Natural>
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MakeVanillaSwap::MakeVanillaSwap(const Period& swapTenor,\n                                     const
      ext::shared_ptr<IborIndex>& index,\n                                     Rate
      fixedRate,\n                                     const Period& forwardStart)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: MakeVanillaSwap::operator VanillaSwap() const
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeVanillaSwap::operator VanillaSwap() const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:63,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:66,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:69,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:73,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:74,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:76,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:78,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:81,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:82,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:88,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:90,1
    - Dst: currency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:98,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:100,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:103,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:104,1
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:105,1
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:106,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:107,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:108,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:109,1
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:110,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:111,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:112,1
    - Dst: HKDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:113,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:114,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:117,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:135,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:138,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:139,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:140,1
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:140,1
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:141,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:142,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:143,1
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:143,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:144,1
    - Dst: HKDCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:144,1
    - Dst: THBCurrency
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:145,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:148,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:152,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:160,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:160,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:162,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:164,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:166,1
    - Dst: VanillaSwap::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:168,1
    - Dst: VanillaSwap::fairRate
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:170,1
    - Dst: VanillaSwap::VanillaSwap
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:173,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:179,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:181,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:183,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:185,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 188
    functionName: MakeVanillaSwap::operator ext::shared_ptr<VanillaSwap>() const
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - VanillaSwap::VanillaSwap
    - HKDCurrency
    - ext::shared_ptr::setPricingEngine
    - SEKCurrency
    - JPYCurrency
    - Actual360
    - length
    - THBCurrency
    - Date
    - DayCounter
    - AUDCurrency
    - CHFCurrency
    - Actual365Fixed
    - VanillaSwap::fairRate
    - Null<Rate>
    - EURCurrency
    - adjust
    - USDCurrency
    - GBPCurrency
    - name
    - valueDate
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Period
    - QL_FAIL
    - Handle::empty
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - Null<Natural>
    - QuantLib::detail::instance
    - currency
    - VanillaSwap::setPricingEngine
    - Thirty360
    linkageType: ''
    returnType: void
    signature: void MakeVanillaSwap::operator ext::shared_ptr<VanillaSwap>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: '& MakeVanillaSwap::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::receiveFixed(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: '& MakeVanillaSwap::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withType(Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: '& MakeVanillaSwap::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: '& MakeVanillaSwap::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withSettlementDays(Natural settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionName: "&\n    MakeVanillaSwap::withEffectiveDate(const Date& effectiveDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withEffectiveDate(const Date&
      effectiveDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:220,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: "&\n    MakeVanillaSwap::withTerminationDate(const Date& terminationDate)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - Period
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withTerminationDate(const
      Date& terminationDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: '& MakeVanillaSwap::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: '& MakeVanillaSwap::withPaymentConvention(BusinessDayConvention
      bdc)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withPaymentConvention(BusinessDayConvention
      bdc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:239,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/instruments/makevanillaswap.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 242
    functionName: "& MakeVanillaSwap::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap & MakeVanillaSwap::withDiscountingTermStructure(\n
      \                                       const Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "& MakeVanillaSwap::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap & MakeVanillaSwap::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: '& MakeVanillaSwap::withFixedLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegTenor(const Period&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeVanillaSwap::withFixedLegCalendar(const Calendar& cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegCalendar(const
      Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeVanillaSwap::withFixedLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeVanillaSwap::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MakeVanillaSwap::withFixedLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MakeVanillaSwap::withFixedLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 286
    functionName: '& MakeVanillaSwap::withFixedLegFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFixedLegFirstDate(const Date&
      d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 292
    functionName: "&\n    MakeVanillaSwap::withFixedLegNextToLastDate(const Date&
      d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegNextToLastDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: "&\n    MakeVanillaSwap::withFixedLegDayCount(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFixedLegDayCount(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionName: '& MakeVanillaSwap::withFloatingLegTenor(const Period& t)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegTenor(const Period&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 309
    functionName: "&\n    MakeVanillaSwap::withFloatingLegCalendar(const Calendar&
      cal)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegCalendar(const
      Calendar& cal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 315
    functionName: "&\n    MakeVanillaSwap::withFloatingLegConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 321
    functionName: "&\n    MakeVanillaSwap::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegTerminationDateConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: '& MakeVanillaSwap::withFloatingLegRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionName: '& MakeVanillaSwap::withFloatingLegEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegEndOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: "&\n    MakeVanillaSwap::withFloatingLegFirstDate(const Date& d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegFirstDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: "&\n    MakeVanillaSwap::withFloatingLegNextToLastDate(const Date&
      d)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegNextToLastDate(const
      Date& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: "&\n    MakeVanillaSwap::withFloatingLegDayCount(const DayCounter&
      dc)"
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: "MakeVanillaSwap &\n    MakeVanillaSwap::withFloatingLegDayCount(const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: '& MakeVanillaSwap::withFloatingLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withFloatingLegSpread(Spread sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& MakeVanillaSwap::withIndexedCoupons(const ext::optional<bool>&
      b)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withIndexedCoupons(const ext::optional<bool>&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& MakeVanillaSwap::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makevanillaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeVanillaSwap
    signature: MakeVanillaSwap & MakeVanillaSwap::withAtParCoupons(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SimpleChooserOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SimpleChooserOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/simplechooseroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::businessDayConvention
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:43,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:49,1
    - Dst: Schedule::businessDayConvention
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:53,1
    - Dst: AverageBMALeg
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:75,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 10
    argNames:
    - type
    - nominal
    - liborSchedule
    - liborFraction
    - liborSpread
    - ' liborIndex'
    - ' liborDayCount'
    - bmaSchedule
    - ' bmaIndex'
    - ' bmaDayCount'
    argTypes:
    - Type
    - Real
    - Schedule
    - Real
    - Spread
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<BMAIndex>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 77
    functionName: QuantLib::BMASwap::BMASwap
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - fixingDays
    - std::move
    - IborLeg
    - Schedule::businessDayConvention
    - QL_FAIL
    - AverageBMALeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void BMASwap::BMASwap(Type type,\n                     Real nominal,\n
      \                    // Libor leg\n                     Schedule liborSchedule,\n
      \                    Real liborFraction,\n                     Spread liborSpread,\n
      \                    const ext::shared_ptr<IborIndex>& liborIndex,\n                     const
      DayCounter& liborDayCount,\n                     // BMA leg\n                     Schedule
      bmaSchedule,\n                     const ext::shared_ptr<BMAIndex>& bmaIndex,\n
      \                    const DayCounter& bmaDayCount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::BMASwap::liborFraction
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborFraction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::BMASwap::liborSpread
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread BMASwap::liborSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::BMASwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::BMASwap::type
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type BMASwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& BMASwap::liborLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & BMASwap::liborLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& BMASwap::bmaLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & BMASwap::bmaLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::BMASwap::liborLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:112,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::BMASwap::liborLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BMASwap::liborLegBPS
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:119,1
    - Dst: QuantLib::BMASwap::liborLegNPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:121,1
    - Dst: QuantLib::BMASwap::bmaLegNPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: QuantLib::BMASwap::fairLiborFraction
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BMASwap::liborLegNPV
    - QuantLib::BMASwap::liborLegBPS
    - QuantLib::BMASwap::bmaLegNPV
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::fairLiborFraction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:129,1
    - Dst: QuantLib::BMASwap::liborLegBPS
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::BMASwap::fairLiborSpread
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - QuantLib::BMASwap::liborLegBPS
    linkageType: ''
    returnType: Spread
    signature: Spread BMASwap::fairLiborSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:134,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: QuantLib::BMASwap::bmaLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::bmaLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:140,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::BMASwap::bmaLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::bmaLegNPV() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::businessDayConvention
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:43,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:45,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:49,1
    - Dst: Schedule::businessDayConvention
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:53,1
    - Dst: AverageBMALeg
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:75,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 10
    argNames:
    - type
    - nominal
    - liborSchedule
    - liborFraction
    - liborSpread
    - ' liborIndex'
    - ' liborDayCount'
    - bmaSchedule
    - ' bmaIndex'
    - ' bmaDayCount'
    argTypes:
    - Type
    - Real
    - Schedule
    - Real
    - Spread
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - Schedule
    - ext::shared_ptr<BMAIndex>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 77
    functionName: QuantLib::BMASwap::BMASwap
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - fixingDays
    - std::move
    - IborLeg
    - Schedule::businessDayConvention
    - QL_FAIL
    - AverageBMALeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void BMASwap::BMASwap(Type type,\n                     Real nominal,\n
      \                    // Libor leg\n                     Schedule liborSchedule,\n
      \                    Real liborFraction,\n                     Spread liborSpread,\n
      \                    const ext::shared_ptr<IborIndex>& liborIndex,\n                     const
      DayCounter& liborDayCount,\n                     // BMA leg\n                     Schedule
      bmaSchedule,\n                     const ext::shared_ptr<BMAIndex>& bmaIndex,\n
      \                    const DayCounter& bmaDayCount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::BMASwap::liborFraction
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborFraction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::BMASwap::liborSpread
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread BMASwap::liborSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::BMASwap::nominal
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::BMASwap::type
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type BMASwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& BMASwap::liborLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & BMASwap::liborLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& BMASwap::bmaLeg() const'
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & BMASwap::bmaLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::BMASwap::liborLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:112,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::BMASwap::liborLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::liborLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BMASwap::liborLegBPS
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:119,1
    - Dst: QuantLib::BMASwap::liborLegNPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:121,1
    - Dst: QuantLib::BMASwap::bmaLegNPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: QuantLib::BMASwap::fairLiborFraction
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BMASwap::liborLegNPV
    - QuantLib::BMASwap::liborLegBPS
    - QuantLib::BMASwap::bmaLegNPV
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::fairLiborFraction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NPV
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:129,1
    - Dst: QuantLib::BMASwap::liborLegBPS
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::BMASwap::fairLiborSpread
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - QuantLib::BMASwap::liborLegBPS
    linkageType: ''
    returnType: Spread
    signature: Spread BMASwap::fairLiborSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:134,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: QuantLib::BMASwap::bmaLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::bmaLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:140,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bmaswap.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::BMASwap::bmaLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/bmaswap.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwap::bmaLegNPV() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barriertype.cpp:40,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/barriertype.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Barrier::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: "& operator<<(std::ostream& out,\n                             Barrier::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/barriertype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Barrier::Type
      type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/barriertype.cpp:40,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/barriertype.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - Barrier::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: "& operator<<(std::ostream& out,\n                             Barrier::Type
      type)"
    functionSourceFile: /src/quantlib/ql/instruments/barriertype.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Barrier::Type
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forward.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Position::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::ForwardTypePayoff::ForwardTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ForwardTypePayoff(Position::Type type, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::ForwardTypePayoff::forwardType
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Position::Type
    signature: Position::Type forwardType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::ForwardTypePayoff::strike
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 155
    functionName: QuantLib::ForwardTypePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: '& Forward::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Forward::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::Forward::businessDayConvention
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Forward::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: '& Forward::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & Forward::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::Forward::discountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> Forward::discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::Forward::incomeDiscountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> Forward::incomeDiscountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardTypePayoff::name
      Src: /src/quantlib/ql/instruments/forward.hpp:191,1
    - Dst: QuantLib::ForwardTypePayoff::strike
      Src: /src/quantlib/ql/instruments/forward.hpp:191,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/forward.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 193
    functionName: QuantLib::ForwardTypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardTypePayoff::name
    - std::ostringstream::str
    - QuantLib::ForwardTypePayoff::strike
    linkageType: ''
    returnType: std::string
    signature: std::string ForwardTypePayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/forward.hpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 204
    functionName: ForwardTypePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real ForwardTypePayoff::operator()(Real price) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forward.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Position::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::ForwardTypePayoff::ForwardTypePayoff
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ForwardTypePayoff(Position::Type type, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::ForwardTypePayoff::forwardType
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Position::Type
    signature: Position::Type forwardType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::ForwardTypePayoff::strike
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 155
    functionName: QuantLib::ForwardTypePayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: '& Forward::calendar() const'
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Forward::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::Forward::businessDayConvention
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Forward::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: '& Forward::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & Forward::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::Forward::discountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> Forward::discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::Forward::incomeDiscountCurve
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> Forward::incomeDiscountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardTypePayoff::name
      Src: /src/quantlib/ql/instruments/forward.hpp:191,1
    - Dst: QuantLib::ForwardTypePayoff::strike
      Src: /src/quantlib/ql/instruments/forward.hpp:191,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/forward.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 193
    functionName: QuantLib::ForwardTypePayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardTypePayoff::name
    - std::ostringstream::str
    - QuantLib::ForwardTypePayoff::strike
    linkageType: ''
    returnType: std::string
    signature: std::string ForwardTypePayoff::description() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/forward.hpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 204
    functionName: ForwardTypePayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/forward.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real ForwardTypePayoff::operator()(Real price) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - type1
    - type2
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::DoubleStickyRatchetPayoff::DoubleStickyRatchetPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DoubleStickyRatchetPayoff(Real type1, Real type2,\n                            Real
      gearing1, Real gearing2, Real gearing3,\n                            Real spread1,
      Real spread2, Real spread3,\n                            Real initialValue1,
      Real initialValue2, \n                            Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - gearing1
    - gearing2
    - spread1
    - spread2
    - initialValue
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: QuantLib::RatchetPayoff::RatchetPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetPayoff(Real gearing1, Real gearing2,\n                       Real
      spread1, Real spread2,\n                       Real initialValue, Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::RatchetPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - gearing1
    - gearing2
    - spread1
    - spread2
    - initialValue
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::StickyPayoff::StickyPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyPayoff(Real gearing1, Real gearing2,\n                       Real
      spread1, Real spread2,\n                       Real initialValue, Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::StickyPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::RatchetMaxPayoff::RatchetMaxPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetMaxPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::RatchetMaxPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::RatchetMinPayoff::RatchetMinPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetMinPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::RatchetMinPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionName: QuantLib::StickyMaxPayoff::StickyMaxPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyMaxPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: QuantLib::StickyMaxPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 161
    functionName: QuantLib::StickyMinPayoff::StickyMinPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyMinPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 164
    functionName: QuantLib::StickyMinPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - type1
    - type2
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::DoubleStickyRatchetPayoff::DoubleStickyRatchetPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DoubleStickyRatchetPayoff(Real type1, Real type2,\n                            Real
      gearing1, Real gearing2, Real gearing3,\n                            Real spread1,
      Real spread2, Real spread3,\n                            Real initialValue1,
      Real initialValue2, \n                            Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - gearing1
    - gearing2
    - spread1
    - spread2
    - initialValue
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: QuantLib::RatchetPayoff::RatchetPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetPayoff(Real gearing1, Real gearing2,\n                       Real
      spread1, Real spread2,\n                       Real initialValue, Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::RatchetPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - gearing1
    - gearing2
    - spread1
    - spread2
    - initialValue
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::StickyPayoff::StickyPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyPayoff(Real gearing1, Real gearing2,\n                       Real
      spread1, Real spread2,\n                       Real initialValue, Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::StickyPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::RatchetMaxPayoff::RatchetMaxPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetMaxPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::RatchetMaxPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::RatchetMinPayoff::RatchetMinPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RatchetMinPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::RatchetMinPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionName: QuantLib::StickyMaxPayoff::StickyMaxPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyMaxPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: QuantLib::StickyMaxPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - gearing1
    - gearing2
    - gearing3
    - spread1
    - spread2
    - spread3
    - initialValue1
    - initialValue2
    - accrualFactor
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 161
    functionName: QuantLib::StickyMinPayoff::StickyMinPayoff
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StickyMinPayoff(Real gearing1, Real gearing2, Real gearing3,\n
      \                         Real spread1, Real spread2, Real spread3,\n                          Real
      initialValue1, Real initialValue2, \n                          Real accrualFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 164
    functionName: QuantLib::StickyMinPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:27,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:29,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:29,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:34,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - forward
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: DoubleStickyRatchetPayoff::operator()(Real forward) const
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DoubleStickyRatchetPayoff::operator()(Real forward) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::DoubleStickyRatchetPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string DoubleStickyRatchetPayoff::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DoubleStickyRatchetPayoff::name
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:46,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::DoubleStickyRatchetPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DoubleStickyRatchetPayoff::name
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string DoubleStickyRatchetPayoff::description() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DoubleStickyRatchetPayoff>*>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:51,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:53,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::DoubleStickyRatchetPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<DoubleStickyRatchetPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void DoubleStickyRatchetPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:27,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:29,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:29,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:34,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - forward
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: DoubleStickyRatchetPayoff::operator()(Real forward) const
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DoubleStickyRatchetPayoff::operator()(Real forward) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::DoubleStickyRatchetPayoff::name
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string DoubleStickyRatchetPayoff::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DoubleStickyRatchetPayoff::name
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:46,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::DoubleStickyRatchetPayoff::description
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DoubleStickyRatchetPayoff::name
    - std::ostringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string DoubleStickyRatchetPayoff::description() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DoubleStickyRatchetPayoff>*>
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:51,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:53,1
    - Dst: QuantLib::Payoff::accept
      Src: /src/quantlib/ql/instruments/stickyratchet.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::DoubleStickyRatchetPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/stickyratchet.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<DoubleStickyRatchetPayoff>*>
    - auto*::visit
    - QuantLib::Payoff::accept
    linkageType: ''
    returnType: void
    signature: void DoubleStickyRatchetPayoff::accept(AcyclicVisitor& v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:61,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:62,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:71,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:77,1
    - Dst: BachelierCapFloorEngine::BachelierCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:80,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' cap'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - CapFloor
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedCapVolHelper::ImpliedCapVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - BachelierCapFloorEngine::BachelierCapFloorEngine
    - getResults
    - std::move
    - BlackCapFloorEngine::BlackCapFloorEngine
    - QL_FAIL
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - Actual365Fixed
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedCapVolHelper::ImpliedCapVolHelper(const CapFloor& cap,\n
      \                                                Handle<YieldTermStructure>
      discountCurve,\n                                                 Real targetValue,\n
      \                                                Real displacement,\n                                                 VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:91,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:92,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: ImpliedCapVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:99,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:100,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:101,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/capfloor.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::ImpliedCapVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:61,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:62,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:71,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:77,1
    - Dst: BachelierCapFloorEngine::BachelierCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:80,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' cap'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - CapFloor
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedCapVolHelper::ImpliedCapVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - BachelierCapFloorEngine::BachelierCapFloorEngine
    - getResults
    - std::move
    - BlackCapFloorEngine::BlackCapFloorEngine
    - QL_FAIL
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - Actual365Fixed
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedCapVolHelper::ImpliedCapVolHelper(const CapFloor& cap,\n
      \                                                Handle<YieldTermStructure>
      discountCurve,\n                                                 Real targetValue,\n
      \                                                Real displacement,\n                                                 VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:91,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:92,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: ImpliedCapVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:99,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:100,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:101,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/capfloor.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::ImpliedCapVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::derivative(Volatility x) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:120,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/capfloor.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - CapFloor::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: "& operator<<(std::ostream& out,\n                             CapFloor::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             CapFloor::Type
      t)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:131,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:131,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:133,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:134,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:137,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:139,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:140,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/capfloor.cpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:144,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:146,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - type
    - floatingLeg
    - capRates
    - floorRates
    argTypes:
    - CapFloor::Type
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 147
    functionName: QuantLib::CapFloor::CapFloor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloor::CapFloor(CapFloor::Type type,\n                       Leg
      floatingLeg,\n                       std::vector<Rate> capRates,\n                       std::vector<Rate>
      floorRates)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:151,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:151,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:155,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:155,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:156,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:156,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:160,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:161,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/capfloor.cpp:166,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:167,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:169,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - type
    - floatingLeg
    - ' strikes'
    argTypes:
    - CapFloor::Type
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 170
    functionName: QuantLib::CapFloor::CapFloor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloor::CapFloor(CapFloor::Type type, Leg floatingLeg, const
      std::vector<Rate>& strikes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:173,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/capfloor.cpp:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 177
    functionName: QuantLib::CapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool CapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: QuantLib::CapFloor::startDate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date CapFloor::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::CapFloor::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date CapFloor::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:189,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionName: QuantLib::CapFloor::lastFloatingRateCoupon
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - back
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> CapFloor::lastFloatingRateCoupon()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:196,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:196,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/capfloor.cpp:197,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:198,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:199,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:202,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:202,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:203,1
    - Dst: capRates
      Src: /src/quantlib/ql/instruments/capfloor.cpp:203,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:204,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:204,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:205,1
    - Dst: floorRates
      Src: /src/quantlib/ql/instruments/capfloor.cpp:205,1
    - Dst: ext::make_shared<CapFloor>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:207,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuantLib::CapFloor::optionlet
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloor::type
    - floatingLeg
    - QuantLib::io::ordinal
    - push_back
    - floorRates
    - capRates
    - ext::make_shared<CapFloor>
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CapFloor>
    signature: ext::shared_ptr<CapFloor> CapFloor::optionlet(const Size i) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:214,1
    - Dst: auto*::startDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:216,1
    - Dst: auto*::fixingDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:217,1
    - Dst: auto*::endDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:218,1
    - Dst: auto*::accrualTimes::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:219,1
    - Dst: auto*::forwards::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:220,1
    - Dst: auto*::nominals::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:221,1
    - Dst: auto*::gearings::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:222,1
    - Dst: auto*::capRates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:223,1
    - Dst: auto*::floorRates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:224,1
    - Dst: auto*::spreads::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:225,1
    - Dst: auto*::indexes::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:226,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:230,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:234,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:236,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:237,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:238,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/capfloor.cpp:239,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/capfloor.cpp:242,1
    - Dst: ext::shared_ptr::adjustedFixing
      Src: /src/quantlib/ql/instruments/capfloor.cpp:246,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:248,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/capfloor.cpp:251,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/capfloor.cpp:252,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/capfloor.cpp:253,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:260,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:265,1
    - Dst: ext::shared_ptr::index
      Src: /src/quantlib/ql/instruments/capfloor.cpp:267,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 269
    functionName: QuantLib::CapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - auto*::nominals::resize
    - auto*::indexes::resize
    - ext::shared_ptr::index
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - auto*::capRates::resize
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - auto*::gearings::resize
    - size
    - auto*::fixingDates::resize
    - auto*::floorRates::resize
    - auto*::spreads::resize
    - dynamic_cast<CapFloor::arguments*>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - ext::shared_ptr::adjustedFixing
    - auto*::startDates::resize
    - QL_REQUIRE
    - auto*::endDates::resize
    - QuantLib::detail::instance
    - auto*::forwards::resize
    - auto*::accrualTimes::resize
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void CapFloor::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapFloor::deepUpdate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:273,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/capfloor.cpp:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 276
    functionName: QuantLib::CapFloor::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapFloor::deepUpdate
    - update
    linkageType: ''
    returnType: void
    signature: void CapFloor::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:280,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:282,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:286,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:287,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:288,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:288,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:289,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:291,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:292,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:294,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:304,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:310,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 313
    functionName: CapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:317,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 321
    functionName: QuantLib::CapFloor::atmRate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::atmRate
    - referenceDate
    linkageType: ''
    returnType: Rate
    signature: Rate CapFloor::atmRate(const YieldTermStructure& discountCurve) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:333,1
    - Dst: QuantLib::CapFloor::isExpired
      Src: /src/quantlib/ql/instruments/capfloor.cpp:333,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/capfloor.cpp:338,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - targetValue
    - ' d'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    - type
    - displacement
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 340
    functionName: QuantLib::CapFloor::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::solve
    - NewtonSafe::setMaxEvaluations
    - QuantLib::CapFloor::isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloor::impliedVolatility(Real targetValue,\n                                           const
      Handle<YieldTermStructure>& d,\n                                           Volatility
      guess,\n                                           Real accuracy,\n                                           Natural
      maxEvaluations,\n                                           Volatility minVol,\n
      \                                          Volatility maxVol,\n                                           VolatilityType
      type,\n                                           Real displacement) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:61,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:62,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:71,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:77,1
    - Dst: BachelierCapFloorEngine::BachelierCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:80,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' cap'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - CapFloor
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedCapVolHelper::ImpliedCapVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - BachelierCapFloorEngine::BachelierCapFloorEngine
    - getResults
    - std::move
    - BlackCapFloorEngine::BlackCapFloorEngine
    - QL_FAIL
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - Actual365Fixed
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedCapVolHelper::ImpliedCapVolHelper(const CapFloor& cap,\n
      \                                                Handle<YieldTermStructure>
      discountCurve,\n                                                 Real targetValue,\n
      \                                                Real displacement,\n                                                 VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:91,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:92,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: ImpliedCapVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:99,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:100,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:101,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/capfloor.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::ImpliedCapVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:61,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:62,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:71,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:70,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/instruments/capfloor.cpp:77,1
    - Dst: BachelierCapFloorEngine::BachelierCapFloorEngine
      Src: /src/quantlib/ql/instruments/capfloor.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:80,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: getArguments
      Src: /src/quantlib/ql/instruments/capfloor.cpp:84,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    - Dst: getResults
      Src: /src/quantlib/ql/instruments/capfloor.cpp:87,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' cap'
    - discountCurve
    - targetValue
    - displacement
    - type
    argTypes:
    - CapFloor
    - Handle<YieldTermStructure>
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedCapVolHelper::ImpliedCapVolHelper
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - BachelierCapFloorEngine::BachelierCapFloorEngine
    - getResults
    - std::move
    - BlackCapFloorEngine::BlackCapFloorEngine
    - QL_FAIL
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - Actual365Fixed
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedCapVolHelper::ImpliedCapVolHelper(const CapFloor& cap,\n
      \                                                Handle<YieldTermStructure>
      discountCurve,\n                                                 Real targetValue,\n
      \                                                Real displacement,\n                                                 VolatilityType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:91,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:92,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: ImpliedCapVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/instruments/capfloor.cpp:99,1
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/capfloor.cpp:100,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:101,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/instruments/capfloor.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:104,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::ImpliedCapVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ImpliedCapVolHelper::derivative(Volatility x) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:120,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/capfloor.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - CapFloor::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: "& operator<<(std::ostream& out,\n                             CapFloor::Type
      t)"
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             CapFloor::Type
      t)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:131,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:131,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:133,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:134,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:137,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:139,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:140,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/capfloor.cpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:144,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:146,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - type
    - floatingLeg
    - capRates
    - floorRates
    argTypes:
    - CapFloor::Type
    - Leg
    - std::vector<Rate>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 147
    functionName: QuantLib::CapFloor::CapFloor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloor::CapFloor(CapFloor::Type type,\n                       Leg
      floatingLeg,\n                       std::vector<Rate> capRates,\n                       std::vector<Rate>
      floorRates)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/capfloor.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:151,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/capfloor.cpp:151,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:155,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:155,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:156,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:156,1
    - Dst: reserve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:160,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:161,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/capfloor.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/capfloor.cpp:166,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/capfloor.cpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:167,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/capfloor.cpp:169,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - type
    - floatingLeg
    - ' strikes'
    argTypes:
    - CapFloor::Type
    - Leg
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 170
    functionName: QuantLib::CapFloor::CapFloor
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - push_back
    - QL_FAIL
    - registerWith
    - QuantLib::detail::instance
    - size
    - back
    - end
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloor::CapFloor(CapFloor::Type type, Leg floatingLeg, const
      std::vector<Rate>& strikes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:173,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/capfloor.cpp:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 177
    functionName: QuantLib::CapFloor::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 1
    functionsReached:
    - size
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool CapFloor::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: QuantLib::CapFloor::startDate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date CapFloor::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::CapFloor::maturityDate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date CapFloor::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:189,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionName: QuantLib::CapFloor::lastFloatingRateCoupon
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - back
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> CapFloor::lastFloatingRateCoupon()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:196,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:196,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/capfloor.cpp:197,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:198,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/capfloor.cpp:199,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:202,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:202,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:203,1
    - Dst: capRates
      Src: /src/quantlib/ql/instruments/capfloor.cpp:203,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:204,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:204,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/capfloor.cpp:205,1
    - Dst: floorRates
      Src: /src/quantlib/ql/instruments/capfloor.cpp:205,1
    - Dst: ext::make_shared<CapFloor>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:207,1
    - Dst: QuantLib::CapFloor::type
      Src: /src/quantlib/ql/instruments/capfloor.cpp:207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuantLib::CapFloor::optionlet
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloor::type
    - floatingLeg
    - QuantLib::io::ordinal
    - push_back
    - floorRates
    - capRates
    - ext::make_shared<CapFloor>
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<CapFloor>
    signature: ext::shared_ptr<CapFloor> CapFloor::optionlet(const Size i) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CapFloor::arguments*>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:214,1
    - Dst: auto*::startDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:216,1
    - Dst: auto*::fixingDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:217,1
    - Dst: auto*::endDates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:218,1
    - Dst: auto*::accrualTimes::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:219,1
    - Dst: auto*::forwards::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:220,1
    - Dst: auto*::nominals::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:221,1
    - Dst: auto*::gearings::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:222,1
    - Dst: auto*::capRates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:223,1
    - Dst: auto*::floorRates::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:224,1
    - Dst: auto*::spreads::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:225,1
    - Dst: auto*::indexes::resize
      Src: /src/quantlib/ql/instruments/capfloor.cpp:226,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/capfloor.cpp:230,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:234,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:236,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:237,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:238,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/instruments/capfloor.cpp:239,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/instruments/capfloor.cpp:242,1
    - Dst: ext::shared_ptr::adjustedFixing
      Src: /src/quantlib/ql/instruments/capfloor.cpp:246,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:248,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/instruments/capfloor.cpp:251,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/instruments/capfloor.cpp:252,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/instruments/capfloor.cpp:253,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:260,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/capfloor.cpp:265,1
    - Dst: ext::shared_ptr::index
      Src: /src/quantlib/ql/instruments/capfloor.cpp:267,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 269
    functionName: QuantLib::CapFloor::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - auto*::nominals::resize
    - auto*::indexes::resize
    - ext::shared_ptr::index
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - auto*::capRates::resize
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - auto*::gearings::resize
    - size
    - auto*::fixingDates::resize
    - auto*::floorRates::resize
    - auto*::spreads::resize
    - dynamic_cast<CapFloor::arguments*>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - ext::shared_ptr::adjustedFixing
    - auto*::startDates::resize
    - QL_REQUIRE
    - auto*::endDates::resize
    - QuantLib::detail::instance
    - auto*::forwards::resize
    - auto*::accrualTimes::resize
    - ext::shared_ptr::fixingDate
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void CapFloor::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapFloor::deepUpdate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:273,1
    - Dst: update
      Src: /src/quantlib/ql/instruments/capfloor.cpp:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 276
    functionName: QuantLib::CapFloor::deepUpdate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CapFloor::deepUpdate
    - update
    linkageType: ''
    returnType: void
    signature: void CapFloor::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:280,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:282,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:286,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:287,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:288,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:288,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:289,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:291,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:292,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:294,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:301,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:304,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:305,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:310,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/capfloor.cpp:312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 313
    functionName: CapFloor::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloor::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:317,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/instruments/capfloor.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 321
    functionName: QuantLib::CapFloor::atmRate
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::atmRate
    - referenceDate
    linkageType: ''
    returnType: Rate
    signature: Rate CapFloor::atmRate(const YieldTermStructure& discountCurve) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/capfloor.cpp:333,1
    - Dst: QuantLib::CapFloor::isExpired
      Src: /src/quantlib/ql/instruments/capfloor.cpp:333,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/instruments/capfloor.cpp:338,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/instruments/capfloor.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - targetValue
    - ' d'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    - type
    - displacement
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 340
    functionName: QuantLib::CapFloor::impliedVolatility
    functionSourceFile: /src/quantlib/ql/instruments/capfloor.cpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::solve
    - NewtonSafe::setMaxEvaluations
    - QuantLib::CapFloor::isExpired
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloor::impliedVolatility(Real targetValue,\n                                           const
      Handle<YieldTermStructure>& d,\n                                           Volatility
      guess,\n                                           Real accuracy,\n                                           Natural
      maxEvaluations,\n                                           Volatility minVol,\n
      \                                          Volatility maxVol,\n                                           VolatilityType
      type,\n                                           Real displacement) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::CreditDefaultSwap::rebatesAccrual
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool rebatesAccrual() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::CreditDefaultSwap::rebatesAccrual
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool rebatesAccrual() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/futures.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - f
    argTypes:
    - std::ostream
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: '& operator<<(std::ostream& out, Futures::Type f)'
    functionSourceFile: /src/quantlib/ql/instruments/futures.cpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Futures::Type f)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/futures.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - f
    argTypes:
    - std::ostream
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: '& operator<<(std::ostream& out, Futures::Type f)'
    functionSourceFile: /src/quantlib/ql/instruments/futures.cpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Futures::Type f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:38,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/forward.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forward.cpp:43,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forward.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forward.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - dayCounter
    - calendar
    - businessDayConvention
    - settlementDays
    - payoff
    - ' valueDate'
    - ' maturityDate'
    - discountCurve
    argTypes:
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - Natural
    - ext::shared_ptr<Payoff>
    - Date
    - Date
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 45
    functionName: QuantLib::Forward::Forward
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void Forward::Forward(DayCounter dayCounter,\n                     Calendar
      calendar,\n                     BusinessDayConvention businessDayConvention,\n
      \                    Natural settlementDays,\n                     ext::shared_ptr<Payoff>
      payoff,\n                     const Date& valueDate,\n                     const
      Date& maturityDate,\n                     Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/instruments/forward.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forward.cpp:49,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/forward.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::Forward::settlementDate
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - advance
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Date
    signature: Date Forward::settlementDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/forward.cpp:56,1
    - Dst: QuantLib::Forward::settlementDate
      Src: /src/quantlib/ql/instruments/forward.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::Forward::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Forward::settlementDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool Forward::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forward.cpp:62,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/forward.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::Forward::forwardValue
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - discount
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Forward::forwardValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/forward.cpp:74,1
    - Dst: spotIncome
      Src: /src/quantlib/ql/instruments/forward.cpp:76,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/instruments/forward.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - underlyingSpotValue
    - forwardValue
    - settlementDate
    - comp
    - ' dayCounter'
    argTypes:
    - Real
    - Real
    - Date
    - Compounding
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::Forward::impliedYield
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - spotIncome
    - QuantLib::InterestRate::impliedRate
    - yearFraction
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate Forward::impliedYield(Real underlyingSpotValue,\n                                       Real
      forwardValue,\n                                       Date settlementDate,\n
      \                                      Compounding comp,\n                                       const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forward.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/forward.cpp:85,1
    - Dst: ext::dynamic_pointer_cast<ForwardTypePayoff>
      Src: /src/quantlib/ql/instruments/forward.cpp:89,1
    - Dst: QuantLib::Forward::forwardValue
      Src: /src/quantlib/ql/instruments/forward.cpp:90,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/forward.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: QuantLib::Forward::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<ForwardTypePayoff>
    - empty
    - QuantLib::Forward::forwardValue
    - discount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Forward::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/forward.cpp:38,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/forward.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forward.cpp:43,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forward.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/forward.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - dayCounter
    - calendar
    - businessDayConvention
    - settlementDays
    - payoff
    - ' valueDate'
    - ' maturityDate'
    - discountCurve
    argTypes:
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - Natural
    - ext::shared_ptr<Payoff>
    - Date
    - Date
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 45
    functionName: QuantLib::Forward::Forward
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void Forward::Forward(DayCounter dayCounter,\n                     Calendar
      calendar,\n                     BusinessDayConvention businessDayConvention,\n
      \                    Natural settlementDays,\n                     ext::shared_ptr<Payoff>
      payoff,\n                     const Date& valueDate,\n                     const
      Date& maturityDate,\n                     Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/instruments/forward.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/forward.cpp:49,1
    - Dst: std::max
      Src: /src/quantlib/ql/instruments/forward.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::Forward::settlementDate
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - advance
    - QuantLib::detail::instance
    linkageType: ''
    returnType: Date
    signature: Date Forward::settlementDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/forward.cpp:56,1
    - Dst: QuantLib::Forward::settlementDate
      Src: /src/quantlib/ql/instruments/forward.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::Forward::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Forward::settlementDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool Forward::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/forward.cpp:62,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/forward.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::Forward::forwardValue
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 1
    functionsReached:
    - discount
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Forward::forwardValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/forward.cpp:74,1
    - Dst: spotIncome
      Src: /src/quantlib/ql/instruments/forward.cpp:76,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/instruments/forward.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - underlyingSpotValue
    - forwardValue
    - settlementDate
    - comp
    - ' dayCounter'
    argTypes:
    - Real
    - Real
    - Date
    - Compounding
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::Forward::impliedYield
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - spotIncome
    - QuantLib::InterestRate::impliedRate
    - yearFraction
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate Forward::impliedYield(Real underlyingSpotValue,\n                                       Real
      forwardValue,\n                                       Date settlementDate,\n
      \                                      Compounding comp,\n                                       const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/forward.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/forward.cpp:85,1
    - Dst: ext::dynamic_pointer_cast<ForwardTypePayoff>
      Src: /src/quantlib/ql/instruments/forward.cpp:89,1
    - Dst: QuantLib::Forward::forwardValue
      Src: /src/quantlib/ql/instruments/forward.cpp:90,1
    - Dst: discount
      Src: /src/quantlib/ql/instruments/forward.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: QuantLib::Forward::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/forward.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<ForwardTypePayoff>
    - empty
    - QuantLib::Forward::forwardValue
    - discount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Forward::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:43,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:44,1
    - Dst: std::pair<std::vector<Date>,std::vector<Size> >
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSize
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 54
    functionName: QuantLib::createDateTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - std::pair<std::vector<Date>,std::vector<Size> >
    - std::vector::push_back
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Size> >
    signature: std::pair<std::vector<Date>, std::vector<Size> > createDateTimes(const
      Date& from, const Date& to, Size stepSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:43,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:44,1
    - Dst: std::pair<std::vector<Date>,std::vector<Size> >
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSize
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 54
    functionName: QuantLib::createDateTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - std::pair<std::vector<Date>,std::vector<Size> >
    - std::vector::push_back
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Size> >
    signature: std::pair<std::vector<Date>, std::vector<Size> > createDateTimes(const
      Date& from, const Date& to, Size stepSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:66,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' dates'
    - ' seconds'
    argTypes:
    - std::vector<Date>
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 72
    functionName: QuantLib::SwingExercise::SwingExercise
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    - empty
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: void SwingExercise::SwingExercise(const std::vector<Date>& dates, const
      std::vector<Size>& seconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createDateTimes
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:77,1
    - Dst: createDateTimes
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSizeSecs
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::SwingExercise::SwingExercise
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - createDateTimes
    linkageType: ''
    returnType: void
    signature: "void SwingExercise::SwingExercise(const Date& from,\n                                 const
      Date& to, Size stepSizeSecs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& SwingExercise::seconds() const'
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & SwingExercise::seconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:86,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:86,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:87,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:88,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:88,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: seconds
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:94,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' dc'
    - ' refDate'
    argTypes:
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 99
    functionName: QuantLib::SwingExercise::exerciseTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::vector::reserve
    - seconds
    - dates
    - Period
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> SwingExercise::exerciseTimes(const DayCounter& dc,\n
      \                                                  const Date& refDate) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: VanillaForwardPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VanillaForwardPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<VanillaForwardPayoff>*>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:113,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:115,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::VanillaForwardPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<VanillaForwardPayoff>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void VanillaForwardPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:127,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 130
    functionName: VanillaSwingOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - dates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VanillaSwingOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VanillaSwingOption::arguments*>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:135,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:138,1
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 143
    functionName: QuantLib::VanillaSwingOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dynamic_cast<VanillaSwingOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaSwingOption::setupArguments(\n                            PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:146,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::VanillaSwingOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaSwingOption::isExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:43,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:44,1
    - Dst: std::pair<std::vector<Date>,std::vector<Size> >
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSize
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 54
    functionName: QuantLib::createDateTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - std::pair<std::vector<Date>,std::vector<Size> >
    - std::vector::push_back
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Size> >
    signature: std::pair<std::vector<Date>, std::vector<Size> > createDateTimes(const
      Date& from, const Date& to, Size stepSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:43,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:44,1
    - Dst: std::pair<std::vector<Date>,std::vector<Size> >
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSize
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 54
    functionName: QuantLib::createDateTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - std::pair<std::vector<Date>,std::vector<Size> >
    - std::vector::push_back
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Size> >
    signature: std::pair<std::vector<Date>, std::vector<Size> > createDateTimes(const
      Date& from, const Date& to, Size stepSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:66,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' dates'
    - ' seconds'
    argTypes:
    - std::vector<Date>
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 72
    functionName: QuantLib::SwingExercise::SwingExercise
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    - empty
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: void SwingExercise::SwingExercise(const std::vector<Date>& dates, const
      std::vector<Size>& seconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createDateTimes
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:77,1
    - Dst: createDateTimes
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - stepSizeSecs
    argTypes:
    - Date
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::SwingExercise::SwingExercise
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - createDateTimes
    linkageType: ''
    returnType: void
    signature: "void SwingExercise::SwingExercise(const Date& from,\n                                 const
      Date& to, Size stepSizeSecs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& SwingExercise::seconds() const'
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & SwingExercise::seconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:86,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:86,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:87,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:88,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:88,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:90,1
    - Dst: seconds
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:94,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' dc'
    - ' refDate'
    argTypes:
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 99
    functionName: QuantLib::SwingExercise::exerciseTimes
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::vector::reserve
    - seconds
    - dates
    - Period
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> SwingExercise::exerciseTimes(const DayCounter& dc,\n
      \                                                  const Date& refDate) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: VanillaForwardPayoff::operator()(Real price) const
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VanillaForwardPayoff::operator()(Real price) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<VanillaForwardPayoff>*>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:113,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:115,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::VanillaForwardPayoff::accept
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<VanillaForwardPayoff>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void VanillaForwardPayoff::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:127,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 130
    functionName: VanillaSwingOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - dates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VanillaSwingOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VanillaSwingOption::arguments*>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:135,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:138,1
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 143
    functionName: QuantLib::VanillaSwingOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dynamic_cast<VanillaSwingOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaSwingOption::setupArguments(\n                            PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:146,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/vanillaswingoption.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::VanillaSwingOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/vanillaswingoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaSwingOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - swapIndex
    - ' optionTenor'
    - strike
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::MakeSwaption::MakeSwaption
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeSwaption::MakeSwaption(ext::shared_ptr<SwapIndex> swapIndex,\n
      \                              const Period& optionTenor,\n                               Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - swapIndex
    - ' fixingDate'
    - strike
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::MakeSwaption::MakeSwaption
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeSwaption::MakeSwaption(ext::shared_ptr<SwapIndex> swapIndex,\n
      \                              const Date& fixingDate,\n                               Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: MakeSwaption::operator Swaption() const
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeSwaption::operator Swaption() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:57,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:60,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:61,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:62,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:64,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:65,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:68,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:71,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:71,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:76,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:79,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:79,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:81,1
    - Dst: ext::shared_ptr::underlyingSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:83,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:84,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:85,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:86,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:87,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:88,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:92,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:94,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:95,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:96,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:98,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:99,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:103,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:109,1
    - Dst: MakeOIS
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:113,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:113,1
    - Dst: ext::shared_ptr::overnightIndex
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:114,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:115,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:116,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:117,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:127,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:127,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:128,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:129,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:130,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:131,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:132,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:140,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:142,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 144
    functionName: MakeSwaption::operator ext::shared_ptr<Swaption>() const
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - ext::shared_ptr::setPricingEngine
    - dayCounter
    - ext::shared_ptr::underlyingSwap
    - auto::fairRate
    - Date
    - MakeVanillaSwap
    - ext::make_shared<DiscountingSwapEngine>
    - fixedLegTenor
    - tenor
    - ext::shared_ptr<Exercise>
    - Null<Rate>
    - auto::setPricingEngine
    - adjust
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - fixingCalendar
    - iborIndex
    - ext::make_shared<Swaption>
    - name
    - exogenousDiscount
    - valueDate
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - discountingTermStructure
    - EuropeanExercise::EuropeanExercise
    - underlyingSwap
    - QuantLib::detail::instance
    - ext::shared_ptr::overnightIndex
    - MakeOIS
    linkageType: ''
    returnType: void
    signature: void MakeSwaption::operator ext::shared_ptr<Swaption>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - delivery
    argTypes:
    - Settlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionName: '& MakeSwaption::withSettlementType(Settlement::Type delivery)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withSettlementType(Settlement::Type delivery)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - settlementMethod
    argTypes:
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: "& MakeSwaption::withSettlementMethod(\n        Settlement::Method
      settlementMethod)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption & MakeSwaption::withSettlementMethod(\n        Settlement::Method
      settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionName: "&\n    MakeSwaption::withOptionConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption &\n    MakeSwaption::withOptionConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: '& MakeSwaption::withExerciseDate(const Date& date)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withExerciseDate(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: '& MakeSwaption::withUnderlyingType(const Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withUnderlyingType(const Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "& MakeSwaption::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption & MakeSwaption::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: '& MakeSwaption::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& MakeSwaption::withIndexedCoupons(const ext::optional<bool>& b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withIndexedCoupons(const ext::optional<bool>&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& MakeSwaption::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withAtParCoupons(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - swapIndex
    - ' optionTenor'
    - strike
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::MakeSwaption::MakeSwaption
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeSwaption::MakeSwaption(ext::shared_ptr<SwapIndex> swapIndex,\n
      \                              const Period& optionTenor,\n                               Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - swapIndex
    - ' fixingDate'
    - strike
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::MakeSwaption::MakeSwaption
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MakeSwaption::MakeSwaption(ext::shared_ptr<SwapIndex> swapIndex,\n
      \                              const Date& fixingDate,\n                               Rate
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: MakeSwaption::operator Swaption() const
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeSwaption::operator Swaption() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:57,1
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:60,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:61,1
    - Dst: advance
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:62,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:64,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:65,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:68,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:71,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:71,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:76,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:79,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:79,1
    - Dst: name
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:81,1
    - Dst: ext::shared_ptr::underlyingSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:83,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:84,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:85,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:86,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:87,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:88,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:92,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:94,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:95,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:96,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:98,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:99,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:103,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:109,1
    - Dst: MakeOIS
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:113,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:113,1
    - Dst: ext::shared_ptr::overnightIndex
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:114,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:115,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:116,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:117,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:127,1
    - Dst: tenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:127,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:128,1
    - Dst: valueDate
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:129,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:130,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:131,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:132,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:140,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/instruments/makeswaption.cpp:142,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 144
    functionName: MakeSwaption::operator ext::shared_ptr<Swaption>() const
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - ext::shared_ptr::setPricingEngine
    - dayCounter
    - ext::shared_ptr::underlyingSwap
    - auto::fairRate
    - Date
    - MakeVanillaSwap
    - ext::make_shared<DiscountingSwapEngine>
    - fixedLegTenor
    - tenor
    - ext::shared_ptr<Exercise>
    - Null<Rate>
    - auto::setPricingEngine
    - adjust
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - fixingCalendar
    - iborIndex
    - ext::make_shared<Swaption>
    - name
    - exogenousDiscount
    - valueDate
    - forwardingTermStructure
    - advance
    - QL_REQUIRE
    - discountingTermStructure
    - EuropeanExercise::EuropeanExercise
    - underlyingSwap
    - QuantLib::detail::instance
    - ext::shared_ptr::overnightIndex
    - MakeOIS
    linkageType: ''
    returnType: void
    signature: void MakeSwaption::operator ext::shared_ptr<Swaption>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - delivery
    argTypes:
    - Settlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionName: '& MakeSwaption::withSettlementType(Settlement::Type delivery)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withSettlementType(Settlement::Type delivery)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - settlementMethod
    argTypes:
    - Settlement::Method
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: "& MakeSwaption::withSettlementMethod(\n        Settlement::Method
      settlementMethod)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption & MakeSwaption::withSettlementMethod(\n        Settlement::Method
      settlementMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bdc
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionName: "&\n    MakeSwaption::withOptionConvention(BusinessDayConvention
      bdc)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption &\n    MakeSwaption::withOptionConvention(BusinessDayConvention
      bdc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: '& MakeSwaption::withExerciseDate(const Date& date)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withExerciseDate(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: '& MakeSwaption::withUnderlyingType(const Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withUnderlyingType(const Swap::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "& MakeSwaption::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: "MakeSwaption & MakeSwaption::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: '& MakeSwaption::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withNominal(Real n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& MakeSwaption::withIndexedCoupons(const ext::optional<bool>& b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withIndexedCoupons(const ext::optional<bool>&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& MakeSwaption::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/instruments/makeswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSwaption
    signature: MakeSwaption & MakeSwaption::withAtParCoupons(bool b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - minmax
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - ext::shared_ptr<TypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::ContinuousFloatingLookbackOption::ContinuousFloatingLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousFloatingLookbackOption::ContinuousFloatingLookbackOption(\n
      \       Real minmax,\n        const ext::shared_ptr<TypePayoff>& payoff,\n        const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:35,1
    - Dst: dynamic_cast<ContinuousFloatingLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: QuantLib::ContinuousFloatingLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<ContinuousFloatingLookbackOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void ContinuousFloatingLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: ContinuousFloatingLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousFloatingLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - minmax
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ContinuousFixedLookbackOption::ContinuousFixedLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousFixedLookbackOption::ContinuousFixedLookbackOption(\n
      \       Real minmax,\n        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n
      \       const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:62,1
    - Dst: dynamic_cast<ContinuousFixedLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::ContinuousFixedLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<ContinuousFixedLookbackOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousFixedLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: ContinuousFixedLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousFixedLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - minmax
    - lambda
    - lookbackPeriodEnd
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Real
    - Date
    - ext::shared_ptr<TypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::ContinuousPartialFloatingLookbackOption::ContinuousPartialFloatingLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFloatingLookbackOption::ContinuousPartialFloatingLookbackOption(\n
      \       Real minmax,\n        Real lambda,\n        Date lookbackPeriodEnd,\n
      \       const ext::shared_ptr<TypePayoff>& payoff,\n        const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ContinuousFloatingLookbackOption::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:91,1
    - Dst: dynamic_cast<ContinuousPartialFloatingLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 88
    functionDepth: 3
    functionLinenumber: 88
    functionLinenumberEnd: 97
    functionName: QuantLib::ContinuousPartialFloatingLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ContinuousFloatingLookbackOption::setupArguments
    - dynamic_cast<ContinuousPartialFloatingLookbackOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFloatingLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:101,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:105,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:105,1
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:109,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 119
    functionName: ContinuousPartialFloatingLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::Option::arguments::validate
    - ext::shared_ptr::optionType
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    linkageType: ''
    returnType: void
    signature: void ContinuousPartialFloatingLookbackOption::arguments::validate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lookbackPeriodStart
    - ' payoff'
    - ' exercise'
    argTypes:
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::ContinuousPartialFixedLookbackOption::ContinuousPartialFixedLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFixedLookbackOption::ContinuousPartialFixedLookbackOption(\n
      \       Date lookbackPeriodStart,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ContinuousFixedLookbackOption::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:131,1
    - Dst: dynamic_cast<ContinuousPartialFixedLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 136
    functionName: QuantLib::ContinuousPartialFixedLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<ContinuousPartialFixedLookbackOption::arguments*>
    - QuantLib::ContinuousFixedLookbackOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFixedLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:140,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:144,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: ContinuousPartialFixedLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousPartialFixedLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - minmax
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - ext::shared_ptr<TypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::ContinuousFloatingLookbackOption::ContinuousFloatingLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousFloatingLookbackOption::ContinuousFloatingLookbackOption(\n
      \       Real minmax,\n        const ext::shared_ptr<TypePayoff>& payoff,\n        const
      ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:35,1
    - Dst: dynamic_cast<ContinuousFloatingLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: QuantLib::ContinuousFloatingLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<ContinuousFloatingLookbackOption::arguments*>
    linkageType: ''
    returnType: void
    signature: "void ContinuousFloatingLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: ContinuousFloatingLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousFloatingLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - minmax
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ContinuousFixedLookbackOption::ContinuousFixedLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousFixedLookbackOption::ContinuousFixedLookbackOption(\n
      \       Real minmax,\n        const ext::shared_ptr<StrikedTypePayoff>& payoff,\n
      \       const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:62,1
    - Dst: dynamic_cast<ContinuousFixedLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::ContinuousFixedLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<ContinuousFixedLookbackOption::arguments*>
    - QuantLib::Option::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousFixedLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: ContinuousFixedLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousFixedLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - minmax
    - lambda
    - lookbackPeriodEnd
    - ' payoff'
    - ' exercise'
    argTypes:
    - Real
    - Real
    - Date
    - ext::shared_ptr<TypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::ContinuousPartialFloatingLookbackOption::ContinuousPartialFloatingLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFloatingLookbackOption::ContinuousPartialFloatingLookbackOption(\n
      \       Real minmax,\n        Real lambda,\n        Date lookbackPeriodEnd,\n
      \       const ext::shared_ptr<TypePayoff>& payoff,\n        const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ContinuousFloatingLookbackOption::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:91,1
    - Dst: dynamic_cast<ContinuousPartialFloatingLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 88
    functionDepth: 3
    functionLinenumber: 88
    functionLinenumberEnd: 97
    functionName: QuantLib::ContinuousPartialFloatingLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ContinuousFloatingLookbackOption::setupArguments
    - dynamic_cast<ContinuousPartialFloatingLookbackOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFloatingLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:101,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:105,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:105,1
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:109,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 119
    functionName: ContinuousPartialFloatingLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::Option::arguments::validate
    - ext::shared_ptr::optionType
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    linkageType: ''
    returnType: void
    signature: void ContinuousPartialFloatingLookbackOption::arguments::validate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lookbackPeriodStart
    - ' payoff'
    - ' exercise'
    argTypes:
    - Date
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::ContinuousPartialFixedLookbackOption::ContinuousPartialFixedLookbackOption
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFixedLookbackOption::ContinuousPartialFixedLookbackOption(\n
      \       Date lookbackPeriodStart,\n        const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ContinuousFixedLookbackOption::setupArguments
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:131,1
    - Dst: dynamic_cast<ContinuousPartialFixedLookbackOption::arguments*>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 136
    functionName: QuantLib::ContinuousPartialFixedLookbackOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<ContinuousPartialFixedLookbackOption::arguments*>
    - QuantLib::ContinuousFixedLookbackOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ContinuousPartialFixedLookbackOption::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:140,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:144,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/instruments/lookbackoption.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: ContinuousPartialFixedLookbackOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/lookbackoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ContinuousPartialFixedLookbackOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::BasketOption::BasketOption
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BasketOption::BasketOption(\n        const ext::shared_ptr<BasketPayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::BasketOption::BasketOption
    functionSourceFile: /src/quantlib/ql/instruments/basketoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BasketOption::BasketOption(\n        const ext::shared_ptr<BasketPayoff>&
      payoff,\n        const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - notional
    - recoveryRate
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::FaceValueClaim::amount
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real FaceValueClaim::amount(const Date&,\n                                Real
      notional,\n                                Real recoveryRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/claim.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' referenceSecurity'
    argTypes:
    - ext::shared_ptr<Bond>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::FaceValueAccrualClaim::FaceValueAccrualClaim
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FaceValueAccrualClaim::FaceValueAccrualClaim(\n                          const
      ext::shared_ptr<Bond>& referenceSecurity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/claim.cpp:41,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/claim.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - notional
    - recoveryRate
    argTypes:
    - Date
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::FaceValueAccrualClaim::amount
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached:
    - notional
    - accruedAmount
    linkageType: ''
    returnType: Real
    signature: "Real FaceValueAccrualClaim::amount(const Date& d,\n                                       Real
      notional,\n                                       Real recoveryRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - notional
    - recoveryRate
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::FaceValueClaim::amount
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real FaceValueClaim::amount(const Date&,\n                                Real
      notional,\n                                Real recoveryRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/claim.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' referenceSecurity'
    argTypes:
    - ext::shared_ptr<Bond>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::FaceValueAccrualClaim::FaceValueAccrualClaim
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FaceValueAccrualClaim::FaceValueAccrualClaim(\n                          const
      ext::shared_ptr<Bond>& referenceSecurity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/claim.cpp:41,1
    - Dst: notional
      Src: /src/quantlib/ql/instruments/claim.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - notional
    - recoveryRate
    argTypes:
    - Date
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::FaceValueAccrualClaim::amount
    functionSourceFile: /src/quantlib/ql/instruments/claim.cpp
    functionUses: 0
    functionsReached:
    - notional
    - accruedAmount
    linkageType: ''
    returnType: Real
    signature: "Real FaceValueAccrualClaim::amount(const Date& d,\n                                       Real
      notional,\n                                       Real recoveryRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::TwoAssetCorrelationOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::TwoAssetCorrelationOption::arguments::validate
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::TwoAssetCorrelationOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::TwoAssetCorrelationOption::arguments::validate
    functionSourceFile: /src/quantlib/ql/instruments/twoassetcorrelationoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - type
    - nominal
    - ' schedule'
    - fixedRate
    - fixedDC
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               Real
      nominal,\n                                               const Schedule& schedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - type
    - ' nominals'
    - ' schedule'
    - fixedRate
    - fixedDC
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 92
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               const
      std::vector<Real>& nominals,\n                                               const
      Schedule& schedule,\n                                               Rate fixedRate,\n
      \                                              DayCounter fixedDC,\n                                               const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                               Spread
      spread,\n                                               Integer paymentLag,\n
      \                                              BusinessDayConvention paymentAdjustment,\n
      \                                              const Calendar& paymentCalendar,\n
      \                                              bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:111,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:112,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:114,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:115,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 16
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDC
    - overnightSchedule
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 126
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               Real
      nominal,\n                                               Schedule fixedSchedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               Schedule overnightSchedule,\n
      \                                              const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:146,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:147,1
    - Dst: OvernightLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:152,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:152,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:158,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:159,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 17
    argNames:
    - type
    - fixedNominals
    - fixedSchedule
    - fixedRate
    - fixedDC
    - ' overnightNominals'
    - overnightSchedule
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 167
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - OvernightLeg
    - registerWith
    - DayCounter
    - floatingSchedule
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               std::vector<Real>
      fixedNominals,\n                                               Schedule fixedSchedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               const std::vector<Real>&
      overnightNominals,\n                                               Schedule
      overnightSchedule,\n                                               const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:171,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:173,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:174,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:175,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:176,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:179,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:181,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:182,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:183,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:185,1
    - Dst: auto::accrualPeriod
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:186,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:187,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - args
    argTypes:
    - arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 194
    functionName: QuantLib::OvernightIndexedSwap::setupFloatingArguments
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - auto::accrualPeriod
    - floatingLeg
    - auto::date
    - auto::nominal
    - auto::spread
    - Null<Real>
    - auto::amount
    - std::vector<Real>
    - std::vector<Date>
    - auto::accrualStartDate
    - std::vector<Time>
    - size
    - auto::fixingDate
    - ext::dynamic_pointer_cast<OvernightIndexedCoupon>
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: void OvernightIndexedSwap::setupFloatingArguments(arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - type
    - nominal
    - ' schedule'
    - fixedRate
    - fixedDC
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               Real
      nominal,\n                                               const Schedule& schedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - type
    - ' nominals'
    - ' schedule'
    - fixedRate
    - fixedDC
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 92
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               const
      std::vector<Real>& nominals,\n                                               const
      Schedule& schedule,\n                                               Rate fixedRate,\n
      \                                              DayCounter fixedDC,\n                                               const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                               Spread
      spread,\n                                               Integer paymentLag,\n
      \                                              BusinessDayConvention paymentAdjustment,\n
      \                                              const Calendar& paymentCalendar,\n
      \                                              bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:111,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:112,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:114,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:115,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 16
    argNames:
    - type
    - nominal
    - fixedSchedule
    - fixedRate
    - fixedDC
    - overnightSchedule
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - Real
    - Schedule
    - Rate
    - DayCounter
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 126
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               Real
      nominal,\n                                               Schedule fixedSchedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               Schedule overnightSchedule,\n
      \                                              const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:146,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:147,1
    - Dst: OvernightLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:152,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:152,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:158,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:159,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 17
    argNames:
    - type
    - fixedNominals
    - fixedSchedule
    - fixedRate
    - fixedDC
    - ' overnightNominals'
    - overnightSchedule
    - ' overnightIndex'
    - spread
    - paymentLag
    - paymentAdjustment
    - ' paymentCalendar'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    - Spread
    - Integer
    - BusinessDayConvention
    - Calendar
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 167
    functionName: QuantLib::OvernightIndexedSwap::OvernightIndexedSwap
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - OvernightLeg
    - registerWith
    - DayCounter
    - floatingSchedule
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwap::OvernightIndexedSwap(Type type,\n                                               std::vector<Real>
      fixedNominals,\n                                               Schedule fixedSchedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               const std::vector<Real>&
      overnightNominals,\n                                               Schedule
      overnightSchedule,\n                                               const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                               Spread spread,\n
      \                                              Integer paymentLag,\n                                               BusinessDayConvention
      paymentAdjustment,\n                                               const Calendar&
      paymentCalendar,\n                                               bool telescopicValueDates,\n
      \                                              RateAveraging::Type averagingMethod,\n
      \                                              Natural lookbackDays,\n                                               Natural
      lockoutDays,\n                                               bool applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:171,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:173,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:174,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:175,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:176,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:179,1
    - Dst: auto::accrualStartDate
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:181,1
    - Dst: auto::date
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:182,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:183,1
    - Dst: auto::fixingDate
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:185,1
    - Dst: auto::accrualPeriod
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:186,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:187,1
    - Dst: auto::amount
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/overnightindexedswap.cpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - args
    argTypes:
    - arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 194
    functionName: QuantLib::OvernightIndexedSwap::setupFloatingArguments
    functionSourceFile: /src/quantlib/ql/instruments/overnightindexedswap.cpp
    functionUses: 0
    functionsReached:
    - auto::accrualPeriod
    - floatingLeg
    - auto::date
    - auto::nominal
    - auto::spread
    - Null<Real>
    - auto::amount
    - std::vector<Real>
    - std::vector<Date>
    - auto::accrualStartDate
    - std::vector<Time>
    - size
    - auto::fixingDate
    - ext::dynamic_pointer_cast<OvernightIndexedCoupon>
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: void OvernightIndexedSwap::setupFloatingArguments(arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:55,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:56,1
    - Dst: QuantLib::CreditDefaultSwap::init
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 14
    argNames:
    - side
    - notional
    - spread
    - ' schedule'
    - convention
    - ' dayCounter'
    - settlesAccrual
    - paysAtDefaultTime
    - ' protectionStart'
    - claim
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' tradeDate'
    - cashSettlementDays
    argTypes:
    - Protection::Side
    - Real
    - Rate
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - bool
    - bool
    - Date
    - ext::shared_ptr<Claim>
    - DayCounter
    - bool
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: QuantLib::CreditDefaultSwap::CreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::CreditDefaultSwap::init
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::CreditDefaultSwap(Protection::Side side,\n
      \                                        Real notional,\n                                         Rate
      spread,\n                                         const Schedule& schedule,\n
      \                                        BusinessDayConvention convention,\n
      \                                        const DayCounter& dayCounter,\n                                         bool
      settlesAccrual,\n                                         bool paysAtDefaultTime,\n
      \                                        const Date& protectionStart,\n                                         ext::shared_ptr<Claim>
      claim,\n                                         const DayCounter& lastPeriodDayCounter,\n
      \                                        const bool rebatesAccrual,\n                                         const
      Date& tradeDate,\n                                         Natural cashSettlementDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:80,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:81,1
    - Dst: QuantLib::CreditDefaultSwap::init
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 16
    argNames:
    - side
    - notional
    - upfront
    - runningSpread
    - ' schedule'
    - convention
    - ' dayCounter'
    - settlesAccrual
    - paysAtDefaultTime
    - ' protectionStart'
    - ' upfrontDate'
    - claim
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' tradeDate'
    - cashSettlementDays
    argTypes:
    - Protection::Side
    - Real
    - Rate
    - Rate
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - bool
    - bool
    - Date
    - Date
    - ext::shared_ptr<Claim>
    - DayCounter
    - bool
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 85
    functionName: QuantLib::CreditDefaultSwap::CreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::CreditDefaultSwap::init
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::CreditDefaultSwap(Protection::Side side,\n
      \                                        Real notional,\n                                         Rate
      upfront,\n                                         Rate runningSpread,\n                                         const
      Schedule& schedule,\n                                         BusinessDayConvention
      convention,\n                                         const DayCounter& dayCounter,\n
      \                                        bool settlesAccrual,\n                                         bool
      paysAtDefaultTime,\n                                         const Date& protectionStart,\n
      \                                        const Date& upfrontDate,\n                                         ext::shared_ptr<Claim>
      claim,\n                                         const DayCounter& lastPeriodDayCounter,\n
      \                                        const bool rebatesAccrual,\n                                         const
      Date& tradeDate,\n                                         Natural cashSettlementDays)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:91,1
    - Dst: hasRule
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:94,1
    - Dst: rule
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:100,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:103,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:110,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:120,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:124,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:131,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:134,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:144,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:146,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:152,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:156,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:157,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:163,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:164,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:170,1
    - Dst: ext::make_shared<FaceValueClaim>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:174,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:175,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 6
    argNames:
    - ' schedule'
    - paymentConvention
    - ' dayCounter'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' upfrontDate'
    argTypes:
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 176
    functionName: QuantLib::CreditDefaultSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 2
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - date
    - ext::make_shared<FaceValueClaim>
    - empty
    - hasRule
    - ext::make_shared<SimpleCashFlow>
    - dates
    - ext::shared_ptr::amount
    - ext::shared_ptr::accruedAmount
    - rule
    - Date
    - registerWith
    - FixedRateLeg
    - calendar
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::init(const Schedule& schedule, BusinessDayConvention
      paymentConvention,\n                                 const DayCounter& dayCounter,
      const DayCounter& lastPeriodDayCounter,\n                                 bool
      rebatesAccrual, const Date& upfrontDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::CreditDefaultSwap::side
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Protection::Side
    signature: Protection::Side CreditDefaultSwap::side() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::CreditDefaultSwap::notional
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::CreditDefaultSwap::runningSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::runningSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: QuantLib::CreditDefaultSwap::upfront
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<Rate>
    signature: ext::optional<Rate> CreditDefaultSwap::upfront() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: QuantLib::CreditDefaultSwap::settlesAccrual
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::settlesAccrual() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::CreditDefaultSwap::paysAtDefaultTime
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::paysAtDefaultTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: '& CreditDefaultSwap::coupons() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CreditDefaultSwap::coupons() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rbegin
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:208,1
    - Dst: rend
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:208,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 213
    functionName: QuantLib::CreditDefaultSwap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - rbegin
    - rend
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 220
    functionName: QuantLib::CreditDefaultSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CreditDefaultSwap::arguments*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:224,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 239
    functionName: QuantLib::CreditDefaultSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<CreditDefaultSwap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:244,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 257
    functionName: QuantLib::CreditDefaultSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const CreditDefaultSwap::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:260,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:261,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 264
    functionName: QuantLib::CreditDefaultSwap::fairUpfront
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::fairUpfront() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:267,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:268,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 271
    functionName: QuantLib::CreditDefaultSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:274,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:275,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 278
    functionName: QuantLib::CreditDefaultSwap::couponLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::couponLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:281,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:282,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 285
    functionName: QuantLib::CreditDefaultSwap::couponLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::couponLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:288,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:289,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: QuantLib::CreditDefaultSwap::defaultLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::defaultLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:295,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:296,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionName: QuantLib::CreditDefaultSwap::upfrontNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::upfrontNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:303,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 306
    functionName: QuantLib::CreditDefaultSwap::upfrontBPS
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::upfrontBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:309,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:310,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionName: QuantLib::CreditDefaultSwap::accrualRebateNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::accrualRebateNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - CreditDefaultSwap::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 324
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      CreditDefaultSwap::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:327,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - CreditDefaultSwap::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 324
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      CreditDefaultSwap::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:327,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:348,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:351,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:352,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:352,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:353,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:358,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:362,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:370,1
    - Dst: QuantLib::CreditDefaultSwap::setupArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:373,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:373,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:374,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:374,1
    - Dst: Brent
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:380,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - targetNPV
    - ' discountCurve'
    - ' dayCounter'
    - recoveryRate
    - accuracy
    - model
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - DayCounter
    - Real
    - Real
    - PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 381
    functionName: QuantLib::CreditDefaultSwap::impliedHazardRate
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CreditDefaultSwap::results*>
    - ext::make_shared<FlatHazardRate>
    - Brent
    - QuantLib::CreditDefaultSwap::setupArguments
    - ext::shared_ptr::getResults
    - WeekendsOnly
    - QL_FAIL
    - ext::shared_ptr::getArguments
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: Rate
    signature: "Rate CreditDefaultSwap::impliedHazardRate(\n                               Real
      targetNPV,\n                               const Handle<YieldTermStructure>&
      discountCurve,\n                               const DayCounter& dayCounter,\n
      \                              Real recoveryRate,\n                               Real
      accuracy,\n                               PricingModel model) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:389,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:392,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:393,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:393,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:394,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:399,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:403,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:411,1
    - Dst: QuantLib::CreditDefaultSwap::setupArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:414,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:414,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:415,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:415,1
    - Dst: Brent
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:421,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - conventionalRecovery
    - ' discountCurve'
    - ' dayCounter'
    - model
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - DayCounter
    - PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 383
    functionDepth: 2
    functionLinenumber: 383
    functionLinenumberEnd: 423
    functionName: QuantLib::CreditDefaultSwap::conventionalSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CreditDefaultSwap::results*>
    - ext::make_shared<FlatHazardRate>
    - Brent
    - QuantLib::CreditDefaultSwap::setupArguments
    - ext::shared_ptr::getResults
    - WeekendsOnly
    - QL_FAIL
    - ext::shared_ptr::getArguments
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: Rate
    signature: "Rate CreditDefaultSwap::conventionalSpread(\n                              Real
      conventionalRecovery,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              const DayCounter& dayCounter,\n
      \                             PricingModel model) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 428
    functionName: '& CreditDefaultSwap::protectionStartDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::protectionStartDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:431,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionName: '& CreditDefaultSwap::protectionEndDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<Coupon>
    - back
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::protectionEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 437
    functionName: '& CreditDefaultSwap::upfrontPayment() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SimpleCashFlow>
    signature: ext::shared_ptr<SimpleCashFlow> & CreditDefaultSwap::upfrontPayment()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 441
    functionName: '& CreditDefaultSwap::accrualRebate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SimpleCashFlow>
    signature: ext::shared_ptr<SimpleCashFlow> & CreditDefaultSwap::accrualRebate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 445
    functionName: '& CreditDefaultSwap::tradeDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::tradeDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionName: QuantLib::CreditDefaultSwap::cashSettlementDays
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural CreditDefaultSwap::cashSettlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:452,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:452,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 453
    functionName: CreditDefaultSwap::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:456,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:456,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:457,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:457,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:458,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:459,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:459,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:460,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:460,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:461,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:463,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:463,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:464,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 465
    functionName: CreditDefaultSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Rate>
    - Protection::Side
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:468,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:469,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:470,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:471,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:472,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:473,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:474,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:475,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 477
    functionName: CreditDefaultSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:481,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:488,1
    - Dst: QuantLib::previousTwentieth
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:491,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:492,1
    - Dst: Date::year
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:492,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:493,1
    - Dst: Date::year
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:493,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:494,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:495,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:502,1
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:503,1
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:503,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 3
    argNames:
    - ' tradeDate'
    - ' tenor'
    - rule
    argTypes:
    - Date
    - Period
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 506
    functionName: QuantLib::cdsMaturity
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date::year
    - length
    - QuantLib::Date
    - QuantLib::io::iso_date
    - QuantLib::previousTwentieth
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date cdsMaturity(const Date& tradeDate, const Period& tenor, DateGeneration::Rule
      rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:55,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:56,1
    - Dst: QuantLib::CreditDefaultSwap::init
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 14
    argNames:
    - side
    - notional
    - spread
    - ' schedule'
    - convention
    - ' dayCounter'
    - settlesAccrual
    - paysAtDefaultTime
    - ' protectionStart'
    - claim
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' tradeDate'
    - cashSettlementDays
    argTypes:
    - Protection::Side
    - Real
    - Rate
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - bool
    - bool
    - Date
    - ext::shared_ptr<Claim>
    - DayCounter
    - bool
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: QuantLib::CreditDefaultSwap::CreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::CreditDefaultSwap::init
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::CreditDefaultSwap(Protection::Side side,\n
      \                                        Real notional,\n                                         Rate
      spread,\n                                         const Schedule& schedule,\n
      \                                        BusinessDayConvention convention,\n
      \                                        const DayCounter& dayCounter,\n                                         bool
      settlesAccrual,\n                                         bool paysAtDefaultTime,\n
      \                                        const Date& protectionStart,\n                                         ext::shared_ptr<Claim>
      claim,\n                                         const DayCounter& lastPeriodDayCounter,\n
      \                                        const bool rebatesAccrual,\n                                         const
      Date& tradeDate,\n                                         Natural cashSettlementDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:80,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:81,1
    - Dst: QuantLib::CreditDefaultSwap::init
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 16
    argNames:
    - side
    - notional
    - upfront
    - runningSpread
    - ' schedule'
    - convention
    - ' dayCounter'
    - settlesAccrual
    - paysAtDefaultTime
    - ' protectionStart'
    - ' upfrontDate'
    - claim
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' tradeDate'
    - cashSettlementDays
    argTypes:
    - Protection::Side
    - Real
    - Rate
    - Rate
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - bool
    - bool
    - Date
    - Date
    - ext::shared_ptr<Claim>
    - DayCounter
    - bool
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 85
    functionName: QuantLib::CreditDefaultSwap::CreditDefaultSwap
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::CreditDefaultSwap::init
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::CreditDefaultSwap(Protection::Side side,\n
      \                                        Real notional,\n                                         Rate
      upfront,\n                                         Rate runningSpread,\n                                         const
      Schedule& schedule,\n                                         BusinessDayConvention
      convention,\n                                         const DayCounter& dayCounter,\n
      \                                        bool settlesAccrual,\n                                         bool
      paysAtDefaultTime,\n                                         const Date& protectionStart,\n
      \                                        const Date& upfrontDate,\n                                         ext::shared_ptr<Claim>
      claim,\n                                         const DayCounter& lastPeriodDayCounter,\n
      \                                        const bool rebatesAccrual,\n                                         const
      Date& tradeDate,\n                                         Natural cashSettlementDays)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:91,1
    - Dst: hasRule
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:94,1
    - Dst: rule
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:100,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:103,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:110,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:120,1
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:124,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:131,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:134,1
    - Dst: dates
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:144,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:146,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:152,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:156,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:157,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:163,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:164,1
    - Dst: ext::make_shared<SimpleCashFlow>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:170,1
    - Dst: ext::make_shared<FaceValueClaim>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:174,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:175,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 6
    argNames:
    - ' schedule'
    - paymentConvention
    - ' dayCounter'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - ' upfrontDate'
    argTypes:
    - Schedule
    - BusinessDayConvention
    - DayCounter
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 176
    functionName: QuantLib::CreditDefaultSwap::init
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 4
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - date
    - ext::make_shared<FaceValueClaim>
    - empty
    - hasRule
    - ext::make_shared<SimpleCashFlow>
    - dates
    - ext::shared_ptr::amount
    - ext::shared_ptr::accruedAmount
    - rule
    - Date
    - registerWith
    - FixedRateLeg
    - calendar
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::init(const Schedule& schedule, BusinessDayConvention
      paymentConvention,\n                                 const DayCounter& dayCounter,
      const DayCounter& lastPeriodDayCounter,\n                                 bool
      rebatesAccrual, const Date& upfrontDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::CreditDefaultSwap::side
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Protection::Side
    signature: Protection::Side CreditDefaultSwap::side() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::CreditDefaultSwap::notional
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::CreditDefaultSwap::runningSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::runningSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: QuantLib::CreditDefaultSwap::upfront
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<Rate>
    signature: ext::optional<Rate> CreditDefaultSwap::upfront() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: QuantLib::CreditDefaultSwap::settlesAccrual
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::settlesAccrual() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::CreditDefaultSwap::paysAtDefaultTime
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::paysAtDefaultTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: '& CreditDefaultSwap::coupons() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & CreditDefaultSwap::coupons() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rbegin
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:208,1
    - Dst: rend
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:208,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 213
    functionName: QuantLib::CreditDefaultSwap::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - rbegin
    - rend
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: bool CreditDefaultSwap::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 220
    functionName: QuantLib::CreditDefaultSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CreditDefaultSwap::arguments*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:224,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 239
    functionName: QuantLib::CreditDefaultSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<CreditDefaultSwap::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::setupArguments(\n                                       PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:244,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 257
    functionName: QuantLib::CreditDefaultSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const CreditDefaultSwap::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CreditDefaultSwap::fetchResults(\n                                      const
      PricingEngine::results* r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:260,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:261,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 264
    functionName: QuantLib::CreditDefaultSwap::fairUpfront
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::fairUpfront() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:267,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:268,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 271
    functionName: QuantLib::CreditDefaultSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CreditDefaultSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:274,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:275,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 278
    functionName: QuantLib::CreditDefaultSwap::couponLegBPS
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::couponLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:281,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:282,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 285
    functionName: QuantLib::CreditDefaultSwap::couponLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::couponLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:288,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:289,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: QuantLib::CreditDefaultSwap::defaultLegNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::defaultLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:295,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:296,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionName: QuantLib::CreditDefaultSwap::upfrontNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::upfrontNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:303,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 306
    functionName: QuantLib::CreditDefaultSwap::upfrontBPS
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::upfrontBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:309,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:310,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionName: QuantLib::CreditDefaultSwap::accrualRebateNPV
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CreditDefaultSwap::accrualRebateNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - CreditDefaultSwap::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 324
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      CreditDefaultSwap::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:327,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - CreditDefaultSwap::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 324
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      CreditDefaultSwap::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:327,1
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:348,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:351,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:352,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:352,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:353,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:358,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:362,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:370,1
    - Dst: QuantLib::CreditDefaultSwap::setupArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:373,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:373,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:374,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:374,1
    - Dst: Brent
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:380,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - targetNPV
    - ' discountCurve'
    - ' dayCounter'
    - recoveryRate
    - accuracy
    - model
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - DayCounter
    - Real
    - Real
    - PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 381
    functionName: QuantLib::CreditDefaultSwap::impliedHazardRate
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CreditDefaultSwap::results*>
    - ext::make_shared<FlatHazardRate>
    - Brent
    - QuantLib::CreditDefaultSwap::setupArguments
    - ext::shared_ptr::getResults
    - WeekendsOnly
    - QL_FAIL
    - ext::shared_ptr::getArguments
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: Rate
    signature: "Rate CreditDefaultSwap::impliedHazardRate(\n                               Real
      targetNPV,\n                               const Handle<YieldTermStructure>&
      discountCurve,\n                               const DayCounter& dayCounter,\n
      \                              Real recoveryRate,\n                               Real
      accuracy,\n                               PricingModel model) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:389,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:392,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:393,1
    - Dst: WeekendsOnly
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:393,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:394,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:399,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:403,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:411,1
    - Dst: QuantLib::CreditDefaultSwap::setupArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:414,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:414,1
    - Dst: dynamic_cast<const CreditDefaultSwap::results*>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:415,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:415,1
    - Dst: Brent
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:421,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - conventionalRecovery
    - ' discountCurve'
    - ' dayCounter'
    - model
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - DayCounter
    - PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 383
    functionDepth: 2
    functionLinenumber: 383
    functionLinenumberEnd: 423
    functionName: QuantLib::CreditDefaultSwap::conventionalSpread
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CreditDefaultSwap::results*>
    - ext::make_shared<FlatHazardRate>
    - Brent
    - QuantLib::CreditDefaultSwap::setupArguments
    - ext::shared_ptr::getResults
    - WeekendsOnly
    - QL_FAIL
    - ext::shared_ptr::getArguments
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<SimpleQuote>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: Rate
    signature: "Rate CreditDefaultSwap::conventionalSpread(\n                              Real
      conventionalRecovery,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              const DayCounter& dayCounter,\n
      \                             PricingModel model) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 428
    functionName: '& CreditDefaultSwap::protectionStartDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::protectionStartDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:431,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionName: '& CreditDefaultSwap::protectionEndDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<Coupon>
    - back
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::protectionEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 437
    functionName: '& CreditDefaultSwap::upfrontPayment() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SimpleCashFlow>
    signature: ext::shared_ptr<SimpleCashFlow> & CreditDefaultSwap::upfrontPayment()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 441
    functionName: '& CreditDefaultSwap::accrualRebate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SimpleCashFlow>
    signature: ext::shared_ptr<SimpleCashFlow> & CreditDefaultSwap::accrualRebate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 445
    functionName: '& CreditDefaultSwap::tradeDate() const'
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & CreditDefaultSwap::tradeDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionName: QuantLib::CreditDefaultSwap::cashSettlementDays
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural CreditDefaultSwap::cashSettlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:452,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:452,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 453
    functionName: CreditDefaultSwap::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:456,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:456,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:457,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:457,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:458,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:459,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:459,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:460,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:460,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:461,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:463,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:463,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:464,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 465
    functionName: CreditDefaultSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Rate>
    - Protection::Side
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:468,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:469,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:470,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:471,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:472,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:473,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:474,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:475,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 477
    functionName: CreditDefaultSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void CreditDefaultSwap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:481,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:484,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:488,1
    - Dst: QuantLib::previousTwentieth
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:491,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:492,1
    - Dst: Date::year
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:492,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:493,1
    - Dst: Date::year
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:493,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:494,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:495,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:502,1
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:503,1
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/instruments/creditdefaultswap.cpp:503,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 3
    argNames:
    - ' tradeDate'
    - ' tenor'
    - rule
    argTypes:
    - Date
    - Period
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 506
    functionName: QuantLib::cdsMaturity
    functionSourceFile: /src/quantlib/ql/instruments/creditdefaultswap.cpp
    functionUses: 0
    functionsReached:
    - Date::year
    - length
    - QuantLib::Date
    - QuantLib::io::iso_date
    - QuantLib::previousTwentieth
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date cdsMaturity(const Date& tradeDate, const Period& tenor, DateGeneration::Rule
      rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:40,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' ex'
    - capacity
    - load
    - changeRate
    argTypes:
    - ext::shared_ptr<BermudanExercise>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::VanillaStorageOption::VanillaStorageOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void VanillaStorageOption(const ext::shared_ptr<BermudanExercise>&
      ex,\n                               Real capacity, Real load, Real changeRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::VanillaStorageOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::VanillaStorageOption::arguments::validate
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VanillaStorageOption::arguments*>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:78,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:81,1
    - Dst: ext::dynamic_pointer_cast<BermudanExercise>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: QuantLib::VanillaStorageOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<BermudanExercise>
    - dynamic_cast<VanillaStorageOption::arguments*>
    - ext::dynamic_pointer_cast<NullPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaStorageOption::setupArguments(\n                                PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:90,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::VanillaStorageOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaStorageOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:40,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' ex'
    - capacity
    - load
    - changeRate
    argTypes:
    - ext::shared_ptr<BermudanExercise>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::VanillaStorageOption::VanillaStorageOption
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void VanillaStorageOption(const ext::shared_ptr<BermudanExercise>&
      ex,\n                               Real capacity, Real load, Real changeRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::VanillaStorageOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::VanillaStorageOption::arguments::validate
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VanillaStorageOption::arguments*>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:78,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:81,1
    - Dst: ext::dynamic_pointer_cast<BermudanExercise>
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: QuantLib::VanillaStorageOption::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<BermudanExercise>
    - dynamic_cast<VanillaStorageOption::arguments*>
    - ext::dynamic_pointer_cast<NullPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaStorageOption::setupArguments(\n                                PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:90,1
    - Dst: lastDate
      Src: /src/quantlib/ql/instruments/vanillastorageoption.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::VanillaStorageOption::isExpired
    functionSourceFile: /src/quantlib/ql/instruments/vanillastorageoption.hpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaStorageOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::RendistatoBasket::size
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: '& outstandings() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & outstandings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::RendistatoBasket::outstanding
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real outstanding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::RendistatoBasket::update
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:194,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 3
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: QuantLib::CCTEU::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - ClosestRounding
    linkageType: ''
    returnType: Real
    signature: Real CCTEU::accruedAmount(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:199,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 3
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::BTP::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - ClosestRounding
    linkageType: ''
    returnType: Real
    signature: Real BTP::accruedAmount(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: "&\n    RendistatoBasket::btps() const"
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BTP> >
    signature: "std::vector<ext::shared_ptr<BTP> > &\n    RendistatoBasket::btps()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: "&\n    RendistatoBasket::cleanPriceQuotes() const"
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<Quote> >
    signature: "std::vector<Handle<Quote> > &\n    RendistatoBasket::cleanPriceQuotes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:214,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:214,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:215,1
    - Dst: yields
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:216,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::RendistatoCalculator::yield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - yields
    - weights
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::yield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::RendistatoCalculator::duration
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::duration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& RendistatoCalculator::yields() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::yields() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& RendistatoCalculator::durations() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::durations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: '& RendistatoCalculator::swapLengths() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::swapLengths() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: '& RendistatoCalculator::swapRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::swapRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: '& RendistatoCalculator::swapYields() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::swapYields() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: '& RendistatoCalculator::swapDurations() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::swapDurations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 257
    functionName: QuantLib::RendistatoCalculator::equivalentSwap
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> RendistatoCalculator::equivalentSwap()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: QuantLib::RendistatoCalculator::equivalentSwapRate
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::equivalentSwapRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: QuantLib::RendistatoCalculator::equivalentSwapYield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::equivalentSwapYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: QuantLib::RendistatoCalculator::equivalentSwapDuration
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::equivalentSwapDuration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::RendistatoCalculator::equivalentSwapLength
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::equivalentSwapLength() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoCalculator::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:280,1
    - Dst: QuantLib::RendistatoCalculator::equivalentSwapRate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::RendistatoCalculator::equivalentSwapSpread
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoCalculator::equivalentSwapRate
    - QuantLib::RendistatoCalculator::yield
    linkageType: ''
    returnType: Spread
    signature: Spread RendistatoCalculator::equivalentSwapSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: equivalentSwapLength
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::value
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - equivalentSwapLength
    linkageType: ''
    returnType: Real
    signature: Real RendistatoEquivalentSwapLengthQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: equivalentSwapSpread
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::value
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - equivalentSwapSpread
    linkageType: ''
    returnType: Real
    signature: Real RendistatoEquivalentSwapSpreadQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::RendistatoBasket::size
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: '& outstandings() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & outstandings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::RendistatoBasket::outstanding
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real outstanding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::RendistatoBasket::update
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:194,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 3
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: QuantLib::CCTEU::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - ClosestRounding
    linkageType: ''
    returnType: Real
    signature: Real CCTEU::accruedAmount(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:199,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 3
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::BTP::accruedAmount
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::accruedAmount
    - ClosestRounding
    linkageType: ''
    returnType: Real
    signature: Real BTP::accruedAmount(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: "&\n    RendistatoBasket::btps() const"
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BTP> >
    signature: "std::vector<ext::shared_ptr<BTP> > &\n    RendistatoBasket::btps()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: "&\n    RendistatoBasket::cleanPriceQuotes() const"
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<Quote> >
    signature: "std::vector<Handle<Quote> > &\n    RendistatoBasket::cleanPriceQuotes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:214,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:214,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:215,1
    - Dst: yields
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:216,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::RendistatoCalculator::yield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 1
    functionsReached:
    - yields
    - weights
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::yield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::RendistatoCalculator::duration
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::duration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& RendistatoCalculator::yields() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::yields() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& RendistatoCalculator::durations() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::durations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: '& RendistatoCalculator::swapLengths() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::swapLengths() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: '& RendistatoCalculator::swapRates() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::swapRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: '& RendistatoCalculator::swapYields() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & RendistatoCalculator::swapYields() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: '& RendistatoCalculator::swapDurations() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & RendistatoCalculator::swapDurations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 257
    functionName: QuantLib::RendistatoCalculator::equivalentSwap
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> RendistatoCalculator::equivalentSwap()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: QuantLib::RendistatoCalculator::equivalentSwapRate
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 1
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::equivalentSwapRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: QuantLib::RendistatoCalculator::equivalentSwapYield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate RendistatoCalculator::equivalentSwapYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: QuantLib::RendistatoCalculator::equivalentSwapDuration
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::equivalentSwapDuration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::RendistatoCalculator::equivalentSwapLength
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time RendistatoCalculator::equivalentSwapLength() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoCalculator::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:280,1
    - Dst: QuantLib::RendistatoCalculator::equivalentSwapRate
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::RendistatoCalculator::equivalentSwapSpread
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoCalculator::equivalentSwapRate
    - QuantLib::RendistatoCalculator::yield
    linkageType: ''
    returnType: Spread
    signature: Spread RendistatoCalculator::equivalentSwapSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: equivalentSwapLength
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::value
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - equivalentSwapLength
    linkageType: ''
    returnType: Real
    signature: Real RendistatoEquivalentSwapLengthQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: equivalentSwapSpread
      Src: /src/quantlib/ql/instruments/bonds/btp.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::value
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.hpp
    functionUses: 0
    functionsReached:
    - equivalentSwapSpread
    linkageType: ''
    returnType: Real
    signature: Real RendistatoEquivalentSwapSpreadQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:54,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:54,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:58,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:60,1
    - Dst: CPILeg
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:63,1
    - Dst: calculateNotionalsFromCashflows
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:80,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 17
    argNames:
    - settlementDays
    - faceAmount
    - growthOnly
    - baseCPI
    - ' observationLag'
    - cpiIndex
    - observationInterpolation
    - schedule
    - ' fixedRate'
    - ' accrualDayCounter'
    - paymentConvention
    - ' issueDate'
    - ' paymentCalendar'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - Natural
    - Real
    - bool
    - Real
    - Period
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Date
    - Calendar
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 87
    functionName: QuantLib::CPIBond::CPIBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.cpp
    functionUses: 0
    functionsReached:
    - Schedule::calendar
    - Schedule::tenor
    - Schedule::endDate
    - std::move
    - push_back
    - begin
    - registerWith
    - CPILeg
    - back
    - end
    - Calendar
    - calculateNotionalsFromCashflows
    linkageType: ''
    returnType: void
    signature: "void CPIBond::CPIBond(Natural settlementDays,\n                     Real
      faceAmount,\n                     bool growthOnly,\n                     Real
      baseCPI,\n                     const Period& observationLag,\n                     ext::shared_ptr<ZeroInflationIndex>
      cpiIndex,\n                     CPI::InterpolationType observationInterpolation,\n
      \                    Schedule schedule,\n                     const std::vector<Rate>&
      fixedRate,\n                     const DayCounter& accrualDayCounter,\n                     BusinessDayConvention
      paymentConvention,\n                     const Date& issueDate,\n                     const
      Calendar& paymentCalendar,\n                     const Period& exCouponPeriod,\n
      \                    const Calendar& exCouponCalendar,\n                     const
      BusinessDayConvention exCouponConvention,\n                     bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:54,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:54,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:58,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:60,1
    - Dst: CPILeg
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:63,1
    - Dst: calculateNotionalsFromCashflows
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:80,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cpibond.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 17
    argNames:
    - settlementDays
    - faceAmount
    - growthOnly
    - baseCPI
    - ' observationLag'
    - cpiIndex
    - observationInterpolation
    - schedule
    - ' fixedRate'
    - ' accrualDayCounter'
    - paymentConvention
    - ' issueDate'
    - ' paymentCalendar'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - Natural
    - Real
    - bool
    - Real
    - Period
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Date
    - Calendar
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 87
    functionName: QuantLib::CPIBond::CPIBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.cpp
    functionUses: 0
    functionsReached:
    - Schedule::calendar
    - Schedule::tenor
    - Schedule::endDate
    - std::move
    - push_back
    - begin
    - registerWith
    - CPILeg
    - back
    - end
    - Calendar
    - calculateNotionalsFromCashflows
    linkageType: ''
    returnType: void
    signature: "void CPIBond::CPIBond(Natural settlementDays,\n                     Real
      faceAmount,\n                     bool growthOnly,\n                     Real
      baseCPI,\n                     const Period& observationLag,\n                     ext::shared_ptr<ZeroInflationIndex>
      cpiIndex,\n                     CPI::InterpolationType observationInterpolation,\n
      \                    Schedule schedule,\n                     const std::vector<Rate>&
      fixedRate,\n                     const DayCounter& accrualDayCounter,\n                     BusinessDayConvention
      paymentConvention,\n                     const Date& issueDate,\n                     const
      Calendar& paymentCalendar,\n                     const Period& exCouponPeriod,\n
      \                    const Calendar& exCouponCalendar,\n                     const
      BusinessDayConvention exCouponConvention,\n                     bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:43,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:45,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:47,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:58,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:60,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 14
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - ' issueDate'
    - ' redemptions'
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<SwapIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 63
    functionName: QuantLib::AmortizingCmsRateBond::AmortizingCmsRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - CmsLeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void AmortizingCmsRateBond::AmortizingCmsRateBond(\n                                    Natural
      settlementDays,\n                                    const std::vector<Real>&
      notionals,\n                                    Schedule schedule,\n                                    const
      ext::shared_ptr<SwapIndex>& index,\n                                    const
      DayCounter& paymentDayCounter,\n                                    BusinessDayConvention
      paymentConvention,\n                                    Natural fixingDays,\n
      \                                   const std::vector<Real>& gearings,\n                                    const
      std::vector<Spread>& spreads,\n                                    const std::vector<Rate>&
      caps,\n                                    const std::vector<Rate>& floors,\n
      \                                   bool inArrears,\n                                    const
      Date& issueDate,\n                                    const std::vector<Real>&
      redemptions)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:43,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:45,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:47,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:58,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:60,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 14
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - ' issueDate'
    - ' redemptions'
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<SwapIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 63
    functionName: QuantLib::AmortizingCmsRateBond::AmortizingCmsRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingcmsratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - CmsLeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void AmortizingCmsRateBond::AmortizingCmsRateBond(\n                                    Natural
      settlementDays,\n                                    const std::vector<Real>&
      notionals,\n                                    Schedule schedule,\n                                    const
      ext::shared_ptr<SwapIndex>& index,\n                                    const
      DayCounter& paymentDayCounter,\n                                    BusinessDayConvention
      paymentConvention,\n                                    Natural fixingDays,\n
      \                                   const std::vector<Real>& gearings,\n                                    const
      std::vector<Spread>& spreads,\n                                    const std::vector<Rate>&
      caps,\n                                    const std::vector<Rate>& floors,\n
      \                                   bool inArrears,\n                                    const
      Date& issueDate,\n                                    const std::vector<Real>&
      redemptions)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:39,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:42,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:45,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:45,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - exercise
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' schedule'
    - redemption
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - Schedule
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: QuantLib::ConvertibleBond::ConvertibleBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - calendar
    - back
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvertibleBond::ConvertibleBond(ext::shared_ptr<Exercise> exercise,\n
      \                                    Real conversionRatio,\n                                     const
      CallabilitySchedule& callability,\n                                     const
      Date& issueDate,\n                                     Natural settlementDays,\n
      \                                    const Schedule& schedule,\n                                     Real
      redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Leg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:69,1
    - Dst: setSingleRedemption
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' dayCounter'
    - ' schedule'
    - redemption
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - DayCounter
    - Schedule
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 73
    functionName: QuantLib::ConvertibleZeroCouponBond::ConvertibleZeroCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - setSingleRedemption
    - Leg
    linkageType: ''
    returnType: void
    signature: "void ConvertibleZeroCouponBond::ConvertibleZeroCouponBond(const ext::shared_ptr<Exercise>&
      exercise,\n                                                         Real conversionRatio,\n
      \                                                        const CallabilitySchedule&
      callability,\n                                                         const
      Date& issueDate,\n                                                         Natural
      settlementDays,\n                                                         const
      DayCounter& dayCounter,\n                                                         const
      Schedule& schedule,\n                                                         Real
      redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:99,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:102,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:106,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:106,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' coupons'
    - ' dayCounter'
    - ' schedule'
    - redemption
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - std::vector<Rate>
    - DayCounter
    - Schedule
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 109
    functionName: QuantLib::ConvertibleFixedCouponBond::ConvertibleFixedCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - addRedemptionsToCashflows
    - std::vector<Real>
    - FixedRateLeg
    - size
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void ConvertibleFixedCouponBond::ConvertibleFixedCouponBond(\n        const
      ext::shared_ptr<Exercise>& exercise,\n        Real conversionRatio,\n        const
      CallabilitySchedule& callability,\n        const Date& issueDate,\n        Natural
      settlementDays,\n        const std::vector<Rate>& coupons,\n        const DayCounter&
      dayCounter,\n        const Schedule& schedule,\n        Real redemption,\n        const
      Period& exCouponPeriod,\n        const Calendar& exCouponCalendar,\n        const
      BusinessDayConvention exCouponConvention,\n        bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:137,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:140,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:146,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:146,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:148,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 15
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' index'
    - fixingDays
    - ' spreads'
    - ' dayCounter'
    - ' schedule'
    - redemption
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Natural
    - std::vector<Spread>
    - DayCounter
    - Schedule
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 151
    functionName: QuantLib::ConvertibleFloatingRateBond::ConvertibleFloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - addRedemptionsToCashflows
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void ConvertibleFloatingRateBond::ConvertibleFloatingRateBond(\n        const
      ext::shared_ptr<Exercise>& exercise,\n        Real conversionRatio,\n        const
      CallabilitySchedule& callability,\n        const Date& issueDate,\n        Natural
      settlementDays,\n        const ext::shared_ptr<IborIndex>& index,\n        Natural
      fixingDays,\n        const std::vector<Spread>& spreads,\n        const DayCounter&
      dayCounter,\n        const Schedule& schedule,\n        Real redemption,\n        const
      Period& exCouponPeriod,\n        const Calendar& exCouponCalendar,\n        const
      BusinessDayConvention exCouponConvention,\n        bool exCouponEndOfMonth)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<ConvertibleBond::arguments*>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:155,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:162,1
    - Dst: auto*::callabilityDates::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:163,1
    - Dst: auto*::callabilityTypes::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:164,1
    - Dst: auto*::callabilityPrices::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:165,1
    - Dst: auto*::callabilityTriggers::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:166,1
    - Dst: auto*::callabilityDates::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:167,1
    - Dst: auto*::callabilityTypes::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:168,1
    - Dst: auto*::callabilityPrices::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:169,1
    - Dst: auto*::callabilityTriggers::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:170,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:172,1
    - Dst: auto*::callabilityTypes::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:173,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:173,1
    - Dst: auto*::callabilityDates::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:174,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:174,1
    - Dst: auto*::callabilityPrices::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:175,1
    - Dst: price
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:175,1
    - Dst: price
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:176,1
    - Dst: auto*::callabilityPrices::back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:177,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:178,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:178,1
    - Dst: ext::dynamic_pointer_cast<SoftCallability>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:180,1
    - Dst: auto*::callabilityTriggers::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:182,1
    - Dst: ext::shared_ptr::trigger
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:182,1
    - Dst: auto*::callabilityTriggers::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:184,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:188,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 1
    argNames:
    - arguments
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 194
    functionName: QuantLib::ConvertibleBond::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - auto*::callabilityTypes::push_back
    - ext::dynamic_pointer_cast<SoftCallability>
    - auto*::callabilityPrices::clear
    - price
    - ext::shared_ptr::trigger
    - date
    - cashflows
    - auto*::callabilityPrices::push_back
    - accruedAmount
    - dynamic_cast<ConvertibleBond::arguments*>
    - auto*::callabilityTypes::clear
    - size
    - auto*::callabilityDates::push_back
    - Null<Real>
    - auto*::callabilityTriggers::push_back
    - auto*::callabilityDates::clear
    - auto*::callabilityTypes::reserve
    - auto*::callabilityTriggers::clear
    - auto*::callabilityTriggers::reserve
    - auto*::callabilityPrices::reserve
    - QL_REQUIRE
    - auto*::callabilityPrices::back
    - auto*::callabilityDates::reserve
    - settlementDate
    - type
    - hasOccurred
    linkageType: ''
    returnType: void
    signature: void ConvertibleBond::setupArguments(PricingEngine::arguments* arguments)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:200,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:204,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:208,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:210,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:219,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 220
    functionName: ConvertibleBond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Real>
    - Null<Natural>
    - Date
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ConvertibleBond::arguments::validate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:39,1
    - Dst: endDate
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:42,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:45,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:45,1
    - Dst: back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - exercise
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' schedule'
    - redemption
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - Schedule
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: QuantLib::ConvertibleBond::ConvertibleBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - calendar
    - back
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvertibleBond::ConvertibleBond(ext::shared_ptr<Exercise> exercise,\n
      \                                    Real conversionRatio,\n                                     const
      CallabilitySchedule& callability,\n                                     const
      Date& issueDate,\n                                     Natural settlementDays,\n
      \                                    const Schedule& schedule,\n                                     Real
      redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Leg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:69,1
    - Dst: setSingleRedemption
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' dayCounter'
    - ' schedule'
    - redemption
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - DayCounter
    - Schedule
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 73
    functionName: QuantLib::ConvertibleZeroCouponBond::ConvertibleZeroCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - setSingleRedemption
    - Leg
    linkageType: ''
    returnType: void
    signature: "void ConvertibleZeroCouponBond::ConvertibleZeroCouponBond(const ext::shared_ptr<Exercise>&
      exercise,\n                                                         Real conversionRatio,\n
      \                                                        const CallabilitySchedule&
      callability,\n                                                         const
      Date& issueDate,\n                                                         Natural
      settlementDays,\n                                                         const
      DayCounter& dayCounter,\n                                                         const
      Schedule& schedule,\n                                                         Real
      redemption)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:99,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:102,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:106,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:106,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' coupons'
    - ' dayCounter'
    - ' schedule'
    - redemption
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - std::vector<Rate>
    - DayCounter
    - Schedule
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 109
    functionName: QuantLib::ConvertibleFixedCouponBond::ConvertibleFixedCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - addRedemptionsToCashflows
    - std::vector<Real>
    - FixedRateLeg
    - size
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void ConvertibleFixedCouponBond::ConvertibleFixedCouponBond(\n        const
      ext::shared_ptr<Exercise>& exercise,\n        Real conversionRatio,\n        const
      CallabilitySchedule& callability,\n        const Date& issueDate,\n        Natural
      settlementDays,\n        const std::vector<Rate>& coupons,\n        const DayCounter&
      dayCounter,\n        const Schedule& schedule,\n        Real redemption,\n        const
      Period& exCouponPeriod,\n        const Calendar& exCouponCalendar,\n        const
      BusinessDayConvention exCouponConvention,\n        bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:137,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:140,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:146,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:146,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:148,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 15
    argNames:
    - ' exercise'
    - conversionRatio
    - ' callability'
    - ' issueDate'
    - settlementDays
    - ' index'
    - fixingDays
    - ' spreads'
    - ' dayCounter'
    - ' schedule'
    - redemption
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - ext::shared_ptr<Exercise>
    - Real
    - CallabilitySchedule
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Natural
    - std::vector<Spread>
    - DayCounter
    - Schedule
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 151
    functionName: QuantLib::ConvertibleFloatingRateBond::ConvertibleFloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - addRedemptionsToCashflows
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void ConvertibleFloatingRateBond::ConvertibleFloatingRateBond(\n        const
      ext::shared_ptr<Exercise>& exercise,\n        Real conversionRatio,\n        const
      CallabilitySchedule& callability,\n        const Date& issueDate,\n        Natural
      settlementDays,\n        const ext::shared_ptr<IborIndex>& index,\n        Natural
      fixingDays,\n        const std::vector<Spread>& spreads,\n        const DayCounter&
      dayCounter,\n        const Schedule& schedule,\n        Real redemption,\n        const
      Period& exCouponPeriod,\n        const Calendar& exCouponCalendar,\n        const
      BusinessDayConvention exCouponConvention,\n        bool exCouponEndOfMonth)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<ConvertibleBond::arguments*>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:155,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:162,1
    - Dst: auto*::callabilityDates::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:163,1
    - Dst: auto*::callabilityTypes::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:164,1
    - Dst: auto*::callabilityPrices::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:165,1
    - Dst: auto*::callabilityTriggers::clear
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:166,1
    - Dst: auto*::callabilityDates::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:167,1
    - Dst: auto*::callabilityTypes::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:168,1
    - Dst: auto*::callabilityPrices::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:169,1
    - Dst: auto*::callabilityTriggers::reserve
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:170,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:172,1
    - Dst: auto*::callabilityTypes::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:173,1
    - Dst: type
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:173,1
    - Dst: auto*::callabilityDates::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:174,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:174,1
    - Dst: auto*::callabilityPrices::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:175,1
    - Dst: price
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:175,1
    - Dst: price
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:176,1
    - Dst: auto*::callabilityPrices::back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:177,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:178,1
    - Dst: date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:178,1
    - Dst: ext::dynamic_pointer_cast<SoftCallability>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:180,1
    - Dst: auto*::callabilityTriggers::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:182,1
    - Dst: ext::shared_ptr::trigger
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:182,1
    - Dst: auto*::callabilityTriggers::push_back
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:184,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:188,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 1
    argNames:
    - arguments
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 194
    functionName: QuantLib::ConvertibleBond::setupArguments
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - auto*::callabilityTypes::push_back
    - ext::dynamic_pointer_cast<SoftCallability>
    - auto*::callabilityPrices::clear
    - price
    - ext::shared_ptr::trigger
    - date
    - cashflows
    - auto*::callabilityPrices::push_back
    - accruedAmount
    - dynamic_cast<ConvertibleBond::arguments*>
    - auto*::callabilityTypes::clear
    - size
    - auto*::callabilityDates::push_back
    - Null<Real>
    - auto*::callabilityTriggers::push_back
    - auto*::callabilityDates::clear
    - auto*::callabilityTypes::reserve
    - auto*::callabilityTriggers::clear
    - auto*::callabilityTriggers::reserve
    - auto*::callabilityPrices::reserve
    - QL_REQUIRE
    - auto*::callabilityPrices::back
    - auto*::callabilityDates::reserve
    - settlementDate
    - type
    - hasOccurred
    linkageType: ''
    returnType: void
    signature: void ConvertibleBond::setupArguments(PricingEngine::arguments* arguments)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:200,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:204,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:208,1
    - Dst: Date
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:210,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:212,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:216,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:219,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 220
    functionName: ConvertibleBond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Real>
    - Null<Natural>
    - Date
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ConvertibleBond::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' price'
    - ' date'
    - trigger
    argTypes:
    - Bond::Price
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::SoftCallability::SoftCallability
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SoftCallability(const Bond::Price& price, const Date& date, Real
      trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::SoftCallability::trigger
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real trigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ConvertibleBond::conversionRatio
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real conversionRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& callability() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CallabilitySchedule
    signature: CallabilitySchedule & callability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: QuantLib::ConvertibleBond::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Null<Natural>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' price'
    - ' date'
    - trigger
    argTypes:
    - Bond::Price
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::SoftCallability::SoftCallability
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SoftCallability(const Bond::Price& price, const Date& date, Real
      trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::SoftCallability::trigger
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real trigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ConvertibleBond::conversionRatio
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real conversionRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& callability() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CallabilitySchedule
    signature: CallabilitySchedule & callability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: QuantLib::ConvertibleBond::arguments::arguments
    functionSourceFile: /src/quantlib/ql/instruments/bonds/convertiblebonds.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Null<Natural>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:49,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:51,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:53,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:65,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:67,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:67,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 18
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' iborIndex'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 71
    functionName: QuantLib::FloatingRateBond::FloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingRateBond::FloatingRateBond(\n                           Natural
      settlementDays,\n                           Real faceAmount,\n                           Schedule
      schedule,\n                           const ext::shared_ptr<IborIndex>& iborIndex,\n
      \                          const DayCounter& paymentDayCounter,\n                           BusinessDayConvention
      paymentConvention,\n                           Natural fixingDays,\n                           const
      std::vector<Real>& gearings,\n                           const std::vector<Spread>&
      spreads,\n                           const std::vector<Rate>& caps,\n                           const
      std::vector<Rate>& floors,\n                           bool inArrears,\n                           Real
      redemption,\n                           const Date& issueDate,\n                           const
      Period& exCouponPeriod,\n                           const Calendar& exCouponCalendar,\n
      \                          const BusinessDayConvention exCouponConvention,\n
      \                          bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:49,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:51,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:53,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:65,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:67,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:67,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 18
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' iborIndex'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 71
    functionName: QuantLib::FloatingRateBond::FloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/floatingratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingRateBond::FloatingRateBond(\n                           Natural
      settlementDays,\n                           Real faceAmount,\n                           Schedule
      schedule,\n                           const ext::shared_ptr<IborIndex>& iborIndex,\n
      \                          const DayCounter& paymentDayCounter,\n                           BusinessDayConvention
      paymentConvention,\n                           Natural fixingDays,\n                           const
      std::vector<Real>& gearings,\n                           const std::vector<Spread>&
      spreads,\n                           const std::vector<Rate>& caps,\n                           const
      std::vector<Rate>& floors,\n                           bool inArrears,\n                           Real
      redemption,\n                           const Date& issueDate,\n                           const
      Period& exCouponPeriod,\n                           const Calendar& exCouponCalendar,\n
      \                          const BusinessDayConvention exCouponConvention,\n
      \                          bool exCouponEndOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp:36,1
    - Dst: setSingleRedemption
      Src: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - faceAmount
    - ' maturityDate'
    - paymentConvention
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Calendar
    - Real
    - Date
    - BusinessDayConvention
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 39
    functionName: QuantLib::ZeroCouponBond::ZeroCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - setSingleRedemption
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponBond::ZeroCouponBond(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Real faceAmount,\n                                   const
      Date& maturityDate,\n                                   BusinessDayConvention
      paymentConvention,\n                                   Real redemption,\n                                   const
      Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp:36,1
    - Dst: setSingleRedemption
      Src: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - faceAmount
    - ' maturityDate'
    - paymentConvention
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Calendar
    - Real
    - Date
    - BusinessDayConvention
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 39
    functionName: QuantLib::ZeroCouponBond::ZeroCouponBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/zerocouponbond.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - setSingleRedemption
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponBond::ZeroCouponBond(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Real faceAmount,\n                                   const
      Date& maturityDate,\n                                   BusinessDayConvention
      paymentConvention,\n                                   Real redemption,\n                                   const
      Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:45,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:47,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:49,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:60,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:60,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:62,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:62,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 14
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<SwapIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 66
    functionName: QuantLib::CmsRateBond::CmsRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - CmsLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void CmsRateBond::CmsRateBond(\n                           Natural
      settlementDays,\n                           Real faceAmount,\n                           Schedule
      schedule,\n                           const ext::shared_ptr<SwapIndex>& index,\n
      \                          const DayCounter& paymentDayCounter,\n                           BusinessDayConvention
      paymentConvention,\n                           Natural fixingDays,\n                           const
      std::vector<Real>& gearings,\n                           const std::vector<Spread>&
      spreads,\n                           const std::vector<Rate>& caps,\n                           const
      std::vector<Rate>& floors,\n                           bool inArrears,\n                           Real
      redemption,\n                           const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:45,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:47,1
    - Dst: CmsLeg
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:49,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:60,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:60,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:62,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:62,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 14
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<SwapIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 66
    functionName: QuantLib::CmsRateBond::CmsRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cmsratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - CmsLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void CmsRateBond::CmsRateBond(\n                           Natural
      settlementDays,\n                           Real faceAmount,\n                           Schedule
      schedule,\n                           const ext::shared_ptr<SwapIndex>& index,\n
      \                          const DayCounter& paymentDayCounter,\n                           BusinessDayConvention
      paymentConvention,\n                           Natural fixingDays,\n                           const
      std::vector<Real>& gearings,\n                           const std::vector<Spread>&
      spreads,\n                           const std::vector<Rate>& caps,\n                           const
      std::vector<Rate>& floors,\n                           bool inArrears,\n                           Real
      redemption,\n                           const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FixedRateBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '& firstPeriodDayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & firstPeriodDayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FixedRateBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '& firstPeriodDayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & firstPeriodDayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::AmortizingFixedRateBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::AmortizingFixedRateBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:39,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:41,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:43,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:44,1
    - Dst: Euribor6M
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:46,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:47,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:48,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:49,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' maturityDate'
    - spread
    - ' fwdCurve'
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Spread
    - Handle<YieldTermStructure>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionName: QuantLib::CCTEU::CCTEU
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - Euribor6M
    - std::vector<Real>
    - Actual360
    - ext::make_shared<Euribor6M>
    - std::vector<Rate>
    - NullCalendar
    - Schedule
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: "void CCTEU::CCTEU(const Date& maturityDate,\n                 Spread
      spread,\n                 const Handle<YieldTermStructure>& fwdCurve,\n                 const
      Date& startDate,\n                 const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:60,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:62,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:64,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:65,1
    - Dst: TARGET
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' maturityDate'
    - fixedRate
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Rate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 66
    functionName: QuantLib::BTP::BTP
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Schedule
    - NullCalendar
    - std::vector<Rate>
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void BTP::BTP(const Date& maturityDate,\n             Rate fixedRate,\n
      \            const Date& startDate,\n             const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:74,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:76,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:78,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:79,1
    - Dst: TARGET
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' maturityDate'
    - fixedRate
    - redemption
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Rate
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::BTP::BTP
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Schedule
    - NullCalendar
    - std::vector<Rate>
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void BTP::BTP(const Date& maturityDate,\n             Rate fixedRate,\n
      \            Real redemption,\n             const Date& startDate,\n             const
      Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:86,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cleanPrice
    - settlementDate
    - accuracy
    - maxEvaluations
    argTypes:
    - Real
    - Date
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 4
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::BTP::yield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::yield
    - ActualActual
    linkageType: ''
    returnType: Rate
    signature: "Rate BTP::yield(Real cleanPrice,\n                    Date settlementDate,\n
      \                   Real accuracy,\n                    Size maxEvaluations)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:97,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:100,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:100,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:104,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:104,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:111,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:112,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:119,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:120,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:126,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ' btps'
    - ' outstandings'
    - cleanPriceQuotes
    argTypes:
    - std::vector<ext::shared_ptr<BTP> >
    - std::vector<Real>
    - std::vector<Handle<Quote> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 131
    functionName: QuantLib::RendistatoBasket::RendistatoBasket
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - QuantLib::RendistatoBasket::size
    - std::move
    - resize
    - registerWith
    - maturityDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RendistatoBasket::RendistatoBasket(const std::vector<ext::shared_ptr<BTP>
      >& btps,\n                                       const std::vector<Real>& outstandings,\n
      \                                      std::vector<Handle<Quote> > cleanPriceQuotes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:139,1
    - Dst: Null<Time>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:141,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:142,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:144,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:145,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:149,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - basket
    - euriborIndex
    - discountCurve
    argTypes:
    - ext::shared_ptr<RendistatoBasket>
    - ext::shared_ptr<Euribor>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 154
    functionName: QuantLib::RendistatoCalculator::RendistatoCalculator
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::move
    - static_cast<Real>
    - registerWith
    - MakeVanillaSwap
    - Null<Time>
    - size
    linkageType: ''
    returnType: void
    signature: "void RendistatoCalculator::RendistatoCalculator(ext::shared_ptr<RendistatoBasket>
      basket,\n                                               ext::shared_ptr<Euribor>
      euriborIndex,\n                                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: btps
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:158,1
    - Dst: cleanPriceQuotes
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:159,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:161,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:162,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:163,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:164,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:167,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:169,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:172,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:172,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:173,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:174,1
    - Dst: fixedDayCount
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:177,1
    - Dst: fairRate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:179,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:182,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:183,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:187,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:189,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:193,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:195,1
    - Dst: fairRate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:198,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:201,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:202,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:206,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:208,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:212,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:214,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 221
    functionName: QuantLib::RendistatoCalculator::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - ActualActual
    - fixedSchedule
    - fairRate
    - cleanPriceQuotes
    - value
    - QuantLib::BondFunctions::duration
    - btps
    - settlementDate
    - std::inner_product
    - weights
    - begin
    - Real
    - fixedDayCount
    - size
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: void RendistatoCalculator::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r
    argTypes:
    - ext::shared_ptr<RendistatoCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::RendistatoEquivalentSwapLengthQuote
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RendistatoEquivalentSwapLengthQuote::RendistatoEquivalentSwapLengthQuote(\n
      \       ext::shared_ptr<RendistatoCalculator> r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoEquivalentSwapLengthQuote::value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 234
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoEquivalentSwapLengthQuote::value
    linkageType: ''
    returnType: bool
    signature: bool RendistatoEquivalentSwapLengthQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r
    argTypes:
    - ext::shared_ptr<RendistatoCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::RendistatoEquivalentSwapSpreadQuote
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RendistatoEquivalentSwapSpreadQuote::RendistatoEquivalentSwapSpreadQuote(\n
      \       ext::shared_ptr<RendistatoCalculator> r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoEquivalentSwapSpreadQuote::value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoEquivalentSwapSpreadQuote::value
    linkageType: ''
    returnType: bool
    signature: bool RendistatoEquivalentSwapSpreadQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:39,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:41,1
    - Dst: ext::make_shared<Euribor6M>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:43,1
    - Dst: Actual360
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:44,1
    - Dst: Euribor6M
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:46,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:47,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:48,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:49,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' maturityDate'
    - spread
    - ' fwdCurve'
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Spread
    - Handle<YieldTermStructure>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionName: QuantLib::CCTEU::CCTEU
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - Euribor6M
    - std::vector<Real>
    - Actual360
    - ext::make_shared<Euribor6M>
    - std::vector<Rate>
    - NullCalendar
    - Schedule
    - std::vector<Spread>
    linkageType: ''
    returnType: void
    signature: "void CCTEU::CCTEU(const Date& maturityDate,\n                 Spread
      spread,\n                 const Handle<YieldTermStructure>& fwdCurve,\n                 const
      Date& startDate,\n                 const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:60,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:62,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:64,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:65,1
    - Dst: TARGET
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' maturityDate'
    - fixedRate
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Rate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 66
    functionName: QuantLib::BTP::BTP
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Schedule
    - NullCalendar
    - std::vector<Rate>
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void BTP::BTP(const Date& maturityDate,\n             Rate fixedRate,\n
      \            const Date& startDate,\n             const Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:74,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:76,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:78,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:79,1
    - Dst: TARGET
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' maturityDate'
    - fixedRate
    - redemption
    - ' startDate'
    - ' issueDate'
    argTypes:
    - Date
    - Rate
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::BTP::BTP
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Schedule
    - NullCalendar
    - std::vector<Rate>
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void BTP::BTP(const Date& maturityDate,\n             Rate fixedRate,\n
      \            Real redemption,\n             const Date& startDate,\n             const
      Date& issueDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:86,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cleanPrice
    - settlementDate
    - accuracy
    - maxEvaluations
    argTypes:
    - Real
    - Date
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 4
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::BTP::yield
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::yield
    - ActualActual
    linkageType: ''
    returnType: Rate
    signature: "Rate BTP::yield(Real cleanPrice,\n                    Date settlementDate,\n
      \                   Real accuracy,\n                    Size maxEvaluations)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:97,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:100,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:100,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:104,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:104,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:111,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:112,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:119,1
    - Dst: QuantLib::RendistatoBasket::size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:120,1
    - Dst: resize
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:126,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ' btps'
    - ' outstandings'
    - cleanPriceQuotes
    argTypes:
    - std::vector<ext::shared_ptr<BTP> >
    - std::vector<Real>
    - std::vector<Handle<Quote> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 131
    functionName: QuantLib::RendistatoBasket::RendistatoBasket
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - QuantLib::RendistatoBasket::size
    - std::move
    - resize
    - registerWith
    - maturityDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RendistatoBasket::RendistatoBasket(const std::vector<ext::shared_ptr<BTP>
      >& btps,\n                                       const std::vector<Real>& outstandings,\n
      \                                      std::vector<Handle<Quote> > cleanPriceQuotes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:139,1
    - Dst: Null<Time>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:141,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:142,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:144,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:145,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:149,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - basket
    - euriborIndex
    - discountCurve
    argTypes:
    - ext::shared_ptr<RendistatoBasket>
    - ext::shared_ptr<Euribor>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 154
    functionName: QuantLib::RendistatoCalculator::RendistatoCalculator
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::move
    - static_cast<Real>
    - registerWith
    - MakeVanillaSwap
    - Null<Time>
    - size
    linkageType: ''
    returnType: void
    signature: "void RendistatoCalculator::RendistatoCalculator(ext::shared_ptr<RendistatoBasket>
      basket,\n                                               ext::shared_ptr<Euribor>
      euriborIndex,\n                                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: btps
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:158,1
    - Dst: cleanPriceQuotes
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:159,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:161,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:162,1
    - Dst: value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:163,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:164,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:167,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:169,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:172,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:172,1
    - Dst: weights
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:173,1
    - Dst: begin
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:174,1
    - Dst: fixedDayCount
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:177,1
    - Dst: fairRate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:179,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:182,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:183,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:187,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:189,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:193,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:195,1
    - Dst: fairRate
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:198,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:201,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:202,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:206,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:208,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:212,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:214,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 221
    functionName: QuantLib::RendistatoCalculator::performCalculations
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondFunctions::yield
    - ActualActual
    - fixedSchedule
    - fairRate
    - cleanPriceQuotes
    - value
    - QuantLib::BondFunctions::duration
    - btps
    - settlementDate
    - std::inner_product
    - weights
    - begin
    - Real
    - fixedDayCount
    - size
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: void RendistatoCalculator::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r
    argTypes:
    - ext::shared_ptr<RendistatoCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::RendistatoEquivalentSwapLengthQuote
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RendistatoEquivalentSwapLengthQuote::RendistatoEquivalentSwapLengthQuote(\n
      \       ext::shared_ptr<RendistatoCalculator> r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoEquivalentSwapLengthQuote::value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 234
    functionName: QuantLib::RendistatoEquivalentSwapLengthQuote::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoEquivalentSwapLengthQuote::value
    linkageType: ''
    returnType: bool
    signature: bool RendistatoEquivalentSwapLengthQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r
    argTypes:
    - ext::shared_ptr<RendistatoCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::RendistatoEquivalentSwapSpreadQuote
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RendistatoEquivalentSwapSpreadQuote::RendistatoEquivalentSwapSpreadQuote(\n
      \       ext::shared_ptr<RendistatoCalculator> r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RendistatoEquivalentSwapSpreadQuote::value
      Src: /src/quantlib/ql/instruments/bonds/btp.cpp:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: QuantLib::RendistatoEquivalentSwapSpreadQuote::isValid
    functionSourceFile: /src/quantlib/ql/instruments/bonds/btp.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RendistatoEquivalentSwapSpreadQuote::value
    linkageType: ''
    returnType: bool
    signature: bool RendistatoEquivalentSwapSpreadQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:41,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:42,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:45,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:47,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:57,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:59,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 13
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' coupons'
    - ' accrualDayCounter'
    - paymentConvention
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' redemptions'
    - paymentLag
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 60
    functionName: QuantLib::AmortizingFixedRateBond::AmortizingFixedRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - Schedule::tenor
    - addRedemptionsToCashflows
    - Schedule::endDate
    - std::move
    - FixedRateLeg
    linkageType: ''
    returnType: void
    signature: "void AmortizingFixedRateBond::AmortizingFixedRateBond(\n                                      Natural
      settlementDays,\n                                      const std::vector<Real>&
      notionals,\n                                      Schedule schedule,\n                                      const
      std::vector<Rate>& coupons,\n                                      const DayCounter&
      accrualDayCounter,\n                                      BusinessDayConvention
      paymentConvention,\n                                      const Date& issueDate,\n
      \                                     const Period& exCouponPeriod,\n                                      const
      Calendar& exCouponCalendar,\n                                      const BusinessDayConvention
      exCouponConvention,\n                                      bool exCouponEndOfMonth,\n
      \                                     const std::vector<Real>& redemptions,\n
      \                                     Integer paymentLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' startDate'
    - ' bondLength'
    - ' frequency'
    - ' paymentCalendar'
    argTypes:
    - Date
    - Period
    - Frequency
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 72
    functionName: QuantLib::sinkingSchedule
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: "Schedule sinkingSchedule(const Date& startDate,\n                             const
      Period& bondLength,\n                             const Frequency& frequency,\n
      \                            const Calendar& paymentCalendar)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:77,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 89
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: std::floor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' subPeriod'
    - ' superPeriod'
    - ' numSubPeriods'
    argTypes:
    - Period
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 119
    functionName: QuantLib::isSubPeriod
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::floor
    - std::ceil
    - static_cast<Integer>
    linkageType: ''
    returnType: bool
    signature: "bool isSubPeriod(const Period& subPeriod,\n                         const
      Period& superPeriod,\n                         Integer& numSubPeriods)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:77,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 89
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: std::floor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' subPeriod'
    - ' superPeriod'
    - ' numSubPeriods'
    argTypes:
    - Period
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 119
    functionName: QuantLib::isSubPeriod
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::floor
    - std::ceil
    - static_cast<Integer>
    linkageType: ''
    returnType: bool
    signature: "bool isSubPeriod(const Period& subPeriod,\n                         const
      Period& superPeriod,\n                         Integer& numSubPeriods)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: QuantLib::isSubPeriod
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:132,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:133,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:135,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' bondLength'
    - ' sinkingFrequency'
    - couponRate
    - initialNotional
    argTypes:
    - Period
    - Frequency
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 150
    functionName: QuantLib::sinkingNotionals
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Period
    - QuantLib::isSubPeriod
    - std::pow
    - std::vector::front
    - std::vector::back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> sinkingNotionals(const Period& bondLength,\n                                       const
      Frequency& sinkingFrequency,\n                                       Rate couponRate,\n
      \                                      Real initialNotional)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:41,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:42,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:45,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:47,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:57,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:59,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 13
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' coupons'
    - ' accrualDayCounter'
    - paymentConvention
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' redemptions'
    - paymentLag
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 60
    functionName: QuantLib::AmortizingFixedRateBond::AmortizingFixedRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - Schedule::tenor
    - addRedemptionsToCashflows
    - Schedule::endDate
    - std::move
    - FixedRateLeg
    linkageType: ''
    returnType: void
    signature: "void AmortizingFixedRateBond::AmortizingFixedRateBond(\n                                      Natural
      settlementDays,\n                                      const std::vector<Real>&
      notionals,\n                                      Schedule schedule,\n                                      const
      std::vector<Rate>& coupons,\n                                      const DayCounter&
      accrualDayCounter,\n                                      BusinessDayConvention
      paymentConvention,\n                                      const Date& issueDate,\n
      \                                     const Period& exCouponPeriod,\n                                      const
      Calendar& exCouponCalendar,\n                                      const BusinessDayConvention
      exCouponConvention,\n                                      bool exCouponEndOfMonth,\n
      \                                     const std::vector<Real>& redemptions,\n
      \                                     Integer paymentLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' startDate'
    - ' bondLength'
    - ' frequency'
    - ' paymentCalendar'
    argTypes:
    - Date
    - Period
    - Frequency
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 72
    functionName: QuantLib::sinkingSchedule
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Schedule
    signature: "Schedule sinkingSchedule(const Date& startDate,\n                             const
      Period& bondLength,\n                             const Frequency& frequency,\n
      \                            const Calendar& paymentCalendar)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:77,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 89
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: std::floor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' subPeriod'
    - ' superPeriod'
    - ' numSubPeriods'
    argTypes:
    - Period
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 119
    functionName: QuantLib::isSubPeriod
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 1
    functionsReached:
    - std::floor
    - std::ceil
    - static_cast<Integer>
    linkageType: ''
    returnType: bool
    signature: "bool isSubPeriod(const Period& subPeriod,\n                         const
      Period& superPeriod,\n                         Integer& numSubPeriods)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:77,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:83,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: length
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: Integer
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    - Dst: units
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 89
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: std::floor
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:103,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' subPeriod'
    - ' superPeriod'
    - ' numSubPeriods'
    argTypes:
    - Period
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 119
    functionName: QuantLib::isSubPeriod
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 1
    functionsReached:
    - std::floor
    - std::ceil
    - static_cast<Integer>
    linkageType: ''
    returnType: bool
    signature: "bool isSubPeriod(const Period& subPeriod,\n                         const
      Period& superPeriod,\n                         Integer& numSubPeriods)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: QuantLib::isSubPeriod
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: Period
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:128,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:132,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:133,1
    - Dst: std::pow
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:135,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' bondLength'
    - ' sinkingFrequency'
    - couponRate
    - initialNotional
    argTypes:
    - Period
    - Frequency
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 150
    functionName: QuantLib::sinkingNotionals
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfixedratebond.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Period
    - QuantLib::isSubPeriod
    - std::pow
    - std::vector::front
    - std::vector::back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> sinkingNotionals(const Period& bondLength,\n                                       const
      Frequency& sinkingFrequency,\n                                       Rate couponRate,\n
      \                                      Real initialNotional)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:46,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:46,1
    - Dst: Schedule::hasTenor
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:48,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:48,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:52,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:54,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:65,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:67,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:67,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 14
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' coupons'
    - ' accrualDayCounter'
    - paymentConvention
    - redemption
    - ' issueDate'
    - ' paymentCalendar'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' firstPeriodDayCounter'
    argTypes:
    - Natural
    - Real
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Real
    - Date
    - Calendar
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: QuantLib::FixedRateBond::FixedRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - Schedule::tenor
    - addRedemptionsToCashflows
    - Schedule::endDate
    - std::move
    - std::vector<Real>
    - FixedRateLeg
    - Schedule::hasTenor
    - size
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FixedRateBond::FixedRateBond(Natural settlementDays,\n                                 Real
      faceAmount,\n                                 Schedule schedule,\n                                 const
      std::vector<Rate>& coupons,\n                                 const DayCounter&
      accrualDayCounter,\n                                 BusinessDayConvention paymentConvention,\n
      \                                Real redemption,\n                                 const
      Date& issueDate,\n                                 const Calendar& paymentCalendar,\n
      \                                const Period& exCouponPeriod,\n                                 const
      Calendar& exCouponCalendar,\n                                 const BusinessDayConvention
      exCouponConvention,\n                                 bool exCouponEndOfMonth,\n
      \                                const DayCounter& firstPeriodDayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:46,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:46,1
    - Dst: Schedule::hasTenor
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:48,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:48,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:52,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:54,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:65,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:65,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:67,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:67,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 14
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' coupons'
    - ' accrualDayCounter'
    - paymentConvention
    - redemption
    - ' issueDate'
    - ' paymentCalendar'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' firstPeriodDayCounter'
    argTypes:
    - Natural
    - Real
    - Schedule
    - std::vector<Rate>
    - DayCounter
    - BusinessDayConvention
    - Real
    - Date
    - Calendar
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: QuantLib::FixedRateBond::FixedRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/fixedratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - Schedule::tenor
    - addRedemptionsToCashflows
    - Schedule::endDate
    - std::move
    - std::vector<Real>
    - FixedRateLeg
    - Schedule::hasTenor
    - size
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FixedRateBond::FixedRateBond(Natural settlementDays,\n                                 Real
      faceAmount,\n                                 Schedule schedule,\n                                 const
      std::vector<Rate>& coupons,\n                                 const DayCounter&
      accrualDayCounter,\n                                 BusinessDayConvention paymentConvention,\n
      \                                Real redemption,\n                                 const
      Date& issueDate,\n                                 const Calendar& paymentCalendar,\n
      \                                const Period& exCouponPeriod,\n                                 const
      Calendar& exCouponCalendar,\n                                 const BusinessDayConvention
      exCouponConvention,\n                                 bool exCouponEndOfMonth,\n
      \                                const DayCounter& firstPeriodDayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:48,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:50,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:52,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:68,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:70,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 19
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' redemptions'
    - paymentLag
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 73
    functionName: QuantLib::AmortizingFloatingRateBond::AmortizingFloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - IborLeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void AmortizingFloatingRateBond::AmortizingFloatingRateBond(\n                                    Natural
      settlementDays,\n                                    const std::vector<Real>&
      notionals,\n                                    Schedule schedule,\n                                    const
      ext::shared_ptr<IborIndex>& index,\n                                    const
      DayCounter& paymentDayCounter,\n                                    BusinessDayConvention
      paymentConvention,\n                                    Natural fixingDays,\n
      \                                   const std::vector<Real>& gearings,\n                                    const
      std::vector<Spread>& spreads,\n                                    const std::vector<Rate>&
      caps,\n                                    const std::vector<Rate>& floors,\n
      \                                   bool inArrears,\n                                    const
      Date& issueDate,\n                                    const Period& exCouponPeriod,\n
      \                                   const Calendar& exCouponCalendar,\n                                    const
      BusinessDayConvention exCouponConvention,\n                                    bool
      exCouponEndOfMonth,\n                                    const std::vector<Real>&
      redemptions,\n                                    Integer paymentLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:48,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:50,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:52,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:68,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:70,1
    - Dst: cashflows
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 19
    argNames:
    - settlementDays
    - ' notionals'
    - schedule
    - ' index'
    - ' paymentDayCounter'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - ' issueDate'
    - ' exCouponPeriod'
    - ' exCouponCalendar'
    - exCouponConvention
    - exCouponEndOfMonth
    - ' redemptions'
    - paymentLag
    argTypes:
    - Natural
    - std::vector<Real>
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 73
    functionName: QuantLib::AmortizingFloatingRateBond::AmortizingFloatingRateBond
    functionSourceFile: /src/quantlib/ql/instruments/bonds/amortizingfloatingratebond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - IborLeg
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void AmortizingFloatingRateBond::AmortizingFloatingRateBond(\n                                    Natural
      settlementDays,\n                                    const std::vector<Real>&
      notionals,\n                                    Schedule schedule,\n                                    const
      ext::shared_ptr<IborIndex>& index,\n                                    const
      DayCounter& paymentDayCounter,\n                                    BusinessDayConvention
      paymentConvention,\n                                    Natural fixingDays,\n
      \                                   const std::vector<Real>& gearings,\n                                    const
      std::vector<Spread>& spreads,\n                                    const std::vector<Rate>&
      caps,\n                                    const std::vector<Rate>& floors,\n
      \                                   bool inArrears,\n                                    const
      Date& issueDate,\n                                    const Period& exCouponPeriod,\n
      \                                   const Calendar& exCouponCalendar,\n                                    const
      BusinessDayConvention exCouponConvention,\n                                    bool
      exCouponEndOfMonth,\n                                    const std::vector<Real>&
      redemptions,\n                                    Integer paymentLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::CPIBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::CPIBond::growthOnly
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool growthOnly() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CPIBond::baseCPI
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::CPIBond::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& cpiIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CPIBond::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::CPIBond::frequency
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::CPIBond::growthOnly
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool growthOnly() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CPIBond::baseCPI
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::CPIBond::observationLag
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& cpiIndex() const'
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> & cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CPIBond::observationInterpolation
    functionSourceFile: /src/quantlib/ql/instruments/bonds/cpibond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::ExchangeRateManager::Entry
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/currencies/exchangeratemanager.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rate
    - ' start'
    - ' end'
    argTypes:
    - ExchangeRate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::ExchangeRateManager::Entry
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Entry(ExchangeRate rate, const Date& start, const Date& end)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::ExchangeRateManager::Entry
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/currencies/exchangeratemanager.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rate
    - ' start'
    - ' end'
    argTypes:
    - ExchangeRate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::ExchangeRateManager::Entry
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Entry(ExchangeRate rate, const Date& start, const Date& end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:33,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::BTCCurrency::BTCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BTCCurrency::BTCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:41,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::ETHCurrency::ETHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETHCurrency::ETHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:49,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::ETCCurrency::ETCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETCCurrency::ETCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:57,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::BCHCurrency::BCHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BCHCurrency::BCHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:65,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::XRPCurrency::XRPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void XRPCurrency::XRPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:73,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::LTCCurrency::LTCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LTCCurrency::LTCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:81,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::DASHCurrency::DASHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DASHCurrency::DASHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::ZECCurrency::ZECCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZECCurrency::ZECCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:33,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::BTCCurrency::BTCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BTCCurrency::BTCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:41,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::ETHCurrency::ETHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETHCurrency::ETHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:49,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::ETCCurrency::ETCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETCCurrency::ETCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:57,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::BCHCurrency::BCHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BCHCurrency::BCHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:65,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::XRPCurrency::XRPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void XRPCurrency::XRPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:73,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::LTCCurrency::LTCCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LTCCurrency::LTCCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:81,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::DASHCurrency::DASHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DASHCurrency::DASHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/crypto.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/crypto.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::ZECCurrency::ZECCurrency
    functionSourceFile: /src/quantlib/ql/currencies/crypto.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZECCurrency::ZECCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::ARSCurrency::ARSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ARSCurrency::ARSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::BRLCurrency::BRLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BRLCurrency::BRLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CADCurrency::CADCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CADCurrency::CADCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::CLPCurrency::CLPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CLPCurrency::CLPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::COPCurrency::COPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void COPCurrency::COPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::MXNCurrency::MXNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MXNCurrency::MXNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::PENCurrency::PENCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PENCurrency::PENCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:99,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::PEICurrency::PEICurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PEICurrency::PEICurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:109,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::PEHCurrency::PEHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PEHCurrency::PEHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:118,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: QuantLib::TTDCurrency::TTDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TTDCurrency::TTDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:127,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::USDCurrency::USDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void USDCurrency::USDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:136,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::VEBCurrency::VEBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void VEBCurrency::VEBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:142,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::MXVCurrency::MXVCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MXVCurrency::MXVCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:148,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::COUCurrency::COUCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void COUCurrency::COUCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:154,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::CLFCurrency::CLFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CLFCurrency::CLFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:160,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::UYUCurrency::UYUCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UYUCurrency::UYUCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::ARSCurrency::ARSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ARSCurrency::ARSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::BRLCurrency::BRLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BRLCurrency::BRLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CADCurrency::CADCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CADCurrency::CADCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::CLPCurrency::CLPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CLPCurrency::CLPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::COPCurrency::COPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void COPCurrency::COPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::MXNCurrency::MXNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MXNCurrency::MXNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::PENCurrency::PENCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PENCurrency::PENCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:99,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::PEICurrency::PEICurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PEICurrency::PEICurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:109,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::PEHCurrency::PEHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PEHCurrency::PEHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:118,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: QuantLib::TTDCurrency::TTDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TTDCurrency::TTDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:127,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::USDCurrency::USDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void USDCurrency::USDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:136,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::VEBCurrency::VEBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void VEBCurrency::VEBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:142,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::MXVCurrency::MXVCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MXVCurrency::MXVCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:148,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::COUCurrency::COUCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void COUCurrency::COUCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:154,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::CLFCurrency::CLFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CLFCurrency::CLFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/america.cpp:160,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/america.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::UYUCurrency::UYUCurrency
    functionSourceFile: /src/quantlib/ql/currencies/america.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UYUCurrency::UYUCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::BGLCurrency::BGLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BGLCurrency::BGLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::BYRCurrency::BYRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BYRCurrency::BYRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CHFCurrency::CHFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CHFCurrency::CHFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::CYPCurrency::CYPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CYPCurrency::CYPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::CZKCurrency::CZKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CZKCurrency::CZKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::DKKCurrency::DKKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DKKCurrency::DKKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::EEKCurrency::EEKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void EEKCurrency::EEKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:98,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/currencies/europe.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::EURCurrency::EURCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ClosestRounding
    - ext::make_shared<Data>
    linkageType: ''
    returnType: void
    signature: void EURCurrency::EURCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:107,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::GBPCurrency::GBPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GBPCurrency::GBPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:116,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::HUFCurrency::HUFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HUFCurrency::HUFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:125,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::ISKCurrency::ISKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ISKCurrency::ISKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:134,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::LTLCurrency::LTLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LTLCurrency::LTLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:143,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::LVLCurrency::LVLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LVLCurrency::LVLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:152,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::NOKCurrency::NOKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NOKCurrency::NOKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:161,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::PLNCurrency::PLNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PLNCurrency::PLNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:170,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::ROLCurrency::ROLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ROLCurrency::ROLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:179,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::RONCurrency::RONCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RONCurrency::RONCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:188,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::RUBCurrency::RUBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RUBCurrency::RUBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:197,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::SEKCurrency::SEKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SEKCurrency::SEKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:206,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::SITCurrency::SITCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SITCurrency::SITCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:215,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::TRLCurrency::TRLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TRLCurrency::TRLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:224,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: QuantLib::TRYCurrency::TRYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TRYCurrency::TRYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: QuantLib::ATSCurrency::ATSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ATSCurrency::ATSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: QuantLib::BEFCurrency::BEFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BEFCurrency::BEFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::DEMCurrency::DEMCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DEMCurrency::DEMCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionName: QuantLib::ESPCurrency::ESPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ESPCurrency::ESPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: QuantLib::FIMCurrency::FIMCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void FIMCurrency::FIMCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::FRFCurrency::FRFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void FRFCurrency::FRFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 292
    functionName: QuantLib::GRDCurrency::GRDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GRDCurrency::GRDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 301
    functionName: QuantLib::IEPCurrency::IEPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IEPCurrency::IEPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::ITLCurrency::ITLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ITLCurrency::ITLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 319
    functionName: QuantLib::LUFCurrency::LUFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LUFCurrency::LUFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:326,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::MTLCurrency::MTLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MTLCurrency::MTLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionName: QuantLib::NLGCurrency::NLGCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NLGCurrency::NLGCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionName: QuantLib::PTECurrency::PTECurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PTECurrency::PTECurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:353,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionName: QuantLib::SKKCurrency::SKKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SKKCurrency::SKKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:362,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: QuantLib::UAHCurrency::UAHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UAHCurrency::UAHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:368,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: QuantLib::RSDCurrency::RSDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RSDCurrency::RSDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:374,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 376
    functionName: QuantLib::HRKCurrency::HRKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HRKCurrency::HRKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:380,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 382
    functionName: QuantLib::BGNCurrency::BGNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BGNCurrency::BGNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:386,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionName: QuantLib::GELCurrency::GELCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GELCurrency::GELCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::BGLCurrency::BGLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BGLCurrency::BGLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::BYRCurrency::BYRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BYRCurrency::BYRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CHFCurrency::CHFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CHFCurrency::CHFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::CYPCurrency::CYPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CYPCurrency::CYPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::CZKCurrency::CZKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CZKCurrency::CZKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::DKKCurrency::DKKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DKKCurrency::DKKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::EEKCurrency::EEKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void EEKCurrency::EEKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:98,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/currencies/europe.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::EURCurrency::EURCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ClosestRounding
    - ext::make_shared<Data>
    linkageType: ''
    returnType: void
    signature: void EURCurrency::EURCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:107,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::GBPCurrency::GBPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GBPCurrency::GBPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:116,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::HUFCurrency::HUFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HUFCurrency::HUFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:125,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::ISKCurrency::ISKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ISKCurrency::ISKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:134,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::LTLCurrency::LTLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LTLCurrency::LTLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:143,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::LVLCurrency::LVLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LVLCurrency::LVLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:152,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::NOKCurrency::NOKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NOKCurrency::NOKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:161,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::PLNCurrency::PLNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PLNCurrency::PLNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:170,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::ROLCurrency::ROLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ROLCurrency::ROLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:179,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::RONCurrency::RONCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RONCurrency::RONCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:188,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::RUBCurrency::RUBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RUBCurrency::RUBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:197,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::SEKCurrency::SEKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SEKCurrency::SEKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:206,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::SITCurrency::SITCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SITCurrency::SITCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:215,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: QuantLib::TRLCurrency::TRLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TRLCurrency::TRLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:224,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: QuantLib::TRYCurrency::TRYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TRYCurrency::TRYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: QuantLib::ATSCurrency::ATSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ATSCurrency::ATSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: QuantLib::BEFCurrency::BEFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BEFCurrency::BEFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::DEMCurrency::DEMCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void DEMCurrency::DEMCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionName: QuantLib::ESPCurrency::ESPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ESPCurrency::ESPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: QuantLib::FIMCurrency::FIMCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void FIMCurrency::FIMCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::FRFCurrency::FRFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void FRFCurrency::FRFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 292
    functionName: QuantLib::GRDCurrency::GRDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GRDCurrency::GRDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 301
    functionName: QuantLib::IEPCurrency::IEPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IEPCurrency::IEPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::ITLCurrency::ITLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ITLCurrency::ITLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 319
    functionName: QuantLib::LUFCurrency::LUFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LUFCurrency::LUFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:326,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::MTLCurrency::MTLCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MTLCurrency::MTLCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionName: QuantLib::NLGCurrency::NLGCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NLGCurrency::NLGCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/europe.cpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionName: QuantLib::PTECurrency::PTECurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PTECurrency::PTECurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:353,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionName: QuantLib::SKKCurrency::SKKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SKKCurrency::SKKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:362,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: QuantLib::UAHCurrency::UAHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UAHCurrency::UAHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:368,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: QuantLib::RSDCurrency::RSDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void RSDCurrency::RSDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:374,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 376
    functionName: QuantLib::HRKCurrency::HRKCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HRKCurrency::HRKCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:380,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 382
    functionName: QuantLib::BGNCurrency::BGNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BGNCurrency::BGNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/europe.cpp:386,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/europe.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionName: QuantLib::GELCurrency::GELCurrency
    functionSourceFile: /src/quantlib/ql/currencies/europe.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GELCurrency::GELCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::BDTCurrency::BDTCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BDTCurrency::BDTCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::CNYCurrency::CNYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CNYCurrency::CNYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::HKDCurrency::HKDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HKDCurrency::HKDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::IDRCurrency::IDRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IDRCurrency::IDRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::ILSCurrency::ILSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ILSCurrency::ILSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::INRCurrency::INRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void INRCurrency::INRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::IQDCurrency::IQDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IQDCurrency::IQDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:98,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::IRRCurrency::IRRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IRRCurrency::IRRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:107,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::JPYCurrency::JPYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void JPYCurrency::JPYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:116,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::KRWCurrency::KRWCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KRWCurrency::KRWCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:125,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::KWDCurrency::KWDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KWDCurrency::KWDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:134,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::KZTCurrency::KZTCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KZTCurrency::KZTCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:143,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::MYRCurrency::MYRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MYRCurrency::MYRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:152,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::NPRCurrency::NPRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NPRCurrency::NPRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:161,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::PKRCurrency::PKRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PKRCurrency::PKRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:170,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::SARCurrency::SARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SARCurrency::SARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:179,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::SGDCurrency::SGDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SGDCurrency::SGDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:188,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::THBCurrency::THBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void THBCurrency::THBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:197,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::TWDCurrency::TWDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TWDCurrency::TWDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:206,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::VNDCurrency::VNDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void VNDCurrency::VNDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:212,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::QARCurrency::QARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void QARCurrency::QARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:218,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: QuantLib::BHDCurrency::BHDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BHDCurrency::BHDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:224,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: QuantLib::OMRCurrency::OMRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void OMRCurrency::OMRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:230,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: QuantLib::JODCurrency::JODCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void JODCurrency::JODCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:236,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: QuantLib::AEDCurrency::AEDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AEDCurrency::AEDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:242,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: QuantLib::PHPCurrency::PHPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PHPCurrency::PHPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:248,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::CNHCurrency::CNHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CNHCurrency::CNHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:254,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::LKRCurrency::LKRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LKRCurrency::LKRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:35,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::BDTCurrency::BDTCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BDTCurrency::BDTCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:44,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::CNYCurrency::CNYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CNYCurrency::CNYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:53,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::HKDCurrency::HKDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void HKDCurrency::HKDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:62,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::IDRCurrency::IDRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IDRCurrency::IDRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:71,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::ILSCurrency::ILSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ILSCurrency::ILSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:80,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::INRCurrency::INRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void INRCurrency::INRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:89,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::IQDCurrency::IQDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IQDCurrency::IQDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:98,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::IRRCurrency::IRRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void IRRCurrency::IRRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:107,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::JPYCurrency::JPYCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void JPYCurrency::JPYCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:116,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::KRWCurrency::KRWCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KRWCurrency::KRWCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:125,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::KWDCurrency::KWDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KWDCurrency::KWDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:134,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::KZTCurrency::KZTCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KZTCurrency::KZTCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:143,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::MYRCurrency::MYRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MYRCurrency::MYRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:152,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::NPRCurrency::NPRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NPRCurrency::NPRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:161,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::PKRCurrency::PKRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PKRCurrency::PKRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:170,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::SARCurrency::SARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SARCurrency::SARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:179,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::SGDCurrency::SGDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void SGDCurrency::SGDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:188,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::THBCurrency::THBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void THBCurrency::THBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:197,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::TWDCurrency::TWDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TWDCurrency::TWDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:206,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::VNDCurrency::VNDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void VNDCurrency::VNDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:212,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::QARCurrency::QARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void QARCurrency::QARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:218,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: QuantLib::BHDCurrency::BHDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BHDCurrency::BHDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:224,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: QuantLib::OMRCurrency::OMRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void OMRCurrency::OMRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:230,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: QuantLib::JODCurrency::JODCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void JODCurrency::JODCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:236,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: QuantLib::AEDCurrency::AEDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AEDCurrency::AEDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:242,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: QuantLib::PHPCurrency::PHPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void PHPCurrency::PHPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:248,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::CNHCurrency::CNHCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void CNHCurrency::CNHCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/asia.cpp:254,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/asia.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::LKRCurrency::LKRCurrency
    functionSourceFile: /src/quantlib/ql/currencies/asia.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void LKRCurrency::LKRCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:28,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::AOACurrency::AOACurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AOACurrency::AOACurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:34,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: QuantLib::BWPCurrency::BWPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BWPCurrency::BWPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:40,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::EGPCurrency::EGPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void EGPCurrency::EGPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:46,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::ETBCurrency::ETBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETBCurrency::ETBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:52,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::GHSCurrency::GHSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GHSCurrency::GHSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:58,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::KESCurrency::KESCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KESCurrency::KESCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:64,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::MADCurrency::MADCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MADCurrency::MADCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:70,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::MURCurrency::MURCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MURCurrency::MURCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:76,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::NGNCurrency::NGNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NGNCurrency::NGNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:82,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::TNDCurrency::TNDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TNDCurrency::TNDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:88,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::UGXCurrency::UGXCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UGXCurrency::UGXCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:94,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::XOFCurrency::XOFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void XOFCurrency::XOFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:100,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::ZARCurrency::ZARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZARCurrency::ZARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:106,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::ZMWCurrency::ZMWCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZMWCurrency::ZMWCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:28,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::AOACurrency::AOACurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AOACurrency::AOACurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:34,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: QuantLib::BWPCurrency::BWPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void BWPCurrency::BWPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:40,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::EGPCurrency::EGPCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void EGPCurrency::EGPCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:46,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::ETBCurrency::ETBCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ETBCurrency::ETBCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:52,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::GHSCurrency::GHSCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void GHSCurrency::GHSCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:58,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::KESCurrency::KESCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void KESCurrency::KESCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:64,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::MADCurrency::MADCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MADCurrency::MADCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:70,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::MURCurrency::MURCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void MURCurrency::MURCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:76,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::NGNCurrency::NGNCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NGNCurrency::NGNCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:82,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::TNDCurrency::TNDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void TNDCurrency::TNDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:88,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::UGXCurrency::UGXCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void UGXCurrency::UGXCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:94,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::XOFCurrency::XOFCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void XOFCurrency::XOFCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:100,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::ZARCurrency::ZARCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZARCurrency::ZARCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/africa.cpp:106,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/africa.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::ZMWCurrency::ZMWCurrency
    functionSourceFile: /src/quantlib/ql/currencies/africa.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void ZMWCurrency::ZMWCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::valid_at
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void valid_at(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ExchangeRateManager::Entry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: operator()(const ExchangeRateManager::Entry& e) const
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ExchangeRateManager::Entry& e) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::valid_at
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void valid_at(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ExchangeRateManager::Entry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: operator()(const ExchangeRateManager::Entry& e) const
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ExchangeRateManager::Entry& e) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::addKnownRates
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ExchangeRateManager::ExchangeRateManager
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExchangeRateManager::addKnownRates
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::ExchangeRateManager()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::hash
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: target
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: emplace_front
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' rate'
    - ' startDate'
    - ' endDate'
    argTypes:
    - ExchangeRate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::ExchangeRateManager::add
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached:
    - target
    - emplace_front
    - QuantLib::ExchangeRateManager::hash
    - source
    linkageType: ''
    returnType: void
    signature: "void ExchangeRateManager::add(const ExchangeRate& rate,\n                                  const
      Date& startDate,\n                                  const Date& endDate)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:58,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:60,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:61,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:64,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:65,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:66,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:68,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:70,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:70,1
    - Dst: QuantLib::ExchangeRateManager::lookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:71,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:72,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:73,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:75,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:77,1
    - Dst: QuantLib::ExchangeRateManager::lookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:77,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:78,1
    - Dst: QuantLib::ExchangeRateManager::smartLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - ' source'
    - ' target'
    - date
    - type
    argTypes:
    - Currency
    - Currency
    - Date
    - ExchangeRate::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 82
    functionName: QuantLib::ExchangeRateManager::lookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExchangeRate::chain
    - QuantLib::ExchangeRateManager::directLookup
    - QuantLib::detail::instance
    - Date
    - QuantLib::ExchangeRateManager::lookup
    - QuantLib::ExchangeRateManager::smartLookup
    - ExchangeRate
    - triangulationCurrency
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::lookup(const Currency& source,\n
      \                                            const Currency& target,\n                                             Date
      date,\n                                             ExchangeRate::Type type)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::clear
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:85,1
    - Dst: QuantLib::ExchangeRateManager::addKnownRates
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::ExchangeRateManager::clear
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExchangeRateManager::clear
    - QuantLib::ExchangeRateManager::addKnownRates
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Key
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: std::min
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: Key
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::ExchangeRateManager::hash
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - numericCode
    - Key
    - std::min
    linkageType: ''
    returnType: ExchangeRateManager::Key
    signature: "ExchangeRateManager::Key ExchangeRateManager::hash(\n                               const
      Currency& c1, const Currency& c2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:97,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' c'
    argTypes:
    - ExchangeRateManager::Key
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::ExchangeRateManager::hashes
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached:
    - numericCode
    linkageType: ''
    returnType: bool
    signature: "bool ExchangeRateManager::hashes(ExchangeRateManager::Key k,\n                                     const
      Currency& c) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: ATSCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:103,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:103,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: BEFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:105,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:105,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: DEMCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:107,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:107,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: ESPCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:109,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:109,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: FIMCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:111,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:111,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: FRFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:113,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:113,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: GRDCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:115,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:115,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: IEPCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:117,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:117,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: ITLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:119,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:119,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: LUFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:121,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:121,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: NLGCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:123,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:123,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: PTECurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:125,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:125,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: TRYCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: TRLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:128,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:128,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: RONCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: ROLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:130,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:130,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: PENCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: PEICurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:132,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:132,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: PEICurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: PEHCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:134,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 135
    functionName: QuantLib::ExchangeRateManager::addKnownRates
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - FIMCurrency
    - BEFCurrency
    - Date
    - IEPCurrency
    - PEICurrency
    - PENCurrency
    - ESPCurrency
    - QuantLib::Date::maxDate
    - EURCurrency
    - TRLCurrency
    - ITLCurrency
    - DEMCurrency
    - ExchangeRate
    - NLGCurrency
    - ATSCurrency
    - RONCurrency
    - PEHCurrency
    - FRFCurrency
    - LUFCurrency
    - QuantLib::ExchangeRateManager::add
    - ROLCurrency
    - PTECurrency
    - TRYCurrency
    - GRDCurrency
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::addKnownRates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:143,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:144,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - ' target'
    - ' date'
    argTypes:
    - Currency
    - Currency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 146
    functionName: QuantLib::ExchangeRateManager::directLookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::ExchangeRateManager::fetch
    - code
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::directLookup(const Currency& source,\n
      \                                                  const Currency& target,\n
      \                                                  const Date& date) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:154,1
    - Dst: std::list<Integer>::push_back
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:159,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:159,1
    - Dst: begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:161,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:161,1
    - Dst: QuantLib::ExchangeRateManager::hashes
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:164,1
    - Dst: std::map<Key, std::list<Entry> >::const_iterator::second::empty
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:164,1
    - Dst: std::map<Key, std::list<Entry> >::const_iterator::second::front
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:166,1
    - Dst: rate::source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:168,1
    - Dst: rate::target
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:169,1
    - Dst: rate::source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:169,1
    - Dst: std::find
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: std::list<Integer>::begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: std::list<Integer>::end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:171,1
    - Dst: std::list<Integer>::end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:171,1
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:173,1
    - Dst: QuantLib::ExchangeRateManager::smartLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:176,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:189,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:190,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:190,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ' source'
    - ' target'
    - ' date'
    - forbidden
    argTypes:
    - Currency
    - Currency
    - Date
    - std::list<Integer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 192
    functionName: QuantLib::ExchangeRateManager::smartLookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - rate::source
    - QuantLib::ExchangeRateManager::smartLookup
    - std::map<Key, std::list<Entry> >::const_iterator::second::front
    - numericCode
    - std::list<Integer>::end
    - QuantLib::ExchangeRateManager::hashes
    - begin
    - std::list<Integer>::begin
    - QuantLib::ExchangeRate::chain
    - QL_FAIL
    - QuantLib::ExchangeRateManager::fetch
    - std::list<Integer>::push_back
    - rate::target
    - code
    - std::find
    - end
    - std::map<Key, std::list<Entry> >::const_iterator::second::empty
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::smartLookup(\n                                         const
      Currency& source,\n                                         const Currency&
      target,\n                                         const Date& date,\n                                         std::list<Integer>
      forbidden) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::hash
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:197,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: valid_at
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' source'
    - ' target'
    - ' date'
    argTypes:
    - Currency
    - Currency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionName: QuantLib::ExchangeRateManager::fetch
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - valid_at
    - begin
    - QuantLib::ExchangeRateManager::hash
    - end
    - std::find_if
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate * ExchangeRateManager::fetch(const Currency& source,\n
      \                                                  const Currency& target,\n
      \                                                  const Date& date) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::valid_at
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void valid_at(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ExchangeRateManager::Entry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: operator()(const ExchangeRateManager::Entry& e) const
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ExchangeRateManager::Entry& e) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::valid_at
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void valid_at(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - ExchangeRateManager::Entry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: operator()(const ExchangeRateManager::Entry& e) const
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ExchangeRateManager::Entry& e) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::addKnownRates
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ExchangeRateManager::ExchangeRateManager
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExchangeRateManager::addKnownRates
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::ExchangeRateManager()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::hash
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: target
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:48,1
    - Dst: emplace_front
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' rate'
    - ' startDate'
    - ' endDate'
    argTypes:
    - ExchangeRate
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::ExchangeRateManager::add
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - target
    - emplace_front
    - QuantLib::ExchangeRateManager::hash
    - source
    linkageType: ''
    returnType: void
    signature: "void ExchangeRateManager::add(const ExchangeRate& rate,\n                                  const
      Date& startDate,\n                                  const Date& endDate)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:58,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:60,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:61,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:64,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:65,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:66,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:68,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:70,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:70,1
    - Dst: QuantLib::ExchangeRateManager::lookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:71,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:72,1
    - Dst: triangulationCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:73,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:75,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:77,1
    - Dst: QuantLib::ExchangeRateManager::lookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:77,1
    - Dst: QuantLib::ExchangeRateManager::directLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:78,1
    - Dst: QuantLib::ExchangeRateManager::smartLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - ' source'
    - ' target'
    - date
    - type
    argTypes:
    - Currency
    - Currency
    - Date
    - ExchangeRate::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 82
    functionName: QuantLib::ExchangeRateManager::lookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExchangeRate::chain
    - QuantLib::ExchangeRateManager::directLookup
    - QuantLib::detail::instance
    - Date
    - QuantLib::ExchangeRateManager::lookup
    - QuantLib::ExchangeRateManager::smartLookup
    - ExchangeRate
    - triangulationCurrency
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::lookup(const Currency& source,\n
      \                                            const Currency& target,\n                                             Date
      date,\n                                             ExchangeRate::Type type)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::clear
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:85,1
    - Dst: QuantLib::ExchangeRateManager::addKnownRates
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::ExchangeRateManager::clear
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExchangeRateManager::clear
    - QuantLib::ExchangeRateManager::addKnownRates
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Key
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: std::min
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:91,1
    - Dst: Key
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Currency
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::ExchangeRateManager::hash
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 3
    functionsReached:
    - std::max
    - numericCode
    - Key
    - std::min
    linkageType: ''
    returnType: ExchangeRateManager::Key
    signature: "ExchangeRateManager::Key ExchangeRateManager::hash(\n                               const
      Currency& c1, const Currency& c2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:97,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' c'
    argTypes:
    - ExchangeRateManager::Key
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::ExchangeRateManager::hashes
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 1
    functionsReached:
    - numericCode
    linkageType: ''
    returnType: bool
    signature: "bool ExchangeRateManager::hashes(ExchangeRateManager::Key k,\n                                     const
      Currency& c) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: ATSCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:102,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:103,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:103,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: BEFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:104,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:105,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:105,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: DEMCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:106,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:107,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:107,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: ESPCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:108,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:109,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:109,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: FIMCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:110,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:111,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:111,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: FRFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:112,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:113,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:113,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: GRDCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:115,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:115,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: IEPCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:117,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:117,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: ITLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:118,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:119,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:119,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: LUFCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:120,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:121,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:121,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: NLGCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:122,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:123,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:123,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: PTECurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:124,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:125,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:125,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: TRYCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: TRLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:128,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:128,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: RONCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: ROLCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:129,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:130,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:130,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: PENCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: PEICurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:131,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:132,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:132,1
    - Dst: QuantLib::ExchangeRateManager::add
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: ExchangeRate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: PEICurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: PEHCurrency
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:133,1
    - Dst: Date
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:134,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 135
    functionName: QuantLib::ExchangeRateManager::addKnownRates
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 4
    functionsReached:
    - FIMCurrency
    - BEFCurrency
    - Date
    - IEPCurrency
    - PEICurrency
    - PENCurrency
    - ESPCurrency
    - QuantLib::Date::maxDate
    - EURCurrency
    - TRLCurrency
    - ITLCurrency
    - DEMCurrency
    - ExchangeRate
    - NLGCurrency
    - ATSCurrency
    - RONCurrency
    - PEHCurrency
    - FRFCurrency
    - LUFCurrency
    - QuantLib::ExchangeRateManager::add
    - ROLCurrency
    - PTECurrency
    - TRYCurrency
    - GRDCurrency
    linkageType: ''
    returnType: void
    signature: void ExchangeRateManager::addKnownRates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:143,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:144,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - ' target'
    - ' date'
    argTypes:
    - Currency
    - Currency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 146
    functionName: QuantLib::ExchangeRateManager::directLookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - QuantLib::ExchangeRateManager::fetch
    - code
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::directLookup(const Currency& source,\n
      \                                                  const Currency& target,\n
      \                                                  const Date& date) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:154,1
    - Dst: std::list<Integer>::push_back
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:159,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:159,1
    - Dst: begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:161,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:161,1
    - Dst: QuantLib::ExchangeRateManager::hashes
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:164,1
    - Dst: std::map<Key, std::list<Entry> >::const_iterator::second::empty
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:164,1
    - Dst: std::map<Key, std::list<Entry> >::const_iterator::second::front
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:166,1
    - Dst: rate::source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:168,1
    - Dst: rate::target
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:169,1
    - Dst: rate::source
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:169,1
    - Dst: std::find
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: std::list<Integer>::begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: std::list<Integer>::end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:170,1
    - Dst: numericCode
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:171,1
    - Dst: std::list<Integer>::end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:171,1
    - Dst: QuantLib::ExchangeRateManager::fetch
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:173,1
    - Dst: QuantLib::ExchangeRateManager::smartLookup
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:176,1
    - Dst: QuantLib::ExchangeRate::chain
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:189,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:190,1
    - Dst: code
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:190,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ' source'
    - ' target'
    - ' date'
    - forbidden
    argTypes:
    - Currency
    - Currency
    - Date
    - std::list<Integer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 192
    functionName: QuantLib::ExchangeRateManager::smartLookup
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 4
    functionsReached:
    - rate::source
    - QuantLib::ExchangeRateManager::smartLookup
    - std::map<Key, std::list<Entry> >::const_iterator::second::front
    - numericCode
    - std::list<Integer>::end
    - QuantLib::ExchangeRateManager::hashes
    - begin
    - std::list<Integer>::begin
    - QuantLib::ExchangeRate::chain
    - QL_FAIL
    - QuantLib::ExchangeRateManager::fetch
    - std::list<Integer>::push_back
    - rate::target
    - code
    - std::find
    - end
    - std::map<Key, std::list<Entry> >::const_iterator::second::empty
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate ExchangeRateManager::smartLookup(\n                                         const
      Currency& source,\n                                         const Currency&
      target,\n                                         const Date& date,\n                                         std::list<Integer>
      forbidden) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExchangeRateManager::hash
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:197,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: begin
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: valid_at
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:198,1
    - Dst: end
      Src: /src/quantlib/ql/currencies/exchangeratemanager.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' source'
    - ' target'
    - ' date'
    argTypes:
    - Currency
    - Currency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionName: QuantLib::ExchangeRateManager::fetch
    functionSourceFile: /src/quantlib/ql/currencies/exchangeratemanager.cpp
    functionUses: 4
    functionsReached:
    - valid_at
    - begin
    - QuantLib::ExchangeRateManager::hash
    - end
    - std::find_if
    linkageType: ''
    returnType: ExchangeRate
    signature: "ExchangeRate * ExchangeRateManager::fetch(const Currency& source,\n
      \                                                  const Currency& target,\n
      \                                                  const Date& date) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/oceania.cpp:34,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/oceania.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: QuantLib::AUDCurrency::AUDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/oceania.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AUDCurrency::AUDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/oceania.cpp:43,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/oceania.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::NZDCurrency::NZDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/oceania.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NZDCurrency::NZDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/oceania.cpp:34,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/oceania.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: QuantLib::AUDCurrency::AUDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/oceania.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void AUDCurrency::AUDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/currencies/oceania.cpp:43,1
    - Dst: Rounding
      Src: /src/quantlib/ql/currencies/oceania.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::NZDCurrency::NZDCurrency
    functionSourceFile: /src/quantlib/ql/currencies/oceania.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    - Rounding
    linkageType: ''
    returnType: void
    signature: void NZDCurrency::NZDCurrency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::CrankNicolson::CrankNicolson
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/cranknicolson.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CrankNicolson(const operator_type& L,\n                      const
      bc_set& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::CrankNicolson::CrankNicolson
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/cranknicolson.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CrankNicolson(const operator_type& L,\n                      const
      bc_set& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~BoundaryCondition()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BoundaryCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::NeumannBC::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::DirichletBC::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~BoundaryCondition()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BoundaryCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::NeumannBC::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::DirichletBC::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:50,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:51,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::DMinus::DMinus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dminus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DMinus::DMinus(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:50,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:51,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dminus.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::DMinus::DMinus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dminus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DMinus::DMinus(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp:38,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::ZeroCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::max
    linkageType: ''
    returnType: void
    signature: void applyTo(array_type& a, Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp:38,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::ZeroCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/zerocondition.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::max
    linkageType: ''
    returnType: void
    signature: void applyTo(array_type& a, Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:50,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:51,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::DPlus::DPlus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dplus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DPlus::DPlus(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:50,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:51,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplus.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::DPlus::DPlus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dplus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DPlus::DPlus(Size gridPoints, Real h)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:28,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:29,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:30,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:31,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:34,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:35,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:36,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:37,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Array
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::TridiagonalOperator(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:49,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:49,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:52,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:52,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' low'
    - ' mid'
    - ' high'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::TridiagonalOperator(const Array& low,\n
      \                                            const Array& mid,\n                                             const
      Array& high)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:60,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:60,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:61,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:65,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:66,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 77
    functionName: QuantLib::TridiagonalOperator::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::multiplies<>
    - QuantLib::TridiagonalOperator::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array TridiagonalOperator::applyTo(const Array& v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:80,1
    - Dst: QuantLib::TridiagonalOperator::solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::TridiagonalOperator::solveFor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QuantLib::TridiagonalOperator::solveFor
    linkageType: ''
    returnType: Array
    signature: Array TridiagonalOperator::solveFor(const Array& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:90,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:90,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:95,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:95,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:102,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ' rhs'
    - ' result'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 109
    functionName: QuantLib::TridiagonalOperator::solveFor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - close
    - QL_ENSURE
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::solveFor(const Array& rhs,\n                                       Array&
      result) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:115,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:115,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - ' rhs'
    - tol
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 154
    functionName: QuantLib::TridiagonalOperator::SOR
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array TridiagonalOperator::SOR(const Array& rhs,\n                                   Real
      tol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::TridiagonalOperator
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:157,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:157,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:158,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: QuantLib::TridiagonalOperator::identity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TridiagonalOperator::TridiagonalOperator
    - Array
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator TridiagonalOperator::identity(Size size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:28,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:29,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:30,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:31,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:34,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:35,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:36,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:37,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - Array
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::TridiagonalOperator(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:49,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:49,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:52,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:52,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' low'
    - ' mid'
    - ' high'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::TridiagonalOperator(const Array& low,\n
      \                                            const Array& mid,\n                                             const
      Array& high)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:60,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:60,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:61,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:65,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:66,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 77
    functionName: QuantLib::TridiagonalOperator::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::multiplies<>
    - QuantLib::TridiagonalOperator::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array TridiagonalOperator::applyTo(const Array& v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:80,1
    - Dst: QuantLib::TridiagonalOperator::solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::TridiagonalOperator::solveFor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QuantLib::TridiagonalOperator::solveFor
    linkageType: ''
    returnType: Array
    signature: Array TridiagonalOperator::solveFor(const Array& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:90,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:90,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:95,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:95,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:102,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ' rhs'
    - ' result'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 109
    functionName: QuantLib::TridiagonalOperator::solveFor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - close
    - QL_ENSURE
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::solveFor(const Array& rhs,\n                                       Array&
      result) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:115,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:115,1
    - Dst: QuantLib::TridiagonalOperator::size
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - ' rhs'
    - tol
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 154
    functionName: QuantLib::TridiagonalOperator::SOR
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TridiagonalOperator::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array TridiagonalOperator::SOR(const Array& rhs,\n                                   Real
      tol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::TridiagonalOperator
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:157,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:157,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:158,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: QuantLib::TridiagonalOperator::identity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TridiagonalOperator::TridiagonalOperator
    - Array
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator TridiagonalOperator::identity(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::ImplicitEuler::ImplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/impliciteuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ImplicitEuler(const operator_type& L,\n                      const
      bc_set& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::ImplicitEuler::ImplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/impliciteuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ImplicitEuler(const operator_type& L,\n                      const
      bc_set& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - side
    argTypes:
    - Real
    - NeumannBC::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: QuantLib::NeumannBC::NeumannBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NeumannBC::NeumannBC(Real value, NeumannBC::Side side)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:30,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:36,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' L'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::NeumannBC::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyBeforeApplying(TridiagonalOperator& L) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::NeumannBC::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyAfterApplying(Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:57,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' L'
    - ' rhs'
    argTypes:
    - TridiagonalOperator
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 67
    functionName: QuantLib::NeumannBC::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: "void NeumannBC::applyBeforeSolving(TridiagonalOperator& L,\n                                       Array&
      rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::NeumannBC::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyAfterSolving(Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - side
    argTypes:
    - Real
    - DirichletBC::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::DirichletBC::DirichletBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirichletBC::DirichletBC(Real value, DirichletBC::Side side)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:79,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:82,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' L'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::DirichletBC::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyBeforeApplying(TridiagonalOperator& L) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionName: QuantLib::DirichletBC::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyAfterApplying(Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:106,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' L'
    - ' rhs'
    argTypes:
    - TridiagonalOperator
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 116
    functionName: QuantLib::DirichletBC::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: "void DirichletBC::applyBeforeSolving(TridiagonalOperator& L,\n                                         Array&
      rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::DirichletBC::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyAfterSolving(Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - side
    argTypes:
    - Real
    - NeumannBC::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: QuantLib::NeumannBC::NeumannBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NeumannBC::NeumannBC(Real value, NeumannBC::Side side)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:30,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:36,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' L'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::NeumannBC::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyBeforeApplying(TridiagonalOperator& L) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::NeumannBC::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyAfterApplying(Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:57,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' L'
    - ' rhs'
    argTypes:
    - TridiagonalOperator
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 67
    functionName: QuantLib::NeumannBC::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: "void NeumannBC::applyBeforeSolving(TridiagonalOperator& L,\n                                       Array&
      rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::NeumannBC::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NeumannBC::applyAfterSolving(Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - side
    argTypes:
    - Real
    - DirichletBC::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::DirichletBC::DirichletBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirichletBC::DirichletBC(Real value, DirichletBC::Side side)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:79,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:82,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' L'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::DirichletBC::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyBeforeApplying(TridiagonalOperator& L) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionName: QuantLib::DirichletBC::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyAfterApplying(Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:106,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' L'
    - ' rhs'
    argTypes:
    - TridiagonalOperator
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 116
    functionName: QuantLib::DirichletBC::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_FAIL
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: "void DirichletBC::applyBeforeSolving(TridiagonalOperator& L,\n                                         Array&
      rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::DirichletBC::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/boundarycondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirichletBC::applyAfterSolving(Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:53,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:54,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::DZero::DZero
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dzero.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DZero::DZero(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:53,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:54,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dzero.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::DZero::DZero
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dzero.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DZero::DZero(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' L'
    - theta
    - bcs
    argTypes:
    - operator_type
    - Real
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::MixedScheme::MixedScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QuantLib::TridiagonalOperator::identity
    linkageType: ''
    returnType: void
    signature: void MixedScheme(const operator_type& L, Real theta, bc_set bcs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::MixedScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:107,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:108,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:110,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:114,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:115,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:117,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:118,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:121,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:125,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:126,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:128,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:129,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 131
    functionName: QuantLib::MixedScheme<Operator>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - applyTo
    - setTime
    - applyBeforeSolving
    - applyBeforeApplying
    - applyAfterApplying
    - size
    - applyAfterSolving
    - isTimeDependent
    linkageType: ''
    returnType: void
    signature: void MixedScheme<Operator>::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' L'
    - theta
    - bcs
    argTypes:
    - operator_type
    - Real
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::MixedScheme::MixedScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QuantLib::TridiagonalOperator::identity
    linkageType: ''
    returnType: void
    signature: void MixedScheme(const operator_type& L, Real theta, bc_set bcs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::MixedScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:107,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:108,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:110,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:114,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:115,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:116,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:117,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:118,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:121,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:125,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:126,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:128,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp:129,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 131
    functionName: QuantLib::MixedScheme<Operator>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/mixedscheme.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - applyTo
    - setTime
    - applyBeforeSolving
    - applyBeforeApplying
    - applyAfterApplying
    - size
    - applyAfterSolving
    - isTimeDependent
    linkageType: ''
    returnType: void
    signature: void MixedScheme<Operator>::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator(const TridiagonalOperator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: ~TridiagonalOperator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TridiagonalOperator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::TridiagonalOperator::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::TridiagonalOperator::isTimeDependent
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isTimeDependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: '& lowerDiagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lowerDiagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: '& diagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & diagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: '& upperDiagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & upperDiagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: ~TimeSetter()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TimeSetter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::swap
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::TridiagonalOperator(TridiagonalOperator&&
      from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: "& TridiagonalOperator::operator=(\n                                const
      TridiagonalOperator& from)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator & TridiagonalOperator::operator=(\n                                const
      TridiagonalOperator& from)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: "&\n    TridiagonalOperator::operator=(TridiagonalOperator&& from)
      noexcept"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator &\n    TridiagonalOperator::operator=(TridiagonalOperator&&
      from) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - valB
    - valC
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: QuantLib::TridiagonalOperator::setFirstRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setFirstRow(Real valB,\n                                                 Real
      valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - i
    - valA
    - valB
    - valC
    argTypes:
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 159
    functionName: QuantLib::TridiagonalOperator::setMidRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setMidRow(Size i,\n                                               Real
      valA,\n                                               Real valB,\n                                               Real
      valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - valA
    - valB
    - valC
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 169
    functionName: QuantLib::TridiagonalOperator::setMidRows
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setMidRows(Real valA,\n                                                Real
      valB,\n                                                Real valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - valA
    - valB
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::TridiagonalOperator::setLastRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setLastRow(Real valA,\n                                                Real
      valB)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::TridiagonalOperator::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TridiagonalOperator::setTime
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:183,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:184,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:185,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:186,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:187,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::TridiagonalOperator::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::swap
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::swap(TridiagonalOperator& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' D'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator+(const TridiagonalOperator& D)
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator operator+(const TridiagonalOperator& D)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' D'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: operator-(const TridiagonalOperator& D)
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator operator-(const TridiagonalOperator& D)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D1'
    - ' D2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 214
    functionName: "operator+(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator+(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D1'
    - ' D2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: "operator-(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator-(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - ' D'
    argTypes:
    - Real
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: "operator*(Real a,\n                                         const
      TridiagonalOperator& D)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator*(Real a,\n                                         const
      TridiagonalOperator& D)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D'
    - a
    argTypes:
    - TridiagonalOperator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 241
    functionName: "operator*(const TridiagonalOperator& D,\n                                         Real
      a)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator*(const TridiagonalOperator& D,\n                                         Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D'
    - a
    argTypes:
    - TridiagonalOperator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: "operator/(const TridiagonalOperator& D,\n                                         Real
      a)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator/(const TridiagonalOperator& D,\n                                         Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' L1'
    - ' L2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 255
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: "void swap(TridiagonalOperator& L1,\n                     TridiagonalOperator&
      L2) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator(const TridiagonalOperator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: ~TridiagonalOperator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TridiagonalOperator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::TridiagonalOperator::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::TridiagonalOperator::isTimeDependent
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isTimeDependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: '& lowerDiagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lowerDiagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: '& diagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & diagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: '& upperDiagonal() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & upperDiagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: ~TimeSetter()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TimeSetter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::TridiagonalOperator::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::swap
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::TridiagonalOperator(TridiagonalOperator&&
      from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: "& TridiagonalOperator::operator=(\n                                const
      TridiagonalOperator& from)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator & TridiagonalOperator::operator=(\n                                const
      TridiagonalOperator& from)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: "&\n    TridiagonalOperator::operator=(TridiagonalOperator&& from)
      noexcept"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator &\n    TridiagonalOperator::operator=(TridiagonalOperator&&
      from) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - valB
    - valC
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: QuantLib::TridiagonalOperator::setFirstRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setFirstRow(Real valB,\n                                                 Real
      valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - i
    - valA
    - valB
    - valC
    argTypes:
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 159
    functionName: QuantLib::TridiagonalOperator::setMidRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setMidRow(Size i,\n                                               Real
      valA,\n                                               Real valB,\n                                               Real
      valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - valA
    - valB
    - valC
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 169
    functionName: QuantLib::TridiagonalOperator::setMidRows
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setMidRows(Real valA,\n                                                Real
      valB,\n                                                Real valC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - valA
    - valB
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::TridiagonalOperator::setLastRow
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TridiagonalOperator::setLastRow(Real valA,\n                                                Real
      valB)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::TridiagonalOperator::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TridiagonalOperator::setTime
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:183,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:184,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:185,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:186,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:187,1
    - Dst: QuantLib::TridiagonalOperator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::TridiagonalOperator::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::TridiagonalOperator::swap
    linkageType: ''
    returnType: void
    signature: void TridiagonalOperator::swap(TridiagonalOperator& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' D'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator+(const TridiagonalOperator& D)
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator operator+(const TridiagonalOperator& D)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' D'
    argTypes:
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: operator-(const TridiagonalOperator& D)
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: TridiagonalOperator operator-(const TridiagonalOperator& D)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D1'
    - ' D2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 214
    functionName: "operator+(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator+(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D1'
    - ' D2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: "operator-(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator-(const TridiagonalOperator& D1,\n                                         const
      TridiagonalOperator& D2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - ' D'
    argTypes:
    - Real
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: "operator*(Real a,\n                                         const
      TridiagonalOperator& D)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator*(Real a,\n                                         const
      TridiagonalOperator& D)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D'
    - a
    argTypes:
    - TridiagonalOperator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 241
    functionName: "operator*(const TridiagonalOperator& D,\n                                         Real
      a)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator*(const TridiagonalOperator& D,\n                                         Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' D'
    - a
    argTypes:
    - TridiagonalOperator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: "operator/(const TridiagonalOperator& D,\n                                         Real
      a)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TridiagonalOperator
    signature: "TridiagonalOperator operator/(const TridiagonalOperator& D,\n                                         Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' L1'
    - ' L2'
    argTypes:
    - TridiagonalOperator
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 255
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/tridiagonaloperator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: "void swap(TridiagonalOperator& L1,\n                     TridiagonalOperator&
      L2) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - std::vector<ext::shared_ptr<bc_type> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::ExplicitEuler::ExplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/expliciteuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExplicitEuler(const operator_type& L,\n                      const
      std::vector<ext::shared_ptr<bc_type> >& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - std::vector<ext::shared_ptr<bc_type> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::ExplicitEuler::ExplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/expliciteuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExplicitEuler(const operator_type& L,\n                      const
      std::vector<ext::shared_ptr<bc_type> >& bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:48,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: erase
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::FiniteDifferenceModel::FiniteDifferenceModel
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - std::unique
    - std::vector<Time>
    - end
    - erase
    linkageType: ''
    returnType: void
    signature: "void FiniteDifferenceModel(const operator_type& L,\n                              const
      bc_set& bcs,\n                              std::vector<Time> stoppingTimes
      = std::vector<Time>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:55,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: erase
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - evolver
    argTypes:
    - Evolver
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::FiniteDifferenceModel::FiniteDifferenceModel
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - std::unique
    - std::vector<Time>
    - end
    - erase
    linkageType: ''
    returnType: void
    signature: "void FiniteDifferenceModel(Evolver evolver,\n                              std::vector<Time>
      stoppingTimes = std::vector<Time>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& evolver() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Evolver
    signature: Evolver & evolver() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FiniteDifferenceModel::rollbackImpl
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' a'
    - from
    - to
    - steps
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::FiniteDifferenceModel::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FiniteDifferenceModel::rollbackImpl
    linkageType: ''
    returnType: void
    signature: "void rollback(array_type& a,\n                      Time from,\n                      Time
      to,\n                      Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FiniteDifferenceModel::rollbackImpl
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' a'
    - from
    - to
    - steps
    - ' condition'
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    - condition_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::FiniteDifferenceModel::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FiniteDifferenceModel::rollbackImpl
    linkageType: ''
    returnType: void
    signature: "void rollback(array_type& a,\n                      Time from,\n                      Time
      to,\n                      Size steps,\n                      const condition_type&
      condition)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:92,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:96,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:98,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:98,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:100,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:108,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:110,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:116,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:117,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:119,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:129,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:130,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:132,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:136,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:140,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:142,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 5
    argNames:
    - ' a'
    - from
    - to
    - steps
    - condition
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    - condition_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 145
    functionName: QuantLib::FiniteDifferenceModel::rollbackImpl
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 2
    functionsReached:
    - empty
    - condition_type*::applyTo
    - step
    - std::fabs
    - static_cast<Integer>
    - std::sqrt
    - setStep
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void rollbackImpl(array_type& a,\n                          Time from,\n
      \                         Time to,\n                          Size steps,\n
      \                         const condition_type* condition)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:48,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:49,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:50,1
    - Dst: erase
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::FiniteDifferenceModel::FiniteDifferenceModel
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - std::unique
    - std::vector<Time>
    - end
    - erase
    linkageType: ''
    returnType: void
    signature: "void FiniteDifferenceModel(const operator_type& L,\n                              const
      bc_set& bcs,\n                              std::vector<Time> stoppingTimes
      = std::vector<Time>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:55,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:56,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:57,1
    - Dst: erase
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - evolver
    argTypes:
    - Evolver
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::FiniteDifferenceModel::FiniteDifferenceModel
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - std::sort
    - begin
    - std::move
    - std::unique
    - std::vector<Time>
    - end
    - erase
    linkageType: ''
    returnType: void
    signature: "void FiniteDifferenceModel(Evolver evolver,\n                              std::vector<Time>
      stoppingTimes = std::vector<Time>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& evolver() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Evolver
    signature: Evolver & evolver() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FiniteDifferenceModel::rollbackImpl
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' a'
    - from
    - to
    - steps
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::FiniteDifferenceModel::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FiniteDifferenceModel::rollbackImpl
    linkageType: ''
    returnType: void
    signature: "void rollback(array_type& a,\n                      Time from,\n                      Time
      to,\n                      Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FiniteDifferenceModel::rollbackImpl
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' a'
    - from
    - to
    - steps
    - ' condition'
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    - condition_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::FiniteDifferenceModel::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FiniteDifferenceModel::rollbackImpl
    linkageType: ''
    returnType: void
    signature: "void rollback(array_type& a,\n                      Time from,\n                      Time
      to,\n                      Size steps,\n                      const condition_type&
      condition)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:92,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:96,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:98,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:98,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:100,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:108,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:110,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:116,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:117,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:119,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:129,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:130,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:132,1
    - Dst: setStep
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:136,1
    - Dst: step
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:140,1
    - Dst: condition_type*::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp:142,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 5
    argNames:
    - ' a'
    - from
    - to
    - steps
    - condition
    argTypes:
    - array_type
    - Time
    - Time
    - Size
    - condition_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 145
    functionName: QuantLib::FiniteDifferenceModel::rollbackImpl
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/finitedifferencemodel.hpp
    functionUses: 4
    functionsReached:
    - empty
    - condition_type*::applyTo
    - step
    - std::fabs
    - static_cast<Integer>
    - std::sqrt
    - setStep
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void rollbackImpl(array_type& a,\n                          Time from,\n
      \                         Time to,\n                          Size steps,\n
      \                         const condition_type* condition)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::BSMOperator::BSMOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BSMOperator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::BSMOperator::BSMOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BSMOperator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:53,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:54,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::DPlusDMinus::DPlusDMinus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DPlusDMinus::DPlusDMinus(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFirstRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:53,1
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:54,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - gridPoints
    - h
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::DPlusDMinus::DPlusDMinus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/dplusdminus.hpp
    functionUses: 0
    functionsReached:
    - setMidRows
    - setFirstRow
    - setLastRow
    linkageType: ''
    returnType: void
    signature: void DPlusDMinus::DPlusDMinus(Size gridPoints, Real h)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~PdeSecondOrderParabolic()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PdeSecondOrderParabolic()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:47,1
    - Dst: diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:48,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:48,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:49,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:49,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:50,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:50,1
    - Dst: dxm
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:53,1
    - Dst: dx
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:53,1
    - Dst: dxp
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:54,1
    - Dst: dx
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:54,1
    - Dst: dxm
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:55,1
    - Dst: dxp
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:55,1
    - Dst: setMidRow
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t
    - ' tg'
    - ' L'
    argTypes:
    - Time
    - TransformedGrid
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 58
    functionName: QuantLib::PdeSecondOrderParabolic::generateOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - grid
    - dxm
    - setMidRow
    - drift
    - discount
    - dx
    - diffusion
    - size
    - dxp
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING generateOperator(Time t, const TransformedGrid&
      tg, TridiagonalOperator& L) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PdeClass::diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:71,1
    - Dst: PdeClass::drift
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:72,1
    - Dst: PdeClass::discount
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process
    - t
    - x
    argTypes:
    - typename PdeClass::argument_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::PdeConstantCoeff::PdeConstantCoeff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - PdeClass::diffusion
    - PdeClass::discount
    - PdeClass::drift
    linkageType: ''
    returnType: void
    signature: "void PdeConstantCoeff(const typename PdeClass::argument_type &process,\n
      \                        Time t, Real x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::PdeConstantCoeff::diffusion
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::PdeConstantCoeff::drift
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real drift(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::PdeConstantCoeff::discount
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real discount(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateOperator
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' L'
    argTypes:
    - Time
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - generateOperator
    linkageType: ''
    returnType: void
    signature: void setTime(Time t, TridiagonalOperator& L) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~PdeSecondOrderParabolic()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PdeSecondOrderParabolic()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:47,1
    - Dst: diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:48,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:48,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:49,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:49,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:50,1
    - Dst: grid
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:50,1
    - Dst: dxm
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:53,1
    - Dst: dx
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:53,1
    - Dst: dxp
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:54,1
    - Dst: dx
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:54,1
    - Dst: dxm
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:55,1
    - Dst: dxp
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:55,1
    - Dst: setMidRow
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t
    - ' tg'
    - ' L'
    argTypes:
    - Time
    - TransformedGrid
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 58
    functionName: QuantLib::PdeSecondOrderParabolic::generateOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - grid
    - dxm
    - setMidRow
    - drift
    - discount
    - dx
    - diffusion
    - size
    - dxp
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING generateOperator(Time t, const TransformedGrid&
      tg, TridiagonalOperator& L) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PdeClass::diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:71,1
    - Dst: PdeClass::drift
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:72,1
    - Dst: PdeClass::discount
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process
    - t
    - x
    argTypes:
    - typename PdeClass::argument_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::PdeConstantCoeff::PdeConstantCoeff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - PdeClass::diffusion
    - PdeClass::discount
    - PdeClass::drift
    linkageType: ''
    returnType: void
    signature: "void PdeConstantCoeff(const typename PdeClass::argument_type &process,\n
      \                        Time t, Real x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::PdeConstantCoeff::diffusion
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::PdeConstantCoeff::drift
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real drift(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::PdeConstantCoeff::discount
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real discount(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateOperator
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' L'
    argTypes:
    - Time
    - TridiagonalOperator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - generateOperator
    linkageType: ''
    returnType: void
    signature: void setTime(Time t, TridiagonalOperator& L) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:117,1
    - Dst: ext::shared_ptr<GenericTimeSetter<PdeClass> >
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:121,1
    - Dst: GenericTimeSetter<PdeClass>::GenericTimeSetter<PdeClass>
      Src: /src/quantlib/ql/methods/finitedifferences/pde.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' grid'
    - process
    argTypes:
    - Array
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 124
    functionName: PdeOperator::PdeOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pde.hpp
    functionUses: 0
    functionsReached:
    - size
    - GenericTimeSetter<PdeClass>::GenericTimeSetter<PdeClass>
    - ext::shared_ptr<GenericTimeSetter<PdeClass> >
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PdeOperator(const Array& grid,\n                    T process,\n
      \                   Time residualTime = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp
    functionUses: 0
    functionsReached:
    - setMidRows
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING TridiagonalOperator(size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:42,1
    - Dst: PdeBSM::grid_type::size
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:46,1
    - Dst: PdeBSM::grid_type::dxm
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:47,1
    - Dst: PdeBSM::grid_type::dx
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:47,1
    - Dst: PdeBSM::grid_type::dxp
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:48,1
    - Dst: PdeBSM::grid_type::dx
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:48,1
    - Dst: PdeBSM::grid_type::dxm
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:49,1
    - Dst: PdeBSM::grid_type::dxp
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:49,1
    - Dst: setMidRow
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' grid'
    - r
    - q
    - sigma
    argTypes:
    - Array
    - Rate
    - Rate
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::BSMOperator::BSMOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp
    functionUses: 0
    functionsReached:
    - PdeBSM::grid_type::dxp
    - PdeBSM::grid_type::dxm
    - PdeBSM::grid_type::size
    - setMidRow
    - PdeBSM::grid_type::dx
    - size
    linkageType: ''
    returnType: void
    signature: "void BSMOperator::BSMOperator(const Array& grid,\n                             Rate
      r, Rate q, Volatility sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setMidRows
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::TridiagonalOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp
    functionUses: 0
    functionsReached:
    - setMidRows
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING TridiagonalOperator(size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:42,1
    - Dst: PdeBSM::grid_type::size
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:46,1
    - Dst: PdeBSM::grid_type::dxm
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:47,1
    - Dst: PdeBSM::grid_type::dx
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:47,1
    - Dst: PdeBSM::grid_type::dxp
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:48,1
    - Dst: PdeBSM::grid_type::dx
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:48,1
    - Dst: PdeBSM::grid_type::dxm
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:49,1
    - Dst: PdeBSM::grid_type::dxp
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:49,1
    - Dst: setMidRow
      Src: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' grid'
    - r
    - q
    - sigma
    argTypes:
    - Array
    - Rate
    - Rate
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::BSMOperator::BSMOperator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/bsmoperator.cpp
    functionUses: 0
    functionsReached:
    - PdeBSM::grid_type::dxp
    - PdeBSM::grid_type::dxm
    - PdeBSM::grid_type::size
    - setMidRow
    - PdeBSM::grid_type::dx
    - size
    linkageType: ''
    returnType: void
    signature: "void BSMOperator::BSMOperator(const Array& grid,\n                             Rate
      r, Rate q, Volatility sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::PdeBSM
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PdeBSM(argument_type process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::diffusion
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::diffusion
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::drift
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::drift
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::drift
    linkageType: ''
    returnType: Real
    signature: Real drift(Time t, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::discount
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real discount(Time t, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::PdeBSM
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PdeBSM(argument_type process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::diffusion
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::diffusion
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::diffusion
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::drift
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::drift
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::drift
    linkageType: ''
    returnType: Real
    signature: Real drift(Time t, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::discount
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/pdebsm.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real discount(Time t, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:84,1
    - Dst: sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::TRBDF2::TRBDF2
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::TridiagonalOperator::identity
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void TRBDF2(const operator_type& L,\n               const bc_set&
      bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::TRBDF2::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:117,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:118,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:120,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:124,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:125,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:127,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:128,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:131,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:135,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:136,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:138,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:139,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:143,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:144,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:146,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:147,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:150,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:151,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:153,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:154,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:157,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:162,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:163,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:164,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:165,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:166,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 168
    functionName: QuantLib::TRBDF2<Operator>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - applyTo
    - setTime
    - applyBeforeSolving
    - applyBeforeApplying
    - applyAfterApplying
    - size
    - applyAfterSolving
    - isTimeDependent
    linkageType: ''
    returnType: void
    signature: void TRBDF2<Operator>::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:84,1
    - Dst: sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' L'
    - ' bcs'
    argTypes:
    - operator_type
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::TRBDF2::TRBDF2
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::TridiagonalOperator::identity
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void TRBDF2(const operator_type& L,\n               const bc_set&
      bcs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::TRBDF2::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:117,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:118,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:120,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:124,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:125,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:127,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:128,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:131,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:132,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:135,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:136,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:138,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:139,1
    - Dst: isTimeDependent
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:143,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:144,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:146,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:147,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:150,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:151,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:153,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:154,1
    - Dst: applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:157,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:162,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:163,1
    - Dst: solveFor
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:164,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:165,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp:166,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 168
    functionName: QuantLib::TRBDF2<Operator>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/trbdf2.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - applyTo
    - setTime
    - applyBeforeSolving
    - applyBeforeApplying
    - applyAfterApplying
    - size
    - applyAfterSolving
    - isTimeDependent
    linkageType: ''
    returnType: void
    signature: void TRBDF2<Operator>::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~StepCondition()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepcondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StepCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::NullCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepcondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyTo(array_type&, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~StepCondition()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepcondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StepCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::NullCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepcondition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyTo(array_type&, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ModifiedCraigSneydScheme::ModifiedCraigSneydScheme(Real theta,\n
      \                                                      Real mu,\n                                                       ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                                       const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:32,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:33,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:33,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:34,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:34,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:36,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:37,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:42,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:43,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:44,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:47,1
    - Dst: apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:48,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:49,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:52,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:53,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:54,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 59
    functionName: QuantLib::ModifiedCraigSneydScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply_mixed
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ModifiedCraigSneydScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::ModifiedCraigSneydScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModifiedCraigSneydScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ModifiedCraigSneydScheme::ModifiedCraigSneydScheme(Real theta,\n
      \                                                      Real mu,\n                                                       ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                                       const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:32,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:33,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:33,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:34,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:34,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:36,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:37,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:42,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:43,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:44,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:47,1
    - Dst: apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:48,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:49,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:52,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:53,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:54,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 59
    functionName: QuantLib::ModifiedCraigSneydScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply_mixed
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ModifiedCraigSneydScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::ModifiedCraigSneydScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/modifiedcraigsneydscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModifiedCraigSneydScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::HundsdorferScheme::HundsdorferScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HundsdorferScheme::HundsdorferScheme(Real theta,\n                                         Real
      mu,\n                                         ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                         const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:34,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:45,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:46,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:47,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:50,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:51,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:54,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:55,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:56,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::HundsdorferScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HundsdorferScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::HundsdorferScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void HundsdorferScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::HundsdorferScheme::HundsdorferScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HundsdorferScheme::HundsdorferScheme(Real theta,\n                                         Real
      mu,\n                                         ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                         const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:34,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:45,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:46,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:47,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:50,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:51,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:54,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:55,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:56,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::HundsdorferScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HundsdorferScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::HundsdorferScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/hundsdorferscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void HundsdorferScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - eps
    - relInitStepSize
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::MethodOfLinesScheme::MethodOfLinesScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MethodOfLinesScheme::MethodOfLinesScheme(const Real eps,\n                                             const
      Real relInitStepSize,\n                                             ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:35,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:36,1
    - Dst: QuantLib::MethodOfLinesScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' u'
    argTypes:
    - Time
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::MethodOfLinesScheme::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 1
    functionsReached:
    - Array
    - Array::begin
    - begin
    - setTime
    - std::vector<Real>
    - Array::end
    - applyBeforeApplying
    - end
    - QuantLib::MethodOfLinesScheme::apply
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> MethodOfLinesScheme::apply(Time t, const std::vector<Real>&
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:44,1
    - Dst: AdaptiveRungeKutta<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:47,1
    - Dst: QuantLib::MethodOfLinesScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:48,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:50,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:52,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:52,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 57
    functionName: QuantLib::MethodOfLinesScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - AdaptiveRungeKutta<Real>
    - std::vector::begin
    - begin
    - std::vector<Real>
    - std::vector::end
    - std::max
    - applyAfterSolving
    - end
    - QuantLib::MethodOfLinesScheme::apply
    linkageType: ''
    returnType: void
    signature: void MethodOfLinesScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::MethodOfLinesScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MethodOfLinesScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - eps
    - relInitStepSize
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::MethodOfLinesScheme::MethodOfLinesScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MethodOfLinesScheme::MethodOfLinesScheme(const Real eps,\n                                             const
      Real relInitStepSize,\n                                             ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:35,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:36,1
    - Dst: QuantLib::MethodOfLinesScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:38,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' u'
    argTypes:
    - Time
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::MethodOfLinesScheme::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 3
    functionsReached:
    - Array
    - Array::begin
    - begin
    - setTime
    - std::vector<Real>
    - Array::end
    - applyBeforeApplying
    - end
    - QuantLib::MethodOfLinesScheme::apply
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> MethodOfLinesScheme::apply(Time t, const std::vector<Real>&
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:44,1
    - Dst: AdaptiveRungeKutta<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:47,1
    - Dst: QuantLib::MethodOfLinesScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:48,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:49,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:50,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:52,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:52,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 57
    functionName: QuantLib::MethodOfLinesScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - AdaptiveRungeKutta<Real>
    - std::vector::begin
    - begin
    - std::vector<Real>
    - std::vector::end
    - std::max
    - applyAfterSolving
    - end
    - QuantLib::MethodOfLinesScheme::apply
    linkageType: ''
    returnType: void
    signature: void MethodOfLinesScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::MethodOfLinesScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/methodoflinesscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MethodOfLinesScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - bcSet
    argTypes:
    - OperatorTraits<FdmLinearOp>::bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::BoundaryConditionSchemeHelper::BoundaryConditionSchemeHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BoundaryConditionSchemeHelper(OperatorTraits<FdmLinearOp>::bc_set
      bcSet)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' op'
    argTypes:
    - operator_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
    linkageType: ''
    returnType: void
    signature: void applyBeforeApplying(operator_type& op) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' op'
    - ' a'
    argTypes:
    - operator_type
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
    linkageType: ''
    returnType: void
    signature: void applyBeforeSolving(operator_type& op, array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void applyAfterApplying(array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
    linkageType: ''
    returnType: void
    signature: void applyAfterSolving(array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::BoundaryConditionSchemeHelper::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::setTime
    linkageType: ''
    returnType: void
    signature: void setTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BoundaryConditionSchemeHelper::BoundaryConditionSchemeHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BoundaryConditionSchemeHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - bcSet
    argTypes:
    - OperatorTraits<FdmLinearOp>::bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::BoundaryConditionSchemeHelper::BoundaryConditionSchemeHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BoundaryConditionSchemeHelper(OperatorTraits<FdmLinearOp>::bc_set
      bcSet)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' op'
    argTypes:
    - operator_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyBeforeApplying
    linkageType: ''
    returnType: void
    signature: void applyBeforeApplying(operator_type& op) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' op'
    - ' a'
    argTypes:
    - operator_type
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyBeforeSolving
    linkageType: ''
    returnType: void
    signature: void applyBeforeSolving(operator_type& op, array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void applyAfterApplying(array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::applyAfterSolving
    linkageType: ''
    returnType: void
    signature: void applyAfterSolving(array_type& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoundaryConditionSchemeHelper::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::BoundaryConditionSchemeHelper::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoundaryConditionSchemeHelper::setTime
    linkageType: ''
    returnType: void
    signature: void setTime(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BoundaryConditionSchemeHelper::BoundaryConditionSchemeHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/boundaryconditionschemehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BoundaryConditionSchemeHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: ext::make_shared<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - alpha
    - map
    - ' trapezoidalScheme'
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - ext::shared_ptr<TrapezoidalScheme>
    - bc_set
    - Real
    - SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::TrBDF2Scheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Size>
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TrBDF2Scheme<TrapezoidalScheme>::TrBDF2Scheme(\n        Real
      alpha,\n        ext::shared_ptr<FdmLinearOpComposite> map,\n        const ext::shared_ptr<TrapezoidalScheme>&
      trapezoidalScheme,\n        const bc_set& bcSet,\n        Real relTol,\n        SolverType
      solverType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TrBDF2Scheme<TrapezoidalScheme>::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TrBDF2Scheme<TrapezoidalScheme>::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    linkageType: ''
    returnType: Array
    signature: Array TrBDF2Scheme<TrapezoidalScheme>::apply(const Array& r) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:107,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:112,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:113,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:115,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:115,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:116,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:121,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:122,1
    - Dst: preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:125,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:126,1
    - Dst: QuantLib::BiCGstab::BiCGstab
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: QuantLib::GMRES::GMRES
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: GMRESResult::errors::size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:145,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:148,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - ' fn'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 149
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 1
    functionsReached:
    - Size
    - squared
    - GMRESResult::errors::size
    - preconditioner
    - setTime
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
    - solve_splitting
    - std::max
    - applyBeforeSolving
    - QuantLib::GMRES::GMRES
    - QL_FAIL
    - applyAfterSolving
    - QuantLib::BiCGstab::BiCGstab
    - size
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TrBDF2Scheme<TrapezoidalScheme>::step(array_type& fn, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: ext::make_shared<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - alpha
    - map
    - ' trapezoidalScheme'
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - ext::shared_ptr<TrapezoidalScheme>
    - bc_set
    - Real
    - SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::TrBDF2Scheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Size>
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TrBDF2Scheme<TrapezoidalScheme>::TrBDF2Scheme(\n        Real
      alpha,\n        ext::shared_ptr<FdmLinearOpComposite> map,\n        const ext::shared_ptr<TrapezoidalScheme>&
      trapezoidalScheme,\n        const bc_set& bcSet,\n        Real relTol,\n        SolverType
      solverType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TrBDF2Scheme<TrapezoidalScheme>::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TrBDF2Scheme<TrapezoidalScheme>::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    linkageType: ''
    returnType: Array
    signature: Array TrBDF2Scheme<TrapezoidalScheme>::apply(const Array& r) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:107,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:112,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:113,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:115,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:115,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:116,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:121,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:122,1
    - Dst: preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:125,1
    - Dst: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:126,1
    - Dst: QuantLib::BiCGstab::BiCGstab
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:130,1
    - Dst: QuantLib::GMRES::GMRES
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:137,1
    - Dst: GMRESResult::errors::size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:145,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp:148,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - ' fn'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 149
    functionName: QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/trbdf2scheme.hpp
    functionUses: 2
    functionsReached:
    - Size
    - squared
    - GMRESResult::errors::size
    - preconditioner
    - setTime
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::step
    - solve_splitting
    - std::max
    - applyBeforeSolving
    - QuantLib::GMRES::GMRES
    - QL_FAIL
    - applyAfterSolving
    - QuantLib::BiCGstab::BiCGstab
    - size
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::apply
    - QuantLib::TrBDF2Scheme<TrapezoidalScheme>::setStep
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TrBDF2Scheme<TrapezoidalScheme>::step(array_type& fn, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:30,1
    - Dst: ext::make_shared<ExplicitEulerScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:32,1
    - Dst: ext::make_shared<ImplicitEulerScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - theta
    - ' map'
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    - Real
    - ImplicitEulerScheme::SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 35
    functionName: QuantLib::CrankNicolsonScheme::CrankNicolsonScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ImplicitEulerScheme>
    - Null<Real>
    - ext::make_shared<ExplicitEulerScheme>
    linkageType: ''
    returnType: void
    signature: "void CrankNicolsonScheme::CrankNicolsonScheme(\n        Real theta,\n
      \       const ext::shared_ptr<FdmLinearOpComposite> & map,\n        const bc_set&
      bcSet,\n        Real relTol,\n        ImplicitEulerScheme::SolverType solverType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:38,1
    - Dst: QuantLib::CrankNicolsonScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:41,1
    - Dst: QuantLib::CrankNicolsonScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::CrankNicolsonScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CrankNicolsonScheme::step
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CrankNicolsonScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CrankNicolsonScheme::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:49,1
    - Dst: QuantLib::CrankNicolsonScheme::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::CrankNicolsonScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CrankNicolsonScheme::setStep
    linkageType: ''
    returnType: void
    signature: void CrankNicolsonScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CrankNicolsonScheme::numberOfIterations
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::CrankNicolsonScheme::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CrankNicolsonScheme::numberOfIterations
    linkageType: ''
    returnType: Size
    signature: Size CrankNicolsonScheme::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:30,1
    - Dst: ext::make_shared<ExplicitEulerScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:32,1
    - Dst: ext::make_shared<ImplicitEulerScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - theta
    - ' map'
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    - Real
    - ImplicitEulerScheme::SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 35
    functionName: QuantLib::CrankNicolsonScheme::CrankNicolsonScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ImplicitEulerScheme>
    - Null<Real>
    - ext::make_shared<ExplicitEulerScheme>
    linkageType: ''
    returnType: void
    signature: "void CrankNicolsonScheme::CrankNicolsonScheme(\n        Real theta,\n
      \       const ext::shared_ptr<FdmLinearOpComposite> & map,\n        const bc_set&
      bcSet,\n        Real relTol,\n        ImplicitEulerScheme::SolverType solverType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:38,1
    - Dst: QuantLib::CrankNicolsonScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:41,1
    - Dst: QuantLib::CrankNicolsonScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::CrankNicolsonScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CrankNicolsonScheme::step
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CrankNicolsonScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CrankNicolsonScheme::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:49,1
    - Dst: QuantLib::CrankNicolsonScheme::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::CrankNicolsonScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CrankNicolsonScheme::setStep
    linkageType: ''
    returnType: void
    signature: void CrankNicolsonScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CrankNicolsonScheme::numberOfIterations
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::CrankNicolsonScheme::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/cranknicolsonscheme.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CrankNicolsonScheme::numberOfIterations
    linkageType: ''
    returnType: Size
    signature: Size CrankNicolsonScheme::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:34,1
    - Dst: ext::make_shared<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - map
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    - Real
    - SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::ImplicitEulerScheme::ImplicitEulerScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Size>
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImplicitEulerScheme::ImplicitEulerScheme(ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet,\n                                             Real
      relTol,\n                                             SolverType solverType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImplicitEulerScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - theta
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::ImplicitEulerScheme::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImplicitEulerScheme::apply
    linkageType: ''
    returnType: Array
    signature: Array ImplicitEulerScheme::apply(const Array& r, Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImplicitEulerScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ImplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImplicitEulerScheme::step
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::step(array_type& a, Time t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:46,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:47,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:47,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:48,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:48,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:52,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:53,1
    - Dst: preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:56,1
    - Dst: QuantLib::ImplicitEulerScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:57,1
    - Dst: QuantLib::BiCGstab::BiCGstab
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: QuantLib::GMRES::GMRES
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: GMRESResult::errors::size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:77,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - ' a'
    - t
    - theta
    argTypes:
    - array_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 80
    functionName: QuantLib::ImplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 1
    functionsReached:
    - Size
    - GMRESResult::errors::size
    - preconditioner
    - setTime
    - solve_splitting
    - std::max
    - applyBeforeSolving
    - QuantLib::ImplicitEulerScheme::apply
    - QuantLib::GMRES::GMRES
    - QL_FAIL
    - QuantLib::BiCGstab::BiCGstab
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::step(array_type& a, Time t, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ImplicitEulerScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ImplicitEulerScheme::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ImplicitEulerScheme::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:34,1
    - Dst: ext::make_shared<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - map
    - ' bcSet'
    - relTol
    - solverType
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    - Real
    - SolverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::ImplicitEulerScheme::ImplicitEulerScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Size>
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImplicitEulerScheme::ImplicitEulerScheme(ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet,\n                                             Real
      relTol,\n                                             SolverType solverType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImplicitEulerScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - theta
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::ImplicitEulerScheme::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ImplicitEulerScheme::apply
    linkageType: ''
    returnType: Array
    signature: Array ImplicitEulerScheme::apply(const Array& r, Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImplicitEulerScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ImplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImplicitEulerScheme::step
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::step(array_type& a, Time t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:46,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:47,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:47,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:48,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:48,1
    - Dst: applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:52,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:53,1
    - Dst: preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:56,1
    - Dst: QuantLib::ImplicitEulerScheme::apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:57,1
    - Dst: QuantLib::BiCGstab::BiCGstab
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:61,1
    - Dst: QuantLib::GMRES::GMRES
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:69,1
    - Dst: GMRESResult::errors::size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:77,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - ' a'
    - t
    - theta
    argTypes:
    - array_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 80
    functionName: QuantLib::ImplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 2
    functionsReached:
    - Size
    - GMRESResult::errors::size
    - preconditioner
    - setTime
    - solve_splitting
    - std::max
    - applyBeforeSolving
    - QuantLib::ImplicitEulerScheme::apply
    - QuantLib::GMRES::GMRES
    - QL_FAIL
    - QuantLib::BiCGstab::BiCGstab
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::step(array_type& a, Time t, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ImplicitEulerScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ImplicitEulerScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ImplicitEulerScheme::numberOfIterations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/impliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ImplicitEulerScheme::numberOfIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - theta
    - map
    - ' bcSet'
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::DouglasScheme::DouglasScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DouglasScheme::DouglasScheme(Real theta,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                 const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:32,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:33,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:33,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:34,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:34,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:36,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:37,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:40,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:41,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:42,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 47
    functionName: QuantLib::DouglasScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DouglasScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::DouglasScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DouglasScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - theta
    - map
    - ' bcSet'
    argTypes:
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::DouglasScheme::DouglasScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DouglasScheme::DouglasScheme(Real theta,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                 const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:32,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:33,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:33,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:34,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:34,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:36,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:37,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:40,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:41,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:42,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 47
    functionName: QuantLib::DouglasScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DouglasScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::DouglasScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/douglasscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DouglasScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::CraigSneydScheme::CraigSneydScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CraigSneydScheme::CraigSneydScheme(Real theta,\n                                       Real
      mu,\n                                       ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                       const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:34,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:45,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:46,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:47,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:50,1
    - Dst: apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:51,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:54,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:55,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:56,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::CraigSneydScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply_mixed
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CraigSneydScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::CraigSneydScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CraigSneydScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - mu
    - map
    - ' bcSet'
    argTypes:
    - Real
    - Real
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::CraigSneydScheme::CraigSneydScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CraigSneydScheme::CraigSneydScheme(Real theta,\n                                       Real
      mu,\n                                       ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                       const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:34,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:45,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:46,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:47,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:50,1
    - Dst: apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:51,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:54,1
    - Dst: apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:55,1
    - Dst: solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:56,1
    - Dst: applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::CraigSneydScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - apply_direction
    - solve_splitting
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply_mixed
    - apply
    - size
    - applyAfterSolving
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CraigSneydScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::CraigSneydScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/craigsneydscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CraigSneydScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - map
    - ' bcSet'
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::ExplicitEulerScheme::ExplicitEulerScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExplicitEulerScheme::ExplicitEulerScheme(ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExplicitEulerScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::ExplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExplicitEulerScheme::step
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:35,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' a'
    - t
    - theta
    argTypes:
    - array_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::ExplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 1
    functionsReached:
    - setTime
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::step(array_type& a, Time t, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::ExplicitEulerScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - map
    - ' bcSet'
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - bc_set
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::ExplicitEulerScheme::ExplicitEulerScheme
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExplicitEulerScheme::ExplicitEulerScheme(ext::shared_ptr<FdmLinearOpComposite>
      map,\n                                             const bc_set& bcSet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExplicitEulerScheme::step
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - array_type
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::ExplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExplicitEulerScheme::step
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::step(array_type& a, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:35,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:36,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:36,1
    - Dst: setTime
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:37,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:37,1
    - Dst: applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:39,1
    - Dst: apply
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:40,1
    - Dst: applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' a'
    - t
    - theta
    argTypes:
    - array_type
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::ExplicitEulerScheme::step
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 2
    functionsReached:
    - setTime
    - std::max
    - applyBeforeApplying
    - applyAfterApplying
    - apply
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::step(array_type& a, Time t, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::ExplicitEulerScheme::setStep
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/schemes/expliciteulerscheme.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExplicitEulerScheme::setStep(Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - aType
    - aTheta
    - aMu
    argTypes:
    - FdmSchemeType
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmSchemeDesc::FdmSchemeDesc
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeDesc::FdmSchemeDesc(FdmSchemeType aType, Real aTheta,
      Real aMu)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSchemeDesc::Douglas
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::Douglas()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmSchemeDesc::CrankNicolson
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::CrankNicolson()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmSchemeDesc::CraigSneyd
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::CraigSneyd()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSchemeDesc::ModifiedCraigSneyd
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ModifiedCraigSneyd()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmSchemeDesc::Hundsdorfer
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::Hundsdorfer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ModifiedHundsdorfer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmSchemeDesc::ExplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ExplicitEuler()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmSchemeDesc::ImplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ImplicitEuler()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eps
    - relInitStepSize
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmSchemeDesc::MethodOfLines
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::MethodOfLines(Real eps, Real relInitStepSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmSchemeDesc::TrBDF2
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::TrBDF2()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:85,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:88,1
    - Dst: std::list<std::vector<Time> >
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:89,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - map
    - bcSet
    - ' condition'
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - FdmBoundaryConditionSet
    - ext::shared_ptr<FdmStepConditionComposite>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmBackwardSolver::FdmBackwardSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::joinConditions
    - ext::make_shared<FdmStepConditionComposite>
    - std::move
    - std::list<std::vector<Time> >
    linkageType: ''
    returnType: void
    signature: "void FdmBackwardSolver::FdmBackwardSolver(\n        ext::shared_ptr<FdmLinearOpComposite>
      map,\n        FdmBoundaryConditionSet bcSet,\n        const ext::shared_ptr<FdmStepConditionComposite>&
      condition,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:103,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:104,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:114,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:115,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:122,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:123,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:130,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:131,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:140,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:141,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:150,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:151,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:158,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:159,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:166,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:167,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:175,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:176,1
    - Dst: QuantLib::FdmSchemeDesc::CraigSneyd
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:182,1
    - Dst: ext::make_shared<CraigSneydScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:185,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:192,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:197,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 5
    argNames:
    - ' rhs'
    - from
    - to
    - steps
    - dampingSteps
    argTypes:
    - FdmBackwardSolver::array_type
    - Time
    - Time
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 199
    functionName: QuantLib::FdmBackwardSolver::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CraigSneydScheme>
    - QuantLib::FdmSchemeDesc::CraigSneyd
    - FiniteDifferenceModel::rollback
    - QL_FAIL
    - stoppingTimes
    linkageType: ''
    returnType: void
    signature: "void FdmBackwardSolver::rollback(FdmBackwardSolver::array_type& rhs,
      \n                                     Time from, Time to,\n                                     Size
      steps, Size dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - aType
    - aTheta
    - aMu
    argTypes:
    - FdmSchemeType
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmSchemeDesc::FdmSchemeDesc
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeDesc::FdmSchemeDesc(FdmSchemeType aType, Real aTheta,
      Real aMu)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSchemeDesc::Douglas
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::Douglas()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmSchemeDesc::CrankNicolson
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::CrankNicolson()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmSchemeDesc::CraigSneyd
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::CraigSneyd()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSchemeDesc::ModifiedCraigSneyd
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ModifiedCraigSneyd()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmSchemeDesc::Hundsdorfer
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::Hundsdorfer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ModifiedHundsdorfer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmSchemeDesc::ExplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ExplicitEuler()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmSchemeDesc::ImplicitEuler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::ImplicitEuler()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eps
    - relInitStepSize
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmSchemeDesc::MethodOfLines
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::MethodOfLines(Real eps, Real relInitStepSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmSchemeDesc::TrBDF2
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmSchemeDesc
    signature: FdmSchemeDesc FdmSchemeDesc::TrBDF2()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:85,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:88,1
    - Dst: std::list<std::vector<Time> >
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:89,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - map
    - bcSet
    - ' condition'
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<FdmLinearOpComposite>
    - FdmBoundaryConditionSet
    - ext::shared_ptr<FdmStepConditionComposite>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmBackwardSolver::FdmBackwardSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::joinConditions
    - ext::make_shared<FdmStepConditionComposite>
    - std::move
    - std::list<std::vector<Time> >
    linkageType: ''
    returnType: void
    signature: "void FdmBackwardSolver::FdmBackwardSolver(\n        ext::shared_ptr<FdmLinearOpComposite>
      map,\n        FdmBoundaryConditionSet bcSet,\n        const ext::shared_ptr<FdmStepConditionComposite>&
      condition,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:103,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:104,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:114,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:115,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:122,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:123,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:130,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:131,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:140,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:141,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:150,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:151,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:158,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:159,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:166,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:167,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:175,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:176,1
    - Dst: QuantLib::FdmSchemeDesc::CraigSneyd
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:182,1
    - Dst: ext::make_shared<CraigSneydScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:185,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:192,1
    - Dst: FiniteDifferenceModel::rollback
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp:197,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 5
    argNames:
    - ' rhs'
    - from
    - to
    - steps
    - dampingSteps
    argTypes:
    - FdmBackwardSolver::array_type
    - Time
    - Time
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 199
    functionName: QuantLib::FdmBackwardSolver::rollback
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbackwardsolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CraigSneydScheme>
    - QuantLib::FdmSchemeDesc::CraigSneyd
    - FiniteDifferenceModel::rollback
    - QL_FAIL
    - stoppingTimes
    linkageType: ''
    returnType: void
    signature: "void FdmBackwardSolver::rollback(FdmBackwardSolver::array_type& rhs,
      \n                                     Time from, Time to,\n                                     Size
      steps, Size dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' hestonProcess'
    - ' hwProcess'
    - corrEquityShortRate
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<HestonProcess>
    - Handle<HullWhiteProcess>
    - Rate
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver(const Handle<HestonProcess>&
      hestonProcess,\n                                                       const
      Handle<HullWhiteProcess>& hwProcess,\n                                                       Rate
      corrEquityShortRate,\n                                                       FdmSolverDesc
      solverDesc,\n                                                       const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHestonHullWhiteOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:43,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:44,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:45,1
    - Dst: ext::make_shared<Fdm3DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmHestonHullWhiteSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm3DimSolver>
    - currentLink
    - ext::make_shared<FdmHestonHullWhiteOp>
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:54,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - v
    - r
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmHestonHullWhiteSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - interpolateAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonHullWhiteSolver::valueAt(Real s, Real v, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:60,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - s
    - v
    - r
    - eps
    argTypes:
    - Real
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmHestonHullWhiteSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: "Real FdmHestonHullWhiteSolver::deltaAt(Real s, Real v, Rate r, Real
      eps) \n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:65,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:65,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - s
    - v
    - r
    - eps
    argTypes:
    - Real
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmHestonHullWhiteSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: "Real FdmHestonHullWhiteSolver::gammaAt(Real s, Real v, Rate r, Real
      eps) \n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:72,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - v
    - r
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmHestonHullWhiteSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonHullWhiteSolver::thetaAt(Real s, Real v, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' hestonProcess'
    - ' hwProcess'
    - corrEquityShortRate
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<HestonProcess>
    - Handle<HullWhiteProcess>
    - Rate
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver(const Handle<HestonProcess>&
      hestonProcess,\n                                                       const
      Handle<HullWhiteProcess>& hwProcess,\n                                                       Rate
      corrEquityShortRate,\n                                                       FdmSolverDesc
      solverDesc,\n                                                       const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHestonHullWhiteOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:43,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:44,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:45,1
    - Dst: ext::make_shared<Fdm3DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmHestonHullWhiteSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm3DimSolver>
    - currentLink
    - ext::make_shared<FdmHestonHullWhiteOp>
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:54,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - v
    - r
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmHestonHullWhiteSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 2
    functionsReached:
    - interpolateAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonHullWhiteSolver::valueAt(Real s, Real v, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:60,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - s
    - v
    - r
    - eps
    argTypes:
    - Real
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmHestonHullWhiteSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: "Real FdmHestonHullWhiteSolver::deltaAt(Real s, Real v, Rate r, Real
      eps) \n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:65,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:65,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - s
    - v
    - r
    - eps
    argTypes:
    - Real
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmHestonHullWhiteSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: "Real FdmHestonHullWhiteSolver::gammaAt(Real s, Real v, Rate r, Real
      eps) \n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:72,1
    - Dst: QuantLib::FdmHestonHullWhiteSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - v
    - r
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmHestonHullWhiteSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonhullwhitesolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonHullWhiteSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonHullWhiteSolver::thetaAt(Real s, Real v, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - process
    - solverDesc
    - ' schemeDesc'
    - integroIntegrationOrder
    - quantoHelper
    argTypes:
    - Handle<BatesProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Size
    - Handle<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmBatesSolver::FdmBatesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmBatesSolver::FdmBatesSolver(Handle<BatesProcess> process,\n
      \                                  FdmSolverDesc solverDesc,\n                                   const
      FdmSchemeDesc& schemeDesc,\n                                   Size integroIntegrationOrder,\n
      \                                  Handle<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:48,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:49,1
    - Dst: FdmBatesOp::FdmBatesOp
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:45,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmBatesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm2DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - FdmBatesOp::FdmBatesOp
    linkageType: ''
    returnType: void
    signature: void FdmBatesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:56,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmBatesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::valueAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:61,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmBatesSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::deltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:67,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:68,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmBatesSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::gammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:72,1
    - Dst: QuantLib::FdmBatesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:73,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmBatesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::thetaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - process
    - solverDesc
    - ' schemeDesc'
    - integroIntegrationOrder
    - quantoHelper
    argTypes:
    - Handle<BatesProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Size
    - Handle<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmBatesSolver::FdmBatesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmBatesSolver::FdmBatesSolver(Handle<BatesProcess> process,\n
      \                                  FdmSolverDesc solverDesc,\n                                   const
      FdmSchemeDesc& schemeDesc,\n                                   Size integroIntegrationOrder,\n
      \                                  Handle<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:48,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:49,1
    - Dst: FdmBatesOp::FdmBatesOp
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:45,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmBatesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm2DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - FdmBatesOp::FdmBatesOp
    linkageType: ''
    returnType: void
    signature: void FdmBatesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:56,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmBatesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::valueAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:61,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmBatesSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::deltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:67,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:68,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmBatesSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::gammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:72,1
    - Dst: QuantLib::FdmBatesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:73,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmBatesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmbatessolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesSolver::thetaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - process
    - strike
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmSimple2dBSSolver::FdmSimple2dBSSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple2dBSSolver::FdmSimple2dBSSolver(Handle<GeneralizedBlackScholesProcess>
      process,\n                                             Real strike,\n                                             FdmSolverDesc
      solverDesc,\n                                             const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:43,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSimple2dBSSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmBlackScholesOp>
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmSimple2dBSSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:49,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - a
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmSimple2dBSSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::valueAt(Real s, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:54,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - a
    - eps
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmSimple2dBSSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::deltaAt(Real s, Real a, Real eps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - a
    - eps
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmSimple2dBSSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::gammaAt(Real s, Real a, Real eps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:62,1
    - Dst: QuantLib::FdmSimple2dBSSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - a
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSimple2dBSSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::thetaAt(Real s, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - process
    - strike
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmSimple2dBSSolver::FdmSimple2dBSSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple2dBSSolver::FdmSimple2dBSSolver(Handle<GeneralizedBlackScholesProcess>
      process,\n                                             Real strike,\n                                             FdmSolverDesc
      solverDesc,\n                                             const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:43,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSimple2dBSSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmBlackScholesOp>
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmSimple2dBSSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:49,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - a
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmSimple2dBSSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 2
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::valueAt(Real s, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:54,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - a
    - eps
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmSimple2dBSSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::deltaAt(Real s, Real a, Real eps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    - Dst: QuantLib::FdmSimple2dBSSolver::valueAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - a
    - eps
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmSimple2dBSSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::valueAt
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::gammaAt(Real s, Real a, Real eps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:62,1
    - Dst: QuantLib::FdmSimple2dBSSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - a
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSimple2dBSSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmsimple2dbssolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSimple2dBSSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmSimple2dBSSolver::thetaAt(Real s, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:35,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:36,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:37,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:40,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:41,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:45,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:46,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:49,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::Fdm1DimSolver::Fdm1DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - index
    - condition::stoppingTimes
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm1DimSolver::Fdm1DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:55,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:58,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: ext::make_shared<MonotonicCubicNaturalSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::Fdm1DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - ext::make_shared<MonotonicCubicNaturalSpline>
    - Array::begin
    - Array::end
    - begin
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm1DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::Fdm1DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::interpolateAt(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:74,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:77,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:79,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: QuantLib::Fdm1DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:84,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: QuantLib::Fdm1DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm1DimSolver::interpolateAt
    - calculate
    - std::copy
    - Null<Real>
    - Array::begin
    - begin
    - getTime
    - MonotonicCubicNaturalSpline
    - size
    - getValues
    - end
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::thetaAt(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:89,1
    - Dst: derivative
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::Fdm1DimSolver::derivativeX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - derivative
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::derivativeX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:94,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::Fdm1DimSolver::derivativeXX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - secondDerivative
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::derivativeXX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:35,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:36,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:37,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:40,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:41,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:45,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:46,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:49,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::Fdm1DimSolver::Fdm1DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - index
    - condition::stoppingTimes
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm1DimSolver::Fdm1DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:55,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:56,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:58,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:62,1
    - Dst: ext::make_shared<MonotonicCubicNaturalSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::Fdm1DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - ext::make_shared<MonotonicCubicNaturalSpline>
    - Array::begin
    - Array::end
    - begin
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm1DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::Fdm1DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 1
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::interpolateAt(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:74,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:77,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:79,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:80,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:82,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:83,1
    - Dst: QuantLib::Fdm1DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:84,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: QuantLib::Fdm1DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm1DimSolver::interpolateAt
    - calculate
    - std::copy
    - Null<Real>
    - Array::begin
    - begin
    - getTime
    - MonotonicCubicNaturalSpline
    - size
    - getValues
    - end
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::thetaAt(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:89,1
    - Dst: derivative
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::Fdm1DimSolver::derivativeX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - derivative
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::derivativeX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:94,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::Fdm1DimSolver::derivativeXX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm1dimsolver.cpp
    functionUses: 0
    functionsReached:
    - secondDerivative
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm1DimSolver::derivativeXX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - model
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<HullWhite>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::FdmHullWhiteSolver::FdmHullWhiteSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHullWhiteSolver::FdmHullWhiteSolver(Handle<HullWhite> model,\n
      \                                          FdmSolverDesc solverDesc,\n                                           const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHullWhiteOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:42,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmHullWhiteSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmHullWhiteOp>
    - ext::make_shared<Fdm1DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmHullWhiteSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:48,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmHullWhiteSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHullWhiteSolver::valueAt(Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - model
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<HullWhite>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::FdmHullWhiteSolver::FdmHullWhiteSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHullWhiteSolver::FdmHullWhiteSolver(Handle<HullWhite> model,\n
      \                                          FdmSolverDesc solverDesc,\n                                           const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHullWhiteOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:42,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmHullWhiteSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmHullWhiteOp>
    - ext::make_shared<Fdm1DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmHullWhiteSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:48,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmHullWhiteSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhullwhitesolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHullWhiteSolver::valueAt(Real r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:79,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:81,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:82,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:84,1
    - Dst: FdmSnapshotCondition::FdmSnapshotCondition
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:80,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:85,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:86,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:87,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:90,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:90,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:91,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:94,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:94,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:97,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:98,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:98,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:101,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:104,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:104,1
    - Dst: ext::shared_ptr<data_table>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:109,1
    - Dst: data_table::data_table
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmNdimSolver<N>::FdmNdimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - std::vector<bool>
    - condition::stoppingTimes
    - ext::shared_ptr<data_table>
    - begin
    - FdmSnapshotCondition::FdmSnapshotCondition
    - coordinates
    - data_table::data_table
    - std::min
    - mesher::location
    - push_back
    - index
    - end
    - reserve
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - QL_REQUIRE
    - calculator::avgInnerValue
    - std::move
    - std::accumulate
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<N>::FdmNdimSolver(const FdmSolverDesc& solverDesc,\n
      \                                          const FdmSchemeDesc& schemeDesc,\n
      \                                          ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:115,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:118,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:122,1
    - Dst: QuantLib::FdmNdimSolver<N>::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: ext::shared_ptr<MultiCubicSpline<N> >
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:126,1
    - Dst: MultiCubicSpline<N>::MultiCubicSpline<N>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 128
    functionName: QuantLib::FdmNdimSolver<N>::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - coordinates
    - Array::begin
    - ext::shared_ptr<MultiCubicSpline<N> >
    - begin
    - MultiCubicSpline<N>::MultiCubicSpline<N>
    - index
    - QuantLib::FdmNdimSolver<N>::setValue
    - mesher::layout
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void FdmNdimSolver<N>::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:133,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:134,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:136,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:137,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:141,1
    - Dst: QuantLib::FdmNdimSolver<N>::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: MultiCubicSpline<N>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:145,1
    - Dst: QuantLib::FdmNdimSolver<N>::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:146,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::FdmNdimSolver<N>::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmNdimSolver<N>::interpolateAt
    - calculate
    - MultiCubicSpline<N>
    - Null<Real>
    - getTime
    - index
    - QuantLib::FdmNdimSolver<N>::setValue
    - coordinates
    - getValues
    - mesher::layout
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real FdmNdimSolver<N>::thetaAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 154
    functionName: QuantLib::FdmNdimSolver<N>::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 1
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real FdmNdimSolver<N>::interpolateAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IntervalPrice::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - ' x'
    - value
    argTypes:
    - data_table
    - std::vector<Size>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: QuantLib::FdmNdimSolver<N>::setValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::IntervalPrice::setValue
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<N>::setValue(data_table& f,\n                                    const
      std::vector<Size>& x, Real value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - ' x'
    - value
    argTypes:
    - data_table
    - std::vector<Size>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::FdmNdimSolver<1>::setValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<1>::setValue(data_table& f,\n                                    const
      std::vector<Size>& x, Real value)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:79,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:81,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:82,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:84,1
    - Dst: FdmSnapshotCondition::FdmSnapshotCondition
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:80,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:85,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:86,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:87,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:90,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:90,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:91,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:94,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:94,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:97,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:98,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:98,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:101,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:103,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:104,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:104,1
    - Dst: ext::shared_ptr<data_table>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:109,1
    - Dst: data_table::data_table
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmNdimSolver<N>::FdmNdimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - std::vector<bool>
    - condition::stoppingTimes
    - ext::shared_ptr<data_table>
    - begin
    - FdmSnapshotCondition::FdmSnapshotCondition
    - coordinates
    - data_table::data_table
    - std::min
    - mesher::location
    - push_back
    - index
    - end
    - reserve
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - QL_REQUIRE
    - calculator::avgInnerValue
    - std::move
    - std::accumulate
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<N>::FdmNdimSolver(const FdmSolverDesc& solverDesc,\n
      \                                          const FdmSchemeDesc& schemeDesc,\n
      \                                          ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:115,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:116,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:118,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:122,1
    - Dst: QuantLib::FdmNdimSolver<N>::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:123,1
    - Dst: ext::shared_ptr<MultiCubicSpline<N> >
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:126,1
    - Dst: MultiCubicSpline<N>::MultiCubicSpline<N>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 113
    functionDepth: 3
    functionLinenumber: 113
    functionLinenumberEnd: 128
    functionName: QuantLib::FdmNdimSolver<N>::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - coordinates
    - Array::begin
    - ext::shared_ptr<MultiCubicSpline<N> >
    - begin
    - MultiCubicSpline<N>::MultiCubicSpline<N>
    - index
    - QuantLib::FdmNdimSolver<N>::setValue
    - mesher::layout
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void FdmNdimSolver<N>::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:133,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:134,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:136,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:137,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:141,1
    - Dst: QuantLib::FdmNdimSolver<N>::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:142,1
    - Dst: MultiCubicSpline<N>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:145,1
    - Dst: QuantLib::FdmNdimSolver<N>::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:146,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 3
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::FdmNdimSolver<N>::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmNdimSolver<N>::interpolateAt
    - calculate
    - MultiCubicSpline<N>
    - Null<Real>
    - getTime
    - index
    - QuantLib::FdmNdimSolver<N>::setValue
    - coordinates
    - getValues
    - mesher::layout
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real FdmNdimSolver<N>::thetaAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 154
    functionName: QuantLib::FdmNdimSolver<N>::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real FdmNdimSolver<N>::interpolateAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IntervalPrice::setValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:159,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - ' x'
    - value
    argTypes:
    - data_table
    - std::vector<Size>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: QuantLib::FdmNdimSolver<N>::setValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 4
    functionsReached:
    - size
    - QuantLib::IntervalPrice::setValue
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<N>::setValue(data_table& f,\n                                    const
      std::vector<Size>& x, Real value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - ' x'
    - value
    argTypes:
    - data_table
    - std::vector<Size>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::FdmNdimSolver<1>::setValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmndimsolver.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: "void FdmNdimSolver<1>::setValue(data_table& f,\n                                    const
      std::vector<Size>& x, Real value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:35,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:36,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:37,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:40,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:41,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:43,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:45,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:45,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:48,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:49,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:50,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:53,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:54,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:54,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:57,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 60
    functionName: QuantLib::Fdm2DimSolver::Fdm2DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - push_back
    - index
    - condition::stoppingTimes
    - reserve
    - coordinates
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm2DimSolver::Fdm2DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:64,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:67,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::Fdm2DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - Array::end
    - begin
    - ext::make_shared<BicubicSpline>
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm2DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::Fdm2DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::interpolateAt(Real x, Real y) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:83,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:84,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:86,1
    - Dst: rows
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:87,1
    - Dst: columns
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:87,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:89,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: QuantLib::Fdm2DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:93,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 95
    functionName: QuantLib::Fdm2DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm2DimSolver::interpolateAt
    - calculate
    - std::copy
    - Null<Real>
    - rows
    - begin
    - getTime
    - BicubicSpline
    - columns
    - getValues
    - end
    - stoppingTimes
    - Matrix::begin
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::thetaAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:99,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::Fdm2DimSolver::derivativeX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeX
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:104,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::Fdm2DimSolver::derivativeY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeY
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:109,1
    - Dst: secondDerivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::Fdm2DimSolver::derivativeXX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - secondDerivativeX
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeXX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:114,1
    - Dst: secondDerivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::Fdm2DimSolver::derivativeYY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - secondDerivativeY
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeYY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:119,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: QuantLib::Fdm2DimSolver::derivativeXY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeXY
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeXY(Real x, Real y) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:35,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:36,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:37,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:40,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:41,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:43,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:45,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:45,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:48,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:49,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:50,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:53,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:54,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:54,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:57,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 60
    functionName: QuantLib::Fdm2DimSolver::Fdm2DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - push_back
    - index
    - condition::stoppingTimes
    - reserve
    - coordinates
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm2DimSolver::Fdm2DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:64,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:65,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:67,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:71,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::Fdm2DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - Array::end
    - begin
    - ext::make_shared<BicubicSpline>
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm2DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::Fdm2DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 1
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::interpolateAt(Real x, Real y) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:83,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:84,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:86,1
    - Dst: rows
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:87,1
    - Dst: columns
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:87,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:89,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:90,1
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:92,1
    - Dst: QuantLib::Fdm2DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:93,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 95
    functionName: QuantLib::Fdm2DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm2DimSolver::interpolateAt
    - calculate
    - std::copy
    - Null<Real>
    - rows
    - begin
    - getTime
    - BicubicSpline
    - columns
    - getValues
    - end
    - stoppingTimes
    - Matrix::begin
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::thetaAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:99,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::Fdm2DimSolver::derivativeX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeX
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:104,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::Fdm2DimSolver::derivativeY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeY
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:109,1
    - Dst: secondDerivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::Fdm2DimSolver::derivativeXX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - secondDerivativeX
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeXX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:114,1
    - Dst: secondDerivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::Fdm2DimSolver::derivativeYY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - secondDerivativeY
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeYY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:119,1
    - Dst: QuantLib::Fdm2DimSolver::derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: QuantLib::Fdm2DimSolver::derivativeXY
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dimsolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm2DimSolver::derivativeXY
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Fdm2DimSolver::derivativeXY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - model
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<G2>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::FdmG2Solver::FdmG2Solver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmG2Solver::FdmG2Solver(Handle<G2> model,\n                             FdmSolverDesc
      solverDesc,\n                             const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:42,1
    - Dst: FdmG2Op::FdmG2Op
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:42,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmG2Solver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - FdmG2Op::FdmG2Op
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmG2Solver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:49,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmG2Solver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmG2Solver::valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - model
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<G2>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::FdmG2Solver::FdmG2Solver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmG2Solver::FdmG2Solver(Handle<G2> model,\n                             FdmSolverDesc
      solverDesc,\n                             const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:42,1
    - Dst: FdmG2Op::FdmG2Op
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:42,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmG2Solver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - FdmG2Op::FdmG2Op
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmG2Solver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:49,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmG2Solver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmg2solver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmG2Solver::valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - strike
    - solverDesc
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - quantoHelper
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    - bool
    - Real
    - Handle<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmBlackScholesSolver::FdmBlackScholesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesSolver::FdmBlackScholesSolver(Handle<GeneralizedBlackScholesProcess>
      process,\n                                                 Real strike,\n                                                 FdmSolverDesc
      solverDesc,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 bool localVol,\n
      \                                                Real illegalLocalVolOverwrite,\n
      \                                                Handle<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:50,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:51,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:52,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmBlackScholesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm1DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::make_shared<FdmBlackScholesOp>
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:58,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmBlackScholesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::valueAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:63,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmBlackScholesSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::deltaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:68,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:69,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmBlackScholesSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::gammaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmBlackScholesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBlackScholesSolver::thetaAt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::thetaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - strike
    - solverDesc
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - quantoHelper
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    - bool
    - Real
    - Handle<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmBlackScholesSolver::FdmBlackScholesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesSolver::FdmBlackScholesSolver(Handle<GeneralizedBlackScholesProcess>
      process,\n                                                 Real strike,\n                                                 FdmSolverDesc
      solverDesc,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 bool localVol,\n
      \                                                Real illegalLocalVolOverwrite,\n
      \                                                Handle<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:50,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:51,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:52,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmBlackScholesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm1DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::make_shared<FdmBlackScholesOp>
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:58,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmBlackScholesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::valueAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:63,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmBlackScholesSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::deltaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:68,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:69,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmBlackScholesSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::gammaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmBlackScholesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmblackscholessolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBlackScholesSolver::thetaAt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmBlackScholesSolver::thetaAt(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - p1
    - p2
    - correlation
    - solverDesc
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 41
    functionName: QuantLib::Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver(Handle<GeneralizedBlackScholesProcess>
      p1,\n                                                     Handle<GeneralizedBlackScholesProcess>
      p2,\n                                                     const Real correlation,\n
      \                                                    FdmSolverDesc solverDesc,\n
      \                                                    const FdmSchemeDesc& schemeDesc,\n
      \                                                    bool localVol,\n                                                     Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Fdm2dBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:48,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:49,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 56
    functionName: QuantLib::Fdm2dBlackScholesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    - ext::make_shared<Fdm2dBlackScholesOp>
    linkageType: ''
    returnType: void
    signature: void Fdm2dBlackScholesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:61,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Fdm2dBlackScholesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - interpolateAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::valueAt(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:67,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:69,1
    - Dst: QuantLib::Fdm2dBlackScholesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::Fdm2dBlackScholesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2dBlackScholesSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::thetaAt(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:78,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::Fdm2dBlackScholesSolver::deltaXat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::deltaXat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:86,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:87,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::Fdm2dBlackScholesSolver::deltaYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeY
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::deltaYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:96,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:98,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaXat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaXat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:103,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:105,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:106,1
    - Dst: derivativeYY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:108,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeY
    - calculate
    - derivativeYY
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:116,1
    - Dst: derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaXYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXY
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaXYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - p1
    - p2
    - correlation
    - solverDesc
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<GeneralizedBlackScholesProcess>
    - Handle<GeneralizedBlackScholesProcess>
    - Real
    - FdmSolverDesc
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 41
    functionName: QuantLib::Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver(Handle<GeneralizedBlackScholesProcess>
      p1,\n                                                     Handle<GeneralizedBlackScholesProcess>
      p2,\n                                                     const Real correlation,\n
      \                                                    FdmSolverDesc solverDesc,\n
      \                                                    const FdmSchemeDesc& schemeDesc,\n
      \                                                    bool localVol,\n                                                     Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Fdm2dBlackScholesOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:48,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:49,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 56
    functionName: QuantLib::Fdm2dBlackScholesSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    - ext::make_shared<Fdm2dBlackScholesOp>
    linkageType: ''
    returnType: void
    signature: void Fdm2dBlackScholesSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:61,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Fdm2dBlackScholesSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - interpolateAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::valueAt(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:67,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:69,1
    - Dst: QuantLib::Fdm2dBlackScholesSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::Fdm2dBlackScholesSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm2dBlackScholesSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::thetaAt(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:78,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::Fdm2dBlackScholesSolver::deltaXat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::deltaXat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:86,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:87,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::Fdm2dBlackScholesSolver::deltaYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeY
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::deltaYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:96,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:98,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaXat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaXat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:103,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:105,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:106,1
    - Dst: derivativeYY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:108,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeY
    - calculate
    - derivativeYY
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:116,1
    - Dst: derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - u
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionName: QuantLib::Fdm2dBlackScholesSolver::gammaXYat
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm2dblackscholessolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXY
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Fdm2dBlackScholesSolver::gammaXYat(Real u, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - cirProcess
    - bsProcess
    - solverDesc
    - ' schemeDesc'
    - rho
    - strike
    argTypes:
    - Handle<CoxIngersollRossProcess>
    - Handle<GeneralizedBlackScholesProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmCIRSolver::FdmCIRSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmCIRSolver::FdmCIRSolver(Handle<CoxIngersollRossProcess> cirProcess,\n
      \                              Handle<GeneralizedBlackScholesProcess> bsProcess,\n
      \                              FdmSolverDesc solverDesc,\n                               const
      FdmSchemeDesc& schemeDesc,\n                               const Real rho,\n
      \                              const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmCIROp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:44,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:45,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmCIRSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    - ext::make_shared<FdmCIROp>
    linkageType: ''
    returnType: void
    signature: void FdmCIRSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:53,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:54,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmCIRSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::valueAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:58,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmCIRSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::deltaAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:64,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:65,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmCIRSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::gammaAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:69,1
    - Dst: QuantLib::FdmCIRSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmCIRSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmCIRSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::thetaAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - cirProcess
    - bsProcess
    - solverDesc
    - ' schemeDesc'
    - rho
    - strike
    argTypes:
    - Handle<CoxIngersollRossProcess>
    - Handle<GeneralizedBlackScholesProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmCIRSolver::FdmCIRSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmCIRSolver::FdmCIRSolver(Handle<CoxIngersollRossProcess> cirProcess,\n
      \                              Handle<GeneralizedBlackScholesProcess> bsProcess,\n
      \                              FdmSolverDesc solverDesc,\n                               const
      FdmSchemeDesc& schemeDesc,\n                               const Real rho,\n
      \                              const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmCIROp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:42,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:44,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:45,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmCIRSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    - ext::make_shared<FdmCIROp>
    linkageType: ''
    returnType: void
    signature: void FdmCIRSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:53,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:54,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmCIRSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::valueAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:58,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmCIRSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::deltaAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:64,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:65,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmCIRSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::gammaAt(Real s, Real r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:69,1
    - Dst: QuantLib::FdmCIRSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - r
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmCIRSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmcirsolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmCIRSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmCIRSolver::thetaAt(Real s, Real r) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:36,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:37,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:39,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:41,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:45,1
    - Dst: Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:47,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:49,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:49,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:50,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:50,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:51,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:51,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:53,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:54,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:55,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:59,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:60,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:60,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:62,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:63,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:63,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:65,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:66,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:66,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 69
    functionName: QuantLib::Fdm3DimSolver::Fdm3DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - push_back
    - Matrix
    - condition::stoppingTimes
    - reserve
    - index
    - coordinates
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm3DimSolver::Fdm3DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:72,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:79,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:82,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 88
    functionName: QuantLib::Fdm3DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - begin
    - ext::make_shared<BicubicSpline>
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm3DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:94,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 99
    functionName: QuantLib::Fdm3DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - Array::begin
    - begin
    - size
    - MonotonicCubicNaturalSpline
    - end
    linkageType: ''
    returnType: Real
    signature: Real Fdm3DimSolver::interpolateAt(Real x, Real y, Rate z) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:103,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:105,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:109,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:116,1
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:118,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:122,1
    - Dst: QuantLib::Fdm3DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:123,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 124
    functionName: QuantLib::Fdm3DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::copy
    - QuantLib::Fdm3DimSolver::interpolateAt
    - Null<Real>
    - Array::begin
    - begin
    - getTime
    - Matrix
    - BicubicSpline
    - MonotonicCubicNaturalSpline
    - size
    - getValues
    - end
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real Fdm3DimSolver::thetaAt(Real x, Real y, Rate z) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:36,1
    - Dst: ext::make_shared<FdmSnapshotCondition>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:37,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:38,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:39,1
    - Dst: condition::stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:41,1
    - Dst: QuantLib::FdmStepConditionComposite::joinConditions
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:42,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:43,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:45,1
    - Dst: Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:46,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:47,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:49,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:49,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:50,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:50,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:51,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:51,1
    - Dst: mesher::layout
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:53,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:54,1
    - Dst: calculator::avgInnerValue
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:55,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:59,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:60,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:60,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:62,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:63,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:63,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:65,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:66,1
    - Dst: mesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:66,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ' solverDesc'
    - ' schemeDesc'
    - op
    argTypes:
    - FdmSolverDesc
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 69
    functionName: QuantLib::Fdm3DimSolver::Fdm3DimSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - mesher::location
    - calculator::avgInnerValue
    - std::move
    - ext::make_shared<FdmSnapshotCondition>
    - push_back
    - Matrix
    - condition::stoppingTimes
    - reserve
    - index
    - coordinates
    - mesher::layout
    - QuantLib::FdmStepConditionComposite::joinConditions
    - std::min
    linkageType: ''
    returnType: void
    signature: "void Fdm3DimSolver::Fdm3DimSolver(const FdmSolverDesc& solverDesc,\n
      \                                const FdmSchemeDesc& schemeDesc,\n                                 ext::shared_ptr<FdmLinearOpComposite>
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:72,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:73,1
    - Dst: FdmBackwardSolver
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:79,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:81,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:82,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 88
    functionName: QuantLib::Fdm3DimSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - begin
    - ext::make_shared<BicubicSpline>
    - FdmBackwardSolver
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Fdm3DimSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:94,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:97,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 99
    functionName: QuantLib::Fdm3DimSolver::interpolateAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 1
    functionsReached:
    - calculate
    - Array::begin
    - begin
    - size
    - MonotonicCubicNaturalSpline
    - end
    linkageType: ''
    returnType: Real
    signature: Real Fdm3DimSolver::interpolateAt(Real x, Real y, Rate z) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:103,1
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:105,1
    - Dst: getValues
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:109,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:116,1
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:118,1
    - Dst: MonotonicCubicNaturalSpline
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:121,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:122,1
    - Dst: QuantLib::Fdm3DimSolver::interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:123,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 124
    functionName: QuantLib::Fdm3DimSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdm3dimsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::copy
    - QuantLib::Fdm3DimSolver::interpolateAt
    - Null<Real>
    - Array::begin
    - begin
    - getTime
    - Matrix
    - BicubicSpline
    - MonotonicCubicNaturalSpline
    - size
    - getValues
    - end
    - stoppingTimes
    linkageType: ''
    returnType: Real
    signature: Real Fdm3DimSolver::thetaAt(Real x, Real y, Rate z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - process
    - solverDesc
    - ' schemeDesc'
    - quantoHelper
    - leverageFct
    - mixingFactor
    argTypes:
    - Handle<HestonProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Handle<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmHestonSolver::FdmHestonSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonSolver::FdmHestonSolver(Handle<HestonProcess> process,\n
      \                                    FdmSolverDesc solverDesc,\n                                     const
      FdmSchemeDesc& schemeDesc,\n                                     Handle<FdmQuantoHelper>
      quantoHelper,\n                                     ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                     const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHestonOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:49,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:49,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:50,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmHestonSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm2DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::make_shared<FdmHestonOp>
    linkageType: ''
    returnType: void
    signature: void FdmHestonSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:57,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmHestonSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::valueAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:62,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmHestonSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::deltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:67,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:68,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:69,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmHestonSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::gammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:73,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:75,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:75,1
    - Dst: QuantLib::FdmHestonSolver::deltaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::FdmHestonSolver::meanVarianceDeltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - calculate
    - std::log
    - derivativeY
    - rho
    - QuantLib::FdmHestonSolver::deltaAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::meanVarianceDeltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:82,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:83,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:83,1
    - Dst: QuantLib::FdmHestonSolver::gammaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:84,1
    - Dst: derivativeYY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:85,1
    - Dst: derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::FdmHestonSolver::meanVarianceGammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXY
    - sigma
    - calculate
    - std::log
    - QuantLib::FdmHestonSolver::gammaAt
    - rho
    - derivativeYY
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::meanVarianceGammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:90,1
    - Dst: QuantLib::FdmHestonSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmHestonSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::thetaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - process
    - solverDesc
    - ' schemeDesc'
    - quantoHelper
    - leverageFct
    - mixingFactor
    argTypes:
    - Handle<HestonProcess>
    - FdmSolverDesc
    - FdmSchemeDesc
    - Handle<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmHestonSolver::FdmHestonSolver
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonSolver::FdmHestonSolver(Handle<HestonProcess> process,\n
      \                                    FdmSolverDesc solverDesc,\n                                     const
      FdmSchemeDesc& schemeDesc,\n                                     Handle<FdmQuantoHelper>
      quantoHelper,\n                                     ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                     const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmHestonOp>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:47,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:49,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:49,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:50,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmHestonSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - empty
    - currentLink
    - ext::make_shared<Fdm2DimSolver>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::make_shared<FdmHestonOp>
    linkageType: ''
    returnType: void
    signature: void FdmHestonSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:57,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmHestonSolver::valueAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::valueAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:62,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmHestonSolver::deltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 1
    functionsReached:
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::deltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:67,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:68,1
    - Dst: derivativeXX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:69,1
    - Dst: derivativeX
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmHestonSolver::gammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 1
    functionsReached:
    - derivativeXX
    - derivativeX
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::gammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:73,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:75,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:75,1
    - Dst: QuantLib::FdmHestonSolver::deltaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    - Dst: derivativeY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::FdmHestonSolver::meanVarianceDeltaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - calculate
    - std::log
    - derivativeY
    - rho
    - QuantLib::FdmHestonSolver::deltaAt
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::meanVarianceDeltaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:82,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:83,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:83,1
    - Dst: QuantLib::FdmHestonSolver::gammaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:84,1
    - Dst: derivativeYY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:85,1
    - Dst: derivativeXY
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::FdmHestonSolver::meanVarianceGammaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 0
    functionsReached:
    - derivativeXY
    - sigma
    - calculate
    - std::log
    - QuantLib::FdmHestonSolver::gammaAt
    - rho
    - derivativeYY
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::meanVarianceGammaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:90,1
    - Dst: QuantLib::FdmHestonSolver::thetaAt
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmHestonSolver::thetaAt
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/solvers/fdmhestonsolver.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonSolver::thetaAt
    - calculate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real FdmHestonSolver::thetaAt(Real s, Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: QuantLib::BSMRNDCalculator::BSMRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BSMRNDCalculator::BSMRNDCalculator(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:41,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:41,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:42,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:42,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:43,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: QuantLib::BSMRNDCalculator::distributionParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - dividendYield
    - std::exp
    - std::make_pair
    - std::log
    - riskFreeRate
    - std::sqrt
    - x0
    linkageType: ''
    returnType: std::pair<Real, Volatility>
    signature: std::pair<Real, Volatility> BSMRNDCalculator::distributionParams(Real
      x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:49,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::BSMRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - NormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:54,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::BSMRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:59,1
    - Dst: InvCumulativeNormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::BSMRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - InvCumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::invcdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: QuantLib::BSMRNDCalculator::BSMRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BSMRNDCalculator::BSMRNDCalculator(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:40,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:41,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:41,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:42,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:42,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:43,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: QuantLib::BSMRNDCalculator::distributionParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 3
    functionsReached:
    - blackVolatility
    - dividendYield
    - std::exp
    - std::make_pair
    - std::log
    - riskFreeRate
    - std::sqrt
    - x0
    linkageType: ''
    returnType: std::pair<Real, Volatility>
    signature: std::pair<Real, Volatility> BSMRNDCalculator::distributionParams(Real
      x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:49,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::BSMRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - NormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:54,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::BSMRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::distributionParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:59,1
    - Dst: InvCumulativeNormalDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::BSMRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/bsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::distributionParams
    - InvCumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real BSMRNDCalculator::invcdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:28,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' mesher'
    - ' integrator1d'
    argTypes:
    - ext::shared_ptr<FdmMesherComposite>
    - std::function<Real(const Array&, const Array&)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::FdmMesherIntegral::FdmMesherIntegral
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp
    functionUses: 0
    functionsReached:
    - getFdm1dMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherIntegral::FdmMesherIntegral(\n        const ext::shared_ptr<FdmMesherComposite>&
      mesher,\n        const std::function<Real(const Array&, const Array&)>& integrator1d)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:34,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:37,1
    - Dst: integrator1d_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:38,1
    - Dst: std::vector<ext::shared_ptr<Fdm1dMesher> >
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:44,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:42,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:47,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:49,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:51,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:53,1
    - Dst: FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:55,1
    - Dst: integrator1d_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmMesherIntegral::integrate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp
    functionUses: 0
    functionsReached:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    - FdmMesherComposite::FdmMesherComposite
    - FdmMesherIntegral::integrate
    - std::copy
    - begin
    - Array::size
    - size
    - integrator1d_
    - back
    - end
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: Real
    signature: Real FdmMesherIntegral::integrate(const Array& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:28,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' mesher'
    - ' integrator1d'
    argTypes:
    - ext::shared_ptr<FdmMesherComposite>
    - std::function<Real(const Array&, const Array&)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: QuantLib::FdmMesherIntegral::FdmMesherIntegral
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp
    functionUses: 0
    functionsReached:
    - getFdm1dMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherIntegral::FdmMesherIntegral(\n        const ext::shared_ptr<FdmMesherComposite>&
      mesher,\n        const std::function<Real(const Array&, const Array&)>& integrator1d)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:34,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:37,1
    - Dst: integrator1d_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:38,1
    - Dst: std::vector<ext::shared_ptr<Fdm1dMesher> >
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:44,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:42,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:47,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:49,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:51,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:53,1
    - Dst: FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:55,1
    - Dst: integrator1d_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmMesherIntegral::integrate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmmesherintegral.cpp
    functionUses: 0
    functionsReached:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    - FdmMesherComposite::FdmMesherComposite
    - FdmMesherIntegral::integrate
    - std::copy
    - begin
    - Array::size
    - size
    - integrator1d_
    - back
    - end
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: Real
    signature: Real FdmMesherIntegral::integrate(const Array& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - std::function<Real(Real)>
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        std::function<Real(Real)> valueOnBoundary,\n
      \       Size direction,\n        Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - valuesOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - std::function<Array(Real)>
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        std::function<Array(Real)> valuesOnBoundary,\n
      \       Size direction,\n        Side side)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: valueOnBoundary_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: valuesOnBoundary_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:53,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmTimeDepDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - valuesOnBoundary_
    - valueOnBoundary_
    - begin
    - QL_FAIL
    - end
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - size
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::applyAfterApplying(array_type& a)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::applyAfterSolving(array_type& a)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - std::function<Real(Real)>
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        std::function<Real(Real)> valueOnBoundary,\n
      \       Size direction,\n        Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - valuesOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - std::function<Array(Real)>
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmTimeDepDirichletBoundary::FdmTimeDepDirichletBoundary(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        std::function<Array(Real)> valuesOnBoundary,\n
      \       Size direction,\n        Side side)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: valueOnBoundary_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:51,1
    - Dst: valuesOnBoundary_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:53,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmTimeDepDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - valuesOnBoundary_
    - valueOnBoundary_
    - begin
    - QL_FAIL
    - end
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - size
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::applyAfterApplying(array_type& a)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmTimeDepDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmTimeDepDirichletBoundary::applyAfterSolving(array_type& a)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:76,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:76,1
    - Dst: nominal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:77,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:78,1
    - Dst: fixedRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:79,1
    - Dst: fixedDayCount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:80,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:81,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:82,1
    - Dst: spread
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:83,1
    - Dst: floatingDayCount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:84,1
    - Dst: paymentConvention
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - disModel
    - fwdModel
    - ' swap'
    - exerciseDates
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<ModelType>
    - ext::shared_ptr<ModelType>
    - ext::shared_ptr<FixedVsFloatingSwap>
    - std::map<Time, Date>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::FdmAffineModelSwapInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - fixedSchedule
    - ext::make_shared<VanillaSwap>
    - fixedDayCount
    - spread
    - std::move
    - type
    - floatingDayCount
    - floatingSchedule
    - fixedRate
    - nominal
    - paymentConvention
    linkageType: ''
    returnType: void
    signature: "void FdmAffineModelSwapInnerValue<ModelType>::FdmAffineModelSwapInnerValue(\n
      \       ext::shared_ptr<ModelType> disModel,\n        ext::shared_ptr<ModelType>
      fwdModel,\n        const ext::shared_ptr<FixedVsFloatingSwap>& swap,\n        std::map<Time,
      Date> exerciseDates,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size
      direction)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:92,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:97,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:97,1
    - Dst: termStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:100,1
    - Dst: linkTo
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:102,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:102,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:104,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:104,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:105,1
    - Dst: FdmAffineModelTermStructure::FdmAffineModelTermStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:103,1
    - Dst: termStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:108,1
    - Dst: linkTo
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:110,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:110,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:112,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:112,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:113,1
    - Dst: FdmAffineModelTermStructure::FdmAffineModelTermStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:111,1
    - Dst: ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:118,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:120,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:121,1
    - Dst: leg
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:126,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:128,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:135,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:138,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 139
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 0
    functionsReached:
    - Real
    - ext::dynamic_pointer_cast<Coupon>
    - Handle::dayCounter
    - date
    - referenceDate
    - empty
    - ext::shared_ptr<YieldTermStructure>
    - ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
    - find
    - termStructure
    - leg
    - std::max
    - linkTo
    - FdmAffineModelTermStructure::FdmAffineModelTermStructure
    - currentLink
    - type
    - Handle::calendar
    - discount
    - Handle::referenceDate
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real FdmAffineModelSwapInnerValue<ModelType>::innerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmAffineModelSwapInnerValue<ModelType>::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:75,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:76,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:76,1
    - Dst: nominal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:77,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:78,1
    - Dst: fixedRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:79,1
    - Dst: fixedDayCount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:80,1
    - Dst: floatingSchedule
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:81,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:82,1
    - Dst: spread
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:83,1
    - Dst: floatingDayCount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:84,1
    - Dst: paymentConvention
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - disModel
    - fwdModel
    - ' swap'
    - exerciseDates
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<ModelType>
    - ext::shared_ptr<ModelType>
    - ext::shared_ptr<FixedVsFloatingSwap>
    - std::map<Time, Date>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::FdmAffineModelSwapInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - fixedSchedule
    - ext::make_shared<VanillaSwap>
    - fixedDayCount
    - spread
    - std::move
    - type
    - floatingDayCount
    - floatingSchedule
    - fixedRate
    - nominal
    - paymentConvention
    linkageType: ''
    returnType: void
    signature: "void FdmAffineModelSwapInnerValue<ModelType>::FdmAffineModelSwapInnerValue(\n
      \       ext::shared_ptr<ModelType> disModel,\n        ext::shared_ptr<ModelType>
      fwdModel,\n        const ext::shared_ptr<FixedVsFloatingSwap>& swap,\n        std::map<Time,
      Date> exerciseDates,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size
      direction)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:92,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:97,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:97,1
    - Dst: termStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:100,1
    - Dst: linkTo
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:102,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:102,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:104,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:104,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:105,1
    - Dst: FdmAffineModelTermStructure::FdmAffineModelTermStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:103,1
    - Dst: termStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:108,1
    - Dst: linkTo
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:110,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:110,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:112,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:112,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:113,1
    - Dst: FdmAffineModelTermStructure::FdmAffineModelTermStructure
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:111,1
    - Dst: ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:118,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:120,1
    - Dst: currentLink
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:121,1
    - Dst: leg
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:126,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:128,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:129,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:135,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:138,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 139
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 1
    functionsReached:
    - Real
    - ext::dynamic_pointer_cast<Coupon>
    - Handle::dayCounter
    - date
    - referenceDate
    - empty
    - ext::shared_ptr<YieldTermStructure>
    - ext::dynamic_pointer_cast<FdmAffineModelTermStructure>
    - find
    - termStructure
    - leg
    - std::max
    - linkTo
    - FdmAffineModelTermStructure::FdmAffineModelTermStructure
    - currentLink
    - type
    - Handle::calendar
    - discount
    - Handle::referenceDate
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real FdmAffineModelSwapInnerValue<ModelType>::innerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: QuantLib::FdmAffineModelSwapInnerValue<ModelType>::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelSwapInnerValue<ModelType>::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmAffineModelSwapInnerValue<ModelType>::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:34,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - t
    - ' iter'
    argTypes:
    - ext::shared_ptr<HullWhite>
    - Time
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::FdmAffineModelSwapInnerValue<HullWhite>::getState
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - location
    linkageType: ''
    returnType: Array
    signature: "Array FdmAffineModelSwapInnerValue<HullWhite>::getState(\n        const
      ext::shared_ptr<HullWhite>& model, Time t,\n        const FdmLinearOpIterator&
      iter) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:43,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmAffineModelSwapInnerValue<G2>::getState
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp
    functionUses: 0
    functionsReached:
    - location
    linkageType: ''
    returnType: Array
    signature: "Array FdmAffineModelSwapInnerValue<G2>::getState(\n        const ext::shared_ptr<G2>&,
      Time,\n        const FdmLinearOpIterator& iter) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:34,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - t
    - ' iter'
    argTypes:
    - ext::shared_ptr<HullWhite>
    - Time
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::FdmAffineModelSwapInnerValue<HullWhite>::getState
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - location
    linkageType: ''
    returnType: Array
    signature: "Array FdmAffineModelSwapInnerValue<HullWhite>::getState(\n        const
      ext::shared_ptr<HullWhite>& model, Time t,\n        const FdmLinearOpIterator&
      iter) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:43,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmAffineModelSwapInnerValue<G2>::getState
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodelswapinnervalue.cpp
    functionUses: 0
    functionsReached:
    - location
    linkageType: ''
    returnType: Array
    signature: "Array FdmAffineModelSwapInnerValue<G2>::getState(\n        const ext::shared_ptr<G2>&,
      Time,\n        const FdmLinearOpIterator& iter) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - f0
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::CEVRNDCalculator::CEVRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CEVRNDCalculator::CEVRNDCalculator(Real f0, Real alpha, Real beta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::CEVRNDCalculator::massAtZero
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::massAtZero(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:49,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::CEVRNDCalculator::X
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::X(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:53,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CEVRNDCalculator::invX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::invX(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:58,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:61,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:62,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:66,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - f
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 70
    functionName: QuantLib::CEVRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - QuantLib::BSMRNDCalculator::pdf
    - boost::math::non_central_chi_squared_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::pdf(Real f, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:73,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:76,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:77,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:80,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - f
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::CEVRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - boost::math::non_central_chi_squared_distribution<Real>
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::cdf(Real f, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:89,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:91,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - c
    - t
    - x
    argTypes:
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::CEVRNDCalculator::sankaranApprox
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::pow
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::sankaranApprox(Real c, Time t, Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::massAtZero
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:103,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:106,1
    - Dst: QuantLib::CEVRNDCalculator::sankaranApprox
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:108,1
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:110,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:114,1
    - Dst: QuantLib::CEVRNDCalculator::invX
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:116,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:116,1
    - Dst: InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:118,1
    - Dst: InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:121,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:125,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:126,1
    - Dst: QuantLib::CEVRNDCalculator::invX
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 130
    functionName: QuantLib::CEVRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::sankaranApprox
    - QuantLib::CEVRNDCalculator::X
    - QuantLib::CEVRNDCalculator::massAtZero
    - QuantLib::CEVRNDCalculator::invX
    - boost::math::non_central_chi_squared_distribution<Real>
    - InvCDFHelper
    - Brent::solve
    - QuantLib::quantile
    - InverseCumulativeNormal
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - f0
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::CEVRNDCalculator::CEVRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CEVRNDCalculator::CEVRNDCalculator(Real f0, Real alpha, Real beta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionName: QuantLib::CEVRNDCalculator::massAtZero
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::massAtZero(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:49,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::CEVRNDCalculator::X
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 5
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::X(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:53,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::CEVRNDCalculator::invX
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::invX(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:58,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:61,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:62,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:66,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - f
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 70
    functionName: QuantLib::CEVRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - QuantLib::BSMRNDCalculator::pdf
    - boost::math::non_central_chi_squared_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::pdf(Real f, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:73,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:76,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:77,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:80,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - f
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::CEVRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::X
    - boost::math::non_central_chi_squared_distribution<Real>
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::cdf(Real f, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:89,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:91,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - c
    - t
    - x
    argTypes:
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::CEVRNDCalculator::sankaranApprox
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - std::pow
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::sankaranApprox(Real c, Time t, Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVRNDCalculator::massAtZero
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:103,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:106,1
    - Dst: QuantLib::CEVRNDCalculator::sankaranApprox
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:108,1
    - Dst: QuantLib::CEVRNDCalculator::X
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:110,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:114,1
    - Dst: QuantLib::CEVRNDCalculator::invX
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:116,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:116,1
    - Dst: InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:118,1
    - Dst: InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:121,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:125,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:126,1
    - Dst: QuantLib::CEVRNDCalculator::invX
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 130
    functionName: QuantLib::CEVRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/cevrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVRNDCalculator::sankaranApprox
    - QuantLib::CEVRNDCalculator::X
    - QuantLib::CEVRNDCalculator::massAtZero
    - QuantLib::CEVRNDCalculator::invX
    - boost::math::non_central_chi_squared_distribution<Real>
    - InvCDFHelper
    - Brent::solve
    - QuantLib::quantile
    - InverseCumulativeNormal
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real CEVRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - calculator
    - guess
    - accuracy
    - maxEvaluations
    - stepSize
    argTypes:
    - RiskNeutralDensityCalculator*
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: "RiskNeutralDensityCalculator::InvCDFHelper::InvCDFHelper(\n        const
      RiskNeutralDensityCalculator* calculator,\n        Real guess, Real accuracy,
      Size maxEvaluations,\n        Real stepSize)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RiskNeutralDensityCalculator::InvCDFHelper::InvCDFHelper(\n        const
      RiskNeutralDensityCalculator* calculator,\n        Real guess, Real accuracy,
      Size maxEvaluations,\n        Real stepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:38,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:39,1
    - Dst: cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: RiskNeutralDensityCalculator::InvCDFHelper::inverseCDF(Real p, Time
      t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp
    functionUses: 0
    functionsReached:
    - cdf
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real RiskNeutralDensityCalculator::InvCDFHelper::inverseCDF(Real p,
      Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - calculator
    - guess
    - accuracy
    - maxEvaluations
    - stepSize
    argTypes:
    - RiskNeutralDensityCalculator*
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: "RiskNeutralDensityCalculator::InvCDFHelper::InvCDFHelper(\n        const
      RiskNeutralDensityCalculator* calculator,\n        Real guess, Real accuracy,
      Size maxEvaluations,\n        Real stepSize)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RiskNeutralDensityCalculator::InvCDFHelper::InvCDFHelper(\n        const
      RiskNeutralDensityCalculator* calculator,\n        Real guess, Real accuracy,
      Size maxEvaluations,\n        Real stepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:38,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:39,1
    - Dst: cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: RiskNeutralDensityCalculator::InvCDFHelper::inverseCDF(Real p, Time
      t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.cpp
    functionUses: 0
    functionsReached:
    - cdf
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real RiskNeutralDensityCalculator::InvCDFHelper::inverseCDF(Real p,
      Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:31,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:35,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:40,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:42,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:44,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:45,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - ' layout'
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - Size
    - FdmDirichletBoundary::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmIndicesOnBoundary::FdmIndicesOnBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp
    functionUses: 0
    functionsReached:
    - Size
    - std::vector::begin
    - resize
    - std::vector::end
    - index
    - std::multiplies<>
    - std::accumulate
    - dim
    - coordinates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmIndicesOnBoundary::FdmIndicesOnBoundary(\n        const ext::shared_ptr<FdmLinearOpLayout>&
      layout,\n        Size direction, FdmDirichletBoundary::Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: '& FdmIndicesOnBoundary::getIndices() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & FdmIndicesOnBoundary::getIndices() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:31,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:35,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:40,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:42,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:44,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp:45,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - ' layout'
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - Size
    - FdmDirichletBoundary::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmIndicesOnBoundary::FdmIndicesOnBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp
    functionUses: 0
    functionsReached:
    - Size
    - std::vector::begin
    - resize
    - std::vector::end
    - index
    - std::multiplies<>
    - std::accumulate
    - dim
    - coordinates
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmIndicesOnBoundary::FdmIndicesOnBoundary(\n        const ext::shared_ptr<FdmLinearOpLayout>&
      layout,\n        Size direction, FdmDirichletBoundary::Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: '& FdmIndicesOnBoundary::getIndices() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmindicesonboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & FdmIndicesOnBoundary::getIndices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - v0
    - kappa
    - theta
    - sigma
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::SquareRootProcessRNDCalculator::SquareRootProcessRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SquareRootProcessRNDCalculator::SquareRootProcessRNDCalculator(\n
      \       Real v0, Real kappa, Real theta, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:35,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: QuantLib::SquareRootProcessRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::pdf(Real v, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:46,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::SquareRootProcessRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::cdf(Real v, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:57,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 65
    functionName: QuantLib::SquareRootProcessRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:71,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:72,1
    - Dst: boost::math::lgamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    - boost::math::lgamma
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_pdf(Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_cdf(Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p_inv
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - q
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_p_inv
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_invcdf(Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - v0
    - kappa
    - theta
    - sigma
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::SquareRootProcessRNDCalculator::SquareRootProcessRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SquareRootProcessRNDCalculator::SquareRootProcessRNDCalculator(\n
      \       Real v0, Real kappa, Real theta, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:35,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: QuantLib::SquareRootProcessRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::pdf(Real v, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:46,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::SquareRootProcessRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::cdf(Real v, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:57,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 65
    functionName: QuantLib::SquareRootProcessRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:71,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:72,1
    - Dst: boost::math::lgamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    - boost::math::lgamma
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_pdf(Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_cdf(Real v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_p_inv
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - q
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::SquareRootProcessRNDCalculator::stationary_invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/squarerootprocessrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_p_inv
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcessRNDCalculator::stationary_invcdf(Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - rTS
    - fTS
    - fxVolTS
    - equityFxCorrelation
    - exchRateATMlevel
    argTypes:
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<BlackVolTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmQuantoHelper::FdmQuantoHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmQuantoHelper::FdmQuantoHelper(ext::shared_ptr<YieldTermStructure>
      rTS,\n                                     ext::shared_ptr<YieldTermStructure>
      fTS,\n                                     ext::shared_ptr<BlackVolTermStructure>
      fxVolTS,\n                                     Real equityFxCorrelation,\n                                     Real
      exchRateATMlevel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:42,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:43,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - equityVol
    - t1
    - t2
    argTypes:
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmQuantoHelper::quantoAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - blackForwardVol
    linkageType: ''
    returnType: Rate
    signature: "Rate FdmQuantoHelper::quantoAdjustment(Volatility equityVol,\n                                                 Time
      t1, Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:53,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:54,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' equityVol'
    - t1
    - t2
    argTypes:
    - Array
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmQuantoHelper::quantoAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - size
    - forwardRate
    - Array::size
    - blackForwardVol
    linkageType: ''
    returnType: Array
    signature: "Array FdmQuantoHelper::quantoAdjustment(\n        const Array& equityVol,
      Time t1, Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - rTS
    - fTS
    - fxVolTS
    - equityFxCorrelation
    - exchRateATMlevel
    argTypes:
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<BlackVolTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmQuantoHelper::FdmQuantoHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmQuantoHelper::FdmQuantoHelper(ext::shared_ptr<YieldTermStructure>
      rTS,\n                                     ext::shared_ptr<YieldTermStructure>
      fTS,\n                                     ext::shared_ptr<BlackVolTermStructure>
      fxVolTS,\n                                     Real equityFxCorrelation,\n                                     Real
      exchRateATMlevel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:42,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:43,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - equityVol
    - t1
    - t2
    argTypes:
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmQuantoHelper::quantoAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - blackForwardVol
    linkageType: ''
    returnType: Rate
    signature: "Rate FdmQuantoHelper::quantoAdjustment(Volatility equityVol,\n                                                 Time
      t1, Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:53,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:54,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' equityVol'
    - t1
    - t2
    argTypes:
    - Array
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmQuantoHelper::quantoAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmquantohelper.cpp
    functionUses: 0
    functionsReached:
    - size
    - forwardRate
    - Array::size
    - blackForwardVol
    linkageType: ''
    returnType: Array
    signature: "Array FdmQuantoHelper::quantoAdjustment(\n        const Array& equityVol,
      Time t1, Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - maturityTime
    - valueOnBoundary
    - rTS
    argTypes:
    - Time
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::DiscountedCashflowAtBoundary::DiscountedCashflowAtBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountedCashflowAtBoundary(Time maturityTime,\n                                         Real
      valueOnBoundary,\n                                         ext::shared_ptr<YieldTermStructure>
      rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::discount
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - maturityTime
    - valueOnBoundary
    - rTS
    argTypes:
    - Time
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::DiscountedCashflowAtBoundary::DiscountedCashflowAtBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountedCashflowAtBoundary(Time maturityTime,\n                                         Real
      valueOnBoundary,\n                                         ext::shared_ptr<YieldTermStructure>
      rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::discount
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmTimeDepDirichletBoundary>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:55,1
    - Dst: std::function<Real (Real)>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:57,1
    - Dst: DiscountedCashflowAtBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' rTS'
    - maturityTime
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Time
    - Real
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmDiscountDirichletBoundary::FdmDiscountDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmTimeDepDirichletBoundary>
    - DiscountedCashflowAtBoundary
    - std::function<Real (Real)>
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::FdmDiscountDirichletBoundary(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        Time maturityTime,\n        Real valueOnBoundary,\n        Size
      direction, Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmDiscountDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::setTime
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' op'
    argTypes:
    - operator_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::applyBeforeApplying(\n        operator_type&
      op) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' op'
    - ' r'
    argTypes:
    - operator_type
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::applyBeforeSolving(\n        operator_type&
      op, array_type& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::applyAfterApplying(array_type& r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::applyAfterSolving(array_type& r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - maturityTime
    - valueOnBoundary
    - rTS
    argTypes:
    - Time
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::DiscountedCashflowAtBoundary::DiscountedCashflowAtBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountedCashflowAtBoundary(Time maturityTime,\n                                         Real
      valueOnBoundary,\n                                         ext::shared_ptr<YieldTermStructure>
      rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - discount
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - maturityTime
    - valueOnBoundary
    - rTS
    argTypes:
    - Time
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::DiscountedCashflowAtBoundary::DiscountedCashflowAtBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountedCashflowAtBoundary(Time maturityTime,\n                                         Real
      valueOnBoundary,\n                                         ext::shared_ptr<YieldTermStructure>
      rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - discount
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmTimeDepDirichletBoundary>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:55,1
    - Dst: std::function<Real (Real)>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:57,1
    - Dst: DiscountedCashflowAtBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' rTS'
    - maturityTime
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Time
    - Real
    - Size
    - Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmDiscountDirichletBoundary::FdmDiscountDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmTimeDepDirichletBoundary>
    - DiscountedCashflowAtBoundary
    - std::function<Real (Real)>
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::FdmDiscountDirichletBoundary(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        Time maturityTime,\n        Real valueOnBoundary,\n        Size
      direction, Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmDiscountDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::setTime
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::setTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' op'
    argTypes:
    - operator_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyBeforeApplying
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::applyBeforeApplying(\n        operator_type&
      op) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' op'
    - ' r'
    argTypes:
    - operator_type
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyBeforeSolving
    linkageType: ''
    returnType: void
    signature: "void FdmDiscountDirichletBoundary::applyBeforeSolving(\n        operator_type&
      op, array_type& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::applyAfterApplying(array_type& r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdiscountdirichletboundary.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmDiscountDirichletBoundary::applyAfterSolving
    linkageType: ''
    returnType: void
    signature: void FdmDiscountDirichletBoundary::applyAfterSolving(array_type& r)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:36,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' mesher'
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Size
    - FdmDirichletBoundary::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmDirichletBoundary::FdmDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - locations
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmDirichletBoundary::FdmDirichletBoundary(\n                            const
      ext::shared_ptr<FdmMesher>& mesher,\n                            Real valueOnBoundary,
      Size direction,\n                            FdmDirichletBoundary::Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyBeforeApplying(operator_type&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyAfterApplying(Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::FdmDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdmDirichletBoundary::applyBeforeSolving(operator_type&,\n                                                  array_type&)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyAfterSolving(Array& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - x
    - value
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmDirichletBoundary::applyAfterApplying(Real x, Real value) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FdmIndicesOnBoundary
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:36,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' mesher'
    - valueOnBoundary
    - direction
    - side
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Size
    - FdmDirichletBoundary::Side
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmDirichletBoundary::FdmDirichletBoundary
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - locations
    - FdmIndicesOnBoundary
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmDirichletBoundary::FdmDirichletBoundary(\n                            const
      ext::shared_ptr<FdmMesher>& mesher,\n                            Real valueOnBoundary,
      Size direction,\n                            FdmDirichletBoundary::Side side)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyBeforeApplying(operator_type&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyAfterApplying(Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::FdmDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdmDirichletBoundary::applyBeforeSolving(operator_type&,\n                                                  array_type&)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDirichletBoundary::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmDirichletBoundary::applyAfterSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmDirichletBoundary::applyAfterApplying
    linkageType: ''
    returnType: void
    signature: void FdmDirichletBoundary::applyAfterSolving(Array& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - x
    - value
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmDirichletBoundary::applyAfterApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmDirichletBoundary::applyAfterApplying(Real x, Real value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:36,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:40,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:41,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:42,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:44,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:45,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:45,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - ' schedule'
    - ' mesher'
    - ' referenceDate'
    - ' dayCounter'
    - equityDirection
    argTypes:
    - DividendSchedule
    - ext::shared_ptr<FdmMesher>
    - Date
    - DayCounter
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmDividendHandler::FdmDividendHandler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached:
    - date
    - yearFraction
    - std::exp
    - locations
    - push_back
    - size
    - amount
    - reserve
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmDividendHandler::FdmDividendHandler(\n        const DividendSchedule&
      schedule,\n        const ext::shared_ptr<FdmMesher>& mesher,\n        const
      Date& referenceDate,\n        const DayCounter& dayCounter,\n        Size equityDirection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: '& FdmDividendHandler::dividendTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmDividendHandler::dividendTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& FdmDividendHandler::dividendDates() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & FdmDividendHandler::dividendDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '& FdmDividendHandler::dividends() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FdmDividendHandler::dividends() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:74,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:76,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:78,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:79,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:83,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:84,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:86,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:88,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:94,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:96,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:98,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:99,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmDividendHandler::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached:
    - interp
    - Array::begin
    - begin
    - std::max
    - std::find
    - size
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmDividendHandler::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:36,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:40,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:41,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:42,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:44,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:45,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:45,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - ' schedule'
    - ' mesher'
    - ' referenceDate'
    - ' dayCounter'
    - equityDirection
    argTypes:
    - DividendSchedule
    - ext::shared_ptr<FdmMesher>
    - Date
    - DayCounter
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmDividendHandler::FdmDividendHandler
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached:
    - date
    - yearFraction
    - std::exp
    - locations
    - push_back
    - size
    - amount
    - reserve
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmDividendHandler::FdmDividendHandler(\n        const DividendSchedule&
      schedule,\n        const ext::shared_ptr<FdmMesher>& mesher,\n        const
      Date& referenceDate,\n        const DayCounter& dayCounter,\n        Size equityDirection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: '& FdmDividendHandler::dividendTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmDividendHandler::dividendTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& FdmDividendHandler::dividendDates() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & FdmDividendHandler::dividendDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '& FdmDividendHandler::dividends() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & FdmDividendHandler::dividends() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:74,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:76,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:78,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:79,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:83,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:84,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:86,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:88,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:94,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:96,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:98,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp:99,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmDividendHandler::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdividendhandler.cpp
    functionUses: 0
    functionsReached:
    - interp
    - Array::begin
    - begin
    - std::max
    - std::find
    - size
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmDividendHandler::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmDirichletBoundary::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setTime(Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - escrowedDividendAdj
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<EscrowedDividendAdjustment>
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::FdmEscrowedLogInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmEscrowedLogInnerValueCalculator::FdmEscrowedLogInnerValueCalculator(\n
      \       ext::shared_ptr<EscrowedDividendAdjustment> escrowedDividendAdj,\n        ext::shared_ptr<Payoff>
      payoff,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:41,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:41,1
    - Dst: dividendAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - dividendAdjustment
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: "Real FdmEscrowedLogInnerValueCalculator::innerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmEscrowedLogInnerValueCalculator::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - escrowedDividendAdj
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<EscrowedDividendAdjustment>
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::FdmEscrowedLogInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmEscrowedLogInnerValueCalculator::FdmEscrowedLogInnerValueCalculator(\n
      \       ext::shared_ptr<EscrowedDividendAdjustment> escrowedDividendAdj,\n        ext::shared_ptr<Payoff>
      payoff,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:41,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:41,1
    - Dst: dividendAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 1
    functionsReached:
    - dividendAdjustment
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: "Real FdmEscrowedLogInnerValueCalculator::innerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmEscrowedLogInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmescrowedloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmEscrowedLogInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmEscrowedLogInnerValueCalculator::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:35,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - r
    - ' cal'
    - ' dayCounter'
    - ' referenceDate'
    - ' modelReferenceDate'
    - model
    argTypes:
    - Array
    - Calendar
    - DayCounter
    - Date
    - Date
    - ext::shared_ptr<AffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmAffineModelTermStructure::FdmAffineModelTermStructure
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - yearFraction
    linkageType: ''
    returnType: void
    signature: "void FdmAffineModelTermStructure::FdmAffineModelTermStructure(Array
      r,\n                                                             const Calendar&
      cal,\n                                                             const DayCounter&
      dayCounter,\n                                                             const
      Date& referenceDate,\n                                                             const
      Date& modelReferenceDate,\n                                                             ext::shared_ptr<AffineModel>
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmAffineModelTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date FdmAffineModelTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmAffineModelTermStructure::setVariable
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FdmAffineModelTermStructure::setVariable(const Array& r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmAffineModelTermStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FdmAffineModelTermStructure::discountImpl(Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:35,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - r
    - ' cal'
    - ' dayCounter'
    - ' referenceDate'
    - ' modelReferenceDate'
    - model
    argTypes:
    - Array
    - Calendar
    - DayCounter
    - Date
    - Date
    - ext::shared_ptr<AffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmAffineModelTermStructure::FdmAffineModelTermStructure
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - yearFraction
    linkageType: ''
    returnType: void
    signature: "void FdmAffineModelTermStructure::FdmAffineModelTermStructure(Array
      r,\n                                                             const Calendar&
      cal,\n                                                             const DayCounter&
      dayCounter,\n                                                             const
      Date& referenceDate,\n                                                             const
      Date& modelReferenceDate,\n                                                             ext::shared_ptr<AffineModel>
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmAffineModelTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date FdmAffineModelTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmAffineModelTermStructure::setVariable
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FdmAffineModelTermStructure::setVariable(const Array& r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmAffineModelTermStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmaffinemodeltermstructure.cpp
    functionUses: 0
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FdmAffineModelTermStructure::discountImpl(Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyBeforeApplying(operator_type&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyBeforeSolving(operator_type&, array_type&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyBeforeApplying
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyBeforeApplying(operator_type&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmTimeDepDirichletBoundary::applyBeforeSolving
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmtimedepdirichletboundary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void applyBeforeSolving(operator_type&, array_type&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~FdmInnerValueCalculator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmInnerValueCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::FdmZeroInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmZeroInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator&, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~FdmInnerValueCalculator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmInnerValueCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::FdmZeroInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmZeroInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator&, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::getHestonParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: HestonParams
    signature: "HestonParams getHestonParams(\n            const ext::shared_ptr<HestonProcess>&
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::gamma
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> gamma(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:53,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::omega
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::gamma
    - std::sqrt
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> omega(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' p'
    - x
    - t
    argTypes:
    - HestonParams
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: QuantLib::CpxPv_Helper::CpxPv_Helper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - squared
    - std::min
    linkageType: ''
    returnType: void
    signature: void CpxPv_Helper(const HestonParams& p, Real x, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    - Dst: transformPhi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - transformPhi
    - std::real
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: QuantLib::CpxPv_Helper::p0
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::complex<Real>
    - std::max
    - std::real
    - QuantLib::CpxPv_Helper::phi
    linkageType: ''
    returnType: Real
    signature: Real p0(Real p_x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:85,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::CpxPv_Helper::transformPhi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CpxPv_Helper::phi
    - std::complex<Real>
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> transformPhi(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:91,1
    - Dst: omega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: QuantLib::CpxPv_Helper::phi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - gamma
    - std::log
    - std::complex<Real>
    - omega
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> phi(Real p_x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::getHestonParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: HestonParams
    signature: "HestonParams getHestonParams(\n            const ext::shared_ptr<HestonProcess>&
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::gamma
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> gamma(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:53,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::omega
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::gamma
    - std::sqrt
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> omega(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' p'
    - x
    - t
    argTypes:
    - HestonParams
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: QuantLib::CpxPv_Helper::CpxPv_Helper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - squared
    - std::min
    linkageType: ''
    returnType: void
    signature: void CpxPv_Helper(const HestonParams& p, Real x, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    - Dst: transformPhi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - transformPhi
    - std::real
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: QuantLib::CpxPv_Helper::p0
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::complex<Real>
    - std::max
    - std::real
    - QuantLib::CpxPv_Helper::phi
    linkageType: ''
    returnType: Real
    signature: Real p0(Real p_x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:85,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::CpxPv_Helper::transformPhi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CpxPv_Helper::phi
    - std::complex<Real>
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> transformPhi(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:91,1
    - Dst: omega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: QuantLib::CpxPv_Helper::phi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 4
    functionsReached:
    - std::exp
    - gamma
    - std::log
    - std::complex<Real>
    - omega
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> phi(Real p_x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - hestonProcess
    - integrationEps
    - maxIntegrationIterations
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::HestonRNDCalculator::HestonRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - s0
    - std::move
    - std::log
    linkageType: ''
    returnType: void
    signature: "void HestonRNDCalculator::HestonRNDCalculator(ext::shared_ptr<HestonProcess>
      hestonProcess,\n                                             Real integrationEps,\n
      \                                            Size maxIntegrationIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:117,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:118,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionName: QuantLib::HestonRNDCalculator::x_t
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - riskFreeRate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::x_t(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:124,1
    - Dst: CpxPv_Helper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    - Dst: getHestonParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    - Dst: QuantLib::HestonRNDCalculator::x_t
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionName: QuantLib::HestonRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - getHestonParams
    - GaussLobattoIntegral
    - CpxPv_Helper
    - QuantLib::HestonRNDCalculator::x_t
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:133,1
    - Dst: CpxPv_Helper::p0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 136
    functionName: QuantLib::HestonRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - CpxPv_Helper::p0
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:139,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:140,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:141,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:144,1
    - Dst: ext::make_shared<BlackScholesMertonProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:147,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:148,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:149,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:150,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:151,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:152,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:153,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:154,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:156,1
    - Dst: BSMRNDCalculator
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:158,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 163
    functionName: QuantLib::HestonRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - dividendYield
    - s0
    - Handle<BlackVolTermStructure>
    - std::exp
    - ext::make_shared<BlackScholesMertonProcess>
    - v0
    - theta
    - RiskNeutralDensityCalculator::InvCDFHelper
    - riskFreeRate
    - ext::make_shared<BlackConstantVol>
    - BSMRNDCalculator
    - std::sqrt
    - NullCalendar
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::invcdf(Real p, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::getHestonParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: HestonParams
    signature: "HestonParams getHestonParams(\n            const ext::shared_ptr<HestonProcess>&
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::gamma
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> gamma(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:53,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::omega
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::gamma
    - std::sqrt
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> omega(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' p'
    - x
    - t
    argTypes:
    - HestonParams
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: QuantLib::CpxPv_Helper::CpxPv_Helper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - squared
    - std::min
    linkageType: ''
    returnType: void
    signature: void CpxPv_Helper(const HestonParams& p, Real x, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    - Dst: transformPhi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - transformPhi
    - std::real
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: QuantLib::CpxPv_Helper::p0
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::complex<Real>
    - std::max
    - std::real
    - QuantLib::CpxPv_Helper::phi
    linkageType: ''
    returnType: Real
    signature: Real p0(Real p_x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:85,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::CpxPv_Helper::transformPhi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CpxPv_Helper::phi
    - std::complex<Real>
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> transformPhi(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:91,1
    - Dst: omega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: QuantLib::CpxPv_Helper::phi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 6
    functionsReached:
    - std::exp
    - gamma
    - std::log
    - std::complex<Real>
    - omega
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> phi(Real p_x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:41,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::getHestonParams
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: HestonParams
    signature: "HestonParams getHestonParams(\n            const ext::shared_ptr<HestonProcess>&
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::gamma
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 3
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> gamma(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:53,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - p_x
    argTypes:
    - HestonParams
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::omega
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::gamma
    - std::sqrt
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> omega(const HestonParams& p, Real p_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' p'
    - x
    - t
    argTypes:
    - HestonParams
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: QuantLib::CpxPv_Helper::CpxPv_Helper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - squared
    - std::min
    linkageType: ''
    returnType: void
    signature: void CpxPv_Helper(const HestonParams& p, Real x, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    - Dst: transformPhi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - transformPhi
    - std::real
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:74,1
    - Dst: std::real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:75,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: QuantLib::CpxPv_Helper::p0
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::complex<Real>
    - std::max
    - std::real
    - QuantLib::CpxPv_Helper::phi
    linkageType: ''
    returnType: Real
    signature: Real p0(Real p_x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:85,1
    - Dst: QuantLib::CpxPv_Helper::phi
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::CpxPv_Helper::transformPhi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CpxPv_Helper::phi
    - std::complex<Real>
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> transformPhi(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gamma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:91,1
    - Dst: omega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:95,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p_x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: QuantLib::CpxPv_Helper::phi
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 8
    functionsReached:
    - std::exp
    - gamma
    - std::log
    - std::complex<Real>
    - omega
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> phi(Real p_x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - hestonProcess
    - integrationEps
    - maxIntegrationIterations
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::HestonRNDCalculator::HestonRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - s0
    - std::move
    - std::log
    linkageType: ''
    returnType: void
    signature: "void HestonRNDCalculator::HestonRNDCalculator(ext::shared_ptr<HestonProcess>
      hestonProcess,\n                                             Real integrationEps,\n
      \                                            Size maxIntegrationIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:117,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:118,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionName: QuantLib::HestonRNDCalculator::x_t
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - riskFreeRate
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::x_t(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:124,1
    - Dst: CpxPv_Helper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    - Dst: getHestonParams
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    - Dst: QuantLib::HestonRNDCalculator::x_t
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionName: QuantLib::HestonRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - getHestonParams
    - GaussLobattoIntegral
    - CpxPv_Helper
    - QuantLib::HestonRNDCalculator::x_t
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:133,1
    - Dst: CpxPv_Helper::p0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 136
    functionName: QuantLib::HestonRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - CpxPv_Helper::p0
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:139,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:140,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:141,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:144,1
    - Dst: ext::make_shared<BlackScholesMertonProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:147,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:148,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:149,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:150,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:151,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:152,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:153,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:154,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:156,1
    - Dst: BSMRNDCalculator
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:158,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 163
    functionName: QuantLib::HestonRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/hestonrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - dividendYield
    - s0
    - Handle<BlackVolTermStructure>
    - std::exp
    - ext::make_shared<BlackScholesMertonProcess>
    - v0
    - theta
    - RiskNeutralDensityCalculator::InvCDFHelper
    - riskFreeRate
    - ext::make_shared<BlackConstantVol>
    - BSMRNDCalculator
    - std::sqrt
    - NullCalendar
    linkageType: ''
    returnType: Real
    signature: Real HestonRNDCalculator::invcdf(Real p, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - mesher
    - process
    - trafoType_
    - l0
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmHestonGreensFct::FdmHestonGreensFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonGreensFct::FdmHestonGreensFct(ext::shared_ptr<FdmMesher>
      mesher,\n                                           ext::shared_ptr<HestonProcess>
      process,\n                                           FdmSquareRootFwdOp::TransformationType
      trafoType_,\n                                           const Real l0)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:43,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:44,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:46,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:48,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:50,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:51,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:55,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:56,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:57,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:59,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:60,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:68,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:68,1
    - Dst: SquareRootProcessRNDCalculator
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:69,1
    - Dst: pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:76,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:84,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:84,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:91,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:101,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:104,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:107,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - t
    - algorithm
    argTypes:
    - Time
    - Algorithm
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmHestonGreensFct::get
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - location
    - dividendYield
    - s0
    - squared
    - std::pow
    - SquareRootProcessRNDCalculator
    - rho
    - layout
    - sigma
    - std::exp
    - pdf
    - QL_FAIL
    - index
    - std::log
    - riskFreeRate
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonGreensFct::get(Time t, Algorithm algorithm) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - mesher
    - process
    - trafoType_
    - l0
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmHestonGreensFct::FdmHestonGreensFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmHestonGreensFct::FdmHestonGreensFct(ext::shared_ptr<FdmMesher>
      mesher,\n                                           ext::shared_ptr<HestonProcess>
      process,\n                                           FdmSquareRootFwdOp::TransformationType
      trafoType_,\n                                           const Real l0)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:43,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:44,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:46,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:48,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:50,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:51,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:55,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:56,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:57,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:59,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:60,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:68,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:68,1
    - Dst: SquareRootProcessRNDCalculator
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:69,1
    - Dst: pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:76,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:84,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:84,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:91,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:101,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:104,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp:107,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - t
    - algorithm
    argTypes:
    - Time
    - Algorithm
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmHestonGreensFct::get
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmhestongreensfct.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - location
    - dividendYield
    - s0
    - squared
    - std::pow
    - SquareRootProcessRNDCalculator
    - rho
    - layout
    - sigma
    - std::exp
    - pdf
    - QL_FAIL
    - index
    - std::log
    - riskFreeRate
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonGreensFct::get(Time t, Algorithm algorithm) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: QuantLib::GBSMRNDCalculator::GBSMRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void GBSMRNDCalculator::GBSMRNDCalculator(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:40,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::GBSMRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GBSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::pdf(Real k, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:45,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:49,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:49,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:52,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:54,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:56,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:58,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:63,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:64,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:69,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - k
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 72
    functionName: QuantLib::GBSMRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - blackVolatility
    - dividendYield
    - BlackCalculator::vega
    - Handle::blackVol
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - std::sqrt
    - x0
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::cdf(Real k, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:76,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:80,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:84,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:87,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:93,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:96,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:96,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:98,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: QuantLib::GBSMRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - std::exp
    - QuantLib::GBSMRNDCalculator::cdf
    - Brent
    - riskFreeRate
    - std::sqrt
    - x0
    - InverseCumulativeNormal
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: QuantLib::GBSMRNDCalculator::GBSMRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void GBSMRNDCalculator::GBSMRNDCalculator(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:40,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::GBSMRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GBSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::pdf(Real k, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:45,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:49,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:49,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:52,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:54,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:56,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:58,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:63,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:64,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:69,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - k
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 72
    functionName: QuantLib::GBSMRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 3
    functionsReached:
    - blackVolatility
    - dividendYield
    - BlackCalculator::vega
    - Handle::blackVol
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - std::sqrt
    - x0
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::cdf(Real k, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:76,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:80,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:84,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:87,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:93,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:96,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:96,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:98,1
    - Dst: QuantLib::GBSMRNDCalculator::cdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - q
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: QuantLib::GBSMRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/gbsmrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - std::exp
    - QuantLib::GBSMRNDCalculator::cdf
    - Brent
    - riskFreeRate
    - std::sqrt
    - x0
    - InverseCumulativeNormal
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GBSMRNDCalculator::invcdf(Real q, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~RiskNeutralDensityCalculator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RiskNeutralDensityCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~RiskNeutralDensityCalculator()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/riskneutraldensitycalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RiskNeutralDensityCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendSchedule
    - rTS
    - qTS
    - toTime
    - maturity
    argTypes:
    - DividendSchedule
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - std::function<Real(Date)>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::EscrowedDividendAdjustment::EscrowedDividendAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EscrowedDividendAdjustment::EscrowedDividendAdjustment(\n        DividendSchedule
      dividendSchedule,\n        Handle<YieldTermStructure> rTS,\n        Handle<YieldTermStructure>
      qTS,\n        std::function<Real(Date)> toTime,\n        Time maturity)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: toTime_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:41,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:41,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:44,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:45,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:45,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:46,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::EscrowedDividendAdjustment::dividendAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached:
    - discount
    - toTime_
    - date
    - amount
    linkageType: ''
    returnType: Real
    signature: Real EscrowedDividendAdjustment::dividendAdjustment(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: "&\n    EscrowedDividendAdjustment::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    EscrowedDividendAdjustment::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: "&\n    EscrowedDividendAdjustment::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    EscrowedDividendAdjustment::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendSchedule
    - rTS
    - qTS
    - toTime
    - maturity
    argTypes:
    - DividendSchedule
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - std::function<Real(Date)>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::EscrowedDividendAdjustment::EscrowedDividendAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EscrowedDividendAdjustment::EscrowedDividendAdjustment(\n        DividendSchedule
      dividendSchedule,\n        Handle<YieldTermStructure> rTS,\n        Handle<YieldTermStructure>
      qTS,\n        std::function<Real(Date)> toTime,\n        Time maturity)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: toTime_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:41,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:41,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:44,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:45,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:45,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:46,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::EscrowedDividendAdjustment::dividendAdjustment
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached:
    - discount
    - toTime_
    - date
    - amount
    linkageType: ''
    returnType: Real
    signature: Real EscrowedDividendAdjustment::dividendAdjustment(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: "&\n    EscrowedDividendAdjustment::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    EscrowedDividendAdjustment::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: "&\n    EscrowedDividendAdjustment::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/escroweddividendadjustment.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    EscrowedDividendAdjustment::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' gridMapping'
    argTypes:
    - Payoff
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::mapped_payoff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void mapped_payoff(\n                const Payoff& payoff,\n                const
      std::function<Real(Real)>& gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - gridMapping_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' gridMapping'
    argTypes:
    - Payoff
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::mapped_payoff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void mapped_payoff(\n                const Payoff& payoff,\n                const
      std::function<Real(Real)>& gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - gridMapping_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - mesher
    - direction
    - gridMapping
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmCellAveragingInnerValue::FdmCellAveragingInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmCellAveragingInnerValue::FdmCellAveragingInnerValue(ext::shared_ptr<Payoff>
      payoff,\n                                                           ext::shared_ptr<FdmMesher>
      mesher,\n                                                           Size direction,\n
      \                                                          std::function<Real(Real)>
      gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:59,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmCellAveragingInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - gridMapping_
    - location
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::innerValue(const FdmLinearOpIterator&
      iter, Time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:66,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:67,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:69,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:70,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:73,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmCellAveragingInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
    - coordinates
    - empty
    - resize
    - size
    - layout
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::avgInnerValue(const FdmLinearOpIterator&
      iter, Time t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:82,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:83,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:86,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:88,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:89,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:90,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: SimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:98,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:102,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 1
    functionsReached:
    - location
    - f
    - dplus
    - Real
    - coordinates
    - QuantLib::FdmCellAveragingInnerValue::innerValue
    - dminus
    - SimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::avgInnerValueCalc(const FdmLinearOpIterator&
      iter, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' payoff'
    - ' mesher'
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmLogInnerValue::FdmLogInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: void
    signature: "void FdmLogInnerValue::FdmLogInnerValue(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<FdmMesher>& mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:119,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::FdmLogBasketInnerValue::FdmLogBasketInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmLogBasketInnerValue::FdmLogBasketInnerValue(ext::shared_ptr<BasketPayoff>
      payoff,\n                                                   ext::shared_ptr<FdmMesher>
      mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:123,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:125,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 129
    functionName: QuantLib::FdmLogBasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::exp
    - location
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real FdmLogBasketInnerValue::innerValue(\n                                    const
      FdmLinearOpIterator& iter, Time)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLogBasketInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmLogBasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLogBasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmLogBasketInnerValue::avgInnerValue(\n                                    const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' gridMapping'
    argTypes:
    - Payoff
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::mapped_payoff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void mapped_payoff(\n                const Payoff& payoff,\n                const
      std::function<Real(Real)>& gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - gridMapping_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' gridMapping'
    argTypes:
    - Payoff
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::mapped_payoff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void mapped_payoff(\n                const Payoff& payoff,\n                const
      std::function<Real(Real)>& gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - gridMapping_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - mesher
    - direction
    - gridMapping
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmCellAveragingInnerValue::FdmCellAveragingInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmCellAveragingInnerValue::FdmCellAveragingInnerValue(ext::shared_ptr<Payoff>
      payoff,\n                                                           ext::shared_ptr<FdmMesher>
      mesher,\n                                                           Size direction,\n
      \                                                          std::function<Real(Real)>
      gridMapping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:59,1
    - Dst: gridMapping_
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmCellAveragingInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 1
    functionsReached:
    - gridMapping_
    - location
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::innerValue(const FdmLinearOpIterator&
      iter, Time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:66,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:67,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:69,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:70,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:73,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmCellAveragingInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
    - coordinates
    - empty
    - resize
    - size
    - layout
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::avgInnerValue(const FdmLinearOpIterator&
      iter, Time t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:82,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:83,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:86,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:88,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:89,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:90,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: f
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:97,1
    - Dst: SimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:98,1
    - Dst: QuantLib::FdmCellAveragingInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:102,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmCellAveragingInnerValue::avgInnerValueCalc
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 2
    functionsReached:
    - location
    - f
    - dplus
    - Real
    - coordinates
    - QuantLib::FdmCellAveragingInnerValue::innerValue
    - dminus
    - SimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: Real FdmCellAveragingInnerValue::avgInnerValueCalc(const FdmLinearOpIterator&
      iter, Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' payoff'
    - ' mesher'
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmLogInnerValue::FdmLogInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: void
    signature: "void FdmLogInnerValue::FdmLogInnerValue(\n        const ext::shared_ptr<Payoff>&
      payoff,\n        const ext::shared_ptr<FdmMesher>& mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:119,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::FdmLogBasketInnerValue::FdmLogBasketInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmLogBasketInnerValue::FdmLogBasketInnerValue(ext::shared_ptr<BasketPayoff>
      payoff,\n                                                   ext::shared_ptr<FdmMesher>
      mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:123,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:125,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 129
    functionName: QuantLib::FdmLogBasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 1
    functionsReached:
    - Array::size
    - std::exp
    - location
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real FdmLogBasketInnerValue::innerValue(\n                                    const
      FdmLinearOpIterator& iter, Time)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLogBasketInnerValue::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmLogBasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdminnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLogBasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmLogBasketInnerValue::avgInnerValue(\n                                    const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - blackVolatility
    - escrowedDividendAdj
    - maturity
    - payoff
    - mesher
    - direction
    argTypes:
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<EscrowedDividendAdjustment>
    - Time
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::FdmShoutLogInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmShoutLogInnerValueCalculator::FdmShoutLogInnerValueCalculator(\n
      \       Handle<BlackVolTermStructure> blackVolatility,\n        ext::shared_ptr<EscrowedDividendAdjustment>
      escrowedDividendAdj,\n        Time maturity,\n        ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:50,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:50,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:54,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:57,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:58,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:62,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:64,1
    - Dst: optionType
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:65,1
    - Dst: dividendAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:67,1
    - Dst: optionType
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:69,1
    - Dst: strike
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:70,1
    - Dst: strike
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:70,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - strike
    - blackForwardVol
    - riskFreeRate
    - location
    - std::max
    - blackFormula
    - dividendAdjustment
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real FdmShoutLogInnerValueCalculator::innerValue(\n        const FdmLinearOpIterator&
      iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmShoutLogInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmShoutLogInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmShoutLogInnerValueCalculator::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - blackVolatility
    - escrowedDividendAdj
    - maturity
    - payoff
    - mesher
    - direction
    argTypes:
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<EscrowedDividendAdjustment>
    - Time
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::FdmShoutLogInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmShoutLogInnerValueCalculator::FdmShoutLogInnerValueCalculator(\n
      \       Handle<BlackVolTermStructure> blackVolatility,\n        ext::shared_ptr<EscrowedDividendAdjustment>
      escrowedDividendAdj,\n        Time maturity,\n        ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n        ext::shared_ptr<FdmMesher> mesher,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:50,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:50,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:54,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:57,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:58,1
    - Dst: blackForwardVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:62,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:64,1
    - Dst: optionType
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:65,1
    - Dst: dividendAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:67,1
    - Dst: optionType
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:69,1
    - Dst: strike
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:70,1
    - Dst: strike
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:70,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - std::exp
    - strike
    - blackForwardVol
    - riskFreeRate
    - location
    - std::max
    - blackFormula
    - dividendAdjustment
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real FdmShoutLogInnerValueCalculator::innerValue(\n        const FdmLinearOpIterator&
      iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmShoutLogInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmShoutLogInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/fdmshoutloginnervaluecalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmShoutLogInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmShoutLogInnerValueCalculator::avgInnerValue(\n        const
      FdmLinearOpIterator& iter, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:56,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:57,1
    - Dst: TimeGrid::TimeGrid
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:57,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 10
    argNames:
    - spot
    - rTS
    - qTS
    - ' localVol'
    - xGrid
    - tGrid
    - x0Density
    - eps
    - maxIter
    - gaussianStepSize
    argTypes:
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - Size
    - Size
    - Real
    - Real
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 63
    functionName: QuantLib::LocalVolRNDCalculator::LocalVolRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - maxTime
    - registerWith
    - Matrix::Matrix
    - TimeGrid::TimeGrid
    linkageType: ''
    returnType: void
    signature: "void LocalVolRNDCalculator::LocalVolRNDCalculator(\n        ext::shared_ptr<Quote>
      spot,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        ext::shared_ptr<YieldTermStructure>
      qTS,\n        const ext::shared_ptr<LocalVolTermStructure>& localVol,\n        Size
      xGrid,\n        Size tGrid,\n        Real x0Density,\n        Real eps,\n        Size
      maxIter,\n        Time gaussianStepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 10
    argNames:
    - spot
    - rTS
    - qTS
    - localVol
    - ' timeGrid'
    - xGrid
    - x0Density
    - eps
    - maxIter
    - gaussianStepSize
    argTypes:
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - ext::shared_ptr<TimeGrid>
    - Size
    - Real
    - Real
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 83
    functionName: QuantLib::LocalVolRNDCalculator::LocalVolRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix::Matrix
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalVolRNDCalculator::LocalVolRNDCalculator(ext::shared_ptr<Quote>
      spot,\n                                                 ext::shared_ptr<YieldTermStructure>
      rTS,\n                                                 ext::shared_ptr<YieldTermStructure>
      qTS,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      localVol,\n                                                 const ext::shared_ptr<TimeGrid>&
      timeGrid,\n                                                 Size xGrid,\n                                                 Real
      x0Density,\n                                                 Real eps,\n                                                 Size
      maxIter,\n                                                 Time gaussianStepSize)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:89,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:92,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:92,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:95,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: GaussianDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:100,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:102,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:103,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:110,1
    - Dst: gaussianPDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:111,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:111,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:112,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:119,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:119,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:122,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 125
    functionName: QuantLib::LocalVolRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::lower_bound
    - calculate
    - value
    - std::log
    - at
    - gaussianPDF
    - std::distance
    - localVol
    - begin
    - QuantLib::LocalVolRNDCalculator::probabilityInterpolation
    - discount
    - GaussianDistribution
    - std::sqrt
    - back
    - end
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:128,1
    - Dst: closestTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:131,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:132,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:135,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:136,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:147,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:153,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:154,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:157,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:163,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:164,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 166
    functionName: QuantLib::LocalVolRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - calculate
    - closestTime
    - locations
    - index
    - QuantLib::LocalVolRNDCalculator::pdf
    - size
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:169,1
    - Dst: closestTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:171,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:175,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:176,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:177,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:177,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:182,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:184,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:185,1
    - Dst: Array::back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:186,1
    - Dst: Array::front
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:186,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:190,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 194
    functionName: QuantLib::LocalVolRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - Array::front
    - calculate
    - value
    - std::log
    - RiskNeutralDensityCalculator::InvCDFHelper
    - closestTime
    - locations
    - Array::begin
    - Array::end
    - index
    - std::multiplies<>
    - std::transform
    - row_begin
    - DiscreteSimpsonIntegral
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::invcdf(Real p, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:198,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:201,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:207,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 210
    functionName: QuantLib::LocalVolRNDCalculator::mesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - ext::make_shared<Predefined1dMesher>
    - std::log
    - value
    - std::vector<Real>
    - index
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: ext::shared_ptr<Fdm1dMesher> LocalVolRNDCalculator::mesher(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: QuantLib::LocalVolRNDCalculator::timeGrid
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<TimeGrid>
    signature: ext::shared_ptr<TimeGrid> LocalVolRNDCalculator::timeGrid() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:217,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:219,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:220,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:222,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:222,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:224,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:228,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:236,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:235,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:238,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:239,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:239,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:243,1
    - Dst: gaussianPDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:244,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:248,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: ext::make_shared<FdmLocalVolFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:255,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:256,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:254,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:259,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:262,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:272,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:273,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:280,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:281,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:281,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:284,1
    - Dst: Array::back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:285,1
    - Dst: Array::front
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:285,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:287,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:287,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:294,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:296,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:295,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:299,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:300,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:303,1
    - Dst: pSpline
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:305,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:309,1
    - Dst: ext::make_shared<DouglasScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:311,1
    - Dst: ext::make_shared<FdmLocalVolFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:312,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:313,1
    - Dst: ext::shared_ptr::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:316,1
    - Dst: ext::shared_ptr::step
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:320,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:321,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: ext::make_shared<CubicNaturalSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:326,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:327,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:328,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:329,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 331
    functionName: QuantLib::LocalVolRNDCalculator::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - ext::shared_ptr::setStep
    - gaussianPDF
    - QuantLib::LocalVolRNDCalculator::rescalePDF
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<DouglasScheme>
    - ext::make_shared<CubicNaturalSpline>
    - back
    - DiscreteSimpsonIntegral
    - clear
    - Array::begin
    - std::fabs
    - ext::shared_ptr::size
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - DouglasScheme::DouglasScheme
    - ext::shared_ptr::step
    - Size
    - value
    - std::exp
    - Array::end
    - locations
    - localVol
    - push_back
    - std::max
    - ext::shared_ptr::locations
    - ext::make_shared<FdmLocalVolFwdOp>
    - Concentrating1dMesher::Concentrating1dMesher
    - row_begin
    - QL_REQUIRE
    - Array::front
    - std::make_pair
    - pSpline
    - std::log
    - at
    - std::copy
    - resize
    - discount
    - Array::size
    - std::max_element
    - std::sqrt
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void LocalVolRNDCalculator::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 338
    functionName: QuantLib::LocalVolRNDCalculator::rescaleTimeSteps
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LocalVolRNDCalculator::rescaleTimeSteps() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:342,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:344,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - idx
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 349
    functionName: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - locations
    - calculate
    linkageType: ''
    returnType: Real
    signature: "Real LocalVolRNDCalculator::probabilityInterpolation(\n        Size
      idx, Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' p'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionName: QuantLib::LocalVolRNDCalculator::rescalePDF
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - DiscreteSimpsonIntegral
    linkageType: ''
    returnType: Array
    signature: Array LocalVolRNDCalculator::rescalePDF(const Array& x, const Array&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:56,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:57,1
    - Dst: TimeGrid::TimeGrid
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:57,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 10
    argNames:
    - spot
    - rTS
    - qTS
    - ' localVol'
    - xGrid
    - tGrid
    - x0Density
    - eps
    - maxIter
    - gaussianStepSize
    argTypes:
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - Size
    - Size
    - Real
    - Real
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 63
    functionName: QuantLib::LocalVolRNDCalculator::LocalVolRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - maxTime
    - registerWith
    - Matrix::Matrix
    - TimeGrid::TimeGrid
    linkageType: ''
    returnType: void
    signature: "void LocalVolRNDCalculator::LocalVolRNDCalculator(\n        ext::shared_ptr<Quote>
      spot,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        ext::shared_ptr<YieldTermStructure>
      qTS,\n        const ext::shared_ptr<LocalVolTermStructure>& localVol,\n        Size
      xGrid,\n        Size tGrid,\n        Real x0Density,\n        Real eps,\n        Size
      maxIter,\n        Time gaussianStepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:77,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 10
    argNames:
    - spot
    - rTS
    - qTS
    - localVol
    - ' timeGrid'
    - xGrid
    - x0Density
    - eps
    - maxIter
    - gaussianStepSize
    argTypes:
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - ext::shared_ptr<TimeGrid>
    - Size
    - Real
    - Real
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 83
    functionName: QuantLib::LocalVolRNDCalculator::LocalVolRNDCalculator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix::Matrix
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalVolRNDCalculator::LocalVolRNDCalculator(ext::shared_ptr<Quote>
      spot,\n                                                 ext::shared_ptr<YieldTermStructure>
      rTS,\n                                                 ext::shared_ptr<YieldTermStructure>
      qTS,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      localVol,\n                                                 const ext::shared_ptr<TimeGrid>&
      timeGrid,\n                                                 Size xGrid,\n                                                 Real
      x0Density,\n                                                 Real eps,\n                                                 Size
      maxIter,\n                                                 Time gaussianStepSize)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:89,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:92,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:92,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:95,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:98,1
    - Dst: GaussianDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:100,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:102,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:103,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:106,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:110,1
    - Dst: gaussianPDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:111,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:111,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:112,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:116,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:119,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:119,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:122,1
    - Dst: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 125
    functionName: QuantLib::LocalVolRNDCalculator::pdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - std::lower_bound
    - calculate
    - value
    - std::log
    - at
    - gaussianPDF
    - std::distance
    - localVol
    - begin
    - QuantLib::LocalVolRNDCalculator::probabilityInterpolation
    - discount
    - GaussianDistribution
    - std::sqrt
    - back
    - end
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::pdf(Real x, Time t) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:128,1
    - Dst: closestTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:131,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:132,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:133,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:135,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:136,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:147,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:153,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:154,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:157,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:163,1
    - Dst: QuantLib::LocalVolRNDCalculator::pdf
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:164,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 166
    functionName: QuantLib::LocalVolRNDCalculator::cdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - calculate
    - closestTime
    - locations
    - index
    - QuantLib::LocalVolRNDCalculator::pdf
    - size
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::cdf(Real x, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:169,1
    - Dst: closestTime
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:171,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:175,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:176,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:177,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:177,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:182,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:184,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:185,1
    - Dst: Array::back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:186,1
    - Dst: Array::front
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:186,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:188,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:190,1
    - Dst: RiskNeutralDensityCalculator::InvCDFHelper
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 194
    functionName: QuantLib::LocalVolRNDCalculator::invcdf
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - Array::front
    - calculate
    - value
    - std::log
    - RiskNeutralDensityCalculator::InvCDFHelper
    - closestTime
    - locations
    - Array::begin
    - Array::end
    - index
    - std::multiplies<>
    - std::transform
    - row_begin
    - DiscreteSimpsonIntegral
    linkageType: ''
    returnType: Real
    signature: Real LocalVolRNDCalculator::invcdf(Real p, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:198,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:201,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:207,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 210
    functionName: QuantLib::LocalVolRNDCalculator::mesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - ext::make_shared<Predefined1dMesher>
    - std::log
    - value
    - std::vector<Real>
    - index
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: ext::shared_ptr<Fdm1dMesher> LocalVolRNDCalculator::mesher(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: QuantLib::LocalVolRNDCalculator::timeGrid
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<TimeGrid>
    signature: ext::shared_ptr<TimeGrid> LocalVolRNDCalculator::timeGrid() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:217,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:219,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:220,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:222,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:222,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:224,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: value
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:226,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:228,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:236,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:235,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:238,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:239,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:239,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:243,1
    - Dst: gaussianPDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:244,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:248,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:251,1
    - Dst: ext::make_shared<FdmLocalVolFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:255,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:256,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:254,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:259,1
    - Dst: at
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:262,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:267,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:269,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:272,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:273,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:280,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:281,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:281,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:284,1
    - Dst: Array::back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:285,1
    - Dst: Array::front
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:285,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:287,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:287,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:294,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:296,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:295,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:298,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:299,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:300,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:303,1
    - Dst: pSpline
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:305,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:309,1
    - Dst: ext::make_shared<DouglasScheme>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:311,1
    - Dst: ext::make_shared<FdmLocalVolFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:312,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:313,1
    - Dst: ext::shared_ptr::setStep
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:316,1
    - Dst: ext::shared_ptr::step
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:320,1
    - Dst: QuantLib::LocalVolRNDCalculator::rescalePDF
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:321,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:325,1
    - Dst: ext::make_shared<CubicNaturalSpline>
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:326,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:327,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:328,1
    - Dst: row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:329,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 331
    functionName: QuantLib::LocalVolRNDCalculator::performCalculations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - ext::shared_ptr::setStep
    - gaussianPDF
    - QuantLib::LocalVolRNDCalculator::rescalePDF
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<DouglasScheme>
    - ext::make_shared<CubicNaturalSpline>
    - back
    - DiscreteSimpsonIntegral
    - clear
    - Array::begin
    - std::fabs
    - ext::shared_ptr::size
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - DouglasScheme::DouglasScheme
    - ext::shared_ptr::step
    - Size
    - value
    - std::exp
    - Array::end
    - locations
    - localVol
    - push_back
    - std::max
    - ext::shared_ptr::locations
    - ext::make_shared<FdmLocalVolFwdOp>
    - Concentrating1dMesher::Concentrating1dMesher
    - row_begin
    - QL_REQUIRE
    - Array::front
    - std::make_pair
    - pSpline
    - std::log
    - at
    - std::copy
    - resize
    - discount
    - Array::size
    - std::max_element
    - std::sqrt
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void LocalVolRNDCalculator::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 338
    functionName: QuantLib::LocalVolRNDCalculator::rescaleTimeSteps
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LocalVolRNDCalculator::rescaleTimeSteps() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:342,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:344,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - idx
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 349
    functionName: QuantLib::LocalVolRNDCalculator::probabilityInterpolation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 2
    functionsReached:
    - locations
    - calculate
    linkageType: ''
    returnType: Real
    signature: "Real LocalVolRNDCalculator::probabilityInterpolation(\n        Size
      idx, Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' p'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionName: QuantLib::LocalVolRNDCalculator::rescalePDF
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/utilities/localvolrndcalculator.cpp
    functionUses: 2
    functionsReached:
    - DiscreteSimpsonIntegral
    linkageType: ''
    returnType: Array
    signature: Array LocalVolRNDCalculator::rescalePDF(const Array& x, const Array&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:39,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:48,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - start
    - end
    - size
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::Uniform1dMesher::Uniform1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp
    functionUses: 0
    functionsReached:
    - front
    - back
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Uniform1dMesher(Real start, Real end, Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:39,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:48,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - start
    - end
    - size
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::Uniform1dMesher::Uniform1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniform1dmesher.hpp
    functionUses: 0
    functionsReached:
    - front
    - back
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Uniform1dMesher(Real start, Real end, Size size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:63,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:66,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:67,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:70,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:71,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: std::lround
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: static_cast<long>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:82,1
    - Dst: ext::shared_ptr<Interpolation>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:83,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: LinearInterpolation::LinearInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: std::sinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:90,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:99,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:100,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 5
    argNames:
    - start
    - end
    - size
    - ' cPoints'
    - requireCPoint
    argTypes:
    - Real
    - Real
    - Size
    - std::pair<Real, Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 106
    functionName: QuantLib::Concentrating1dMesher::Concentrating1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - close
    - back
    - std::vector::begin
    - Null<Real>
    - std::vector::end
    - std::min
    - push_back
    - begin
    - std::max
    - ext::shared_ptr<Interpolation>
    - LinearInterpolation::LinearInterpolation
    - std::sinh
    - static_cast<long>
    - std::asinh
    - front
    - std::lround
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Concentrating1dMesher::Concentrating1dMesher(\n        Real start,
      Real end, Size size, const std::pair<Real, Real>& cPoints,\n        const bool
      requireCPoint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' points'
    - ' betas'
    - tol
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::OdeIntegrationFct::OdeIntegrationFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OdeIntegrationFct(const std::vector<Real>& points,\n                              const
      std::vector<Real>& betas,\n                              Real tol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OdeIntegrationFct::jac
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:117,1
    - Dst: rk_
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - a
    - y0
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::OdeIntegrationFct::solve
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OdeIntegrationFct::jac
    - rk_
    linkageType: ''
    returnType: Real
    signature: Real solve(Real a, Real y0, Real x0, Real x1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:124,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: QuantLib::OdeIntegrationFct::jac
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real jac(Real a, Real, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::equal_on_first
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: "bool equal_on_first(const std::pair<Real, Real>& p1,\n                            const
      std::pair<Real, Real>& p2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' points'
    - ' betas'
    - tol
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::OdeIntegrationFct::OdeIntegrationFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OdeIntegrationFct(const std::vector<Real>& points,\n                              const
      std::vector<Real>& betas,\n                              Real tol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OdeIntegrationFct::jac
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:117,1
    - Dst: rk_
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - a
    - y0
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::OdeIntegrationFct::solve
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OdeIntegrationFct::jac
    - rk_
    linkageType: ''
    returnType: Real
    signature: Real solve(Real a, Real y0, Real x0, Real x1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:124,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: QuantLib::OdeIntegrationFct::jac
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 2
    functionsReached:
    - size
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real jac(Real a, Real, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::equal_on_first
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: "bool equal_on_first(const std::pair<Real, Real>& p1,\n                            const
      std::pair<Real, Real>& p2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:147,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:151,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:151,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:157,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:158,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:159,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:160,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:164,1
    - Dst: OdeIntegrationFct::solve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:165,1
    - Dst: OdeIntegrationFct::solve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:174,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:178,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:186,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:188,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:189,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:191,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:191,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:194,1
    - Dst: odeSolution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:195,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:198,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:198,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:201,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:205,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:205,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:206,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: odeSolution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:213,1
    - Dst: transform
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:213,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 5
    argNames:
    - start
    - end
    - size
    - ' cPoints'
    - tol
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<std::tuple<Real, Real, bool> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 220
    functionName: QuantLib::Concentrating1dMesher::Concentrating1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - back
    - std::vector::push_back
    - std::vector::emplace_back
    - squared
    - std::sort
    - Array::begin
    - begin
    - std::asinh
    - std::get<2>
    - std::min
    - std::vector::erase
    - front
    - Array::end
    - odeSolution
    - Null<Real>
    - push_back
    - std::get<0>
    - end
    - std::vector::size
    - std::distance
    - QL_REQUIRE
    - std::lower_bound
    - transform
    - std::make_pair
    - Brent
    - std::vector::begin
    - OdeIntegrationFct::solve
    - std::vector::end
    - std::unique
    linkageType: ''
    returnType: void
    signature: "void Concentrating1dMesher::Concentrating1dMesher(\n        Real start,
      Real end, Size size,\n        const std::vector<std::tuple<Real, Real, bool>
      >& cPoints,\n        Real tol)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:52,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:63,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:66,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:67,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:70,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:71,1
    - Dst: close
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: std::lround
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:74,1
    - Dst: static_cast<long>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:82,1
    - Dst: ext::shared_ptr<Interpolation>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:83,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: LinearInterpolation::LinearInterpolation
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:84,1
    - Dst: std::sinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:90,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:99,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:100,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:105,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 5
    argNames:
    - start
    - end
    - size
    - ' cPoints'
    - requireCPoint
    argTypes:
    - Real
    - Real
    - Size
    - std::pair<Real, Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 106
    functionName: QuantLib::Concentrating1dMesher::Concentrating1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - close
    - back
    - std::vector::begin
    - Null<Real>
    - std::vector::end
    - std::min
    - push_back
    - begin
    - std::max
    - ext::shared_ptr<Interpolation>
    - LinearInterpolation::LinearInterpolation
    - std::sinh
    - static_cast<long>
    - std::asinh
    - front
    - std::lround
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Concentrating1dMesher::Concentrating1dMesher(\n        Real start,
      Real end, Size size, const std::pair<Real, Real>& cPoints,\n        const bool
      requireCPoint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' points'
    - ' betas'
    - tol
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::OdeIntegrationFct::OdeIntegrationFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OdeIntegrationFct(const std::vector<Real>& points,\n                              const
      std::vector<Real>& betas,\n                              Real tol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OdeIntegrationFct::jac
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:117,1
    - Dst: rk_
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - a
    - y0
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::OdeIntegrationFct::solve
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OdeIntegrationFct::jac
    - rk_
    linkageType: ''
    returnType: Real
    signature: Real solve(Real a, Real y0, Real x0, Real x1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:124,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: QuantLib::OdeIntegrationFct::jac
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real jac(Real a, Real, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::equal_on_first
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: "bool equal_on_first(const std::pair<Real, Real>& p1,\n                            const
      std::pair<Real, Real>& p2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' points'
    - ' betas'
    - tol
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::OdeIntegrationFct::OdeIntegrationFct
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OdeIntegrationFct(const std::vector<Real>& points,\n                              const
      std::vector<Real>& betas,\n                              Real tol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OdeIntegrationFct::jac
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:117,1
    - Dst: rk_
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - a
    - y0
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::OdeIntegrationFct::solve
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OdeIntegrationFct::jac
    - rk_
    linkageType: ''
    returnType: Real
    signature: Real solve(Real a, Real y0, Real x0, Real x1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:124,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: QuantLib::OdeIntegrationFct::jac
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 4
    functionsReached:
    - size
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real jac(Real a, Real, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::equal_on_first
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: "bool equal_on_first(const std::pair<Real, Real>& p1,\n                            const
      std::pair<Real, Real>& p2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:147,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:151,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:151,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:152,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:157,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:158,1
    - Dst: std::asinh
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:159,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:160,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:164,1
    - Dst: OdeIntegrationFct::solve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:165,1
    - Dst: OdeIntegrationFct::solve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:174,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:178,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:183,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:186,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:188,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:189,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:191,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:191,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:192,1
    - Dst: Brent
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:194,1
    - Dst: odeSolution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:195,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:198,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:198,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:201,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:202,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::unique
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:203,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:205,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:205,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:206,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:210,1
    - Dst: odeSolution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:213,1
    - Dst: transform
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:213,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp:219,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 5
    argNames:
    - start
    - end
    - size
    - ' cPoints'
    - tol
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<std::tuple<Real, Real, bool> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 220
    functionName: QuantLib::Concentrating1dMesher::Concentrating1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/concentrating1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - back
    - std::vector::push_back
    - std::vector::emplace_back
    - squared
    - std::sort
    - Array::begin
    - begin
    - std::asinh
    - std::get<2>
    - std::min
    - std::vector::erase
    - front
    - Array::end
    - odeSolution
    - Null<Real>
    - push_back
    - std::get<0>
    - end
    - std::vector::size
    - std::distance
    - QL_REQUIRE
    - std::lower_bound
    - transform
    - std::make_pair
    - Brent
    - std::vector::begin
    - OdeIntegrationFct::solve
    - std::vector::end
    - std::unique
    linkageType: ''
    returnType: void
    signature: "void Concentrating1dMesher::Concentrating1dMesher(\n        Real start,
      Real end, Size size,\n        const std::vector<std::tuple<Real, Real, bool>
      >& cPoints,\n        Real tol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:37,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:38,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:42,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:43,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:43,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:44,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:46,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:48,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:49,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:49,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:50,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:59,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:59,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:62,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 6
    argNames:
    - size
    - ' process'
    - maturity
    - tAvgSteps
    - eps
    - mandatoryPoint
    argTypes:
    - Size
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - back
    - Null<Real>
    - begin
    - std::max
    - std::transform
    - front
    - x0
    - end
    - InverseCumulativeNormal
    - evolve
    - std::min
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher(\n        Size
      size,\n        const ext::shared_ptr<StochasticProcess1D>& process,\n        Time
      maturity, Size tAvgSteps, Real eps, Real mandatoryPoint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:33,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:37,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:38,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:42,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:43,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:43,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:44,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:46,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:48,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:49,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:49,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:50,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:59,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:59,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:62,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 6
    argNames:
    - size
    - ' process'
    - maturity
    - tAvgSteps
    - eps
    - mandatoryPoint
    argTypes:
    - Size
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmsimpleprocess1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - back
    - Null<Real>
    - begin
    - std::max
    - std::transform
    - front
    - x0
    - end
    - InverseCumulativeNormal
    - evolve
    - std::min
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher(\n        Size
      size,\n        const ext::shared_ptr<StochasticProcess1D>& process,\n        Time
      maturity, Size tAvgSteps, Real eps, Real mandatoryPoint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - layout
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::FdmMesher::FdmMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmMesher(ext::shared_ptr<FdmLinearOpLayout> layout)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~FdmMesher()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmMesher()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& layout() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: ext::shared_ptr<FdmLinearOpLayout> & layout() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - layout
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::FdmMesher::FdmMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmMesher(ext::shared_ptr<FdmLinearOpLayout> layout)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~FdmMesher()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmMesher()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& layout() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: ext::shared_ptr<FdmLinearOpLayout> & layout() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmHestonVarianceMesher::volaEstimate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volaEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmHestonLocalVolatilityVarianceMesher::volaEstimate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volaEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmHestonVarianceMesher::volaEstimate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volaEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmHestonLocalVolatilityVarianceMesher::volaEstimate
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volaEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' pGrid'
    - ' vGrid'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::interpolated_volatility
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void interpolated_volatility(const std::vector<Real>& pGrid,\n                                    const
      std::vector<Real>& vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' pGrid'
    - ' vGrid'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::interpolated_volatility
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void interpolated_volatility(const std::vector<Real>& pGrid,\n                                    const
      std::vector<Real>& vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:57,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:70,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:70,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:71,1
    - Dst: std::multiset::insert
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:78,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:78,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:83,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:86,1
    - Dst: NonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:87,1
    - Dst: std::multiset::insert
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:89,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:92,1
    - Dst: std::multiset::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:92,1
    - Dst: std::multiset::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:95,1
    - Dst: std::multiset::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:95,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:111,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:112,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:112,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:122,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:126,1
    - Dst: interpolated_volatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:127,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:130,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:131,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:133,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 6
    argNames:
    - size
    - ' process'
    - maturity
    - tAvgSteps
    - epsilon
    - mixingFactor
    argTypes:
    - Size
    - ext::shared_ptr<HestonProcess>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmHestonVarianceMesher::FdmHestonVarianceMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - GaussLobattoIntegral
    - v0
    - theta
    - Real
    - NonCentralCumulativeChiSquareDistribution
    - std::multiset::begin
    - back
    - std::multiset::end
    - squared
    - std::sort
    - begin
    - std::pow
    - std::multiset::size
    - std::fabs
    - std::min
    - front
    - sigma
    - std::pair<Real, Real>
    - std::exp
    - std::multiset::insert
    - Null<Real>
    - std::max
    - std::vector::size
    - end
    - QL_REQUIRE
    - interpolated_volatility
    - std::copy
    - std::vector::begin
    - std::vector::end
    - std::sqrt
    - InverseNonCentralCumulativeChiSquareDistribution
    linkageType: ''
    returnType: void
    signature: "void FdmHestonVarianceMesher::FdmHestonVarianceMesher(\n        Size
      size,\n        const ext::shared_ptr<HestonProcess> & process,\n        Time
      maturity, Size tAvgSteps, Real epsilon,\n        Real mixingFactor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmHestonVarianceMesher::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:161,1
    - Dst: FdmHestonVarianceMesher::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:162,1
    - Dst: FdmHestonVarianceMesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:163,1
    - Dst: FdmHestonVarianceMesher::volaEstimate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:166,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:176,1
    - Dst: acc
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:178,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:178,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:180,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:181,1
    - Dst: QuantLib::detail::remove_mean
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:185,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:187,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:187,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:195,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:198,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:200,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:200,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:204,1
    - Dst: interpolated_volatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: acc
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:208,1
    - Dst: QuantLib::detail::remove_mean
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 7
    argNames:
    - size
    - ' process'
    - ' leverageFct'
    - maturity
    - tAvgSteps
    - epsilon
    - mixingFactor
    argTypes:
    - Size
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<LocalVolTermStructure>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 212
    functionName: QuantLib::FdmHestonLocalVolatilityVarianceMesher::FdmHestonLocalVolatilityVarianceMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - FdmHestonVarianceMesher::volaEstimate
    - Handle::discount
    - QuantLib::detail::remove_mean
    - FdmHestonVarianceMesher::location
    - dividendYield
    - s0
    - FdmHestonVarianceMesher::dplus
    - squared
    - std::vector::front
    - InverseCumulativeNormal
    - std::exp
    - localVol
    - acc
    - interpolated_volatility
    - riskFreeRate
    - FdmHestonVarianceMesher::dminus
    - std::sqrt
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: "void FdmHestonLocalVolatilityVarianceMesher::FdmHestonLocalVolatilityVarianceMesher(\n
      \       Size size,\n        const ext::shared_ptr<HestonProcess>& process,\n
      \       const ext::shared_ptr<LocalVolTermStructure>& leverageFct,\n        Time
      maturity, Size tAvgSteps, Real epsilon,\n        Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' pGrid'
    - ' vGrid'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::interpolated_volatility
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void interpolated_volatility(const std::vector<Real>& pGrid,\n                                    const
      std::vector<Real>& vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' pGrid'
    - ' vGrid'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::interpolated_volatility
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void interpolated_volatility(const std::vector<Real>& pGrid,\n                                    const
      std::vector<Real>& vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:57,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:58,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:67,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:70,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:70,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:71,1
    - Dst: std::multiset::insert
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:78,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:78,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:83,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:86,1
    - Dst: NonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:87,1
    - Dst: std::multiset::insert
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:89,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:92,1
    - Dst: std::multiset::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:92,1
    - Dst: std::multiset::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:95,1
    - Dst: std::multiset::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:95,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:109,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:111,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:112,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:112,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:114,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:122,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:123,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:125,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:126,1
    - Dst: interpolated_volatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:127,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:128,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:130,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:131,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:133,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:140,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:145,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 6
    argNames:
    - size
    - ' process'
    - maturity
    - tAvgSteps
    - epsilon
    - mixingFactor
    argTypes:
    - Size
    - ext::shared_ptr<HestonProcess>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmHestonVarianceMesher::FdmHestonVarianceMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - GaussLobattoIntegral
    - v0
    - theta
    - Real
    - NonCentralCumulativeChiSquareDistribution
    - std::multiset::begin
    - back
    - std::multiset::end
    - squared
    - std::sort
    - begin
    - std::pow
    - std::multiset::size
    - std::fabs
    - std::min
    - front
    - sigma
    - std::pair<Real, Real>
    - std::exp
    - std::multiset::insert
    - Null<Real>
    - std::max
    - std::vector::size
    - end
    - QL_REQUIRE
    - interpolated_volatility
    - std::copy
    - std::vector::begin
    - std::vector::end
    - std::sqrt
    - InverseNonCentralCumulativeChiSquareDistribution
    linkageType: ''
    returnType: void
    signature: "void FdmHestonVarianceMesher::FdmHestonVarianceMesher(\n        Size
      size,\n        const ext::shared_ptr<HestonProcess> & process,\n        Time
      maturity, Size tAvgSteps, Real epsilon,\n        Real mixingFactor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmHestonVarianceMesher::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:161,1
    - Dst: FdmHestonVarianceMesher::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:162,1
    - Dst: FdmHestonVarianceMesher::location
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:163,1
    - Dst: FdmHestonVarianceMesher::volaEstimate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:166,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:176,1
    - Dst: acc
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:178,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:178,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:180,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:181,1
    - Dst: QuantLib::detail::remove_mean
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:185,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:187,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:187,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:195,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:198,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:200,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:200,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:204,1
    - Dst: interpolated_volatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:205,1
    - Dst: acc
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:208,1
    - Dst: QuantLib::detail::remove_mean
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 7
    argNames:
    - size
    - ' process'
    - ' leverageFct'
    - maturity
    - tAvgSteps
    - epsilon
    - mixingFactor
    argTypes:
    - Size
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<LocalVolTermStructure>
    - Time
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 212
    functionName: QuantLib::FdmHestonLocalVolatilityVarianceMesher::FdmHestonLocalVolatilityVarianceMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmhestonvariancemesher.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - FdmHestonVarianceMesher::volaEstimate
    - Handle::discount
    - QuantLib::detail::remove_mean
    - FdmHestonVarianceMesher::location
    - dividendYield
    - s0
    - FdmHestonVarianceMesher::dplus
    - squared
    - std::vector::front
    - InverseCumulativeNormal
    - std::exp
    - localVol
    - acc
    - interpolated_volatility
    - riskFreeRate
    - FdmHestonVarianceMesher::dminus
    - std::sqrt
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: "void FdmHestonLocalVolatilityVarianceMesher::FdmHestonLocalVolatilityVarianceMesher(\n
      \       Size size,\n        const ext::shared_ptr<HestonProcess>& process,\n
      \       const ext::shared_ptr<LocalVolTermStructure>& leverageFct,\n        Time
      maturity, Size tAvgSteps, Real epsilon,\n        Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:38,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:47,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - steps
    - beta
    - jumpIntensity
    - eta
    - eps
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: QuantLib::ExponentialJump1dMesher::ExponentialJump1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::exp
    - std::log
    - Null<Real>
    - back
    - front
    linkageType: ''
    returnType: void
    signature: "void ExponentialJump1dMesher::ExponentialJump1dMesher(\n          Size
      steps, Real beta, Real jumpIntensity, Real eta, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:59,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:61,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:61,1
    - Dst: incompleteGammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:63,1
    - Dst: incompleteGammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:64,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - incompleteGammaFunction
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDensity(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:72,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDensity(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:78,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:80,1
    - Dst: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDistribution
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - GaussLobattoIntegral
    - QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDistribution(Real x, Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:89,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:92,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:94,1
    - Dst: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:95,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 97
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDistribution
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - std::exp
    - QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    - GammaFunction
    - std::max
    - std::pow
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDistribution(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:38,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:47,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - steps
    - beta
    - jumpIntensity
    - eta
    - eps
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: QuantLib::ExponentialJump1dMesher::ExponentialJump1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::exp
    - std::log
    - Null<Real>
    - back
    - front
    linkageType: ''
    returnType: void
    signature: "void ExponentialJump1dMesher::ExponentialJump1dMesher(\n          Size
      steps, Real beta, Real jumpIntensity, Real eta, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:59,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:61,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:61,1
    - Dst: incompleteGammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:63,1
    - Dst: incompleteGammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:64,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - incompleteGammaFunction
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDensity(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:72,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDensity(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:78,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:80,1
    - Dst: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDistribution
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - GaussLobattoIntegral
    - QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDistribution(Real x, Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:89,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:92,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:94,1
    - Dst: QuantLib::ExponentialJump1dMesher::jumpSizeDensity
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:95,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 97
    functionName: QuantLib::ExponentialJump1dMesher::jumpSizeDistribution
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/exponentialjump1dmesher.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - std::exp
    - QuantLib::ExponentialJump1dMesher::jumpSizeDensity
    - GammaFunction
    - std::max
    - std::pow
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real ExponentialJump1dMesher::jumpSizeDistribution(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:43,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:46,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:53,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:56,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:59,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:62,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:65,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:65,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:66,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:75,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:77,1
    - Dst: std::pair<Real,Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:79,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:78,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:82,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:83,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:88,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:89,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 7
    argNames:
    - size
    - ' process'
    - maturity
    - ' strikes'
    - eps
    - scaleFactor
    - ' cPoint'
    argTypes:
    - Size
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Time
    - std::vector<Real>
    - Real
    - Real
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - begin
    - std::pair<Real,Real>
    - size
    - ext::shared_ptr::dminus
    - x0
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - Null<Real>
    - std::max
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - end
    - QL_REQUIRE
    - blackVolatility
    - ext::shared_ptr::dplus
    - std::log
    - Uniform1dMesher::Uniform1dMesher
    - riskFreeRate
    - std::max_element
    - std::sqrt
    - std::min_element
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher(\n
      \           Size size,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n            Time maturity, const std::vector<Real>& strikes,\n            Real
      eps, Real scaleFactor,\n            const std::pair<Real, Real>& cPoint)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:43,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:46,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:47,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:53,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:56,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:59,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:61,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:62,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:65,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:65,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:66,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:75,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:77,1
    - Dst: std::pair<Real,Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:79,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:78,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:82,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:83,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:88,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:89,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 7
    argNames:
    - size
    - ' process'
    - maturity
    - ' strikes'
    - eps
    - scaleFactor
    - ' cPoint'
    argTypes:
    - Size
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Time
    - std::vector<Real>
    - Real
    - Real
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmultistrikemesher.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - begin
    - std::pair<Real,Real>
    - size
    - ext::shared_ptr::dminus
    - x0
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - Null<Real>
    - std::max
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - end
    - QL_REQUIRE
    - blackVolatility
    - ext::shared_ptr::dplus
    - std::log
    - Uniform1dMesher::Uniform1dMesher
    - riskFreeRate
    - std::max_element
    - std::sqrt
    - std::min_element
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher(\n
      \           Size size,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n            Time maturity, const std::vector<Real>& strikes,\n            Real
      eps, Real scaleFactor,\n            const std::pair<Real, Real>& cPoint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: QuantLib::Fdm1dMesher::Fdm1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Fdm1dMesher(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~Fdm1dMesher()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Fdm1dMesher()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm1dMesher::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::Fdm1dMesher::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm1dMesher::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Fdm1dMesher::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dplus(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Fdm1dMesher::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dminus(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::Fdm1dMesher::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real location(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& locations() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & locations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: QuantLib::Fdm1dMesher::Fdm1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Fdm1dMesher(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~Fdm1dMesher()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Fdm1dMesher()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm1dMesher::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::Fdm1dMesher::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm1dMesher::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Fdm1dMesher::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dplus(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Fdm1dMesher::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dminus(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::Fdm1dMesher::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real location(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& locations() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdm1dmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & locations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:33,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:34,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' meshers'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::getLayoutFromMeshers
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmLinearOpLayout>
    - QuantLib::size
    - std::vector::size
    - std::move
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: "ext::shared_ptr<FdmLinearOpLayout> getLayoutFromMeshers(\n                 const
      std::vector<ext::shared_ptr<Fdm1dMesher> > & meshers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:33,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:34,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' meshers'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::getLayoutFromMeshers
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmLinearOpLayout>
    - QuantLib::size
    - std::vector::size
    - std::move
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: "ext::shared_ptr<FdmLinearOpLayout> getLayoutFromMeshers(\n                 const
      std::vector<ext::shared_ptr<Fdm1dMesher> > & meshers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - ' m3'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2,\n        const ext::shared_ptr<Fdm1dMesher>&
      m3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' m1'
    - ' m2'
    - ' m3'
    - ' m4'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2,\n        const ext::shared_ptr<Fdm1dMesher>&
      m3,\n        const ext::shared_ptr<Fdm1dMesher>& m4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const std::vector<ext::shared_ptr<Fdm1dMesher>
      > & mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' layout'
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 84
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - size
    - dim
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<FdmLinearOpLayout>&
      layout,\n        const std::vector<ext::shared_ptr<Fdm1dMesher> > & mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:88,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmMesherComposite::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 1
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::dplus
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::dplus(const FdmLinearOpIterator& iter,\n
      \                                  Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:93,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmMesherComposite::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 1
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::dminus
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::dminus(const FdmLinearOpIterator& iter,\n
      \                                   Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::location
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:98,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::FdmMesherComposite::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 1
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::location
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::location(const FdmLinearOpIterator& iter,\n
      \                                     Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:102,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:105,1
    - Dst: QuantLib::FdmMesherComposite::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:106,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmMesherComposite::locations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 1
    functionsReached:
    - size
    - index
    - QuantLib::FdmMesherComposite::locations
    - coordinates
    linkageType: ''
    returnType: Array
    signature: Array FdmMesherComposite::locations(Size direction) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: "&\n        FdmMesherComposite::getFdm1dMeshers() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<Fdm1dMesher> >
    signature: "std::vector<ext::shared_ptr<Fdm1dMesher> > &\n        FdmMesherComposite::getFdm1dMeshers()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:33,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:34,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' meshers'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::getLayoutFromMeshers
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmLinearOpLayout>
    - QuantLib::size
    - std::vector::size
    - std::move
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: "ext::shared_ptr<FdmLinearOpLayout> getLayoutFromMeshers(\n                 const
      std::vector<ext::shared_ptr<Fdm1dMesher> > & meshers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:33,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:34,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' meshers'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::getLayoutFromMeshers
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmLinearOpLayout>
    - QuantLib::size
    - std::vector::size
    - std::move
    linkageType: ''
    returnType: ext::shared_ptr<FdmLinearOpLayout>
    signature: "ext::shared_ptr<FdmLinearOpLayout> getLayoutFromMeshers(\n                 const
      std::vector<ext::shared_ptr<Fdm1dMesher> > & meshers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' m1'
    - ' m2'
    - ' m3'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2,\n        const ext::shared_ptr<Fdm1dMesher>&
      m3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' m1'
    - ' m2'
    - ' m3'
    - ' m4'
    argTypes:
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr<Fdm1dMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<Fdm1dMesher>&
      m1,\n        const ext::shared_ptr<Fdm1dMesher>& m2,\n        const ext::shared_ptr<Fdm1dMesher>&
      m3,\n        const ext::shared_ptr<Fdm1dMesher>& m4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getLayoutFromMeshers
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - getLayoutFromMeshers
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const std::vector<ext::shared_ptr<Fdm1dMesher>
      > & mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' layout'
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - std::vector<ext::shared_ptr<Fdm1dMesher> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 84
    functionName: QuantLib::FdmMesherComposite::FdmMesherComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached:
    - size
    - dim
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmMesherComposite::FdmMesherComposite(\n        const ext::shared_ptr<FdmLinearOpLayout>&
      layout,\n        const std::vector<ext::shared_ptr<Fdm1dMesher> > & mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:88,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmMesherComposite::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 2
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::dplus
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::dplus(const FdmLinearOpIterator& iter,\n
      \                                  Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:93,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmMesherComposite::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 2
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::dminus
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::dminus(const FdmLinearOpIterator& iter,\n
      \                                   Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmMesherComposite::location
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:98,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::FdmMesherComposite::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 2
    functionsReached:
    - coordinates
    - QuantLib::FdmMesherComposite::location
    linkageType: ''
    returnType: Real
    signature: "Real FdmMesherComposite::location(const FdmLinearOpIterator& iter,\n
      \                                     Size direction) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:102,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:105,1
    - Dst: QuantLib::FdmMesherComposite::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:106,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmMesherComposite::locations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 2
    functionsReached:
    - size
    - index
    - QuantLib::FdmMesherComposite::locations
    - coordinates
    linkageType: ''
    returnType: Array
    signature: Array FdmMesherComposite::locations(Size direction) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: "&\n        FdmMesherComposite::getFdm1dMeshers() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmmeshercomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<Fdm1dMesher> >
    signature: "std::vector<ext::shared_ptr<Fdm1dMesher> > &\n        FdmMesherComposite::getFdm1dMeshers()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:37,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::Predefined1dMesher::Predefined1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Null<Real>
    - begin
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: void Predefined1dMesher(const std::vector<Real>& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:37,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::Predefined1dMesher::Predefined1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/predefined1dmesher.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Null<Real>
    - begin
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: void Predefined1dMesher(const std::vector<Real>& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::UniformGridMesher::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dplus(const FdmLinearOpIterator&, Size direction) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::UniformGridMesher::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dminus(const FdmLinearOpIterator&, Size direction) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::UniformGridMesher::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached:
    - coordinates
    linkageType: ''
    returnType: Real
    signature: Real location(const FdmLinearOpIterator& iter, Size direction) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::UniformGridMesher::dplus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dplus(const FdmLinearOpIterator&, Size direction) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - direction
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::UniformGridMesher::dminus
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dminus(const FdmLinearOpIterator&, Size direction) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - direction
    argTypes:
    - FdmLinearOpIterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::UniformGridMesher::location
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.hpp
    functionUses: 0
    functionsReached:
    - coordinates
    linkageType: ''
    returnType: Real
    signature: Real location(const FdmLinearOpIterator& iter, Size direction) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:31,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:31,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:37,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:39,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:41,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:41,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' layout'
    - ' boundaries'
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - std::vector<std::pair<Real, Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: QuantLib::UniformGridMesher::UniformGridMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - dim
    - Real::Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void UniformGridMesher::UniformGridMesher(\n        const ext::shared_ptr<FdmLinearOpLayout>
      & layout,\n        const std::vector<std::pair<Real, Real> > & boundaries)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:49,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:52,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: QuantLib::UniformGridMesher::locations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp
    functionUses: 0
    functionsReached:
    - size
    - index
    - coordinates
    linkageType: ''
    returnType: Array
    signature: Array UniformGridMesher::locations(Size d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:31,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:31,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:34,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:37,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:39,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:41,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:41,1
    - Dst: dim
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' layout'
    - ' boundaries'
    argTypes:
    - ext::shared_ptr<FdmLinearOpLayout>
    - std::vector<std::pair<Real, Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: QuantLib::UniformGridMesher::UniformGridMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - dim
    - Real::Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void UniformGridMesher::UniformGridMesher(\n        const ext::shared_ptr<FdmLinearOpLayout>
      & layout,\n        const std::vector<std::pair<Real, Real> > & boundaries)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:49,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:52,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: QuantLib::UniformGridMesher::locations
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/uniformgridmesher.cpp
    functionUses: 0
    functionsReached:
    - size
    - index
    - coordinates
    linkageType: ''
    returnType: Array
    signature: Array UniformGridMesher::locations(Size d) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:49,1
    - Dst: time
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:53,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:53,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:58,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:58,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:60,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:64,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:68,1
    - Dst: ext::make_shared<QuantoTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:69,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:70,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:71,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:73,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:83,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:83,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:84,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:84,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:86,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:90,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:96,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:107,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:113,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:115,1
    - Dst: std::pair<Real,Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:117,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:117,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:116,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:121,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:122,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:127,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:128,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:129,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 12
    argNames:
    - size
    - ' process'
    - maturity
    - strike
    - xMinConstraint
    - xMaxConstraint
    - eps
    - scaleFactor
    - ' cPoint'
    - ' dividendSchedule'
    - ' fdmQuantoHelper'
    - spotAdjustment
    argTypes:
    - Size
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::pair<Real, Real>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 131
    functionName: QuantLib::FdmBlackScholesMesher::FdmBlackScholesMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp
    functionUses: 0
    functionsReached:
    - Handle::discount
    - std::max<Size>
    - std::vector::emplace_back
    - dividendYield
    - Handle<BlackVolTermStructure>
    - date
    - std::sort
    - std::pair<Real,Real>
    - size
    - ext::shared_ptr::dminus
    - x0
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - Size
    - Null<Real>
    - time
    - std::max
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    - blackVolatility
    - ext::shared_ptr::dplus
    - ext::make_shared<QuantoTermStructure>
    - std::log
    - std::vector::begin
    - Uniform1dMesher::Uniform1dMesher
    - std::vector::end
    - riskFreeRate
    - std::sqrt
    - amount
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesMesher::FdmBlackScholesMesher(\n        Size size,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n        Time
      maturity, Real strike,\n        Real xMinConstraint, Real xMaxConstraint,\n
      \       Real eps, Real scaleFactor,\n        const std::pair<Real, Real>& cPoint,\n
      \       const DividendSchedule& dividendSchedule,\n        const ext::shared_ptr<FdmQuantoHelper>&
      fdmQuantoHelper,\n        Real spotAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:139,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:142,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:143,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:144,1
    - Dst: Calendar
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:145,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:147,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' s0'
    - ' rTS'
    - ' qTS'
    - vol
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 148
    functionName: QuantLib::FdmBlackScholesMesher::processHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp
    functionUses: 0
    functionsReached:
    - Handle<BlackVolTermStructure>
    - referenceDate
    - dayCounter
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<BlackVolTermStructure>
    - BlackConstantVol::BlackConstantVol
    - Calendar
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> FdmBlackScholesMesher::processHelper(const
      Handle<Quote>& s0,\n                                         const Handle<YieldTermStructure>&
      rTS,\n                                         const Handle<YieldTermStructure>&
      qTS,\n                                         Volatility vol)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:49,1
    - Dst: time
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:53,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:53,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: date
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: amount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:55,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:58,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:58,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:60,1
    - Dst: std::sort
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:62,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:64,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:68,1
    - Dst: ext::make_shared<QuantoTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:69,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:70,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:71,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:73,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:83,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:83,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:84,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:84,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:86,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:90,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:96,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:104,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:107,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:113,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:113,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:115,1
    - Dst: std::pair<Real,Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:117,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:117,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:116,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:121,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:122,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:127,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:128,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:129,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 12
    argNames:
    - size
    - ' process'
    - maturity
    - strike
    - xMinConstraint
    - xMaxConstraint
    - eps
    - scaleFactor
    - ' cPoint'
    - ' dividendSchedule'
    - ' fdmQuantoHelper'
    - spotAdjustment
    argTypes:
    - Size
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::pair<Real, Real>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 131
    functionName: QuantLib::FdmBlackScholesMesher::FdmBlackScholesMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp
    functionUses: 0
    functionsReached:
    - Handle::discount
    - std::max<Size>
    - std::vector::emplace_back
    - dividendYield
    - Handle<BlackVolTermStructure>
    - date
    - std::sort
    - std::pair<Real,Real>
    - size
    - ext::shared_ptr::dminus
    - x0
    - InverseCumulativeNormal
    - ext::shared_ptr<Fdm1dMesher>
    - std::min
    - Size
    - Null<Real>
    - time
    - std::max
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    - blackVolatility
    - ext::shared_ptr::dplus
    - ext::make_shared<QuantoTermStructure>
    - std::log
    - std::vector::begin
    - Uniform1dMesher::Uniform1dMesher
    - std::vector::end
    - riskFreeRate
    - std::sqrt
    - amount
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesMesher::FdmBlackScholesMesher(\n        Size size,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n        Time
      maturity, Real strike,\n        Real xMinConstraint, Real xMaxConstraint,\n
      \       Real eps, Real scaleFactor,\n        const std::pair<Real, Real>& cPoint,\n
      \       const DividendSchedule& dividendSchedule,\n        const ext::shared_ptr<FdmQuantoHelper>&
      fdmQuantoHelper,\n        Real spotAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:139,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:142,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:143,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:144,1
    - Dst: Calendar
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:145,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:147,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' s0'
    - ' rTS'
    - ' qTS'
    - vol
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 148
    functionName: QuantLib::FdmBlackScholesMesher::processHelper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmblackscholesmesher.cpp
    functionUses: 0
    functionsReached:
    - Handle<BlackVolTermStructure>
    - referenceDate
    - dayCounter
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<BlackVolTermStructure>
    - BlackConstantVol::BlackConstantVol
    - Calendar
    linkageType: ''
    returnType: ext::shared_ptr<GeneralizedBlackScholesProcess>
    signature: "ext::shared_ptr<GeneralizedBlackScholesProcess> FdmBlackScholesMesher::processHelper(const
      Handle<Quote>& s0,\n                                         const Handle<YieldTermStructure>&
      rTS,\n                                         const Handle<YieldTermStructure>&
      qTS,\n                                         Volatility vol)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CEVRNDCalculator::invcdf
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:43,1
    - Dst: CEVRNDCalculator::massAtZero
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:45,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:49,1
    - Dst: CEVRNDCalculator::invcdf
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:53,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:56,1
    - Dst: ext::make_shared<Uniform1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:60,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:64,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:64,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:68,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:69,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:70,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 8
    argNames:
    - size
    - f0
    - alpha
    - beta
    - maturity
    - eps
    - scaleFactor
    - ' cPoint'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Time
    - Real
    - Real
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmCEV1dMesher::FdmCEV1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dplus
    - std::copy
    - ext::make_shared<Concentrating1dMesher>
    - Null<Real>
    - ext::shared_ptr::dminus
    - begin
    - CEVRNDCalculator::invcdf
    - Real
    - CEVRNDCalculator::massAtZero
    - ext::shared_ptr::locations
    - size
    - ext::make_shared<Uniform1dMesher>
    linkageType: ''
    returnType: void
    signature: "void FdmCEV1dMesher::FdmCEV1dMesher(\n            Size size,\n            Real
      f0, Real alpha, Real beta,\n            Time maturity, Real eps,Real scaleFactor,\n
      \           const std::pair<Real, Real>& cPoint)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CEVRNDCalculator::invcdf
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:43,1
    - Dst: CEVRNDCalculator::massAtZero
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:45,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:49,1
    - Dst: CEVRNDCalculator::invcdf
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:53,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:56,1
    - Dst: ext::make_shared<Uniform1dMesher>
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:60,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:64,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:64,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:68,1
    - Dst: ext::shared_ptr::dplus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:69,1
    - Dst: ext::shared_ptr::dminus
      Src: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp:70,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 8
    argNames:
    - size
    - f0
    - alpha
    - beta
    - maturity
    - eps
    - scaleFactor
    - ' cPoint'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Time
    - Real
    - Real
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmCEV1dMesher::FdmCEV1dMesher
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/meshers/fdmcev1dmesher.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dplus
    - std::copy
    - ext::make_shared<Concentrating1dMesher>
    - Null<Real>
    - ext::shared_ptr::dminus
    - begin
    - CEVRNDCalculator::invcdf
    - Real
    - CEVRNDCalculator::massAtZero
    - ext::shared_ptr::locations
    - size
    - ext::make_shared<Uniform1dMesher>
    linkageType: ''
    returnType: void
    signature: "void FdmCEV1dMesher::FdmCEV1dMesher(\n            Size size,\n            Real
      f0, Real alpha, Real beta,\n            Time maturity, Real eps,Real scaleFactor,\n
      \           const std::pair<Real, Real>& cPoint)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:35,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:37,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:40,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:41,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:42,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:42,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:45,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - exerciseTimes
    - mesher
    - calculator
    - changeRate
    argTypes:
    - std::vector<Time>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmSimpleStorageCondition::FdmSimpleStorageCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - push_back
    - location
    - coordinates
    - reserve
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleStorageCondition::FdmSimpleStorageCondition(\n        std::vector<Time>
      exerciseTimes,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator,\n        Real changeRate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:57,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:65,1
    - Dst: auto::coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:66,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:70,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:72,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:72,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:73,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:75,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:75,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:79,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:82,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:88,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:91,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:93,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmSimpleStorageCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - auto::coordinates
    - std::copy
    - back
    - auto::index
    - begin
    - layout
    - std::min
    - Real
    - std::max
    - std::upper_bound
    - innerValue
    - interpl
    - std::find
    - front
    - size
    - end
    - Matrix::begin
    linkageType: ''
    returnType: void
    signature: void FdmSimpleStorageCondition::applyTo(Array& a, Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:35,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:37,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:40,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:41,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:42,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:42,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:45,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - exerciseTimes
    - mesher
    - calculator
    - changeRate
    argTypes:
    - std::vector<Time>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmSimpleStorageCondition::FdmSimpleStorageCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - push_back
    - location
    - coordinates
    - reserve
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleStorageCondition::FdmSimpleStorageCondition(\n        std::vector<Time>
      exerciseTimes,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator,\n        Real changeRate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:57,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:65,1
    - Dst: auto::coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:66,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:70,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:72,1
    - Dst: front
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:72,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:73,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:75,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:75,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:79,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:82,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:88,1
    - Dst: interpl
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:91,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:93,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmSimpleStorageCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimplestoragecondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - auto::coordinates
    - std::copy
    - back
    - auto::index
    - begin
    - layout
    - std::min
    - Real
    - std::max
    - std::upper_bound
    - innerValue
    - interpl
    - std::find
    - front
    - size
    - end
    - Matrix::begin
    linkageType: ''
    returnType: void
    signature: void FdmSimpleStorageCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - exerciseTimes
    - mesher
    - calculator
    - swingDirection
    - minExercises
    argTypes:
    - std::vector<Time>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmSimpleSwingCondition::FdmSimpleSwingCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleSwingCondition::FdmSimpleSwingCondition(\n        std::vector<Time>
      exerciseTimes,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator,\n        Size swingDirection,\n        Size minExercises)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:40,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:42,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:50,1
    - Dst: auto::coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:52,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:57,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:58,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:60,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:64,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmSimpleSwingCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - auto::coordinates
    - auto::index
    - begin
    - layout
    - innerValue
    - std::find
    - size
    - end
    - std::distance
    linkageType: ''
    returnType: void
    signature: void FdmSimpleSwingCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - exerciseTimes
    - mesher
    - calculator
    - swingDirection
    - minExercises
    argTypes:
    - std::vector<Time>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmSimpleSwingCondition::FdmSimpleSwingCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimpleSwingCondition::FdmSimpleSwingCondition(\n        std::vector<Time>
      exerciseTimes,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator,\n        Size swingDirection,\n        Size minExercises)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:40,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:42,1
    - Dst: std::distance
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:50,1
    - Dst: auto::coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:52,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:57,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:58,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:60,1
    - Dst: auto::index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp:64,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmSimpleSwingCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsimpleswingcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - auto::coordinates
    - auto::index
    - begin
    - layout
    - innerValue
    - std::find
    - size
    - end
    - std::distance
    linkageType: ''
    returnType: void
    signature: void FdmSimpleSwingCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:48,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - averageTimes
    - pastFixings
    - ' mesher'
    - equityDirection
    argTypes:
    - std::vector<Time>
    - Size
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - locations
    - std::move
    - layout
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmArithmeticAverageCondition::FdmArithmeticAverageCondition(\n
      \       std::vector<Time> averageTimes,\n        Real,\n        Size pastFixings,\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        Size equityDirection)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: std::count
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:69,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:71,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:76,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:82,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:84,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmArithmeticAverageCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::count
    - Array::begin
    - begin
    - std::find
    - size
    - interp
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmArithmeticAverageCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:48,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - averageTimes
    - pastFixings
    - ' mesher'
    - equityDirection
    argTypes:
    - std::vector<Time>
    - Size
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - locations
    - std::move
    - layout
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmArithmeticAverageCondition::FdmArithmeticAverageCondition(\n
      \       std::vector<Time> averageTimes,\n        Real,\n        Size pastFixings,\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        Size equityDirection)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:60,1
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:64,1
    - Dst: std::count
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:69,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:71,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:76,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:82,1
    - Dst: interp
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp:84,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmArithmeticAverageCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmarithmeticaveragecondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::count
    - Array::begin
    - begin
    - std::find
    - size
    - interp
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmArithmeticAverageCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:33,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:35,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:37,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' exerciseDates'
    - ' referenceDate'
    - ' dayCounter'
    - mesher
    - calculator
    argTypes:
    - std::vector<Date>
    - Date
    - DayCounter
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmBermudanStepCondition::FdmBermudanStepCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::move
    - push_back
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void FdmBermudanStepCondition::FdmBermudanStepCondition(\n        const
      std::vector<Date>& exerciseDates,\n        const Date& referenceDate,\n        const
      DayCounter& dayCounter,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: '& FdmBermudanStepCondition::exerciseTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmBermudanStepCondition::exerciseTimes() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:55,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:57,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:59,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:60,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:61,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmBermudanStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - location
    - index
    - innerValue
    - std::find
    - size
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBermudanStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:33,1
    - Dst: reserve
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:35,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:37,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' exerciseDates'
    - ' referenceDate'
    - ' dayCounter'
    - mesher
    - calculator
    argTypes:
    - std::vector<Date>
    - Date
    - DayCounter
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmBermudanStepCondition::FdmBermudanStepCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::move
    - push_back
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void FdmBermudanStepCondition::FdmBermudanStepCondition(\n        const
      std::vector<Date>& exerciseDates,\n        const Date& referenceDate,\n        const
      DayCounter& dayCounter,\n        ext::shared_ptr<FdmMesher> mesher,\n        ext::shared_ptr<FdmInnerValueCalculator>
      calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: '& FdmBermudanStepCondition::exerciseTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmBermudanStepCondition::exerciseTimes() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:55,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:57,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:59,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:60,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp:61,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmBermudanStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmbermudanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - location
    - index
    - innerValue
    - std::find
    - size
    - end
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBermudanStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:38,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:44,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:44,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stoppingTimes'
    - conditions
    argTypes:
    - std::list<std::vector<Time> >
    - Conditions
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmStepConditionComposite::FdmStepConditionComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::move
    - std::set::insert
    - std::set::begin
    - std::vector<Time>
    - end
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void FdmStepConditionComposite::FdmStepConditionComposite(\n        const
      std::list<std::vector<Time> >& stoppingTimes, Conditions conditions)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: "&\n    FdmStepConditionComposite::conditions() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmStepConditionComposite::Conditions
    signature: "FdmStepConditionComposite::Conditions &\n    FdmStepConditionComposite::conditions()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& FdmStepConditionComposite::stoppingTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmStepConditionComposite::stoppingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStepConditionComposite::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmStepConditionComposite::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmStepConditionComposite::applyTo
    linkageType: ''
    returnType: void
    signature: void FdmStepConditionComposite::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:69,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:69,1
    - Dst: std::list::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:70,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:70,1
    - Dst: FdmStepConditionComposite::Conditions::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:73,1
    - Dst: FdmStepConditionComposite::Conditions::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:74,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - ext::shared_ptr<FdmSnapshotCondition>
    - ext::shared_ptr<FdmStepConditionComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmStepConditionComposite::joinConditions
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 10
    functionsReached:
    - FdmStepConditionComposite::Conditions::push_back
    - std::list::push_back
    - ext::make_shared<FdmStepConditionComposite>
    - getTime
    - stoppingTimes
    - std::list::emplace_back
    linkageType: ''
    returnType: ext::shared_ptr<FdmStepConditionComposite>
    signature: "ext::shared_ptr<FdmStepConditionComposite> FdmStepConditionComposite::joinConditions(\n
      \               const ext::shared_ptr<FdmSnapshotCondition>& c1,\n                const
      ext::shared_ptr<FdmStepConditionComposite>& c2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:92,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:94,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:96,1
    - Dst: auto::dividendTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:98,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:99,1
    - Dst: lastDate
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:99,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:103,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:104,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:108,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:112,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:112,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:113,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:114,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:116,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:117,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:117,1
    - Dst: FdmAmericanStepCondition::FdmAmericanStepCondition
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:118,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:120,1
    - Dst: dates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:122,1
    - Dst: FdmBermudanStepCondition::FdmBermudanStepCondition
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:122,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:125,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:126,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:126,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 6
    argNames:
    - ' cashFlow'
    - ' exercise'
    - ' mesher'
    - ' calculator'
    - ' refDate'
    - ' dayCounter'
    argTypes:
    - DividendSchedule
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 132
    functionName: QuantLib::FdmStepConditionComposite::vanillaComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::dividendTimes
    - QL_REQUIRE
    - yearFraction
    - empty
    - ext::shared_ptr<StepCondition<Array> >
    - FdmBermudanStepCondition::FdmBermudanStepCondition
    - std::list::push_back
    - ext::make_shared<FdmStepConditionComposite>
    - ext::make_shared<FdmDividendHandler>
    - type
    - dates
    - lastDate
    - ext::shared_ptr::exerciseTimes
    - FdmAmericanStepCondition::FdmAmericanStepCondition
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<FdmStepConditionComposite>
    signature: "ext::shared_ptr<FdmStepConditionComposite> FdmStepConditionComposite::vanillaComposite(\n
      \                const DividendSchedule& cashFlow,\n                 const ext::shared_ptr<Exercise>&
      exercise,\n                 const ext::shared_ptr<FdmMesher>& mesher,\n                 const
      ext::shared_ptr<FdmInnerValueCalculator>& calculator,\n                 const
      Date& refDate,\n                 const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:38,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:42,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:44,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:44,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stoppingTimes'
    - conditions
    argTypes:
    - std::list<std::vector<Time> >
    - Conditions
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmStepConditionComposite::FdmStepConditionComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::move
    - std::set::insert
    - std::set::begin
    - std::vector<Time>
    - end
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void FdmStepConditionComposite::FdmStepConditionComposite(\n        const
      std::list<std::vector<Time> >& stoppingTimes, Conditions conditions)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: "&\n    FdmStepConditionComposite::conditions() const"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmStepConditionComposite::Conditions
    signature: "FdmStepConditionComposite::Conditions &\n    FdmStepConditionComposite::conditions()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& FdmStepConditionComposite::stoppingTimes() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & FdmStepConditionComposite::stoppingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStepConditionComposite::applyTo
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmStepConditionComposite::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmStepConditionComposite::applyTo
    linkageType: ''
    returnType: void
    signature: void FdmStepConditionComposite::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:69,1
    - Dst: stoppingTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:69,1
    - Dst: std::list::emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:70,1
    - Dst: getTime
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:70,1
    - Dst: FdmStepConditionComposite::Conditions::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:73,1
    - Dst: FdmStepConditionComposite::Conditions::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:74,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - ext::shared_ptr<FdmSnapshotCondition>
    - ext::shared_ptr<FdmStepConditionComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmStepConditionComposite::joinConditions
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 10
    functionsReached:
    - FdmStepConditionComposite::Conditions::push_back
    - std::list::push_back
    - ext::make_shared<FdmStepConditionComposite>
    - getTime
    - stoppingTimes
    - std::list::emplace_back
    linkageType: ''
    returnType: ext::shared_ptr<FdmStepConditionComposite>
    signature: "ext::shared_ptr<FdmStepConditionComposite> FdmStepConditionComposite::joinConditions(\n
      \               const ext::shared_ptr<FdmSnapshotCondition>& c1,\n                const
      ext::shared_ptr<FdmStepConditionComposite>& c2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:92,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:94,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:96,1
    - Dst: auto::dividendTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:98,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:99,1
    - Dst: lastDate
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:99,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:103,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:104,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:108,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:112,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:112,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:113,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:114,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:116,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:117,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:117,1
    - Dst: FdmAmericanStepCondition::FdmAmericanStepCondition
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:118,1
    - Dst: type
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:120,1
    - Dst: dates
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:122,1
    - Dst: FdmBermudanStepCondition::FdmBermudanStepCondition
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:122,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:125,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:126,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:126,1
    - Dst: ext::make_shared<FdmStepConditionComposite>
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 6
    argNames:
    - ' cashFlow'
    - ' exercise'
    - ' mesher'
    - ' calculator'
    - ' refDate'
    - ' dayCounter'
    argTypes:
    - DividendSchedule
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 132
    functionName: QuantLib::FdmStepConditionComposite::vanillaComposite
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmstepconditioncomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::dividendTimes
    - QL_REQUIRE
    - yearFraction
    - empty
    - ext::shared_ptr<StepCondition<Array> >
    - FdmBermudanStepCondition::FdmBermudanStepCondition
    - std::list::push_back
    - ext::make_shared<FdmStepConditionComposite>
    - ext::make_shared<FdmDividendHandler>
    - type
    - dates
    - lastDate
    - ext::shared_ptr::exerciseTimes
    - FdmAmericanStepCondition::FdmAmericanStepCondition
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<FdmStepConditionComposite>
    signature: "ext::shared_ptr<FdmStepConditionComposite> FdmStepConditionComposite::vanillaComposite(\n
      \                const DividendSchedule& cashFlow,\n                 const ext::shared_ptr<Exercise>&
      exercise,\n                 const ext::shared_ptr<FdmMesher>& mesher,\n                 const
      ext::shared_ptr<FdmInnerValueCalculator>& calculator,\n                 const
      Date& refDate,\n                 const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::FdmSnapshotCondition::FdmSnapshotCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSnapshotCondition::FdmSnapshotCondition(Time t)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmSnapshotCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSnapshotCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmSnapshotCondition::getTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time FdmSnapshotCondition::getTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& FdmSnapshotCondition::getValues() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & FdmSnapshotCondition::getValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::FdmSnapshotCondition::FdmSnapshotCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSnapshotCondition::FdmSnapshotCondition(Time t)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmSnapshotCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSnapshotCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmSnapshotCondition::getTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time FdmSnapshotCondition::getTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& FdmSnapshotCondition::getValues() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmsnapshotcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & FdmSnapshotCondition::getValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mesher
    - calculator
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::FdmAmericanStepCondition::FdmAmericanStepCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmAmericanStepCondition::FdmAmericanStepCondition(\n        ext::shared_ptr<FdmMesher>
      mesher, ext::shared_ptr<FdmInnerValueCalculator> calculator)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:36,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:37,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:38,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmAmericanStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - layout
    - index
    - size
    - innerValue
    linkageType: ''
    returnType: void
    signature: void FdmAmericanStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mesher
    - calculator
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::FdmAmericanStepCondition::FdmAmericanStepCondition
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmAmericanStepCondition::FdmAmericanStepCondition(\n        ext::shared_ptr<FdmMesher>
      mesher, ext::shared_ptr<FdmInnerValueCalculator> calculator)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:36,1
    - Dst: innerValue
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:37,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:38,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::FdmAmericanStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/stepconditions/fdmamericanstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - layout
    - index
    - size
    - innerValue
    linkageType: ''
    returnType: void
    signature: void FdmAmericanStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ModTripleBandLinearOp(Size direction,\n                              const
      ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModTripleBandLinearOp(const TripleBandLinearOp& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::ModTripleBandLinearOp::lower
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lower(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& lower(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & lower(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::ModTripleBandLinearOp::diag
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real diag(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& diag(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & diag(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ModTripleBandLinearOp::upper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upper(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& upper(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & upper(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ModTripleBandLinearOp(Size direction,\n                              const
      ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModTripleBandLinearOp(const TripleBandLinearOp& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::ModTripleBandLinearOp::lower
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lower(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& lower(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & lower(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::ModTripleBandLinearOp::diag
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real diag(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& diag(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & diag(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ModTripleBandLinearOp::upper
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upper(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& upper(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/modtriplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & upper(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:37,1
    - Dst: QuantLib::FdmLinearOpLayout::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:37,1
    - Dst: std::partial_sum
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:40,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:40,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:42,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dim
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmLinearOpLayout::FdmLinearOpLayout
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLinearOpLayout::begin
    - std::move
    - std::multiplies<>
    - QuantLib::FdmLinearOpLayout::size
    - std::partial_sum
    - back
    - QuantLib::FdmLinearOpLayout::end
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpLayout(std::vector<Size> dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmLinearOpLayout::begin
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 1
    functionsReached:
    - FdmLinearOpIterator
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmLinearOpLayout::end
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 1
    functionsReached:
    - FdmLinearOpIterator
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& dim() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & dim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& spacing() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & spacing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmLinearOpLayout::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:66,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:66,1
    - Dst: QuantLib::FdmLinearOpLayout::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:67,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:68,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmLinearOpLayout::index
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLinearOpLayout::end
    - QuantLib::FdmLinearOpLayout::begin
    - Size
    - std::inner_product
    linkageType: ''
    returnType: Size
    signature: Size index(const std::vector<Size>& coordinates) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:37,1
    - Dst: QuantLib::FdmLinearOpLayout::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:37,1
    - Dst: std::partial_sum
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:39,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:40,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:40,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:42,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dim
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmLinearOpLayout::FdmLinearOpLayout
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLinearOpLayout::begin
    - std::move
    - std::multiplies<>
    - QuantLib::FdmLinearOpLayout::size
    - std::partial_sum
    - back
    - QuantLib::FdmLinearOpLayout::end
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpLayout(std::vector<Size> dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmLinearOpLayout::begin
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 3
    functionsReached:
    - FdmLinearOpIterator
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmLinearOpLayout::end
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 3
    functionsReached:
    - FdmLinearOpIterator
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& dim() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & dim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& spacing() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & spacing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmLinearOpLayout::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:66,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:66,1
    - Dst: QuantLib::FdmLinearOpLayout::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:67,1
    - Dst: QuantLib::FdmLinearOpLayout::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:68,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmLinearOpLayout::index
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLinearOpLayout::end
    - QuantLib::FdmLinearOpLayout::begin
    - Size
    - std::inner_product
    linkageType: ''
    returnType: Size
    signature: Size index(const std::vector<Size>& coordinates) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:45,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:46,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:47,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:50,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:50,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:51,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:52,1
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' mesher'
    - process
    - rTS
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - axpyb
    - squared
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - index
    - drift
    - volatility
    - FirstDerivativeOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<OrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmOrnsteinUhlenbeckOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:61,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmOrnsteinUhlenbeckOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:71,1
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmOrnsteinUhlenbeckOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:76,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:79,1
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmOrnsteinUhlenbeckOp::apply
    - QuantLib::FdmOrnsteinUhlenbeckOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply_direction(Size direction, const
      Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::solve_splitting(Size direction, const
      Array& r, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::preconditioner(const Array& r, Real dt)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:97,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmOrnsteinUhlenbeckOp::toMatrixDecomp()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:45,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:46,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:47,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:50,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:50,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:51,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:52,1
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' mesher'
    - process
    - rTS
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - axpyb
    - squared
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - index
    - drift
    - volatility
    - FirstDerivativeOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp(\n        const
      ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<OrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 2
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmOrnsteinUhlenbeckOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:61,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmOrnsteinUhlenbeckOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:71,1
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmOrnsteinUhlenbeckOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:76,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:79,1
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmOrnsteinUhlenbeckOp::apply
    - QuantLib::FdmOrnsteinUhlenbeckOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::apply_direction(Size direction, const
      Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::solve_splitting(Size direction, const
      Array& r, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmOrnsteinUhlenbeckOp::preconditioner(const Array& r, Real dt)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:97,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmOrnsteinUhlenbeckOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmOrnsteinUhlenbeckOp::toMatrixDecomp()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:37,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:38,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:46,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:48,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 5
    argNames:
    - ' mesher'
    - rTS
    - qTS
    - quantoHelper
    - leverageFct
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmHestonEquityPart::FdmHestonEquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - index
    - FirstDerivativeOp
    - Sqrt
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHestonEquityPart::FdmHestonEquityPart(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                             ext::shared_ptr<YieldTermStructure>
      rTS,\n                                             ext::shared_ptr<YieldTermStructure>
      qTS,\n                                             ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                             ext::shared_ptr<LocalVolTermStructure>
      leverageFct)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:55,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:56,1
    - Dst: QuantLib::FdmHestonEquityPart::getLeverageFctSlice
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:58,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:62,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:63,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:65,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:65,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:67,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:68,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmHestonEquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - mult
    - Array
    - quantoAdjustment
    - QuantLib::FdmHestonEquityPart::getLeverageFctSlice
    linkageType: ''
    returnType: void
    signature: void FdmHestonEquityPart::setTime(Time t1, Time t2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:74,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:80,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:80,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:82,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:83,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:86,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:87,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:88,1
    - Dst: minStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:88,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:89,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:89,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:92,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmHestonEquityPart::getLeverageFctSlice
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - std::exp
    - minStrike
    - layout
    - location
    - localVol
    - std::max
    - maxTime
    - index
    - coordinates
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonEquityPart::getLeverageFctSlice(Time t1, Time t2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& FdmHestonEquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonEquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:108,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:109,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:110,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:110,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - rTS
    - mixedSigma
    - kappa
    - theta
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmHestonVariancePart::FdmHestonVariancePart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmHestonVariancePart::FdmHestonVariancePart(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                                 ext::shared_ptr<YieldTermStructure>
      rTS,\n                                                 Real mixedSigma,\n                                                 Real
      kappa,\n                                                 Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:114,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmHestonVariancePart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmHestonVariancePart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& FdmHestonVariancePart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonVariancePart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:128,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:129,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:129,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:131,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:132,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:133,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:134,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:135,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:137,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' hestonProcess'
    - ' quantoHelper'
    - ' leverageFct'
    - mixingFactor
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 140
    functionName: QuantLib::FdmHestonOp::FdmHestonOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - dividendYield
    - theta
    - locations
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - rho
    linkageType: ''
    returnType: void
    signature: "void FdmHestonOp::FdmHestonOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<HestonProcess> & hestonProcess,\n        const
      ext::shared_ptr<FdmQuantoHelper>& quantoHelper,\n        const ext::shared_ptr<LocalVolTermStructure>&
      leverageFct,\n        const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:144,1
    - Dst: QuantLib::FdmHestonOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmHestonOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmHestonOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::FdmHestonOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:153,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:153,1
    - Dst: getL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:154,1
    - Dst: QuantLib::FdmHestonOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::FdmHestonOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonOp::apply
    - getL
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::apply(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:160,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: QuantLib::FdmHestonOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonOp::apply_direction(Size direction,\n                                       const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:168,1
    - Dst: QuantLib::FdmHestonOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FdmHestonOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonOp::apply
    - getL
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:175,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: QuantLib::FdmHestonOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonOp::solve_splitting(Size direction,\n                                       const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:185,1
    - Dst: QuantLib::FdmHestonOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::FdmHestonOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:190,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:191,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 194
    functionName: QuantLib::FdmHestonOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonOp::toMatrixDecomp() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:37,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:38,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:46,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:48,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 5
    argNames:
    - ' mesher'
    - rTS
    - qTS
    - quantoHelper
    - leverageFct
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmHestonEquityPart::FdmHestonEquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - index
    - FirstDerivativeOp
    - Sqrt
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHestonEquityPart::FdmHestonEquityPart(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                             ext::shared_ptr<YieldTermStructure>
      rTS,\n                                             ext::shared_ptr<YieldTermStructure>
      qTS,\n                                             ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                             ext::shared_ptr<LocalVolTermStructure>
      leverageFct)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:55,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:56,1
    - Dst: QuantLib::FdmHestonEquityPart::getLeverageFctSlice
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:58,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:62,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:63,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:65,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:65,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:67,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:68,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmHestonEquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - mult
    - Array
    - quantoAdjustment
    - QuantLib::FdmHestonEquityPart::getLeverageFctSlice
    linkageType: ''
    returnType: void
    signature: void FdmHestonEquityPart::setTime(Time t1, Time t2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:74,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:80,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:80,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:82,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:83,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:86,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:87,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:88,1
    - Dst: minStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:88,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:89,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:89,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:92,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmHestonEquityPart::getLeverageFctSlice
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 2
    functionsReached:
    - maxStrike
    - std::exp
    - minStrike
    - layout
    - location
    - localVol
    - std::max
    - maxTime
    - index
    - coordinates
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonEquityPart::getLeverageFctSlice(Time t1, Time t2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& FdmHestonEquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonEquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:108,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:109,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:110,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:110,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - rTS
    - mixedSigma
    - kappa
    - theta
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmHestonVariancePart::FdmHestonVariancePart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmHestonVariancePart::FdmHestonVariancePart(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                                 ext::shared_ptr<YieldTermStructure>
      rTS,\n                                                 Real mixedSigma,\n                                                 Real
      kappa,\n                                                 Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:114,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmHestonVariancePart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmHestonVariancePart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& FdmHestonVariancePart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonVariancePart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:128,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:129,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:129,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:131,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:132,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:133,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:134,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:135,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:137,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' hestonProcess'
    - ' quantoHelper'
    - ' leverageFct'
    - mixingFactor
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<FdmQuantoHelper>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 140
    functionName: QuantLib::FdmHestonOp::FdmHestonOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - dividendYield
    - theta
    - locations
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - rho
    linkageType: ''
    returnType: void
    signature: "void FdmHestonOp::FdmHestonOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<HestonProcess> & hestonProcess,\n        const
      ext::shared_ptr<FdmQuantoHelper>& quantoHelper,\n        const ext::shared_ptr<LocalVolTermStructure>&
      leverageFct,\n        const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:144,1
    - Dst: QuantLib::FdmHestonOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmHestonOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmHestonOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::FdmHestonOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:153,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:153,1
    - Dst: getL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:154,1
    - Dst: QuantLib::FdmHestonOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::FdmHestonOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmHestonOp::apply
    - getL
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::apply(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:160,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: QuantLib::FdmHestonOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonOp::apply_direction(Size direction,\n                                       const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:168,1
    - Dst: QuantLib::FdmHestonOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FdmHestonOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonOp::apply
    - getL
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:175,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: QuantLib::FdmHestonOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonOp::solve_splitting(Size direction,\n                                       const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:185,1
    - Dst: QuantLib::FdmHestonOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::FdmHestonOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:190,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:191,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 194
    functionName: QuantLib::FdmHestonOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonOp::toMatrixDecomp() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:36,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:36,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:37,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:38,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:44,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:46,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:47,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ' mesher'
    - hwModel
    - qTS
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HullWhite>
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmHestonHullWhiteEquityPart::FdmHestonHullWhiteEquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - index
    - FirstDerivativeOp
    - Sqrt
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteEquityPart::FdmHestonHullWhiteEquityPart(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<HullWhite>
      hwModel,\n        ext::shared_ptr<YieldTermStructure> qTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:55,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:57,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:58,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:60,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmHestonHullWhiteEquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - Array
    - dynamics
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteEquityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& FdmHestonHullWhiteEquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonHullWhiteEquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:74,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:74,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:78,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:78,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:80,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:82,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:83,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:84,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:88,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:89,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' mesher'
    - ' hestonProcess'
    - ' hwProcess'
    - equityShortRateCorrelation
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<HullWhiteProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmHestonHullWhiteOp::FdmHestonHullWhiteOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - ext::make_shared<HullWhite>
    - dividendYield
    - a
    - SecondDerivativeOp
    - v0
    - theta
    - locations
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - Sqrt
    - FirstDerivativeOp
    - rho
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteOp::FdmHestonHullWhiteOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                               const ext::shared_ptr<HestonProcess>&
      hestonProcess,\n                                               const ext::shared_ptr<HullWhiteProcess>&
      hwProcess,\n                                               Real equityShortRateCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:94,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmHestonHullWhiteOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::FdmHestonHullWhiteOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonHullWhiteOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:103,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:103,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:104,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:105,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmHestonHullWhiteOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonHullWhiteOp::apply(const Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:111,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:113,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmHestonHullWhiteOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonHullWhiteOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::apply_direction(Size direction,\n                                                const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:121,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::FdmHestonHullWhiteOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonHullWhiteOp::apply_mixed(const Array& r) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:127,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:130,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:133,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 137
    functionName: QuantLib::FdmHestonHullWhiteOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonHullWhiteOp::solve_splitting
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::solve_splitting(Size direction, const
      Array& r,\n                                                Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::FdmHestonHullWhiteOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::preconditioner(const Array& r, \n                                               Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:146,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:147,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:148,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:149,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 151
    functionName: QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonHullWhiteOp::toMatrixDecomp() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:36,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:36,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:37,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:38,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:44,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:46,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:47,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ' mesher'
    - hwModel
    - qTS
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HullWhite>
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmHestonHullWhiteEquityPart::FdmHestonHullWhiteEquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - std::move
    - index
    - FirstDerivativeOp
    - Sqrt
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteEquityPart::FdmHestonHullWhiteEquityPart(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<HullWhite>
      hwModel,\n        ext::shared_ptr<YieldTermStructure> qTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:55,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:57,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:58,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:60,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmHestonHullWhiteEquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - Array
    - dynamics
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteEquityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& FdmHestonHullWhiteEquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmHestonHullWhiteEquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:73,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:74,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:74,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:76,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:78,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:78,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:80,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:81,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:82,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:83,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:84,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:88,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:89,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' mesher'
    - ' hestonProcess'
    - ' hwProcess'
    - equityShortRateCorrelation
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<HullWhiteProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmHestonHullWhiteOp::FdmHestonHullWhiteOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - ext::make_shared<HullWhite>
    - dividendYield
    - a
    - SecondDerivativeOp
    - v0
    - theta
    - locations
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - Sqrt
    - FirstDerivativeOp
    - rho
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdmHestonHullWhiteOp::FdmHestonHullWhiteOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                               const ext::shared_ptr<HestonProcess>&
      hestonProcess,\n                                               const ext::shared_ptr<HullWhiteProcess>&
      hwProcess,\n                                               Real equityShortRateCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:94,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmHestonHullWhiteOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmHestonHullWhiteOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::FdmHestonHullWhiteOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonHullWhiteOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:103,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:103,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:104,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:105,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmHestonHullWhiteOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonHullWhiteOp::apply(const Array& u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:111,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:113,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmHestonHullWhiteOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonHullWhiteOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::apply_direction(Size direction,\n                                                const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:121,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::FdmHestonHullWhiteOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonHullWhiteOp::apply_mixed(const Array& r) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:127,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:130,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:133,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 137
    functionName: QuantLib::FdmHestonHullWhiteOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonHullWhiteOp::solve_splitting
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::solve_splitting(Size direction, const
      Array& r,\n                                                Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::FdmHestonHullWhiteOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonHullWhiteOp::preconditioner(const Array& r, \n                                               Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:146,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:147,1
    - Dst: QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:148,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:149,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 151
    functionName: QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonhullwhiteop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonHullWhiteOp::toMatrixDecomp
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonHullWhiteOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmBatesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::size
    linkageType: ''
    returnType: Size
    signature: Size FdmBatesOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmBatesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmBatesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:93,1
    - Dst: QuantLib::FdmBatesOp::integro
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmBatesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::integro
    - QuantLib::FdmBatesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:97,1
    - Dst: QuantLib::FdmBatesOp::integro
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmBatesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::apply_mixed
    - QuantLib::FdmBatesOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::apply_mixed(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmBatesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::apply_direction(Size direction,\n                                             const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' r'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::FdmBatesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::solve_splitting(Size direction,\n                                             const
      Array& r,\n                                             Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - s
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmBatesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBatesOp::preconditioner
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::preconditioner(const Array& r,\n                                            Real
      s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmBatesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::size
    linkageType: ''
    returnType: Size
    signature: Size FdmBatesOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmBatesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmBatesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:93,1
    - Dst: QuantLib::FdmBatesOp::integro
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmBatesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::integro
    - QuantLib::FdmBatesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:97,1
    - Dst: QuantLib::FdmBatesOp::integro
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmBatesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::apply_mixed
    - QuantLib::FdmBatesOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::apply_mixed(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::apply_direction
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmBatesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::apply_direction(Size direction,\n                                             const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' r'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::FdmBatesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::solve_splitting(Size direction,\n                                             const
      Array& r,\n                                             Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBatesOp::preconditioner
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - s
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmBatesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmBatesOp::preconditioner
    linkageType: ''
    returnType: Array
    signature: "Array FdmBatesOp::preconditioner(const Array& r,\n                                            Real
      s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~NinePointLinearOp() override
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NinePointLinearOp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::NinePointLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::NinePointLinearOp(NinePointLinearOp&& m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: '& NinePointLinearOp::operator=(const NinePointLinearOp& m)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & NinePointLinearOp::operator=(const NinePointLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: '& NinePointLinearOp::operator=(NinePointLinearOp&& m) noexcept'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & NinePointLinearOp::operator=(NinePointLinearOp&&
      m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~NinePointLinearOp() override
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NinePointLinearOp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::NinePointLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::NinePointLinearOp(NinePointLinearOp&& m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: '& NinePointLinearOp::operator=(const NinePointLinearOp& m)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & NinePointLinearOp::operator=(const NinePointLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: '& NinePointLinearOp::operator=(NinePointLinearOp&& m) noexcept'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & NinePointLinearOp::operator=(NinePointLinearOp&&
      m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:37,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:38,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:39,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:40,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:41,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:43,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    - localVol
    - illegalLocalVolOverwrite
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmBlackScholesFwdOp::FdmBlackScholesFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - SecondDerivativeOp
    - Array
    - locations
    - riskFreeRate
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - FirstDerivativeOp
    - localVolatility
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesFwdOp::FdmBlackScholesFwdOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       Real strike,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       Size direction)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:52,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:57,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:61,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:61,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:65,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:67,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:72,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:72,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:75,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:76,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:76,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 80
    functionName: QuantLib::FdmBlackScholesFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - squared
    - blackForwardVariance
    - mult
    - Array
    - localVol
    - index
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesFwdOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmBlackScholesFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmBlackScholesFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmBlackScholesFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:91,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:93,1
    - Dst: QuantLib::FdmBlackScholesFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::FdmBlackScholesFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesFwdOp::apply
    - QuantLib::FdmBlackScholesFwdOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:98,1
    - Dst: QuantLib::FdmBlackScholesFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::FdmBlackScholesFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesFwdOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 108
    functionName: QuantLib::FdmBlackScholesFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::FdmBlackScholesFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::preconditioner(\n        const Array&
      r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:116,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FdmBlackScholesFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBlackScholesFwdOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:37,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:38,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:39,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:40,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:41,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:42,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:43,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    - localVol
    - illegalLocalVolOverwrite
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmBlackScholesFwdOp::FdmBlackScholesFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - SecondDerivativeOp
    - Array
    - locations
    - riskFreeRate
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - FirstDerivativeOp
    - localVolatility
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesFwdOp::FdmBlackScholesFwdOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       Real strike,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       Size direction)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:52,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:57,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:61,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:61,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:65,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:67,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:71,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:72,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:72,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:75,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:76,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:76,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 80
    functionName: QuantLib::FdmBlackScholesFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - squared
    - blackForwardVariance
    - mult
    - Array
    - localVol
    - index
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesFwdOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmBlackScholesFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmBlackScholesFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmBlackScholesFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:91,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:93,1
    - Dst: QuantLib::FdmBlackScholesFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::FdmBlackScholesFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesFwdOp::apply
    - QuantLib::FdmBlackScholesFwdOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:98,1
    - Dst: QuantLib::FdmBlackScholesFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::FdmBlackScholesFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesFwdOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 108
    functionName: QuantLib::FdmBlackScholesFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::FdmBlackScholesFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesFwdOp::preconditioner(\n        const Array&
      r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:116,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FdmBlackScholesFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBlackScholesFwdOp::toMatrixDecomp() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:45,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:46,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:47,1
    - Dst: ext::make_shared<FirstDerivativeOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:48,1
    - Dst: ext::make_shared<ModTripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:49,1
    - Dst: TripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:49,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:52,1
    - Dst: ext::make_shared<ModTripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:53,1
    - Dst: TripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:53,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: ext::make_shared<TripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:55,1
    - Dst: ext::make_shared<FdmSquareRootFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:56,1
    - Dst: ext::make_shared<NinePointLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:57,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:59,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:60,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:61,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:63,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:65,1
    - Dst: lowerBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:66,1
    - Dst: upperBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:77,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:78,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:79,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:81,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:81,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:82,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:82,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:83,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:83,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:85,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:85,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:86,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:86,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:87,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:87,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:89,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:90,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:93,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:93,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:94,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:94,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:95,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:95,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:97,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:97,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:98,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:98,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:99,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - ' mesher'
    - ' process'
    - type
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - FdmSquareRootFwdOp::TransformationType
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmHestonFwdOp::FdmHestonFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - Real
    - upper
    - ModTripleBandLinearOp::lower
    - lowerBoundaryFactor
    - dividendYield
    - SecondDerivativeOp
    - Array
    - ext::make_shared<FdmSquareRootFwdOp>
    - Exp
    - ext::make_shared<NinePointLinearOp>
    - FirstDerivativeOp
    - coordinates
    - rho
    - exp
    - layout
    - v
    - sigma
    - locations
    - index
    - ext::make_shared<FirstDerivativeOp>
    - upperBoundaryFactor
    - ModTripleBandLinearOp::diag
    - ModTripleBandLinearOp::upper
    - TripleBandLinearOp
    - ext::make_shared<TripleBandLinearOp>
    - diag
    - lower
    - std::move
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - ext::make_shared<ModTripleBandLinearOp>
    linkageType: ''
    returnType: void
    signature: "void FdmHestonFwdOp::FdmHestonFwdOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                   const ext::shared_ptr<HestonProcess>&
      process,\n                                   FdmSquareRootFwdOp::TransformationType
      type,\n                                   ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                   const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmHestonFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonFwdOp::size() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:109,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:110,1
    - Dst: QuantLib::FdmHestonFwdOp::getLeverageFctSlice
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:112,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:115,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:116,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:116,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:117,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:118,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:119,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:121,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:121,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:122,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:122,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:123,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:124,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:124,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:126,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:126,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:127,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:127,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:128,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:128,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:129,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:133,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:134,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:136,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:137,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:139,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:139,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:140,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 143
    functionName: QuantLib::FdmHestonFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - mult
    - Array
    - QuantLib::FdmHestonFwdOp::getLeverageFctSlice
    - Exp
    linkageType: ''
    returnType: void
    signature: void FdmHestonFwdOp::setTime(Time t1, Time t2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:147,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:148,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:149,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:151,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:152,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 155
    functionName: QuantLib::FdmHestonFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:159,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: QuantLib::FdmHestonFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::apply_mixed(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:169,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:171,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' u'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 174
    functionName: QuantLib::FdmHestonFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::apply_direction(\n        Size direction, const
      Array& u) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:179,1
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:182,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' u'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 186
    functionName: QuantLib::FdmHestonFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::solve_splitting(\n        Size direction, const
      Array& u, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::FdmHestonFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::preconditioner(\n        const Array& u, Real
      dt) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:194,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:200,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:200,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:203,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:204,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:206,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:207,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:207,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:208,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:208,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:209,1
    - Dst: minStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:210,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:210,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 217
    functionName: QuantLib::FdmHestonFwdOp::getLeverageFctSlice
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - std::exp
    - minStrike
    - layout
    - location
    - localVol
    - std::max
    - maxTime
    - index
    - coordinates
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::getLeverageFctSlice(Time t1, Time t2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:223,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:224,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: QuantLib::FdmHestonFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonFwdOp::toMatrixDecomp() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:44,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:45,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:46,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:46,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:47,1
    - Dst: ext::make_shared<FirstDerivativeOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:48,1
    - Dst: ext::make_shared<ModTripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:49,1
    - Dst: TripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:49,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:51,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:52,1
    - Dst: ext::make_shared<ModTripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:53,1
    - Dst: TripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:53,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:54,1
    - Dst: ext::make_shared<TripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:55,1
    - Dst: ext::make_shared<FdmSquareRootFwdOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:56,1
    - Dst: ext::make_shared<NinePointLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:57,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:59,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:60,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:61,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:63,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:65,1
    - Dst: lowerBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:66,1
    - Dst: upperBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:69,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:70,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:77,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:78,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:79,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:81,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:81,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:82,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:82,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:83,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:83,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:85,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:85,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:86,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:86,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:87,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:87,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:89,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:90,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:93,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:93,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:94,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:94,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:95,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:95,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:97,1
    - Dst: ModTripleBandLinearOp::upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:97,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:98,1
    - Dst: ModTripleBandLinearOp::diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:98,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:99,1
    - Dst: ModTripleBandLinearOp::lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - ' mesher'
    - ' process'
    - type
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HestonProcess>
    - FdmSquareRootFwdOp::TransformationType
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmHestonFwdOp::FdmHestonFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - Real
    - upper
    - ModTripleBandLinearOp::lower
    - lowerBoundaryFactor
    - dividendYield
    - SecondDerivativeOp
    - Array
    - ext::make_shared<FdmSquareRootFwdOp>
    - Exp
    - ext::make_shared<NinePointLinearOp>
    - FirstDerivativeOp
    - coordinates
    - rho
    - exp
    - layout
    - v
    - sigma
    - locations
    - index
    - ext::make_shared<FirstDerivativeOp>
    - upperBoundaryFactor
    - ModTripleBandLinearOp::diag
    - ModTripleBandLinearOp::upper
    - TripleBandLinearOp
    - ext::make_shared<TripleBandLinearOp>
    - diag
    - lower
    - std::move
    - riskFreeRate
    - SecondOrderMixedDerivativeOp
    - ext::make_shared<ModTripleBandLinearOp>
    linkageType: ''
    returnType: void
    signature: "void FdmHestonFwdOp::FdmHestonFwdOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                   const ext::shared_ptr<HestonProcess>&
      process,\n                                   FdmSquareRootFwdOp::TransformationType
      type,\n                                   ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                   const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmHestonFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHestonFwdOp::size() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:109,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:110,1
    - Dst: QuantLib::FdmHestonFwdOp::getLeverageFctSlice
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:112,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:115,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:115,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:116,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:116,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:117,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:118,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:119,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:121,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:121,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:122,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:122,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:123,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:124,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:124,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:126,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:126,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:127,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:127,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:128,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:128,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:129,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:133,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:134,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:136,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:137,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:139,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:139,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:140,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 143
    functionName: QuantLib::FdmHestonFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - mult
    - Array
    - QuantLib::FdmHestonFwdOp::getLeverageFctSlice
    - Exp
    linkageType: ''
    returnType: void
    signature: void FdmHestonFwdOp::setTime(Time t1, Time t2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:147,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:148,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:149,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:151,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:152,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 155
    functionName: QuantLib::FdmHestonFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:159,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: QuantLib::FdmHestonFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::apply_mixed(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:169,1
    - Dst: QuantLib::FdmHestonFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:171,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' u'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 174
    functionName: QuantLib::FdmHestonFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::apply_direction(\n        Size direction, const
      Array& u) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:179,1
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:182,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' u'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 186
    functionName: QuantLib::FdmHestonFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmHestonFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::solve_splitting(\n        Size direction, const
      Array& u, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::FdmHestonFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmHestonFwdOp::preconditioner(\n        const Array& u, Real
      dt) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:194,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:200,1
    - Dst: maxTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:200,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:203,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:204,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:206,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:207,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:207,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:208,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:208,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:209,1
    - Dst: minStrike
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:210,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:210,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 217
    functionName: QuantLib::FdmHestonFwdOp::getLeverageFctSlice
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 2
    functionsReached:
    - maxStrike
    - std::exp
    - minStrike
    - layout
    - location
    - localVol
    - std::max
    - maxTime
    - index
    - coordinates
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array FdmHestonFwdOp::getLeverageFctSlice(Time t1, Time t2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:223,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:224,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: QuantLib::FdmHestonFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHestonFwdOp::toMatrixDecomp() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:31,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:32,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:33,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:57,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:91,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - d0
    - d1
    - ' mesher'
    argTypes:
    - Size
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 111
    functionName: QuantLib::SecondOrderMixedDerivativeOp::SecondOrderMixedDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void SecondOrderMixedDerivativeOp::SecondOrderMixedDerivativeOp(\n
      \       Size d0, Size d1,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:31,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:32,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:33,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:57,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp:91,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - d0
    - d1
    - ' mesher'
    argTypes:
    - Size
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 111
    functionName: QuantLib::SecondOrderMixedDerivativeOp::SecondOrderMixedDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/secondordermixedderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void SecondOrderMixedDerivativeOp::SecondOrderMixedDerivativeOp(\n
      \       Size d0, Size d1,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:38,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:38,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:39,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:40,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:40,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:41,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mesher'
    - ' model'
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HullWhite>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmHullWhiteOp::FdmHullWhiteOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - a
    - SecondDerivativeOp
    - Array
    - locations
    - FirstDerivativeOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHullWhiteOp::FdmHullWhiteOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<HullWhite>& model,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmHullWhiteOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHullWhiteOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:51,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:53,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:54,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:56,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmHullWhiteOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - Array
    - axpyb
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmHullWhiteOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmHullWhiteOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHullWhiteOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:64,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmHullWhiteOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:69,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:71,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmHullWhiteOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmHullWhiteOp::apply
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply_direction(Size direction, const Array&
      r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:80,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmHullWhiteOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmHullWhiteOp::solve_splitting
    - Array
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::solve_splitting(Size direction, const Array&
      r, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmHullWhiteOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHullWhiteOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:89,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmHullWhiteOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHullWhiteOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:38,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:38,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:39,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:40,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:40,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:41,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mesher'
    - ' model'
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<HullWhite>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmHullWhiteOp::FdmHullWhiteOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - a
    - SecondDerivativeOp
    - Array
    - locations
    - FirstDerivativeOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmHullWhiteOp::FdmHullWhiteOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<HullWhite>& model,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmHullWhiteOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmHullWhiteOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:51,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:53,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:54,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:56,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmHullWhiteOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - Array
    - axpyb
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmHullWhiteOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmHullWhiteOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmHullWhiteOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:64,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmHullWhiteOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:69,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:71,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmHullWhiteOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmHullWhiteOp::apply
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::apply_direction(Size direction, const Array&
      r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:77,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:80,1
    - Dst: QuantLib::FdmHullWhiteOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmHullWhiteOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmHullWhiteOp::solve_splitting
    - Array
    - QuantLib::FdmHullWhiteOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::solve_splitting(Size direction, const Array&
      r, Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHullWhiteOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmHullWhiteOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHullWhiteOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmHullWhiteOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:89,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmHullWhiteOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhullwhiteop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmHullWhiteOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:34,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:34,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:35,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:36,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:37,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:38,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:39,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:42,1
    - Dst: std::iter_swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: FdmLinearOpLayout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:44,1
    - Dst: std::iter_swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:48,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:50,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:51,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:53,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:56,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - Size
    - std::inner_product
    - std::vector::begin
    - begin
    - std::iter_swap
    - index
    - end
    - Real::Real
    - coordinates
    - Size::Size
    - FdmLinearOpLayout
    - layout
    linkageType: ''
    returnType: void
    signature: "void TripleBandLinearOp::TripleBandLinearOp(\n        Size direction,\n
      \       const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:63,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:63,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:64,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:64,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:65,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:65,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:66,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:66,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:67,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:67,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:68,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:68,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:70,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: i0_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: i0_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: i2_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: i2_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: reverseIndex_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: reverseIndex_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: lower_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: lower_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: diag_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: diag_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: upper_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: upper_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 78
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - upper_::get
    - reverseIndex_::get
    - i2_::get
    - diag_::get
    - mesher_::layout
    - lower_::get
    - i0_::get
    - Real::Real
    - get
    - Size::Size
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::TripleBandLinearOp(const TripleBandLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:81,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:82,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:84,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:84,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:85,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::TripleBandLinearOp::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::TripleBandLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::swap(TripleBandLinearOp& m) noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:93,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:95,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:95,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:96,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:96,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:97,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:114,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:144,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 4
    argNames:
    - ' a'
    - ' x'
    - ' y'
    - ' b'
    argTypes:
    - Array
    - TripleBandLinearOp
    - TripleBandLinearOp
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 158
    functionName: QuantLib::TripleBandLinearOp::axpyb
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - lower
    - diag
    - empty
    - begin
    - upper
    - get
    - size
    - layout
    linkageType: ''
    returnType: void
    signature: "void TripleBandLinearOp::axpyb(const Array& a,\n                                   const
      TripleBandLinearOp& x,\n                                   const TripleBandLinearOp&
      y,\n                                   const Array& b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 172
    functionName: QuantLib::TripleBandLinearOp::add
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::add(const TripleBandLinearOp&
      m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 189
    functionName: QuantLib::TripleBandLinearOp::mult
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::mult(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:193,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 207
    functionName: QuantLib::TripleBandLinearOp::multR
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::multR(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 222
    functionName: QuantLib::TripleBandLinearOp::add
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::add(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:227,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:228,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:229,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:230,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:233,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 240
    functionName: QuantLib::TripleBandLinearOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - layout
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array TripleBandLinearOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:243,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:247,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:248,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 253
    functionName: QuantLib::TripleBandLinearOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - retVal
    - layout
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix TripleBandLinearOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:260,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:262,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:263,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:264,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:264,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:265,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:269,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:271,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:272,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:273,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:280,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:283,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:288,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:295,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - ' r'
    - a
    - b
    argTypes:
    - Array
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 300
    functionName: QuantLib::TripleBandLinearOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QL_ENSURE
    - coordinates
    - index
    - get
    - size
    - layout
    linkageType: ''
    returnType: Array
    signature: Array TripleBandLinearOp::solve_splitting(const Array& r, Real a, Real
      b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:34,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:34,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:35,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:36,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:37,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:38,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:39,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:42,1
    - Dst: std::iter_swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:43,1
    - Dst: FdmLinearOpLayout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:44,1
    - Dst: std::iter_swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:47,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:48,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:50,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:51,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:53,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:55,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:56,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - Size
    - std::inner_product
    - std::vector::begin
    - begin
    - std::iter_swap
    - index
    - end
    - Real::Real
    - coordinates
    - Size::Size
    - FdmLinearOpLayout
    - layout
    linkageType: ''
    returnType: void
    signature: "void TripleBandLinearOp::TripleBandLinearOp(\n        Size direction,\n
      \       const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:63,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:63,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:64,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:64,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:65,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:65,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:66,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:66,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:67,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:67,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:68,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:68,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:70,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: i0_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: i0_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:71,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: i2_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: i2_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:72,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: reverseIndex_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: reverseIndex_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:73,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: lower_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: lower_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:75,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: diag_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: diag_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:76,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: upper_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: upper_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 78
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - upper_::get
    - reverseIndex_::get
    - i2_::get
    - diag_::get
    - mesher_::layout
    - lower_::get
    - i0_::get
    - Real::Real
    - get
    - Size::Size
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::TripleBandLinearOp(const TripleBandLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:81,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:82,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:84,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:84,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:85,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: QuantLib::TripleBandLinearOp::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::TripleBandLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::swap(TripleBandLinearOp& m) noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:93,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:95,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:95,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:96,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:96,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:97,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:114,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:144,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 4
    argNames:
    - ' a'
    - ' x'
    - ' y'
    - ' b'
    argTypes:
    - Array
    - TripleBandLinearOp
    - TripleBandLinearOp
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 158
    functionName: QuantLib::TripleBandLinearOp::axpyb
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - lower
    - diag
    - empty
    - begin
    - upper
    - get
    - size
    - layout
    linkageType: ''
    returnType: void
    signature: "void TripleBandLinearOp::axpyb(const Array& a,\n                                   const
      TripleBandLinearOp& x,\n                                   const TripleBandLinearOp&
      y,\n                                   const Array& b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 172
    functionName: QuantLib::TripleBandLinearOp::add
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::add(const TripleBandLinearOp&
      m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 189
    functionName: QuantLib::TripleBandLinearOp::mult
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::mult(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:193,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 207
    functionName: QuantLib::TripleBandLinearOp::multR
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::multR(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 222
    functionName: QuantLib::TripleBandLinearOp::add
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp TripleBandLinearOp::add(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:225,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:227,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:228,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:229,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:230,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:233,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 240
    functionName: QuantLib::TripleBandLinearOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - layout
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array TripleBandLinearOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:243,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:247,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:248,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 253
    functionName: QuantLib::TripleBandLinearOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - retVal
    - layout
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix TripleBandLinearOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:257,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:260,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:262,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:263,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:264,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:264,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:265,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:269,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:271,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:272,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:273,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:280,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:283,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:288,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp:295,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - ' r'
    - a
    - b
    argTypes:
    - Array
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 300
    functionName: QuantLib::TripleBandLinearOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QL_ENSURE
    - coordinates
    - index
    - get
    - size
    - layout
    linkageType: ''
    returnType: Array
    signature: Array TripleBandLinearOp::solve_splitting(const Array& r, Real a, Real
      b) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:33,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 52
    functionName: QuantLib::SecondDerivativeOp::SecondDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void SecondDerivativeOp::SecondDerivativeOp(\n        Size direction,\n
      \       const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:33,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 52
    functionName: QuantLib::SecondDerivativeOp::SecondDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/secondderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void SecondDerivativeOp::SecondDerivativeOp(\n        Size direction,\n
      \       const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~TripleBandLinearOp() override
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TripleBandLinearOp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TripleBandLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::TripleBandLinearOp(TripleBandLinearOp&& m)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: '& TripleBandLinearOp::operator=(const TripleBandLinearOp& m)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & TripleBandLinearOp::operator=(const TripleBandLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: '& TripleBandLinearOp::operator=(TripleBandLinearOp&& m) noexcept'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & TripleBandLinearOp::operator=(TripleBandLinearOp&&
      m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~TripleBandLinearOp() override
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TripleBandLinearOp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TripleBandLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::TripleBandLinearOp::TripleBandLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TripleBandLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void TripleBandLinearOp::TripleBandLinearOp(TripleBandLinearOp&& m)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: '& TripleBandLinearOp::operator=(const TripleBandLinearOp& m)'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & TripleBandLinearOp::operator=(const TripleBandLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - TripleBandLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: '& TripleBandLinearOp::operator=(TripleBandLinearOp&& m) noexcept'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/triplebandlinearop.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & TripleBandLinearOp::operator=(TripleBandLinearOp&&
      m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:43,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:44,1
    - Dst: ext::make_shared<TripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:44,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' mesher'
    - rTS
    - ' lambdas'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmWienerOp::FdmWienerOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - SecondDerivativeOp
    - Array
    - std::move
    - emplace_back
    - ext::make_shared<TripleBandLinearOp>
    - QuantLib::FdmWienerOp::size
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmWienerOp::FdmWienerOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        const Array&
      lambdas)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmWienerOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmWienerOp::size
    linkageType: ''
    returnType: Size
    signature: Size FdmWienerOp::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmWienerOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    linkageType: ''
    returnType: void
    signature: void FdmWienerOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmWienerOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmWienerOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:68,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmWienerOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmWienerOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply_mixed(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' x'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmWienerOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmWienerOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply_direction(Size direction, const Array& x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' x'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmWienerOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmWienerOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmWienerOp::solve_splitting(\n        Size direction, const
      Array& x, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::FdmWienerOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmWienerOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:88,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:88,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:90,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: QuantLib::FdmWienerOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::FdmWienerOp::size
    - toMatrix
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmWienerOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:40,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:43,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:44,1
    - Dst: ext::make_shared<TripleBandLinearOp>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:44,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' mesher'
    - rTS
    - ' lambdas'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmWienerOp::FdmWienerOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - SecondDerivativeOp
    - Array
    - std::move
    - emplace_back
    - ext::make_shared<TripleBandLinearOp>
    - QuantLib::FdmWienerOp::size
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmWienerOp::FdmWienerOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        const Array&
      lambdas)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::FdmWienerOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::FdmWienerOp::size
    linkageType: ''
    returnType: Size
    signature: Size FdmWienerOp::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::FdmWienerOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    linkageType: ''
    returnType: void
    signature: void FdmWienerOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmWienerOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmWienerOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:68,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmWienerOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmWienerOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply_mixed(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' x'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmWienerOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmWienerOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::apply_direction(Size direction, const Array& x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' x'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmWienerOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmWienerOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmWienerOp::solve_splitting(\n        Size direction, const
      Array& x, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmWienerOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::FdmWienerOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmWienerOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmWienerOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:88,1
    - Dst: QuantLib::FdmWienerOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:88,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:90,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: QuantLib::FdmWienerOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmwienerop.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::FdmWienerOp::size
    - toMatrix
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmWienerOp::toMatrixDecomp() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:68,1
    - Dst: f_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 73
    functionName: NumericalDifferentiation::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::fabs
    - f_
    linkageType: ''
    returnType: Real
    signature: Real NumericalDifferentiation::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& NumericalDifferentiation::weights() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & NumericalDifferentiation::weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& NumericalDifferentiation::offsets() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & NumericalDifferentiation::offsets() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:68,1
    - Dst: f_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 73
    functionName: NumericalDifferentiation::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::fabs
    - f_
    linkageType: ''
    returnType: Real
    signature: Real NumericalDifferentiation::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& NumericalDifferentiation::weights() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & NumericalDifferentiation::weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& NumericalDifferentiation::offsets() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & NumericalDifferentiation::offsets() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:39,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' rTS'
    - f0
    - alpha
    - beta
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmCEVOp::FdmCEVOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmCEVOp::FdmCEVOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<YieldTermStructure>& rTS,\n        Real
      f0, Real alpha, Real beta,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmCEVOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmCEVOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:48,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmCEVOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmCEVOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmCEVOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmCEVOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:57,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmCEVOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmCEVOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:65,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmCEVOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmCEVOp::size
    - QuantLib::FdmCEVOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply_direction(Size direction, const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:74,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmCEVOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmCEVOp::solve_splitting
    - Array
    - QuantLib::FdmCEVOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::solve_splitting(Size direction, const Array& r, Real
      a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::FdmCEVOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCEVOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:83,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::FdmCEVOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmCEVOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:39,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' rTS'
    - f0
    - alpha
    - beta
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmCEVOp::FdmCEVOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmCEVOp::FdmCEVOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<YieldTermStructure>& rTS,\n        Real
      f0, Real alpha, Real beta,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::FdmCEVOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmCEVOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:48,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmCEVOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmCEVOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmCEVOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmCEVOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:57,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmCEVOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmCEVOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:65,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmCEVOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmCEVOp::size
    - QuantLib::FdmCEVOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::apply_direction(Size direction, const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:74,1
    - Dst: QuantLib::FdmCEVOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmCEVOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmCEVOp::solve_splitting
    - Array
    - QuantLib::FdmCEVOp::size
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::solve_splitting(Size direction, const Array& r, Real
      a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCEVOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::FdmCEVOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCEVOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmCEVOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:83,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::FdmCEVOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcevop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmCEVOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lambda
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: delta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: nu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:44,1
    - Dst: ext::make_shared<HestonProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:48,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:49,1
    - Dst: ext::make_shared<ZeroSpreadedTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:49,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:50,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:54,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:55,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:56,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:57,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:58,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:59,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:60,1
    - Dst: FdmHestonOp::FdmHestonOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' batesProcess'
    - bcSet
    - integroIntegrationOrder
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<BatesProcess>
    - FdmBoundaryConditionSet
    - Size
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmBatesOp::FdmBatesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - ext::make_shared<HestonProcess>
    - dividendYield
    - s0
    - ext::shared_ptr<Quote>
    - Handle<Quote>
    - rho
    - sigma
    - std::exp
    - SimpleQuote::SimpleQuote
    - Handle<YieldTermStructure>
    - nu
    - FdmHestonOp::FdmHestonOp
    - std::move
    - riskFreeRate
    - ext::make_shared<ZeroSpreadedTermStructure>
    - lambda
    - delta
    linkageType: ''
    returnType: void
    signature: "void FdmBatesOp::FdmBatesOp(const ext::shared_ptr<FdmMesher>& mesher,\n
      \                          const ext::shared_ptr<BatesProcess>& batesProcess,\n
      \                          FdmBoundaryConditionSet bcSet,\n                           const
      Size integroIntegrationOrder,\n                           const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' interpl'
    - ' bcSet'
    - x
    - delta
    - nu
    argTypes:
    - ext::shared_ptr<LinearInterpolation>
    - FdmBoundaryConditionSet
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: "FdmBatesOp::IntegroIntegrand::IntegroIntegrand(\n                    const
      ext::shared_ptr<LinearInterpolation>& interpl,\n                    const FdmBoundaryConditionSet&
      bcSet,\n                    Real x, Real delta, Real nu)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdmBatesOp::IntegroIntegrand::IntegroIntegrand(\n                    const
      ext::shared_ptr<LinearInterpolation>& interpl,\n                    const FdmBoundaryConditionSet&
      bcSet,\n                    Real x, Real delta, Real nu)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:74,1
    - Dst: ext::dynamic_pointer_cast<FdmDirichletBoundary>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:79,1
    - Dst: ext::shared_ptr::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 87
    functionName: FdmBatesOp::IntegroIntegrand::operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - begin
    - ext::shared_ptr::applyAfterApplying
    - end
    - ext::dynamic_pointer_cast<FdmDirichletBoundary>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesOp::IntegroIntegrand::operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:92,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:93,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:93,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:95,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:96,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:97,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:99,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:100,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:103,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:104,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:105,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: QuantLib::FdmBatesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:109,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:110,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:111,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:112,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:114,1
    - Dst: gaussHermiteIntegration_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:115,1
    - Dst: IntegroIntegrand
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 120
    functionName: QuantLib::FdmBatesOp::integro
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    - IntegroIntegrand
    - Matrix::rows
    - Array::begin
    - Array::end
    - gaussHermiteIntegration_
    - location
    - index
    - Matrix::row_begin
    - coordinates
    - ext::make_shared<LinearInterpolation>
    - QuantLib::FdmBatesOp::size
    - layout
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::integro(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::FdmBatesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBatesOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lambda
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: delta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: nu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:44,1
    - Dst: ext::make_shared<HestonProcess>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:48,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:49,1
    - Dst: ext::make_shared<ZeroSpreadedTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:49,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:50,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:51,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:54,1
    - Dst: s0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:55,1
    - Dst: v0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:56,1
    - Dst: kappa
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:57,1
    - Dst: theta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:58,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:59,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:60,1
    - Dst: FdmHestonOp::FdmHestonOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' batesProcess'
    - bcSet
    - integroIntegrationOrder
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<BatesProcess>
    - FdmBoundaryConditionSet
    - Size
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmBatesOp::FdmBatesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - v0
    - theta
    - ext::make_shared<HestonProcess>
    - dividendYield
    - s0
    - ext::shared_ptr<Quote>
    - Handle<Quote>
    - rho
    - sigma
    - std::exp
    - SimpleQuote::SimpleQuote
    - Handle<YieldTermStructure>
    - nu
    - FdmHestonOp::FdmHestonOp
    - std::move
    - riskFreeRate
    - ext::make_shared<ZeroSpreadedTermStructure>
    - lambda
    - delta
    linkageType: ''
    returnType: void
    signature: "void FdmBatesOp::FdmBatesOp(const ext::shared_ptr<FdmMesher>& mesher,\n
      \                          const ext::shared_ptr<BatesProcess>& batesProcess,\n
      \                          FdmBoundaryConditionSet bcSet,\n                           const
      Size integroIntegrationOrder,\n                           const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' interpl'
    - ' bcSet'
    - x
    - delta
    - nu
    argTypes:
    - ext::shared_ptr<LinearInterpolation>
    - FdmBoundaryConditionSet
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: "FdmBatesOp::IntegroIntegrand::IntegroIntegrand(\n                    const
      ext::shared_ptr<LinearInterpolation>& interpl,\n                    const FdmBoundaryConditionSet&
      bcSet,\n                    Real x, Real delta, Real nu)"
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdmBatesOp::IntegroIntegrand::IntegroIntegrand(\n                    const
      ext::shared_ptr<LinearInterpolation>& interpl,\n                    const FdmBoundaryConditionSet&
      bcSet,\n                    Real x, Real delta, Real nu)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:74,1
    - Dst: ext::dynamic_pointer_cast<FdmDirichletBoundary>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:79,1
    - Dst: ext::shared_ptr::applyAfterApplying
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 87
    functionName: FdmBatesOp::IntegroIntegrand::operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - begin
    - ext::shared_ptr::applyAfterApplying
    - end
    - ext::dynamic_pointer_cast<FdmDirichletBoundary>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FdmBatesOp::IntegroIntegrand::operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:92,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:93,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:93,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:95,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:96,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:97,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:99,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:100,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:103,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:104,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:105,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:106,1
    - Dst: QuantLib::FdmBatesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:109,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:110,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:111,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:112,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:114,1
    - Dst: gaussHermiteIntegration_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:115,1
    - Dst: IntegroIntegrand
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 120
    functionName: QuantLib::FdmBatesOp::integro
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    - IntegroIntegrand
    - Matrix::rows
    - Array::begin
    - Array::end
    - gaussHermiteIntegration_
    - location
    - index
    - Matrix::row_begin
    - coordinates
    - ext::make_shared<LinearInterpolation>
    - QuantLib::FdmBatesOp::size
    - layout
    linkageType: ''
    returnType: Array
    signature: Array FdmBatesOp::integro(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::FdmBatesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmbatesop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBatesOp::toMatrixDecomp() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:43,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:57,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - h
    - n
    - scheme
    argTypes:
    - Real
    - Size
    - NumericalDifferentiation::Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::calcOffsets
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array calcOffsets(\n            Real h, Size n, NumericalDifferentiation::Scheme
      scheme)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:69,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:84,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ' x'
    - M
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 103
    functionName: QuantLib::calcWeights
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array calcWeights(const Array& x, Size M)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:43,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:57,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - h
    - n
    - scheme
    argTypes:
    - Real
    - Size
    - NumericalDifferentiation::Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::calcOffsets
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array calcOffsets(\n            Real h, Size n, NumericalDifferentiation::Scheme
      scheme)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:69,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:84,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ' x'
    - M
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 103
    functionName: QuantLib::calcWeights
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array calcWeights(const Array& x, Size M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:109,1
    - Dst: calcWeights
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - f
    - orderOfDerivative
    - x_offsets
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: QuantLib::NumericalDifferentiation::NumericalDifferentiation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - calcWeights
    - std::move
    - Real
    linkageType: ''
    returnType: void
    signature: "void NumericalDifferentiation::NumericalDifferentiation(std::function<Real(Real)>
      f,\n                                                       Size orderOfDerivative,\n
      \                                                      Array x_offsets)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:113,1
    - Dst: calcOffsets
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:118,1
    - Dst: calcWeights
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:118,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - f
    - orderOfDerivative
    - stepSize
    - steps
    - scheme
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Real
    - Size
    - Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionName: QuantLib::NumericalDifferentiation::NumericalDifferentiation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - calcOffsets
    - calcWeights
    - std::move
    - Real
    linkageType: ''
    returnType: void
    signature: "void NumericalDifferentiation::NumericalDifferentiation(std::function<Real(Real)>
      f,\n                                                       Size orderOfDerivative,\n
      \                                                      Real stepSize,\n                                                       Size
      steps,\n                                                       Scheme scheme)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:43,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:57,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - h
    - n
    - scheme
    argTypes:
    - Real
    - Size
    - NumericalDifferentiation::Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::calcOffsets
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array calcOffsets(\n            Real h, Size n, NumericalDifferentiation::Scheme
      scheme)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:69,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:84,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ' x'
    - M
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 103
    functionName: QuantLib::calcWeights
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array calcWeights(const Array& x, Size M)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:43,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:57,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - h
    - n
    - scheme
    argTypes:
    - Real
    - Size
    - NumericalDifferentiation::Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::calcOffsets
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array calcOffsets(\n            Real h, Size n, NumericalDifferentiation::Scheme
      scheme)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:69,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:84,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ' x'
    - M
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 103
    functionName: QuantLib::calcWeights
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array calcWeights(const Array& x, Size M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:109,1
    - Dst: calcWeights
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - f
    - orderOfDerivative
    - x_offsets
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: QuantLib::NumericalDifferentiation::NumericalDifferentiation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - calcWeights
    - std::move
    - Real
    linkageType: ''
    returnType: void
    signature: "void NumericalDifferentiation::NumericalDifferentiation(std::function<Real(Real)>
      f,\n                                                       Size orderOfDerivative,\n
      \                                                      Array x_offsets)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:113,1
    - Dst: calcOffsets
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:118,1
    - Dst: calcWeights
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:118,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - f
    - orderOfDerivative
    - stepSize
    - steps
    - scheme
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Real
    - Size
    - Scheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionName: QuantLib::NumericalDifferentiation::NumericalDifferentiation
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/numericaldifferentiation.cpp
    functionUses: 0
    functionsReached:
    - calcOffsets
    - calcWeights
    - std::move
    - Real
    linkageType: ''
    returnType: void
    signature: "void NumericalDifferentiation::NumericalDifferentiation(std::function<Real(Real)>
      f,\n                                                       Size orderOfDerivative,\n
      \                                                      Real stepSize,\n                                                       Size
      steps,\n                                                       Scheme scheme)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~FdmLinearOp()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~FdmLinearOp()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmLinearOp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:41,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:43,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:43,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:47,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' mesher'
    - rTS
    - f0
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSabrOp::FdmSabrOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - SecondOrderMixedDerivativeOp
    - Exp
    - FirstDerivativeOp
    - Pow
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSabrOp::FdmSabrOp(const ext::shared_ptr<FdmMesher>& mesher,\n
      \                        ext::shared_ptr<YieldTermStructure> rTS,\n                         Real
      f0,\n                         Real alpha,\n                         Real beta,\n
      \                        Real nu,\n                         Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:52,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSabrOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmSabrOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmSabrOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmSabrOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSabrOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSabrOp::apply(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmSabrOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSabrOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:73,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmSabrOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::apply_direction(\n        Size direction, const Array&
      r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:84,1
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:87,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmSabrOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::solve_splitting(\n       Size direction, const Array&
      r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:96,1
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: QuantLib::FdmSabrOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::preconditioner(\n        const Array& r, Real dt)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:101,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:102,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::FdmSabrOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmSabrOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:41,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:42,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:43,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:43,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:44,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:45,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:47,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: Pow
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' mesher'
    - rTS
    - f0
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSabrOp::FdmSabrOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - SecondOrderMixedDerivativeOp
    - Exp
    - FirstDerivativeOp
    - Pow
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSabrOp::FdmSabrOp(const ext::shared_ptr<FdmMesher>& mesher,\n
      \                        ext::shared_ptr<YieldTermStructure> rTS,\n                         Real
      f0,\n                         Real alpha,\n                         Real beta,\n
      \                        Real nu,\n                         Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:52,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:54,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSabrOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - forwardRate
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmSabrOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmSabrOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmSabrOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSabrOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSabrOp::apply(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmSabrOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSabrOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:73,1
    - Dst: QuantLib::FdmSabrOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmSabrOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSabrOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::apply_direction(\n        Size direction, const Array&
      r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:84,1
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:87,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmSabrOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::solve_splitting(\n       Size direction, const Array&
      r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:96,1
    - Dst: QuantLib::FdmSabrOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: QuantLib::FdmSabrOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSabrOp::preconditioner(\n        const Array& r, Real dt)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:101,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:102,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::FdmSabrOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsabrop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmSabrOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:36,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:38,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' spot'
    - rTS
    - qTS
    - ' localVol'
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLocalVolFwdOp::FdmLocalVolFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - Exp
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmLocalVolFwdOp::FdmLocalVolFwdOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                       const ext::shared_ptr<Quote>&
      spot,\n                                       ext::shared_ptr<YieldTermStructure>
      rTS,\n                                       ext::shared_ptr<YieldTermStructure>
      qTS,\n                                       const ext::shared_ptr<LocalVolTermStructure>&
      localVol,\n                                       Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:42,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:46,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:47,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:49,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:49,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmLocalVolFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - squared
    - Array
    - localVol
    - index
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmLocalVolFwdOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmLocalVolFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmLocalVolFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmLocalVolFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmLocalVolFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:64,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:66,1
    - Dst: QuantLib::FdmLocalVolFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmLocalVolFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmLocalVolFwdOp::size
    - QuantLib::FdmLocalVolFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:71,1
    - Dst: QuantLib::FdmLocalVolFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmLocalVolFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmLocalVolFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::FdmLocalVolFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmLocalVolFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::preconditioner(\n        const Array& r, Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:89,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmLocalVolFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmLocalVolFwdOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:36,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:37,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:38,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' spot'
    - rTS
    - qTS
    - ' localVol'
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<Quote>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<LocalVolTermStructure>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLocalVolFwdOp::FdmLocalVolFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - Exp
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmLocalVolFwdOp::FdmLocalVolFwdOp(const ext::shared_ptr<FdmMesher>&
      mesher,\n                                       const ext::shared_ptr<Quote>&
      spot,\n                                       ext::shared_ptr<YieldTermStructure>
      rTS,\n                                       ext::shared_ptr<YieldTermStructure>
      qTS,\n                                       const ext::shared_ptr<LocalVolTermStructure>&
      localVol,\n                                       Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:42,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:46,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:47,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:49,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:49,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:51,1
    - Dst: multR
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmLocalVolFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - multR
    - forwardRate
    - axpyb
    - squared
    - Array
    - localVol
    - index
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmLocalVolFwdOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmLocalVolFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmLocalVolFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmLocalVolFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmLocalVolFwdOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:64,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:66,1
    - Dst: QuantLib::FdmLocalVolFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmLocalVolFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmLocalVolFwdOp::size
    - QuantLib::FdmLocalVolFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:71,1
    - Dst: QuantLib::FdmLocalVolFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmLocalVolFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmLocalVolFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::FdmLocalVolFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLocalVolFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmLocalVolFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmLocalVolFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmLocalVolFwdOp::preconditioner(\n        const Array& r, Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:89,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FdmLocalVolFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlocalvolfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmLocalVolFwdOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:40,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:41,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:42,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:43,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    - localVol
    - illegalLocalVolOverwrite
    - direction
    - quantoHelper
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    - Size
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmBlackScholesOp::FdmBlackScholesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - riskFreeRate
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - FirstDerivativeOp
    - localVolatility
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesOp::FdmBlackScholesOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>& bsProcess,\n
      \       Real strike,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       Size direction,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:52,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:57,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:61,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:61,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:65,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:67,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:73,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:74,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:74,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:75,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:75,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:77,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:78,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:78,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:82,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:85,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:86,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:87,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:88,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:91,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:93,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:93,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:95,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmBlackScholesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - squared
    - blackForwardVariance
    - mult
    - Array
    - localVol
    - index
    - quantoAdjustment
    - Sqrt
    - std::sqrt
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::FdmBlackScholesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmBlackScholesOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::FdmBlackScholesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:109,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:111,1
    - Dst: QuantLib::FdmBlackScholesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 113
    functionName: QuantLib::FdmBlackScholesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesOp::apply
    - QuantLib::FdmBlackScholesOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::apply_direction(Size direction,\n                                             const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:116,1
    - Dst: QuantLib::FdmBlackScholesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FdmBlackScholesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::FdmBlackScholesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::solve_splitting(Size direction,\n                                             const
      Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::FdmBlackScholesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::preconditioner(const Array& r,\n                                            Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:134,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmBlackScholesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBlackScholesOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:40,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:41,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:42,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:43,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:45,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    - localVol
    - illegalLocalVolOverwrite
    - direction
    - quantoHelper
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    - Size
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmBlackScholesOp::FdmBlackScholesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - riskFreeRate
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - FirstDerivativeOp
    - localVolatility
    linkageType: ''
    returnType: void
    signature: "void FdmBlackScholesOp::FdmBlackScholesOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>& bsProcess,\n
      \       Real strike,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       Size direction,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:52,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:57,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:61,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:61,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:65,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:67,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:73,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:74,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:74,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:75,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:75,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:77,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:78,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:78,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:82,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:85,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:86,1
    - Dst: quantoAdjustment
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:87,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:88,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:91,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:93,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:93,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:94,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:95,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmBlackScholesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - squared
    - blackForwardVariance
    - mult
    - Array
    - localVol
    - index
    - quantoAdjustment
    - Sqrt
    - std::sqrt
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmBlackScholesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::FdmBlackScholesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmBlackScholesOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::FdmBlackScholesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesOp::apply(const Array& u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:109,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:111,1
    - Dst: QuantLib::FdmBlackScholesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 113
    functionName: QuantLib::FdmBlackScholesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmBlackScholesOp::apply
    - QuantLib::FdmBlackScholesOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::apply_direction(Size direction,\n                                             const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:116,1
    - Dst: QuantLib::FdmBlackScholesOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FdmBlackScholesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmBlackScholesOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::FdmBlackScholesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::solve_splitting(Size direction,\n                                             const
      Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::FdmBlackScholesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmBlackScholesOp::preconditioner(const Array& r,\n                                            Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:134,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmBlackScholesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmBlackScholesOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:33,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:34,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:37,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::FdmCIREquityPart::FdmCIREquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - dividendYield
    - blackVolatility
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmCIREquityPart::FdmCIREquityPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>& bsProcess,\n
      \       Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:43,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:45,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:47,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmCIREquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - blackForwardVariance
    - mult
    - Array
    - locations
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmCIREquityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& FdmCIREquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmCIREquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:58,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:59,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:60,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - sigma
    - kappa
    - theta
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmCIRRatesPart::FdmCIRRatesPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmCIRRatesPart::FdmCIRRatesPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        Real sigma, Real kappa, Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmCIRRatesPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - locations
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmCIRRatesPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: '& FdmCIRRatesPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmCIRRatesPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:80,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' cirProcess'
    - ' bsProcess'
    - rho
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmCIRMixedPart::FdmCIRMixedPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - Array
    - SecondOrderMixedDerivativeOp
    - volatility
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmCIRMixedPart::FdmCIRMixedPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<CoxIngersollRossProcess> & cirProcess,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       const Real rho,\n        const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:89,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:89,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmCIRMixedPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - blackForwardVariance
    - mult
    - Array
    - swap
    - std::sqrt
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmCIRMixedPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: '& FdmCIRMixedPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & FdmCIRMixedPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:108,1
    - Dst: speed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:109,1
    - Dst: level
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' cirProcess'
    - ' bsProcess'
    - rho
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmCIROp::FdmCIROp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - level
    - volatility
    - speed
    linkageType: ''
    returnType: void
    signature: "void FdmCIROp::FdmCIROp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<CoxIngersollRossProcess> & cirProcess,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       const Real rho,\n        const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:120,1
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:121,1
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::FdmCIROp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmCIROp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmCIROp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::FdmCIROp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmCIROp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:130,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:131,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmCIROp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::apply(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:140,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:142,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionName: QuantLib::FdmCIROp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmCIROp::apply_direction(Size direction,\n                                    const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::FdmCIROp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:154,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:157,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 161
    functionName: QuantLib::FdmCIROp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmCIROp::solve_splitting(Size direction,\n                                    const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCIROp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:164,1
    - Dst: QuantLib::FdmCIROp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::FdmCIROp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCIROp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:169,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:170,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: QuantLib::FdmCIROp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmCIROp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:33,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:34,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:37,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mesher'
    - ' bsProcess'
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::FdmCIREquityPart::FdmCIREquityPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - dividendYield
    - blackVolatility
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmCIREquityPart::FdmCIREquityPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>& bsProcess,\n
      \       Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:43,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:45,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:47,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmCIREquityPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - blackForwardVariance
    - mult
    - Array
    - locations
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmCIREquityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& FdmCIREquityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmCIREquityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:58,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:59,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:60,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - sigma
    - kappa
    - theta
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmCIRRatesPart::FdmCIRRatesPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - locations
    - FirstDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmCIRRatesPart::FdmCIRRatesPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        Real sigma, Real kappa, Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FdmCIRRatesPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - locations
    - axpyb
    linkageType: ''
    returnType: void
    signature: void FdmCIRRatesPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: '& FdmCIRRatesPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp & FdmCIRRatesPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:80,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:81,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' cirProcess'
    - ' bsProcess'
    - rho
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 86
    functionName: QuantLib::FdmCIRMixedPart::FdmCIRMixedPart
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - Array
    - SecondOrderMixedDerivativeOp
    - volatility
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmCIRMixedPart::FdmCIRMixedPart(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<CoxIngersollRossProcess> & cirProcess,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       const Real rho,\n        const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:89,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:89,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:90,1
    - Dst: swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmCIRMixedPart::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - blackForwardVariance
    - mult
    - Array
    - swap
    - std::sqrt
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmCIRMixedPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: '& FdmCIRMixedPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp & FdmCIRMixedPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:108,1
    - Dst: speed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:109,1
    - Dst: level
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' cirProcess'
    - ' bsProcess'
    - rho
    - strike
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmCIROp::FdmCIROp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - level
    - volatility
    - speed
    linkageType: ''
    returnType: void
    signature: "void FdmCIROp::FdmCIROp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<CoxIngersollRossProcess> & cirProcess,\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess> & bsProcess,\n
      \       const Real rho,\n        const Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:120,1
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:121,1
    - Dst: QuantLib::FdmCIROp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::FdmCIROp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmCIROp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmCIROp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::FdmCIROp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmCIROp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:130,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:131,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: QuantLib::FdmCIROp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::apply(const Array& u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:140,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:142,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionName: QuantLib::FdmCIROp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmCIROp::apply_direction(Size direction,\n                                    const
      Array& r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::FdmCIROp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:154,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:157,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 161
    functionName: QuantLib::FdmCIROp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmCIROp::solve_splitting(Size direction,\n                                    const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmCIROp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:164,1
    - Dst: QuantLib::FdmCIROp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::FdmCIROp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmCIROp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmCIROp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:169,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:170,1
    - Dst: getMap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: QuantLib::FdmCIROp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmcirop.cpp
    functionUses: 0
    functionsReached:
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmCIROp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmLinearOpComposite::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpComposite::toMatrixDecomp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:53,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: SparseMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:55,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmLinearOpComposite::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - SparseMatrix
    - std::vector::end
    - QuantLib::FdmLinearOpComposite::toMatrixDecomp
    - std::accumulate
    - std::vector::front
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix toMatrix() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmLinearOpComposite::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpComposite::toMatrixDecomp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:53,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:54,1
    - Dst: SparseMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:55,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmLinearOpComposite::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - SparseMatrix
    - std::vector::end
    - QuantLib::FdmLinearOpComposite::toMatrixDecomp
    - std::accumulate
    - std::vector::front
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix toMatrix() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:41,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:42,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:42,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:43,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:44,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:45,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:46,1
    - Dst: b
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:47,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:48,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:49,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:51,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:51,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - ' model'
    - direction1
    - direction2
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<G2>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmG2Op::FdmG2Op
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - b
    - sigma
    - eta
    - a
    - SecondDerivativeOp
    - Array
    - locations
    - SecondOrderMixedDerivativeOp
    - FirstDerivativeOp
    - rho
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmG2Op::FdmG2Op(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<G2>& model,\n        Size direction1,
      Size direction2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmG2Op::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmG2Op::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:63,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:65,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:66,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:69,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:69,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:70,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmG2Op::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - Array
    - axpyb
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmG2Op::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    - Dst: QuantLib::FdmG2Op::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmG2Op::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmG2Op::apply_mixed
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmG2Op::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:83,1
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:86,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:89,1
    - Dst: QuantLib::FdmG2Op::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmG2Op::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmG2Op::size
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply_direction(Size direction, const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:95,1
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:98,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:101,1
    - Dst: QuantLib::FdmG2Op::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmG2Op::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 1
    functionsReached:
    - Array
    - QuantLib::FdmG2Op::size
    - QuantLib::FdmG2Op::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::solve_splitting(Size direction, const Array& r, Real
      a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmG2Op::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmG2Op::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:111,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:112,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::FdmG2Op::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmG2Op::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:41,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:42,1
    - Dst: a
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:42,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:43,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:44,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:45,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:46,1
    - Dst: b
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:47,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:48,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:49,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:51,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:51,1
    - Dst: rho
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    - Dst: eta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mesher'
    - ' model'
    - direction1
    - direction2
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<G2>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmG2Op::FdmG2Op
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - b
    - sigma
    - eta
    - a
    - SecondDerivativeOp
    - Array
    - locations
    - SecondOrderMixedDerivativeOp
    - FirstDerivativeOp
    - rho
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmG2Op::FdmG2Op(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<G2>& model,\n        Size direction1,
      Size direction2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmG2Op::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmG2Op::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:63,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:65,1
    - Dst: ext::shared_ptr::shortRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:66,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:69,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:69,1
    - Dst: axpyb
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:70,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmG2Op::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - Array
    - axpyb
    - ext::shared_ptr::shortRate
    linkageType: ''
    returnType: void
    signature: void FdmG2Op::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    - Dst: QuantLib::FdmG2Op::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmG2Op::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmG2Op::apply_mixed
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmG2Op::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:83,1
    - Dst: QuantLib::FdmG2Op::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:86,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:89,1
    - Dst: QuantLib::FdmG2Op::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: QuantLib::FdmG2Op::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::FdmG2Op::size
    - QuantLib::FdmG2Op::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::apply_direction(Size direction, const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:95,1
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:98,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:101,1
    - Dst: QuantLib::FdmG2Op::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmG2Op::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 3
    functionsReached:
    - Array
    - QuantLib::FdmG2Op::size
    - QuantLib::FdmG2Op::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::solve_splitting(Size direction, const Array& r, Real
      a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmG2Op::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmG2Op::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmG2Op::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmG2Op::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:111,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:112,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::FdmG2Op::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmg2op.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmG2Op::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& getL() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & getL() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& getL() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmhestonop.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & getL() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:32,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:32,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:33,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:34,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:34,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:35,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:36,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:37,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:38,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:39,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:40,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:41,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:41,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:42,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:43,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:44,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:44,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:45,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:46,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:47,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:48,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:51,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:56,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:57,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:59,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:61,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:63,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:64,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:65,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - d0
    - d1
    - ' mesher'
    argTypes:
    - Size
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 68
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    - index
    - Real::Real
    - Size::Size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NinePointLinearOp::NinePointLinearOp(\n        Size d0, Size
      d1,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:71,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:71,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:72,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:72,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:73,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:73,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:74,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:74,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:75,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:75,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:76,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:76,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:77,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:77,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:78,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:78,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:79,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:79,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:80,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:80,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:81,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:81,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:82,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:82,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:83,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:83,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:84,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:84,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:85,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:85,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:86,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:86,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:87,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:87,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:90,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: i00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: i00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: i10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: i10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: i20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: i20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: i01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: i01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: i21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: i21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: i02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: i02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: i12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: i12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: i22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: i22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: a00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: a00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: a10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: a10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: a20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: a20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: a01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: a01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: a11_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: a11_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: a21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: a21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: a02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: a02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: a12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: a12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: a22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: a22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 108
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - a21_::get
    - a20_::get
    - i01_::get
    - a22_::get
    - get
    - a00_::get
    - a12_::get
    - Size::Size
    - i00_::get
    - i21_::get
    - layout
    - a02_::get
    - mesher_::layout
    - a01_::get
    - a11_::get
    - Real::Real
    - i20_::get
    - std::copy
    - a10_::get
    - i22_::get
    - i12_::get
    - i02_::get
    - i10_::get
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::NinePointLinearOp(const NinePointLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:113,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:115,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 137
    functionName: QuantLib::NinePointLinearOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - layout
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array NinePointLinearOp::apply(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:140,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:143,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:144,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:145,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:146,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:147,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:148,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:149,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:150,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:151,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 156
    functionName: QuantLib::NinePointLinearOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - retVal
    - layout
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix NinePointLinearOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 175
    functionName: QuantLib::NinePointLinearOp::mult
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp NinePointLinearOp::mult(const Array & u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:178,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:179,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:183,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:183,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 189
    functionName: QuantLib::NinePointLinearOp::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::NinePointLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::swap(NinePointLinearOp& m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:32,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:32,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:33,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:33,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:34,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:34,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:35,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:36,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:36,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:37,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:37,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:38,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:38,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:39,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:39,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:40,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:40,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:41,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:41,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:42,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:43,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:43,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:44,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:44,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:45,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:46,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:46,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:47,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:48,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:51,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:52,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:56,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:57,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:59,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:60,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:61,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:63,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:64,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:65,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - d0
    - d1
    - ' mesher'
    argTypes:
    - Size
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 68
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    - index
    - Real::Real
    - Size::Size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NinePointLinearOp::NinePointLinearOp(\n        Size d0, Size
      d1,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:71,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:71,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:72,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:72,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:73,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:73,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:74,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:74,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:75,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:75,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:76,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:76,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:77,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:77,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:78,1
    - Dst: Size::Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:78,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:79,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:79,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:80,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:80,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:81,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:81,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:82,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:82,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:83,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:83,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:84,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:84,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:85,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:85,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:86,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:86,1
    - Dst: mesher_::layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:87,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:87,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:90,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: i00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: i00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:91,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: i10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: i10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:92,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: i20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: i20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:93,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: i01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: i01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:94,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: i21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: i21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:95,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: i02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: i02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:96,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: i12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: i12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:97,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: i22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: i22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:98,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: a00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: a00_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:99,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: a10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: a10_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:100,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: a20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: a20_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:101,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: a01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: a01_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:102,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: a11_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: a11_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:103,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: a21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: a21_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:104,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: a02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: a02_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: a12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: a12_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:106,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: a22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: a22_::get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    - Dst: get
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 108
    functionName: QuantLib::NinePointLinearOp::NinePointLinearOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - a21_::get
    - a20_::get
    - i01_::get
    - a22_::get
    - get
    - a00_::get
    - a12_::get
    - Size::Size
    - i00_::get
    - i21_::get
    - layout
    - a02_::get
    - mesher_::layout
    - a01_::get
    - a11_::get
    - Real::Real
    - i20_::get
    - std::copy
    - a10_::get
    - i22_::get
    - i12_::get
    - i02_::get
    - i10_::get
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::NinePointLinearOp(const NinePointLinearOp&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:112,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:113,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:115,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 137
    functionName: QuantLib::NinePointLinearOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - layout
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array NinePointLinearOp::apply(const Array& u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:140,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:143,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:144,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:145,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:146,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:147,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:148,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:149,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:150,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:151,1
    - Dst: retVal
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 156
    functionName: QuantLib::NinePointLinearOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - retVal
    - layout
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix NinePointLinearOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 175
    functionName: QuantLib::NinePointLinearOp::mult
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: NinePointLinearOp
    signature: NinePointLinearOp NinePointLinearOp::mult(const Array & u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:178,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:179,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:181,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:182,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:183,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:183,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:184,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:185,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:186,1
    - Dst: QuantLib::NinePointLinearOp::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - NinePointLinearOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 189
    functionName: QuantLib::NinePointLinearOp::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/ninepointlinearop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::NinePointLinearOp::swap
    linkageType: ''
    returnType: void
    signature: void NinePointLinearOp::swap(NinePointLinearOp& m) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:41,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:41,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:49,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:55,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:56,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:56,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:58,1
    - Dst: NumericalDifferentiation
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:68,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:70,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:72,1
    - Dst: m_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - direction
    - order
    - nPoints
    - ' mesher'
    argTypes:
    - Size
    - Size
    - Integer
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 77
    functionName: QuantLib::NthOrderDerivativeOp::NthOrderDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - Array
    - Array::begin
    - locations
    - Array::end
    - Integer
    - std::max
    - index
    - Array::size
    - std::set::begin
    - coordinates
    - m_
    - NumericalDifferentiation
    - std::set::end
    - layout
    linkageType: ''
    returnType: void
    signature: "void NthOrderDerivativeOp::NthOrderDerivativeOp(\n        Size direction,
      Size order, Integer nPoints,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prod
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::NthOrderDerivativeOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached:
    - prod
    linkageType: ''
    returnType: NthOrderDerivativeOp::array_type
    signature: NthOrderDerivativeOp::array_type NthOrderDerivativeOp::apply(const
      array_type& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::NthOrderDerivativeOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix NthOrderDerivativeOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:35,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:41,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:41,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:42,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:49,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:55,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:56,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:56,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:58,1
    - Dst: NumericalDifferentiation
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:68,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:70,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:72,1
    - Dst: m_
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - direction
    - order
    - nPoints
    - ' mesher'
    argTypes:
    - Size
    - Size
    - Integer
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 77
    functionName: QuantLib::NthOrderDerivativeOp::NthOrderDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - Array
    - Array::begin
    - locations
    - Array::end
    - Integer
    - std::max
    - index
    - Array::size
    - std::set::begin
    - coordinates
    - m_
    - NumericalDifferentiation
    - std::set::end
    - layout
    linkageType: ''
    returnType: void
    signature: "void NthOrderDerivativeOp::NthOrderDerivativeOp(\n        Size direction,
      Size order, Integer nPoints,\n        const ext::shared_ptr<FdmMesher>& mesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prod
      Src: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::NthOrderDerivativeOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached:
    - prod
    linkageType: ''
    returnType: NthOrderDerivativeOp::array_type
    signature: NthOrderDerivativeOp::array_type NthOrderDerivativeOp::apply(const
      array_type& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::NthOrderDerivativeOp::toMatrix
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/nthorderderivativeop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix NthOrderDerivativeOp::toMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:45,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:46,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:47,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:53,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:54,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:57,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:58,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' p1'
    - ' p2'
    - correlation
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::Fdm2dBlackScholesOp::Fdm2dBlackScholesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - locations
    - SecondOrderMixedDerivativeOp
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - localVolatility
    - x0
    - layout
    linkageType: ''
    returnType: void
    signature: "void Fdm2dBlackScholesOp::Fdm2dBlackScholesOp(\n            const
      ext::shared_ptr<FdmMesher>& mesher,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      p1,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>& p2,\n
      \           Real correlation,\n            Time /*maturity*/,\n            bool
      localVol,\n            Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Fdm2dBlackScholesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Fdm2dBlackScholesOp::size() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:68,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:69,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:73,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:74,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:77,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:78,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:82,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:87,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:94,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:96,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:97,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:99,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:100,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:102,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:103,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 108
    functionName: QuantLib::Fdm2dBlackScholesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - blackVolatility
    - mult
    - Array
    - localVol
    - riskFreeRate
    - index
    - QuantLib::Fdm2dBlackScholesOp::setTime
    - x0
    - layout
    linkageType: ''
    returnType: void
    signature: void Fdm2dBlackScholesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::Fdm2dBlackScholesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::apply
    - QuantLib::Fdm2dBlackScholesOp::apply_mixed
    linkageType: ''
    returnType: Array
    signature: Array Fdm2dBlackScholesOp::apply(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::Fdm2dBlackScholesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array Fdm2dBlackScholesOp::apply_mixed(const Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:121,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:124,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' x'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 129
    functionName: QuantLib::Fdm2dBlackScholesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::Fdm2dBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::apply_direction(\n                                       Size
      direction, const Array& x) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:134,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:137,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' x'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: QuantLib::Fdm2dBlackScholesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::Fdm2dBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::solve_splitting(Size direction,\n                                               const
      Array& x, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::Fdm2dBlackScholesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::preconditioner(const Array& r, \n                                              Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:150,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:151,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:152,1
    - Dst: boost::numeric::ublas::identity_matrix<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:153,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::Fdm2dBlackScholesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - boost::numeric::ublas::identity_matrix<Real>
    - toMatrix
    - layout
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> Fdm2dBlackScholesOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:45,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:46,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:47,1
    - Dst: ext::shared_ptr<LocalVolTermStructure>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:50,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:51,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:53,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:54,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:57,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:58,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' mesher'
    - ' p1'
    - ' p2'
    - correlation
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 61
    functionName: QuantLib::Fdm2dBlackScholesOp::Fdm2dBlackScholesOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - Array
    - locations
    - SecondOrderMixedDerivativeOp
    - Exp
    - ext::shared_ptr<LocalVolTermStructure>
    - localVolatility
    - x0
    - layout
    linkageType: ''
    returnType: void
    signature: "void Fdm2dBlackScholesOp::Fdm2dBlackScholesOp(\n            const
      ext::shared_ptr<FdmMesher>& mesher,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      p1,\n            const ext::shared_ptr<GeneralizedBlackScholesProcess>& p2,\n
      \           Real correlation,\n            Time /*maturity*/,\n            bool
      localVol,\n            Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Fdm2dBlackScholesOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Fdm2dBlackScholesOp::size() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:68,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::setTime
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:69,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:73,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:74,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:77,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:78,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:82,1
    - Dst: localVol
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:87,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:94,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:96,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:97,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:99,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:100,1
    - Dst: mult
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:102,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:103,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 108
    functionName: QuantLib::Fdm2dBlackScholesOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 2
    functionsReached:
    - blackVolatility
    - mult
    - Array
    - localVol
    - riskFreeRate
    - index
    - QuantLib::Fdm2dBlackScholesOp::setTime
    - x0
    - layout
    linkageType: ''
    returnType: void
    signature: void Fdm2dBlackScholesOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply_mixed
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 3
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::Fdm2dBlackScholesOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::apply
    - QuantLib::Fdm2dBlackScholesOp::apply_mixed
    linkageType: ''
    returnType: Array
    signature: Array Fdm2dBlackScholesOp::apply(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::Fdm2dBlackScholesOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: Array Fdm2dBlackScholesOp::apply_mixed(const Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:121,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:124,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - direction
    - ' x'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 129
    functionName: QuantLib::Fdm2dBlackScholesOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::Fdm2dBlackScholesOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::apply_direction(\n                                       Size
      direction, const Array& x) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:134,1
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:137,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - ' x'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: QuantLib::Fdm2dBlackScholesOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - QuantLib::Fdm2dBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::solve_splitting(Size direction,\n                                               const
      Array& x, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Fdm2dBlackScholesOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::Fdm2dBlackScholesOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Fdm2dBlackScholesOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array Fdm2dBlackScholesOp::preconditioner(const Array& r, \n                                              Real
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:150,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:151,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:152,1
    - Dst: boost::numeric::ublas::identity_matrix<Real>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:153,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::Fdm2dBlackScholesOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdm2dblackscholesop.cpp
    functionUses: 0
    functionsReached:
    - boost::numeric::ublas::identity_matrix<Real>
    - toMatrix
    - layout
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> Fdm2dBlackScholesOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:45,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:49,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:45,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:53,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:54,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:56,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:51,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:59,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:60,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:60,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:62,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:63,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:63,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:64,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:64,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:59,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:66,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:68,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:69,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:70,1
    - Dst: QuantLib::FdmSquareRootFwdOp::setLowerBC
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:74,1
    - Dst: QuantLib::FdmSquareRootFwdOp::setUpperBC
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - ' mesher'
    - kappa
    - theta
    - sigma
    - direction
    - transform
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Size
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmSquareRootFwdOp::FdmSquareRootFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::setLowerBC
    - SecondDerivativeOp
    - Array
    - locations
    - location
    - Exp
    - QuantLib::FdmSquareRootFwdOp::setUpperBC
    - FirstDerivativeOp
    - coordinates
    - ModTripleBandLinearOp::ModTripleBandLinearOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::FdmSquareRootFwdOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        Real kappa, Real theta, Real sigma,\n        Size direction,
      TransformationType transform)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeff
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:83,1
    - Dst: QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:84,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:87,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:87,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:89,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:90,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:91,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:92,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmSquareRootFwdOp::setLowerBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeff
    - QuantLib::FdmSquareRootFwdOp::zetap
    - diag
    - upper
    - index
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
    - QuantLib::FdmSquareRootFwdOp::zeta
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::setLowerBC(\n        const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:100,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeff
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:103,1
    - Dst: QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:104,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:107,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:107,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:109,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:110,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:111,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:112,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmSquareRootFwdOp::setUpperBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeff
    - diag
    - coordinates
    - lower
    - layout
    - index
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::size
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::setUpperBC(\n        const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Plain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:120,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Power
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:123,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Log
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:126,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::f0Power
    - QuantLib::FdmSquareRootFwdOp::f0Log
    - QuantLib::FdmSquareRootFwdOp::f0Plain
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::lowerBoundaryFactor(TransformationType transform)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Plain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:134,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Power
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:137,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Log
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:143,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::f1Log
    - QuantLib::FdmSquareRootFwdOp::f1Power
    - QuantLib::FdmSquareRootFwdOp::f1Plain
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::upperBoundaryFactor(TransformationType transform)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:150,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:150,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::FdmSquareRootFwdOp::f0Plain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Plain() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:157,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:160,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:160,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 164
    functionName: QuantLib::FdmSquareRootFwdOp::f1Plain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::size
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Plain() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:168,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:171,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:171,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 174
    functionName: QuantLib::FdmSquareRootFwdOp::f0Power
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Power() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:177,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:178,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:181,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:181,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 184
    functionName: QuantLib::FdmSquareRootFwdOp::f1Power
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::size
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Power() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:188,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:188,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:194,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: QuantLib::FdmSquareRootFwdOp::f0Log
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::v
    - exp
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Log() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:198,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:199,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:199,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:205,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSquareRootFwdOp::f1Log
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::size
    - exp
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Log() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:217,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:220,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 226
    functionName: QuantLib::FdmSquareRootFwdOp::v
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 6
    functionsReached:
    - std::max
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::size
    - back
    - end
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::v(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:229,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: QuantLib::FdmSquareRootFwdOp::h
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::h(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: QuantLib::FdmSquareRootFwdOp::mu
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::mu(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 3
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: QuantLib::FdmSquareRootFwdOp::zetam
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zetam(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:238,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: QuantLib::FdmSquareRootFwdOp::zeta
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zeta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 3
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: QuantLib::FdmSquareRootFwdOp::zetap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zetap(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: QuantLib::FdmSquareRootFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmSquareRootFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 248
    functionName: QuantLib::FdmSquareRootFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSquareRootFwdOp::setTime(Time, Time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffPlain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:253,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffPower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:256,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffLog
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 261
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeffPower
    - QuantLib::FdmSquareRootFwdOp::getCoeffLog
    - QuantLib::FdmSquareRootFwdOp::getCoeffPlain
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeff(Real& alpha, Real& beta,\n                                               Real&
      gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:266,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:266,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 263
    functionDepth: 4
    functionLinenumber: 263
    functionLinenumberEnd: 270
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffPlain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffPlain(Real& alpha, Real& beta,\n
      \                                              Real& gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:274,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:274,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 279
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffLog
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - exp
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffLog(Real& alpha, Real& beta,\n                                               Real&
      gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:283,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 281
    functionDepth: 4
    functionLinenumber: 281
    functionLinenumberEnd: 288
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffPower
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffPower(Real& alpha, Real& beta,\n
      \                                              Real& gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionName: QuantLib::FdmSquareRootFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSquareRootFwdOp::apply(const Array& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:295,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: QuantLib::FdmSquareRootFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmSquareRootFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:301,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:304,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 298
    functionDepth: 2
    functionLinenumber: 298
    functionLinenumberEnd: 306
    functionName: QuantLib::FdmSquareRootFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::apply
    - Array
    - QuantLib::FdmSquareRootFwdOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: QuantLib::FdmSquareRootFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: QuantLib::FdmSquareRootFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::preconditioner(\n        const Array& r,
      Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:324,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::FdmSquareRootFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmSquareRootFwdOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:45,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:48,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:49,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:49,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:45,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:52,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:53,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:54,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:56,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:56,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:51,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:59,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:60,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:60,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:62,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:63,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:63,1
    - Dst: Exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:64,1
    - Dst: locations
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:64,1
    - Dst: ModTripleBandLinearOp::ModTripleBandLinearOp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:59,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:66,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:68,1
    - Dst: location
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:69,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:70,1
    - Dst: QuantLib::FdmSquareRootFwdOp::setLowerBC
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:74,1
    - Dst: QuantLib::FdmSquareRootFwdOp::setUpperBC
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - ' mesher'
    - kappa
    - theta
    - sigma
    - direction
    - transform
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Size
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 76
    functionName: QuantLib::FdmSquareRootFwdOp::FdmSquareRootFwdOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::setLowerBC
    - SecondDerivativeOp
    - Array
    - locations
    - location
    - Exp
    - QuantLib::FdmSquareRootFwdOp::setUpperBC
    - FirstDerivativeOp
    - coordinates
    - ModTripleBandLinearOp::ModTripleBandLinearOp
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::FdmSquareRootFwdOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        Real kappa, Real theta, Real sigma,\n        Size direction,
      TransformationType transform)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeff
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:83,1
    - Dst: QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:84,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:86,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:87,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:87,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:89,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:90,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:91,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:92,1
    - Dst: upper
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 4
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::FdmSquareRootFwdOp::setLowerBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeff
    - QuantLib::FdmSquareRootFwdOp::zetap
    - diag
    - upper
    - index
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
    - QuantLib::FdmSquareRootFwdOp::zeta
    - coordinates
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::setLowerBC(\n        const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:100,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeff
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:103,1
    - Dst: QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:104,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:106,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:107,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:107,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:109,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:110,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:111,1
    - Dst: diag
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:112,1
    - Dst: lower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 4
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::FdmSquareRootFwdOp::setUpperBC
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeff
    - diag
    - coordinates
    - lower
    - layout
    - index
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::size
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::setUpperBC(\n        const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Plain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:120,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Power
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:123,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f0Log
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:126,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::FdmSquareRootFwdOp::lowerBoundaryFactor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::f0Power
    - QuantLib::FdmSquareRootFwdOp::f0Log
    - QuantLib::FdmSquareRootFwdOp::f0Plain
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::lowerBoundaryFactor(TransformationType transform)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Plain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:134,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Power
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:137,1
    - Dst: QuantLib::FdmSquareRootFwdOp::f1Log
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:143,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - TransformationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: QuantLib::FdmSquareRootFwdOp::upperBoundaryFactor
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::f1Log
    - QuantLib::FdmSquareRootFwdOp::f1Power
    - QuantLib::FdmSquareRootFwdOp::f1Plain
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::upperBoundaryFactor(TransformationType transform)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:148,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:149,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:150,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:150,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 4
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::FdmSquareRootFwdOp::f0Plain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Plain() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:157,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:158,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:159,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:160,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:160,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 156
    functionDepth: 4
    functionLinenumber: 156
    functionLinenumberEnd: 164
    functionName: QuantLib::FdmSquareRootFwdOp::f1Plain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::size
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Plain() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:168,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:169,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:170,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:171,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:171,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 166
    functionDepth: 4
    functionLinenumber: 166
    functionLinenumberEnd: 174
    functionName: QuantLib::FdmSquareRootFwdOp::f0Power
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Power() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:177,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:178,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:179,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:180,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:181,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:181,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 176
    functionDepth: 4
    functionLinenumber: 176
    functionLinenumberEnd: 184
    functionName: QuantLib::FdmSquareRootFwdOp::f1Power
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::size
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Power() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:188,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:188,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:189,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:190,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:191,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:194,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 4
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: QuantLib::FdmSquareRootFwdOp::f0Log
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::zetam
    - QuantLib::FdmSquareRootFwdOp::v
    - exp
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f0Log() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:198,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:199,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:199,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:200,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:201,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:202,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:205,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 4
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSquareRootFwdOp::f1Log
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::size
    - exp
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::f1Log() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:217,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:220,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: back
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: end
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:221,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 226
    functionName: QuantLib::FdmSquareRootFwdOp::v
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 17
    functionsReached:
    - std::max
    - QL_FAIL
    - QuantLib::FdmSquareRootFwdOp::size
    - back
    - end
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::v(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:229,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: QuantLib::FdmSquareRootFwdOp::h
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 22
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::h(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: QuantLib::FdmSquareRootFwdOp::mu
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::mu(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 3
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: QuantLib::FdmSquareRootFwdOp::zetam
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zetam(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:238,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: QuantLib::FdmSquareRootFwdOp::zeta
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zeta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 3
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: QuantLib::FdmSquareRootFwdOp::zetap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::h
    linkageType: ''
    returnType: Real
    signature: Real FdmSquareRootFwdOp::zetap(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: QuantLib::FdmSquareRootFwdOp::size
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmSquareRootFwdOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 248
    functionName: QuantLib::FdmSquareRootFwdOp::setTime
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSquareRootFwdOp::setTime(Time, Time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffPlain
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:253,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffPower
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:256,1
    - Dst: QuantLib::FdmSquareRootFwdOp::getCoeffLog
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 250
    functionDepth: 5
    functionLinenumber: 250
    functionLinenumberEnd: 261
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeff
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::getCoeffPower
    - QuantLib::FdmSquareRootFwdOp::getCoeffLog
    - QuantLib::FdmSquareRootFwdOp::getCoeffPlain
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeff(Real& alpha, Real& beta,\n                                               Real&
      gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:265,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:266,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:266,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:267,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::mu
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 263
    functionDepth: 4
    functionLinenumber: 263
    functionLinenumberEnd: 270
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffPlain
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::mu
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffPlain(Real& alpha, Real& beta,\n
      \                                              Real& gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:274,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:274,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:275,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:276,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 279
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffLog
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - exp
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffLog(Real& alpha, Real& beta,\n                                               Real&
      gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:283,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetam
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:284,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zeta
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:285,1
    - Dst: QuantLib::FdmSquareRootFwdOp::v
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    - Dst: QuantLib::FdmSquareRootFwdOp::h
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    - Dst: QuantLib::FdmSquareRootFwdOp::zetap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' alpha'
    - ' beta'
    - ' gamma'
    - n
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 281
    functionDepth: 4
    functionLinenumber: 281
    functionLinenumberEnd: 288
    functionName: QuantLib::FdmSquareRootFwdOp::getCoeffPower
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::v
    - QuantLib::FdmSquareRootFwdOp::zetap
    - QuantLib::FdmSquareRootFwdOp::h
    - QuantLib::FdmSquareRootFwdOp::zeta
    - QuantLib::FdmSquareRootFwdOp::zetam
    linkageType: ''
    returnType: void
    signature: "void FdmSquareRootFwdOp::getCoeffPower(Real& alpha, Real& beta,\n
      \                                              Real& gamma, Size n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionName: QuantLib::FdmSquareRootFwdOp::apply
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmSquareRootFwdOp::apply(const Array& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:295,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: QuantLib::FdmSquareRootFwdOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmSquareRootFwdOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::apply
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:301,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:304,1
    - Dst: QuantLib::FdmSquareRootFwdOp::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 298
    functionDepth: 2
    functionLinenumber: 298
    functionLinenumberEnd: 306
    functionName: QuantLib::FdmSquareRootFwdOp::apply_direction
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::apply
    - Array
    - QuantLib::FdmSquareRootFwdOp::size
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::apply_direction(\n        Size direction,
      const Array& r) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - dt
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: QuantLib::FdmSquareRootFwdOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::solve_splitting(\n        Size direction,
      const Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSquareRootFwdOp::solve_splitting
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: QuantLib::FdmSquareRootFwdOp::preconditioner
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSquareRootFwdOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmSquareRootFwdOp::preconditioner(\n        const Array& r,
      Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:324,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::FdmSquareRootFwdOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmsquarerootfwdop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmSquareRootFwdOp::toMatrixDecomp() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:33,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:42,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 59
    functionName: QuantLib::FirstDerivativeOp::FirstDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void FirstDerivativeOp::FirstDerivativeOp(\n                                Size
      direction,\n                                const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:33,1
    - Dst: index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:34,1
    - Dst: dminus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:35,1
    - Dst: dplus
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:36,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:42,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:47,1
    - Dst: layout
      Src: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - direction
    - ' mesher'
    argTypes:
    - Size
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 59
    functionName: QuantLib::FirstDerivativeOp::FirstDerivativeOp
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/firstderivativeop.cpp
    functionUses: 0
    functionsReached:
    - dplus
    - index
    - coordinates
    - dminus
    - layout
    linkageType: ''
    returnType: void
    signature: "void FirstDerivativeOp::FirstDerivativeOp(\n                                Size
      direction,\n                                const ext::shared_ptr<FdmMesher>&
      mesher)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:28,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:29,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:31,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:31,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ' iterator'
    - i
    - offset
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLinearOpLayout::neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - coordinates
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size FdmLinearOpLayout::neighbourhood(const FdmLinearOpIterator& iterator,\n
      \                                         Size i, Integer offset) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:46,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:47,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:49,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:49,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:53,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:57,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:57,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:61,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' iterator'
    - i1
    - offset1
    - i2
    - offset2
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmLinearOpLayout::neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - coordinates
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size FdmLinearOpLayout::neighbourhood(const FdmLinearOpIterator& iterator,\n
      \                                         Size i1, Integer offset1,\n                                          Size
      i2, Integer offset2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:72,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:74,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:78,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:81,1
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:83,1
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' iterator'
    - i
    - offset
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 85
    functionName: QuantLib::FdmLinearOpLayout::iter_neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - FdmLinearOpIterator
    - Size
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - coordinates
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: "FdmLinearOpIterator FdmLinearOpLayout::iter_neighbourhood(\n        const
      FdmLinearOpIterator& iterator, Size i, Integer offset) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:28,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:29,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:31,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:31,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ' iterator'
    - i
    - offset
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLinearOpLayout::neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - coordinates
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size FdmLinearOpLayout::neighbourhood(const FdmLinearOpIterator& iterator,\n
      \                                         Size i, Integer offset) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:45,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:46,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:47,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:49,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:49,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:53,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:57,1
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:57,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:61,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ' iterator'
    - i1
    - offset1
    - i2
    - offset2
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmLinearOpLayout::neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - coordinates
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size FdmLinearOpLayout::neighbourhood(const FdmLinearOpIterator& iterator,\n
      \                                         Size i1, Integer offset1,\n                                          Size
      i2, Integer offset2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:72,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:74,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:78,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:81,1
    - Dst: FdmLinearOpIterator
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:83,1
    - Dst: QuantLib::FdmLinearOpLayout::index
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' iterator'
    - i
    - offset
    argTypes:
    - FdmLinearOpIterator
    - Size
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 85
    functionName: QuantLib::FdmLinearOpLayout::iter_neighbourhood
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearoplayout.cpp
    functionUses: 0
    functionsReached:
    - FdmLinearOpIterator
    - Size
    - Integer
    - QuantLib::FdmLinearOpLayout::index
    - coordinates
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: "FdmLinearOpIterator FdmLinearOpLayout::iter_neighbourhood(\n        const
      FdmLinearOpIterator& iterator, Size i, Integer offset) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(Size index = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dim
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(std::vector<Size> dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - dim
    - coordinates
    - index
    argTypes:
    - std::vector<Size>
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(std::vector<Size> dim, std::vector<Size> coordinates,
      Size index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: operator++()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    linkageType: ''
    returnType: void
    signature: void operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: '& operator*() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator & operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iterator'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: operator!=(const FdmLinearOpIterator& iterator) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const FdmLinearOpIterator& iterator) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmLinearOpIterator::index
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& coordinates() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & coordinates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:79,1
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:80,1
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmLinearOpIterator::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmLinearOpIterator::swap
    linkageType: ''
    returnType: void
    signature: void swap(FdmLinearOpIterator& iter) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(Size index = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dim
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(std::vector<Size> dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - dim
    - coordinates
    - index
    argTypes:
    - std::vector<Size>
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmLinearOpIterator::FdmLinearOpIterator
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmLinearOpIterator(std::vector<Size> dim, std::vector<Size> coordinates,
      Size index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: operator++()
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: '& operator*() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FdmLinearOpIterator
    signature: FdmLinearOpIterator & operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iterator'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: operator!=(const FdmLinearOpIterator& iterator) const
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const FdmLinearOpIterator& iterator) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FdmLinearOpIterator::index
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& coordinates() const'
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & coordinates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:79,1
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:80,1
    - Dst: QuantLib::FdmLinearOpIterator::swap
      Src: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::FdmLinearOpIterator::swap
    functionSourceFile: /src/quantlib/ql/methods/finitedifferences/operators/fdmlinearopiterator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmLinearOpIterator::swap
    linkageType: ''
    returnType: void
    signature: void swap(FdmLinearOpIterator& iter) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:45,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::BinomialTree::BinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - drift
    - x0
    linkageType: ''
    returnType: void
    signature: "void BinomialTree(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                    Time end,\n                     Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::BinomialTree::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::EqualProbabilitiesBinomialTree::EqualProbabilitiesBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EqualProbabilitiesBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:71,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::EqualProbabilitiesBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::EqualProbabilitiesBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::EqualJumpsBinomialTree::EqualJumpsBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EqualJumpsBinomialTree(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:92,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::EqualJumpsBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::EqualJumpsBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:161,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::Tian::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::Tian::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:180,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::LeisenReimer::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::LeisenReimer::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:198,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::Joshi4::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: QuantLib::Joshi4::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:45,1
    - Dst: drift
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::BinomialTree::BinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - drift
    - x0
    linkageType: ''
    returnType: void
    signature: "void BinomialTree(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                    Time end,\n                     Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::BinomialTree::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::EqualProbabilitiesBinomialTree::EqualProbabilitiesBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EqualProbabilitiesBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:71,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::EqualProbabilitiesBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::EqualProbabilitiesBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::EqualJumpsBinomialTree::EqualJumpsBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EqualJumpsBinomialTree(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:92,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::EqualJumpsBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::EqualJumpsBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:160,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:161,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::Tian::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::Tian::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:179,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:180,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::LeisenReimer::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::LeisenReimer::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:198,1
    - Dst: Real
      Src: /src/quantlib/ql/methods/lattices/binomialtree.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::Joshi4::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached:
    - BigInteger
    - std::pow
    - Real
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - branch
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: QuantLib::Joshi4::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::BlackScholesLattice::riskFreeRate
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackScholesLattice::dt
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::size
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::BlackScholesLattice::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackScholesLattice::size
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::BlackScholesLattice::discount
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor discount(Size,\n                                Size)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::underlying
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackScholesLattice::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackScholesLattice::underlying
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::descendant
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackScholesLattice::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackScholesLattice::descendant
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::BlackScholesLattice::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackScholesLattice::probability
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TimeGrid
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:79,1
    - Dst: probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:80,1
    - Dst: probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' tree'
    - riskFreeRate
    - end
    - steps
    argTypes:
    - ext::shared_ptr<T>
    - Rate
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackScholesLattice<T>::BlackScholesLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid
    - std::exp
    - probability
    linkageType: ''
    returnType: void
    signature: "void BlackScholesLattice<T>::BlackScholesLattice(\n                                            const
      ext::shared_ptr<T>& tree,\n                                            Rate
      riskFreeRate,\n                                            Time end,\n                                            Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - i
    - ' values'
    - ' newValues'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::BlackScholesLattice<T>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void BlackScholesLattice<T>::stepback(Size i, const Array& values,\n
      \                                         Array& newValues) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::BlackScholesLattice::riskFreeRate
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackScholesLattice::dt
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::size
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::BlackScholesLattice::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackScholesLattice::size
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::BlackScholesLattice::discount
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor discount(Size,\n                                Size)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::underlying
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackScholesLattice::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackScholesLattice::underlying
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::descendant
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackScholesLattice::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackScholesLattice::descendant
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackScholesLattice::probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::BlackScholesLattice::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackScholesLattice::probability
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TimeGrid
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:79,1
    - Dst: probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:80,1
    - Dst: probability
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' tree'
    - riskFreeRate
    - end
    - steps
    argTypes:
    - ext::shared_ptr<T>
    - Rate
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackScholesLattice<T>::BlackScholesLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid
    - std::exp
    - probability
    linkageType: ''
    returnType: void
    signature: "void BlackScholesLattice<T>::BlackScholesLattice(\n                                            const
      ext::shared_ptr<T>& tree,\n                                            Rate
      riskFreeRate,\n                                            Time end,\n                                            Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/lattices/bsmlattice.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - i
    - ' values'
    - ' newValues'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::BlackScholesLattice<T>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/bsmlattice.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void BlackScholesLattice<T>::stepback(Size i, const Array& values,\n
      \                                         Array& newValues) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:30,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:31,1
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:34,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:41,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:45,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:46,1
    - Dst: expectation
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:51,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:52,1
    - Dst: std::floor
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:62,1
    - Dst: Branching::add
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:70,1
    - Dst: Branching::jMin
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:72,1
    - Dst: Branching::jMax
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:73,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' process'
    - ' timeGrid'
    - isPositive
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - TimeGrid
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 75
    functionName: QuantLib::TrinomialTree::TrinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TrinomialTree::size
    - Branching::add
    - std::floor
    - Integer
    - variance
    - push_back
    - expectation
    - Branching::jMax
    - std::sqrt
    - Branching::jMin
    - dt
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TrinomialTree::TrinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        const
      TimeGrid& timeGrid,\n                        bool isPositive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:30,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:31,1
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:34,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:41,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:45,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:46,1
    - Dst: expectation
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:51,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:52,1
    - Dst: std::floor
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:62,1
    - Dst: Branching::add
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:70,1
    - Dst: Branching::jMin
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:72,1
    - Dst: Branching::jMax
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.cpp:73,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' process'
    - ' timeGrid'
    - isPositive
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - TimeGrid
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 75
    functionName: QuantLib::TrinomialTree::TrinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TrinomialTree::size
    - Branching::add
    - std::floor
    - Integer
    - variance
    - push_back
    - expectation
    - Branching::jMax
    - std::sqrt
    - Branching::jMin
    - dt
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TrinomialTree::TrinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        const
      TimeGrid& timeGrid,\n                        bool isPositive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::JarrowRudd::JarrowRudd
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: void
    signature: "void JarrowRudd::JarrowRudd(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::CoxRossRubinstein::CoxRossRubinstein
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoxRossRubinstein::CoxRossRubinstein(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:57,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: QuantLib::AdditiveEQPBinomialTree::AdditiveEQPBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void AdditiveEQPBinomialTree::AdditiveEQPBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:67,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionName: QuantLib::Trigeorgis::Trigeorgis
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Trigeorgis::Trigeorgis(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:81,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 96
    functionName: QuantLib::Tian::Tian
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Tian::Tian(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \              Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:105,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:108,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:110,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:111,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:113,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 117
    functionName: QuantLib::LeisenReimer::LeisenReimer
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::sqrt
    - variance
    - PeizerPrattMethod2Inversion
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LeisenReimer::LeisenReimer(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                               Time end,\n                               Size
      steps,\n                               Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - k
    - dj
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 138
    functionName: QuantLib::Joshi4::computeUpProb
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Joshi4::computeUpProb(Real k, Real dj) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:146,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:151,1
    - Dst: QuantLib::Joshi4::computeUpProb
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:152,1
    - Dst: QuantLib::Joshi4::computeUpProb
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 157
    functionName: QuantLib::Joshi4::Joshi4
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - QuantLib::Joshi4::computeUpProb
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Joshi4::Joshi4(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                  Time end,\n                   Size steps,\n                   Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::JarrowRudd::JarrowRudd
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: void
    signature: "void JarrowRudd::JarrowRudd(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::CoxRossRubinstein::CoxRossRubinstein
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoxRossRubinstein::CoxRossRubinstein(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:57,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: QuantLib::AdditiveEQPBinomialTree::AdditiveEQPBinomialTree
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void AdditiveEQPBinomialTree::AdditiveEQPBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:67,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionName: QuantLib::Trigeorgis::Trigeorgis
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Trigeorgis::Trigeorgis(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:81,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 96
    functionName: QuantLib::Tian::Tian
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - variance
    - std::sqrt
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Tian::Tian(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \              Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:105,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:108,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:110,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:111,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:113,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 117
    functionName: QuantLib::LeisenReimer::LeisenReimer
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::sqrt
    - variance
    - PeizerPrattMethod2Inversion
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LeisenReimer::LeisenReimer(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                               Time end,\n                               Size
      steps,\n                               Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - k
    - dj
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 138
    functionName: QuantLib::Joshi4::computeUpProb
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Joshi4::computeUpProb(Real k, Real dj) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:146,1
    - Dst: variance
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:151,1
    - Dst: QuantLib::Joshi4::computeUpProb
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:152,1
    - Dst: QuantLib::Joshi4::computeUpProb
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/lattices/binomialtree.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 157
    functionName: QuantLib::Joshi4::Joshi4
    functionSourceFile: /src/quantlib/ql/methods/lattices/binomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - QuantLib::Joshi4::computeUpProb
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Joshi4::Joshi4(const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                  Time end,\n                   Size steps,\n                   Real
      strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' timeGrid'
    - n
    argTypes:
    - TimeGrid
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::TreeLattice1D::TreeLattice1D
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeLattice1D(const TimeGrid& timeGrid, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice1D::timeGrid
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:44,1
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:45,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:46,1
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::TreeLattice1D::grid
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice1D::impl
    - QuantLib::TreeLattice1D::timeGrid
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array grid(Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::TreeLattice1D::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice1D::impl
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' timeGrid'
    - n
    argTypes:
    - TimeGrid
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::TreeLattice1D::TreeLattice1D
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeLattice1D(const TimeGrid& timeGrid, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice1D::timeGrid
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:44,1
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:45,1
    - Dst: Array::size
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:46,1
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::TreeLattice1D::grid
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice1D::impl
    - QuantLib::TreeLattice1D::timeGrid
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array grid(Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice1D::impl
      Src: /src/quantlib/ql/methods/lattices/lattice1d.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::TreeLattice1D::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice1d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice1D::impl
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - columns
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Tree::Tree
    functionSourceFile: /src/quantlib/ql/methods/lattices/tree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(Size columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Tree::columns
    functionSourceFile: /src/quantlib/ql/methods/lattices/tree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size columns() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - columns
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Tree::Tree
    functionSourceFile: /src/quantlib/ql/methods/lattices/tree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(Size columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Tree::columns
    functionSourceFile: /src/quantlib/ql/methods/lattices/tree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size columns() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::TreeLattice2D::grid
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array grid(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:64,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::TreeLattice2D<Impl,T>::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Size
    signature: Size TreeLattice2D<Impl,T>::size(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - ' tree1'
    - tree2
    - correlation
    argTypes:
    - ext::shared_ptr<T>
    - ext::shared_ptr<T>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 99
    functionName: QuantLib::TreeLattice2D<Impl, T>::TreeLattice2D
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 0
    functionsReached:
    - timeGrid
    - std::fabs
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeLattice2D<Impl, T>::TreeLattice2D(const ext::shared_ptr<T>&
      tree1,\n                                          ext::shared_ptr<T> tree2,\n
      \                                         Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:105,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:112,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::descendant
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:113,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::descendant
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionName: QuantLib::TreeLattice2D<Impl,T>::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::descendant
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Size
    signature: "Size TreeLattice2D<Impl,T>::descendant(Size i, Size index,\n                                           Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:120,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::probability
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:127,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::probability
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 131
    functionName: QuantLib::TreeLattice2D<Impl,T>::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::probability
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Real
    signature: "Real TreeLattice2D<Impl,T>::probability(Size i, Size index,\n                                            Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::TreeLattice2D::grid
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array grid(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:64,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::TreeLattice2D<Impl,T>::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Size
    signature: Size TreeLattice2D<Impl,T>::size(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - ' tree1'
    - tree2
    - correlation
    argTypes:
    - ext::shared_ptr<T>
    - ext::shared_ptr<T>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 99
    functionName: QuantLib::TreeLattice2D<Impl, T>::TreeLattice2D
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 0
    functionsReached:
    - timeGrid
    - std::fabs
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeLattice2D<Impl, T>::TreeLattice2D(const ext::shared_ptr<T>&
      tree1,\n                                          ext::shared_ptr<T> tree2,\n
      \                                         Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:105,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:112,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::descendant
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:113,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::descendant
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionName: QuantLib::TreeLattice2D<Impl,T>::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::descendant
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Size
    signature: "Size TreeLattice2D<Impl,T>::descendant(Size i, Size index,\n                                           Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice2D<Impl,T>::size
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:120,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::probability
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:127,1
    - Dst: QuantLib::TreeLattice2D<Impl,T>::probability
      Src: /src/quantlib/ql/methods/lattices/lattice2d.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 131
    functionName: QuantLib::TreeLattice2D<Impl,T>::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TreeLattice2D<Impl,T>::probability
    - QuantLib::TreeLattice2D<Impl,T>::size
    linkageType: ''
    returnType: Real
    signature: "Real TreeLattice2D<Impl,T>::probability(Size i, Size index,\n                                            Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::TrinomialTree::dx
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dx(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::TrinomialTree::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::TrinomialTree::size
    linkageType: ''
    returnType: Size
    signature: Size TrinomialTree::size(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jMin
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:92,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:93,1
    - Dst: QuantLib::TrinomialTree::dx
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::TrinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached:
    - jMin
    - QuantLib::TrinomialTree::dx
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real TrinomialTree::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::descendant
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::TrinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TrinomialTree::descendant
    linkageType: ''
    returnType: Size
    signature: "Size TrinomialTree::descendant(Size i, Size index,\n                                          Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::probability
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - b
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::TrinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TrinomialTree::probability
    linkageType: ''
    returnType: Real
    signature: Real TrinomialTree::probability(Size i, Size j, Size b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: TrinomialTree::Branching::Branching()
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TrinomialTree::Branching::Branching()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: "TrinomialTree::Branching::descendant(Size index,\n                                                     Size
      branch) const"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size TrinomialTree::Branching::descendant(Size index,\n                                                     Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: "TrinomialTree::Branching::probability(Size index,\n                                                      Size
      branch) const"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real TrinomialTree::Branching::probability(Size index,\n                                                      Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: TrinomialTree::Branching::size() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TrinomialTree::Branching::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: TrinomialTree::Branching::jMin() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer TrinomialTree::Branching::jMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: TrinomialTree::Branching::jMax() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer TrinomialTree::Branching::jMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:134,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:135,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:136,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:137,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:139,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - k
    - p1
    - p2
    - p3
    argTypes:
    - Integer
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 143
    functionName: "TrinomialTree::Branching::add(Integer k,\n                                              Real
      p1, Real p2, Real p3)"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - push_back
    - std::min
    linkageType: ''
    returnType: void
    signature: "void TrinomialTree::Branching::add(Integer k,\n                                              Real
      p1, Real p2, Real p3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::TrinomialTree::dx
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dx(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::size
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::TrinomialTree::size
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::TrinomialTree::size
    linkageType: ''
    returnType: Size
    signature: Size TrinomialTree::size(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jMin
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:92,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:93,1
    - Dst: QuantLib::TrinomialTree::dx
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::TrinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached:
    - jMin
    - QuantLib::TrinomialTree::dx
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real TrinomialTree::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::descendant
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::TrinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TrinomialTree::descendant
    linkageType: ''
    returnType: Size
    signature: "Size TrinomialTree::descendant(Size i, Size index,\n                                          Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TrinomialTree::probability
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - b
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::TrinomialTree::probability
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TrinomialTree::probability
    linkageType: ''
    returnType: Real
    signature: Real TrinomialTree::probability(Size i, Size j, Size b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: TrinomialTree::Branching::Branching()
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TrinomialTree::Branching::Branching()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: "TrinomialTree::Branching::descendant(Size index,\n                                                     Size
      branch) const"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size TrinomialTree::Branching::descendant(Size index,\n                                                     Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: "TrinomialTree::Branching::probability(Size index,\n                                                      Size
      branch) const"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real TrinomialTree::Branching::probability(Size index,\n                                                      Size
      branch) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: TrinomialTree::Branching::size() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TrinomialTree::Branching::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: TrinomialTree::Branching::jMin() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer TrinomialTree::Branching::jMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: TrinomialTree::Branching::jMax() const
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer TrinomialTree::Branching::jMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:134,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:135,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:136,1
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:137,1
    - Dst: std::min
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:139,1
    - Dst: std::max
      Src: /src/quantlib/ql/methods/lattices/trinomialtree.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - k
    - p1
    - p2
    - p3
    argTypes:
    - Integer
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 143
    functionName: "TrinomialTree::Branching::add(Integer k,\n                                              Real
      p1, Real p2, Real p3)"
    functionSourceFile: /src/quantlib/ql/methods/lattices/trinomialtree.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - push_back
    - std::min
    linkageType: ''
    returnType: void
    signature: "void TrinomialTree::Branching::add(Integer k,\n                                              Real
      p1, Real p2, Real p3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:63,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:64,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' timeGrid'
    - n
    argTypes:
    - TimeGrid
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::TreeLattice::TreeLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Array>
    - Array
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TreeLattice(const TimeGrid& timeGrid,\n                    Size
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:101,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:102,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:105,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - until
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 111
    functionName: QuantLib::TreeLattice<Impl>::computeStatePrices
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::TreeLattice<Impl>::impl
    - push_back
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::computeStatePrices(Size until) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: computeStatePrices
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: '& TreeLattice<Impl>::statePrices(Size i) const'
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - computeStatePrices
    linkageType: ''
    returnType: Array
    signature: Array & TreeLattice<Impl>::statePrices(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:122,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:122,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    - Dst: statePrices
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' asset'
    argTypes:
    - DiscretizedAsset
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::TreeLattice<Impl>::presentValue
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - statePrices
    - time
    - index
    - DotProduct
    - values
    linkageType: ''
    returnType: Real
    signature: Real TreeLattice<Impl>::presentValue(DiscretizedAsset& asset) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:128,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:129,1
    - Dst: reset
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:130,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - t
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::TreeLattice<Impl>::initialize
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - index
    - reset
    - QuantLib::TreeLattice<Impl>::impl
    - time
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::initialize(DiscretizedAsset& asset, Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice<Impl>::partialRollback
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:135,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::TreeLattice<Impl>::rollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice<Impl>::partialRollback
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::rollback(DiscretizedAsset& asset, Time to)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:143,1
    - Dst: close
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:148,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:152,1
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:152,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:153,1
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:153,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:156,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:157,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:157,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:158,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:159,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 164
    functionName: QuantLib::TreeLattice<Impl>::partialRollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 1
    functionsReached:
    - close
    - Integer
    - time
    - adjustValues
    - index
    - QuantLib::TreeLattice<Impl>::impl
    - values
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TreeLattice<Impl>::partialRollback(DiscretizedAsset& asset,\n
      \                                           Time to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:170,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:173,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:174,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - i
    - ' values'
    - ' newValues'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::TreeLattice<Impl>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice<Impl>::impl
    linkageType: ''
    returnType: void
    signature: "void TreeLattice<Impl>::stepback(Size i, const Array& values,\n                                     Array&
      newValues) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:63,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:64,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' timeGrid'
    - n
    argTypes:
    - TimeGrid
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::TreeLattice::TreeLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Array>
    - Array
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TreeLattice(const TimeGrid& timeGrid,\n                    Size
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:100,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:101,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:102,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:105,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - until
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 111
    functionName: QuantLib::TreeLattice<Impl>::computeStatePrices
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::TreeLattice<Impl>::impl
    - push_back
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::computeStatePrices(Size until) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: computeStatePrices
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: '& TreeLattice<Impl>::statePrices(Size i) const'
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - computeStatePrices
    linkageType: ''
    returnType: Array
    signature: Array & TreeLattice<Impl>::statePrices(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:122,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:122,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    - Dst: statePrices
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' asset'
    argTypes:
    - DiscretizedAsset
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::TreeLattice<Impl>::presentValue
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - statePrices
    - time
    - index
    - DotProduct
    - values
    linkageType: ''
    returnType: Real
    signature: Real TreeLattice<Impl>::presentValue(DiscretizedAsset& asset) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:128,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:129,1
    - Dst: reset
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:130,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - t
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::TreeLattice<Impl>::initialize
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - index
    - reset
    - QuantLib::TreeLattice<Impl>::impl
    - time
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::initialize(DiscretizedAsset& asset, Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice<Impl>::partialRollback
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:135,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::TreeLattice<Impl>::rollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice<Impl>::partialRollback
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void TreeLattice<Impl>::rollback(DiscretizedAsset& asset, Time to)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:143,1
    - Dst: close
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:148,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:152,1
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:152,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:153,1
    - Dst: index
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:153,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:156,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:157,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:157,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:158,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:159,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 164
    functionName: QuantLib::TreeLattice<Impl>::partialRollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 2
    functionsReached:
    - close
    - Integer
    - time
    - adjustValues
    - index
    - QuantLib::TreeLattice<Impl>::impl
    - values
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TreeLattice<Impl>::partialRollback(DiscretizedAsset& asset,\n
      \                                           Time to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:170,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:173,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:174,1
    - Dst: QuantLib::TreeLattice<Impl>::impl
      Src: /src/quantlib/ql/methods/lattices/lattice.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - i
    - ' values'
    - ' newValues'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::TreeLattice<Impl>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/lattice.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TreeLattice<Impl>::impl
    linkageType: ''
    returnType: void
    signature: "void TreeLattice<Impl>::stepback(Size i, const Array& values,\n                                     Array&
      newValues) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::TsiveriotisFernandesLattice::creditSpread
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread creditSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' tree'
    - riskFreeRate
    - end
    - steps
    - creditSpread
    - sigma
    - divYield
    argTypes:
    - ext::shared_ptr<T>
    - Rate
    - Time
    - Size
    - Spread
    - Volatility
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 84
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice(\n
      \                                            const ext::shared_ptr<T>& tree,\n
      \                                            Rate riskFreeRate,\n                                             Time
      end,\n                                             Size steps,\n                                             Spread
      creditSpread,\n                                             Volatility sigma,\n
      \                                            Spread divYield)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 7
    argNames:
    - i
    - ' values'
    - ' conversionProbability'
    - ' spreadAdjustedRate'
    - ' newValues'
    - ' newConversionProbability'
    - ' newSpreadAdjustedRate'
    argTypes:
    - Size
    - Array
    - Array
    - Array
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 116
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TsiveriotisFernandesLattice<T>::size
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::stepback(\n                                          Size
      i,\n                                          const Array& values,\n                                          const
      Array& conversionProbability,\n                                          const
      Array& spreadAdjustedRate,\n                                          Array&
      newValues,\n                                          Array& newConversionProbability,\n
      \                                         Array& newSpreadAdjustedRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:121,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::rollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached:
    - adjustValues
    - QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::rollback(DiscretizedAsset& asset,\n
      \                                                 Time to) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:130,1
    - Dst: close
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:135,1
    - Dst: dynamic_cast<DiscretizedConvertible&>
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:139,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:141,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::t_::index
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:142,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::t_::index
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:142,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:146,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:147,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:148,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::stepback
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:150,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:150,1
    - Dst: conversionProbability
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:151,1
    - Dst: spreadAdjustedRate
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:152,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:155,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:156,1
    - Dst: spreadAdjustedRate
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:157,1
    - Dst: conversionProbability
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:158,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 164
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TsiveriotisFernandesLattice<T>::stepback
    - close
    - QuantLib::TsiveriotisFernandesLattice<T>::t_::index
    - Integer
    - time
    - adjustValues
    - QuantLib::TsiveriotisFernandesLattice<T>::size
    - spreadAdjustedRate
    - values
    - dynamic_cast<DiscretizedConvertible&>
    - conversionProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::partialRollback(DiscretizedAsset&
      asset,\n                                                         Time to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::TsiveriotisFernandesLattice::creditSpread
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread creditSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' tree'
    - riskFreeRate
    - end
    - steps
    - creditSpread
    - sigma
    - divYield
    argTypes:
    - ext::shared_ptr<T>
    - Rate
    - Time
    - Size
    - Spread
    - Volatility
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 84
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice(\n
      \                                            const ext::shared_ptr<T>& tree,\n
      \                                            Rate riskFreeRate,\n                                             Time
      end,\n                                             Size steps,\n                                             Spread
      creditSpread,\n                                             Volatility sigma,\n
      \                                            Spread divYield)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 7
    argNames:
    - i
    - ' values'
    - ' conversionProbability'
    - ' spreadAdjustedRate'
    - ' newValues'
    - ' newConversionProbability'
    - ' newSpreadAdjustedRate'
    argTypes:
    - Size
    - Array
    - Array
    - Array
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 116
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::stepback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TsiveriotisFernandesLattice<T>::size
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::stepback(\n                                          Size
      i,\n                                          const Array& values,\n                                          const
      Array& conversionProbability,\n                                          const
      Array& spreadAdjustedRate,\n                                          Array&
      newValues,\n                                          Array& newConversionProbability,\n
      \                                         Array& newSpreadAdjustedRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:121,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::rollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 0
    functionsReached:
    - adjustValues
    - QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::rollback(DiscretizedAsset& asset,\n
      \                                                 Time to) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:130,1
    - Dst: close
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:135,1
    - Dst: dynamic_cast<DiscretizedConvertible&>
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:139,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:141,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::t_::index
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:142,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::t_::index
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:142,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:146,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:147,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::size
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:148,1
    - Dst: QuantLib::TsiveriotisFernandesLattice<T>::stepback
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:150,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:150,1
    - Dst: conversionProbability
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:151,1
    - Dst: spreadAdjustedRate
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:152,1
    - Dst: time
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:155,1
    - Dst: values
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:156,1
    - Dst: spreadAdjustedRate
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:157,1
    - Dst: conversionProbability
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:158,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/methods/lattices/tflattice.hpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ' asset'
    - to
    argTypes:
    - DiscretizedAsset
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 164
    functionName: QuantLib::TsiveriotisFernandesLattice<T>::partialRollback
    functionSourceFile: /src/quantlib/ql/methods/lattices/tflattice.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TsiveriotisFernandesLattice<T>::stepback
    - close
    - QuantLib::TsiveriotisFernandesLattice<T>::t_::index
    - Integer
    - time
    - adjustValues
    - QuantLib::TsiveriotisFernandesLattice<T>::size
    - spreadAdjustedRate
    - values
    - dynamic_cast<DiscretizedConvertible&>
    - conversionProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TsiveriotisFernandesLattice<T>::partialRollback(DiscretizedAsset&
      asset,\n                                                         Time to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - i
    - state
    - price
    - exercise
    argTypes:
    - Size
    - std::vector<StateType>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::LongstaffSchwartzPathPricer::post_processing
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void post_processing(const Size i,\n                                     const
      std::vector<StateType> &state,\n                                     const std::vector<Real>
      &price,\n                                     const std::vector<Real> &exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: Array::Array
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: DiscountFactor::DiscountFactor
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: basisSystem
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:95,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' times'
    - pathPricer
    - ' termStructure'
    argTypes:
    - TimeGrid
    - ext::shared_ptr<EarlyExercisePathPricer<PathType> >
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 99
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::LongstaffSchwartzPathPricer
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - basisSystem
    - DiscountFactor::DiscountFactor
    - std::move
    - Array::Array
    - discount
    - size
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzPathPricer<PathType>::LongstaffSchwartzPathPricer(\n
      \       const TimeGrid& times,\n        ext::shared_ptr<EarlyExercisePathPricer<PathType>
      > pathPricer,\n        const ext::shared_ptr<YieldTermStructure>& termStructure)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:106,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:124,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:137,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - PathType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 140
    functionName: "LongstaffSchwartzPathPricer<PathType>::operator()\n        (const
      PathType& path) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - size
    - state
    - add
    - push_back
    linkageType: ''
    returnType: Real
    signature: "Real LongstaffSchwartzPathPricer<PathType>::operator()\n        (const
      PathType& path) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:144,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:150,1
    - Dst: post_processing
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:155,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:160,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:161,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:167,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:167,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:168,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:172,1
    - Dst: GeneralLinearLeastSquares
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:173,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:185,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:193,1
    - Dst: post_processing
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:198,1
    - Dst: swap
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:203,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 206
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::calibrate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - state
    - std::vector::clear
    - post_processing
    - Array
    - swap
    - size
    - std::vector::size
    - GeneralLinearLeastSquares
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void LongstaffSchwartzPathPricer<PathType>::calibrate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mean
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::exerciseProbability
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - mean
    linkageType: ''
    returnType: Real
    signature: Real LongstaffSchwartzPathPricer<PathType>::exerciseProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - i
    - state
    - price
    - exercise
    argTypes:
    - Size
    - std::vector<StateType>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::LongstaffSchwartzPathPricer::post_processing
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void post_processing(const Size i,\n                                     const
      std::vector<StateType> &state,\n                                     const std::vector<Real>
      &price,\n                                     const std::vector<Real> &exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: Array::Array
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: DiscountFactor::DiscountFactor
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: basisSystem
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:95,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' times'
    - pathPricer
    - ' termStructure'
    argTypes:
    - TimeGrid
    - ext::shared_ptr<EarlyExercisePathPricer<PathType> >
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 99
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::LongstaffSchwartzPathPricer
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - basisSystem
    - DiscountFactor::DiscountFactor
    - std::move
    - Array::Array
    - discount
    - size
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzPathPricer<PathType>::LongstaffSchwartzPathPricer(\n
      \       const TimeGrid& times,\n        ext::shared_ptr<EarlyExercisePathPricer<PathType>
      > pathPricer,\n        const ext::shared_ptr<YieldTermStructure>& termStructure)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:106,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:124,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:137,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - PathType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 140
    functionName: "LongstaffSchwartzPathPricer<PathType>::operator()\n        (const
      PathType& path) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - size
    - state
    - add
    - push_back
    linkageType: ''
    returnType: Real
    signature: "Real LongstaffSchwartzPathPricer<PathType>::operator()\n        (const
      PathType& path) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:144,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:150,1
    - Dst: post_processing
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:155,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:160,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:161,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:167,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:167,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:168,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:172,1
    - Dst: GeneralLinearLeastSquares
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:173,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:185,1
    - Dst: state
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:193,1
    - Dst: post_processing
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:198,1
    - Dst: swap
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:203,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 206
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::calibrate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - state
    - std::vector::clear
    - post_processing
    - Array
    - swap
    - size
    - std::vector::size
    - GeneralLinearLeastSquares
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void LongstaffSchwartzPathPricer<PathType>::calibrate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mean
      Src: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: QuantLib::LongstaffSchwartzPathPricer<PathType>::exerciseProbability
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/longstaffschwartzpathpricer.hpp
    functionUses: 0
    functionsReached:
    - mean
    linkageType: ''
    returnType: Real
    signature: Real LongstaffSchwartzPathPricer<PathType>::exerciseProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~ParametricExercise()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParametricExercise()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~ParametricExercise()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParametricExercise()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/sample.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - weight
    argTypes:
    - T
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::Sample
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/sample.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Sample(T value, Real weight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/sample.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - value
    - weight
    argTypes:
    - T
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::Sample
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/sample.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Sample(T value, Real weight)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:83,1
    - Dst: QuantLib::Path::empty
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:84,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - timeGrid
    - values
    argTypes:
    - TimeGrid
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::Path::Path
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Path::empty
    - Array
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Path::Path(TimeGrid timeGrid, Array values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::empty
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Path::empty
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::empty
    linkageType: ''
    returnType: bool
    signature: bool Path::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::Path::length
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size Path::length() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: Path::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::at
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::Path::at
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Path::at
    linkageType: ''
    returnType: Real
    signature: Real Path::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& Path::operator[](Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: '& Path::at(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real & Path::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::Path::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::value(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& Path::value(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::value(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::Path::front
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& Path::front()'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::Path::back
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real Path::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: '& Path::back()'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real & Path::back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::Path::time
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time Path::time(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: '& Path::timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & Path::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::begin
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Path::begin
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Path::begin
    linkageType: ''
    returnType: Path::iterator
    signature: Path::iterator Path::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::end
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::Path::end
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Path::end
    linkageType: ''
    returnType: Path::iterator
    signature: Path::iterator Path::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::rbegin
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::Path::rbegin
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Path::rbegin
    linkageType: ''
    returnType: Path::reverse_iterator
    signature: Path::reverse_iterator Path::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::rend
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Path::rend
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Path::rend
    linkageType: ''
    returnType: Path::reverse_iterator
    signature: Path::reverse_iterator Path::rend() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:83,1
    - Dst: QuantLib::Path::empty
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:84,1
    - Dst: Array
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - timeGrid
    - values
    argTypes:
    - TimeGrid
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::Path::Path
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Path::empty
    - Array
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Path::Path(TimeGrid timeGrid, Array values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::empty
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Path::empty
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Path::empty
    linkageType: ''
    returnType: bool
    signature: bool Path::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::Path::length
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size Path::length() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: Path::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::at
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::Path::at
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::at
    linkageType: ''
    returnType: Real
    signature: Real Path::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& Path::operator[](Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: '& Path::at(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real & Path::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::Path::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::value(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& Path::value(Size i)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::value(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::Path::front
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Path::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& Path::front()'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & Path::front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::Path::back
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real Path::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: '& Path::back()'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real & Path::back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::Path::time
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time Path::time(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: '& Path::timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & Path::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::begin
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Path::begin
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::begin
    linkageType: ''
    returnType: Path::iterator
    signature: Path::iterator Path::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::end
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::Path::end
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::end
    linkageType: ''
    returnType: Path::iterator
    signature: Path::iterator Path::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::rbegin
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::Path::rbegin
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::rbegin
    linkageType: ''
    returnType: Path::reverse_iterator
    signature: Path::reverse_iterator Path::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Path::rend
      Src: /src/quantlib/ql/methods/montecarlo/path.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Path::rend
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/path.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Path::rend
    linkageType: ''
    returnType: Path::reverse_iterator
    signature: Path::reverse_iterator Path::rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::MonomialFct::MonomialFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonomialFct(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - VF_R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiDimFct::MultiDimFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiDimFct(VF_R b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' v'
    - dim
    - order
    argTypes:
    - VV
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::check_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::accumulate
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void check_tuples(const VV& v, Size dim, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:85,1
    - Dst: QuantLib::check_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:87,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:97,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - VV
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::next_order_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::set::end
    - std::set::insert
    - std::accumulate
    - std::set::begin
    - QuantLib::size
    - end
    - QuantLib::check_tuples
    linkageType: ''
    returnType: VV
    signature: VV next_order_tuples(const VV& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::MonomialFct::MonomialFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonomialFct(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - VF_R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiDimFct::MultiDimFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiDimFct(VF_R b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' v'
    - dim
    - order
    argTypes:
    - VV
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::check_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 1
    functionsReached:
    - begin
    - std::accumulate
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void check_tuples(const VV& v, Size dim, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:85,1
    - Dst: QuantLib::check_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:87,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:97,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - VV
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::next_order_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::set::end
    - std::set::insert
    - std::accumulate
    - std::set::begin
    - QuantLib::size
    - end
    - QuantLib::check_tuples
    linkageType: ''
    returnType: VV
    signature: VV next_order_tuples(const VV& v)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: MonomialFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:114,1
    - Dst: GaussLaguerrePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:119,1
    - Dst: GaussHermitePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:125,1
    - Dst: GaussHyperbolicPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:131,1
    - Dst: GaussLegendrePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:137,1
    - Dst: GaussChebyshevPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:143,1
    - Dst: GaussChebyshev2ndPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:149,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:153,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 47
    argCount: 2
    argNames:
    - order
    - type
    argTypes:
    - Size
    - PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 157
    functionName: QuantLib::LsmBasisSystem::pathBasisSystem
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - GaussChebyshevPolynomial::weightedValue
    - GaussHyperbolicPolynomial::weightedValue
    - GaussLaguerrePolynomial::weightedValue
    - GaussHermitePolynomial::weightedValue
    - QL_FAIL
    - GaussChebyshev2ndPolynomial::weightedValue
    - MonomialFct
    - GaussLegendrePolynomial::weightedValue
    linkageType: ''
    returnType: VF_R
    signature: VF_R LsmBasisSystem::pathBasisSystem(Size order, PolynomialType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:161,1
    - Dst: QuantLib::LsmBasisSystem::pathBasisSystem
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:163,1
    - Dst: VF_A::emplace_back
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:167,1
    - Dst: MultiDimFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:167,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:169,1
    - Dst: next_order_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:172,1
    - Dst: VF_A::emplace_back
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:178,1
    - Dst: MultiDimFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:178,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - dim
    - order
    - type
    argTypes:
    - Size
    - Size
    - PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 182
    functionName: QuantLib::LsmBasisSystem::multiPathBasisSystem
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - VF_A::emplace_back
    - QuantLib::LsmBasisSystem::pathBasisSystem
    - MultiDimFct
    - next_order_tuples
    - std::vector<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: VF_A
    signature: "VF_A LsmBasisSystem::multiPathBasisSystem(Size dim, Size order,\n
      \                                             PolynomialType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::MonomialFct::MonomialFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonomialFct(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - VF_R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiDimFct::MultiDimFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiDimFct(VF_R b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' v'
    - dim
    - order
    argTypes:
    - VV
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::check_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 2
    functionsReached:
    - begin
    - std::accumulate
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void check_tuples(const VV& v, Size dim, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:85,1
    - Dst: QuantLib::check_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:87,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:97,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - VV
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::next_order_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::set::end
    - std::set::insert
    - std::accumulate
    - std::set::begin
    - QuantLib::size
    - end
    - QuantLib::check_tuples
    linkageType: ''
    returnType: VV
    signature: VV next_order_tuples(const VV& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::MonomialFct::MonomialFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonomialFct(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - VF_R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiDimFct::MultiDimFct
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiDimFct(VF_R b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' v'
    - dim
    - order
    argTypes:
    - VV
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::check_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 3
    functionsReached:
    - begin
    - std::accumulate
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void check_tuples(const VV& v, Size dim, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:84,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:85,1
    - Dst: QuantLib::check_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:87,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:97,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - VV
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionName: QuantLib::next_order_tuples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::set::end
    - std::set::insert
    - std::accumulate
    - std::set::begin
    - QuantLib::size
    - end
    - QuantLib::check_tuples
    linkageType: ''
    returnType: VV
    signature: VV next_order_tuples(const VV& v)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: MonomialFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:114,1
    - Dst: GaussLaguerrePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:119,1
    - Dst: GaussHermitePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:125,1
    - Dst: GaussHyperbolicPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:131,1
    - Dst: GaussLegendrePolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:137,1
    - Dst: GaussChebyshevPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:143,1
    - Dst: GaussChebyshev2ndPolynomial::weightedValue
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:149,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:153,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 47
    argCount: 2
    argNames:
    - order
    - type
    argTypes:
    - Size
    - PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 157
    functionName: QuantLib::LsmBasisSystem::pathBasisSystem
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 1
    functionsReached:
    - GaussChebyshevPolynomial::weightedValue
    - GaussHyperbolicPolynomial::weightedValue
    - GaussLaguerrePolynomial::weightedValue
    - GaussHermitePolynomial::weightedValue
    - QL_FAIL
    - GaussChebyshev2ndPolynomial::weightedValue
    - MonomialFct
    - GaussLegendrePolynomial::weightedValue
    linkageType: ''
    returnType: VF_R
    signature: VF_R LsmBasisSystem::pathBasisSystem(Size order, PolynomialType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:161,1
    - Dst: QuantLib::LsmBasisSystem::pathBasisSystem
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:163,1
    - Dst: VF_A::emplace_back
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:167,1
    - Dst: MultiDimFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:167,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:169,1
    - Dst: next_order_tuples
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:172,1
    - Dst: VF_A::emplace_back
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:178,1
    - Dst: MultiDimFct
      Src: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp:178,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - dim
    - order
    - type
    argTypes:
    - Size
    - Size
    - PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 182
    functionName: QuantLib::LsmBasisSystem::multiPathBasisSystem
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/lsmbasissystem.cpp
    functionUses: 0
    functionsReached:
    - VF_A::emplace_back
    - QuantLib::LsmBasisSystem::pathBasisSystem
    - MultiDimFct
    - next_order_tuples
    - std::vector<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: VF_A
    signature: "VF_A LsmBasisSystem::multiPathBasisSystem(Size dim, Size order,\n
      \                                             PolynomialType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiPath::assetNumber
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size assetNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::MultiPath::pathSize
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - length
    linkageType: ''
    returnType: Size
    signature: Size pathSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator[](Size j) const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Path
    signature: Path & operator[](Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& at(Size j) const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Path
    signature: Path & at(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& operator[](Size j)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Path
    signature: Path & operator[](Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& at(Size j)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Path
    signature: Path & at(Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nAsset
    - ' timeGrid'
    argTypes:
    - Size
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - Path
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiPath::MultiPath(Size nAsset, const TimeGrid& timeGrid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - multiPath
    argTypes:
    - std::vector<Path>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MultiPath::MultiPath(std::vector<Path> multiPath)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiPath::assetNumber
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size assetNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::MultiPath::pathSize
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - length
    linkageType: ''
    returnType: Size
    signature: Size pathSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator[](Size j) const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Path
    signature: Path & operator[](Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& at(Size j) const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Path
    signature: Path & at(Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& operator[](Size j)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Path
    signature: Path & operator[](Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& at(Size j)'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Path
    signature: Path & at(Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nAsset
    - ' timeGrid'
    argTypes:
    - Size
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - Path
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiPath::MultiPath(Size nAsset, const TimeGrid& timeGrid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/multipath.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - multiPath
    argTypes:
    - std::vector<Path>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiPath::MultiPath
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipath.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MultiPath::MultiPath(std::vector<Path> multiPath)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::EarlyExerciseTraits<Path>::pathLength
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached:
    - length
    linkageType: ''
    returnType: Size
    signature: Size pathLength(const Path& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::EarlyExerciseTraits<MultiPath>::pathLength
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached:
    - pathSize
    linkageType: ''
    returnType: Size
    signature: Size pathLength(const MultiPath& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: ~EarlyExercisePathPricer()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EarlyExercisePathPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::EarlyExerciseTraits<Path>::pathLength
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached:
    - length
    linkageType: ''
    returnType: Size
    signature: Size pathLength(const Path& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::EarlyExerciseTraits<MultiPath>::pathLength
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached:
    - pathSize
    linkageType: ''
    returnType: Size
    signature: Size pathLength(const MultiPath& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: ~EarlyExercisePathPricer()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/earlyexercisepathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EarlyExercisePathPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ValueEstimate::values
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ' simulationData'
    - ' exercise'
    - exerciseIndex
    argTypes:
    - std::vector<NodeData>
    - ParametricExercise
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::ValueEstimate::ValueEstimate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - numberOfParameters
    linkageType: ''
    returnType: void
    signature: "void ValueEstimate::ValueEstimate(\n                                 const
      std::vector<NodeData>& simulationData,\n                                 const
      ParametricExercise& exercise,\n                                 Size exerciseIndex)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:61,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' parameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::ValueEstimate::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real ValueEstimate::value(const Array& parameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ValueEstimate::values
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ' simulationData'
    - ' exercise'
    - exerciseIndex
    argTypes:
    - std::vector<NodeData>
    - ParametricExercise
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::ValueEstimate::ValueEstimate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - numberOfParameters
    linkageType: ''
    returnType: void
    signature: "void ValueEstimate::ValueEstimate(\n                                 const
      std::vector<NodeData>& simulationData,\n                                 const
      ParametricExercise& exercise,\n                                 Size exerciseIndex)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:61,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' parameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::ValueEstimate::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real ValueEstimate::value(const Array& parameters) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:88,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:93,1
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:93,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:99,1
    - Dst: QuantLib::guess
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:100,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:102,1
    - Dst: minimize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:107,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:109,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:111,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:114,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:116,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:129,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:132,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - ' simulationData'
    - ' exercise'
    - ' parameters'
    - ' endCriteria'
    - ' method'
    argTypes:
    - std::vector<std::vector<NodeData> >
    - ParametricExercise
    - std::vector<std::vector<Real> >
    - EndCriteria
    - OptimizationMethod
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 133
    functionName: QuantLib::genericEarlyExerciseOptimization
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - numberOfParameters
    - std::copy
    - exercise
    - resize
    - Array::begin
    - QuantLib::guess
    - begin
    - Array::end
    - minimize
    - QuantLib::size
    - end
    - Problem::currentValue
    - front
    linkageType: ''
    returnType: Real
    signature: "Real genericEarlyExerciseOptimization(\n                          std::vector<std::vector<NodeData>
      >& simulationData,\n                          const ParametricExercise& exercise,\n
      \                         std::vector<std::vector<Real> >& parameters,\n                          const
      EndCriteria& endCriteria,\n                          OptimizationMethod& method)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ValueEstimate::values
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ' simulationData'
    - ' exercise'
    - exerciseIndex
    argTypes:
    - std::vector<NodeData>
    - ParametricExercise
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::ValueEstimate::ValueEstimate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - numberOfParameters
    linkageType: ''
    returnType: void
    signature: "void ValueEstimate::ValueEstimate(\n                                 const
      std::vector<NodeData>& simulationData,\n                                 const
      ParametricExercise& exercise,\n                                 Size exerciseIndex)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:61,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' parameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::ValueEstimate::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real ValueEstimate::value(const Array& parameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::ValueEstimate::values
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ' simulationData'
    - ' exercise'
    - exerciseIndex
    argTypes:
    - std::vector<NodeData>
    - ParametricExercise
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::ValueEstimate::ValueEstimate
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - numberOfParameters
    linkageType: ''
    returnType: void
    signature: "void ValueEstimate::ValueEstimate(\n                                 const
      std::vector<NodeData>& simulationData,\n                                 const
      ParametricExercise& exercise,\n                                 Size exerciseIndex)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:61,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' parameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::ValueEstimate::value
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real ValueEstimate::value(const Array& parameters) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:88,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:93,1
    - Dst: numberOfParameters
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:93,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:99,1
    - Dst: QuantLib::guess
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:100,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:101,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:102,1
    - Dst: minimize
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:107,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:109,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:111,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:114,1
    - Dst: exercise
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:116,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:129,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp:132,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - ' simulationData'
    - ' exercise'
    - ' parameters'
    - ' endCriteria'
    - ' method'
    argTypes:
    - std::vector<std::vector<NodeData> >
    - ParametricExercise
    - std::vector<std::vector<Real> >
    - EndCriteria
    - OptimizationMethod
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 133
    functionName: QuantLib::genericEarlyExerciseOptimization
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/parametricexercise.cpp
    functionUses: 0
    functionsReached:
    - numberOfParameters
    - std::copy
    - exercise
    - resize
    - Array::begin
    - QuantLib::guess
    - begin
    - Array::end
    - minimize
    - QuantLib::size
    - end
    - Problem::currentValue
    - front
    linkageType: ''
    returnType: Real
    signature: "Real genericEarlyExerciseOptimization(\n                          std::vector<std::vector<NodeData>
      >& simulationData,\n                          const ParametricExercise& exercise,\n
      \                         std::vector<std::vector<Real> >& parameters,\n                          const
      EndCriteria& endCriteria,\n                          OptimizationMethod& method)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:30,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:31,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:39,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:39,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:46,1
    - Dst: values::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:46,1
    - Dst: values::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:48,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:49,1
    - Dst: SequenceStatistics::add
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:52,1
    - Dst: SequenceStatistics::mean
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:56,1
    - Dst: SequenceStatistics::covariance
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:57,1
    - Dst: SVD
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:68,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:69,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:71,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:75,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:81,1
    - Dst: values::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:82,1
    - Dst: values::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:84,1
    - Dst: Statistics::add
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:105,1
    - Dst: Statistics::mean
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:107,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - ' simulationData'
    - ' basisCoefficients'
    argTypes:
    - std::vector<std::vector<NodeData> >
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 108
    functionName: QuantLib::genericLongstaffSchwartzRegression
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - SequenceStatistics::covariance
    - std::inner_product
    - std::vector::begin
    - resize
    - SequenceStatistics::add
    - Array::begin
    - Array::end
    - begin
    - Statistics::add
    - values::end
    - SVD
    - Statistics::mean
    - QuantLib::size
    - SequenceStatistics::mean
    - values::begin
    - std::vector::back
    - front
    linkageType: ''
    returnType: Real
    signature: "Real genericLongstaffSchwartzRegression(\n                std::vector<std::vector<NodeData>
      >& simulationData,\n                std::vector<std::vector<Real> >& basisCoefficients)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:30,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:31,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:39,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:39,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:46,1
    - Dst: values::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:46,1
    - Dst: values::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:48,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:49,1
    - Dst: SequenceStatistics::add
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:52,1
    - Dst: SequenceStatistics::mean
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:56,1
    - Dst: SequenceStatistics::covariance
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:57,1
    - Dst: SVD
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:68,1
    - Dst: resize
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:69,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: Array::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:70,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:71,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:75,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:81,1
    - Dst: values::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:82,1
    - Dst: values::end
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:84,1
    - Dst: Statistics::add
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:105,1
    - Dst: Statistics::mean
      Src: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp:107,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - ' simulationData'
    - ' basisCoefficients'
    argTypes:
    - std::vector<std::vector<NodeData> >
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 108
    functionName: QuantLib::genericLongstaffSchwartzRegression
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/genericlsregression.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - SequenceStatistics::covariance
    - std::inner_product
    - std::vector::begin
    - resize
    - SequenceStatistics::add
    - Array::begin
    - Array::end
    - begin
    - Statistics::add
    - values::end
    - SVD
    - Statistics::mean
    - QuantLib::size
    - SequenceStatistics::mean
    - values::begin
    - std::vector::back
    - front
    linkageType: ''
    returnType: Real
    signature: "Real genericLongstaffSchwartzRegression(\n                std::vector<std::vector<NodeData>
      >& simulationData,\n                std::vector<std::vector<Real> >& basisCoefficients)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::BrownianBridge::size
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: '& times() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& bridgeIndex()  const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & bridgeIndex()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& leftIndex()    const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & leftIndex()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& rightIndex()   const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & rightIndex()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& leftWeight()   const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & leftWeight()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: '& rightWeight()  const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & rightWeight()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& stdDeviation() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & stdDeviation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:111,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - begin
    - end
    - output
    argTypes:
    - RandomAccessIterator1
    - RandomAccessIterator1
    - RandomAccessIterator2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 137
    functionName: QuantLib::BrownianBridge::transform
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached:
    - Size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void transform(RandomAccessIterator1 begin,\n                       RandomAccessIterator1
      end,\n                       RandomAccessIterator2 output) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::BrownianBridge::size
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: '& times() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& bridgeIndex()  const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & bridgeIndex()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& leftIndex()    const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & leftIndex()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& rightIndex()   const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & rightIndex()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& leftWeight()   const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & leftWeight()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: '& rightWeight()  const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & rightWeight()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& stdDeviation() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & stdDeviation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:111,1
    - Dst: Size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - begin
    - end
    - output
    argTypes:
    - RandomAccessIterator1
    - RandomAccessIterator1
    - RandomAccessIterator2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 137
    functionName: QuantLib::BrownianBridge::transform
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.hpp
    functionUses: 0
    functionsReached:
    - Size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void transform(RandomAccessIterator1 begin,\n                       RandomAccessIterator1
      end,\n                       RandomAccessIterator2 output) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:67,1
    - Dst: result_type
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:68,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:73,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:74,1
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - pathGenerator
    - pathPricer
    - sampleAccumulator
    - antitheticVariate
    argTypes:
    - ext::shared_ptr<path_generator_type>
    - ext::shared_ptr<path_pricer_type>
    - stats_type
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 76
    functionName: QuantLib::MonteCarloModel::MonteCarloModel
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - static_cast<bool>
    - result_type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: void
    signature: "void MonteCarloModel(\n            ext::shared_ptr<path_generator_type>
      pathGenerator,\n            ext::shared_ptr<path_pricer_type> pathPricer,\n
      \           stats_type sampleAccumulator,\n            bool antitheticVariate,\n
      \           ext::shared_ptr<path_pricer_type> cvPathPricer = ext::shared_ptr<path_pricer_type>(),\n
      \           result_type cvOptionValue = result_type(),\n            ext::shared_ptr<path_generator_type>
      cvPathGenerator =\n                ext::shared_ptr<path_generator_type>())"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:95,1
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:103,1
    - Dst: antithetic
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:109,1
    - Dst: antithetic
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:115,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:120,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 125
    functionName: QuantLib::MonteCarloModel<MC,RNG,S>::addSamples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached:
    - next
    - add
    - antithetic
    linkageType: ''
    returnType: void
    signature: void MonteCarloModel<MC,RNG,S>::addSamples(Size samples)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    MonteCarloModel<MC,RNG,S>::sampleAccumulator() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: typename MonteCarloModel<MC,RNG,S>::stats_type
    signature: "typename MonteCarloModel<MC,RNG,S>::stats_type &\n    MonteCarloModel<MC,RNG,S>::sampleAccumulator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:67,1
    - Dst: result_type
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:68,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:73,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:74,1
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - pathGenerator
    - pathPricer
    - sampleAccumulator
    - antitheticVariate
    argTypes:
    - ext::shared_ptr<path_generator_type>
    - ext::shared_ptr<path_pricer_type>
    - stats_type
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 76
    functionName: QuantLib::MonteCarloModel::MonteCarloModel
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - static_cast<bool>
    - result_type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: void
    signature: "void MonteCarloModel(\n            ext::shared_ptr<path_generator_type>
      pathGenerator,\n            ext::shared_ptr<path_pricer_type> pathPricer,\n
      \           stats_type sampleAccumulator,\n            bool antitheticVariate,\n
      \           ext::shared_ptr<path_pricer_type> cvPathPricer = ext::shared_ptr<path_pricer_type>(),\n
      \           result_type cvOptionValue = result_type(),\n            ext::shared_ptr<path_generator_type>
      cvPathGenerator =\n                ext::shared_ptr<path_generator_type>())"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:95,1
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:103,1
    - Dst: antithetic
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:109,1
    - Dst: antithetic
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:115,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:120,1
    - Dst: add
      Src: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 125
    functionName: QuantLib::MonteCarloModel<MC,RNG,S>::addSamples
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached:
    - next
    - add
    - antithetic
    linkageType: ''
    returnType: void
    signature: void MonteCarloModel<MC,RNG,S>::addSamples(Size samples)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    MonteCarloModel<MC,RNG,S>::sampleAccumulator() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/montecarlomodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: typename MonteCarloModel<MC,RNG,S>::stats_type
    signature: "typename MonteCarloModel<MC,RNG,S>::stats_type &\n    MonteCarloModel<MC,RNG,S>::sampleAccumulator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~PathPricer()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PathPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~PathPricer()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PathPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:76,1
    - Dst: MultiPath
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:79,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:79,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:80,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:81,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' process'
    - ' times'
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - TimeGrid
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionName: QuantLib::MultiPathGenerator<GSG>::MultiPathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - factors
    - std::move
    - dimension
    - MultiPath
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiPathGenerator<GSG>::MultiPathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                                const TimeGrid& times,\n
      \                                               GSG generator,\n                                                bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: "&\n    MultiPathGenerator<GSG>::next() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::next()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: "&\n    MultiPathGenerator<GSG>::antithetic() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::antithetic()
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:108,1
    - Dst: lastSequence
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:114,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:117,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:118,1
    - Dst: initialValues
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:122,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:124,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:129,1
    - Dst: pathSize
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:131,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:134,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:136,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:136,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:137,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:138,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:139,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:141,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:141,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:142,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:143,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - antithetic
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 151
    functionName: "&\n    MultiPathGenerator<GSG>::next(bool antithetic) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::negate<>
    - std::copy
    - factors
    - value::begin
    - nextSequence
    - Array::begin
    - QL_FAIL
    - initialValues
    - pathSize
    - dt
    - size
    - timeGrid
    - lastSequence
    - evolve
    - front
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::next(bool
      antithetic) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:76,1
    - Dst: MultiPath
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:79,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:79,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:80,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:81,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' process'
    - ' times'
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - TimeGrid
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionName: QuantLib::MultiPathGenerator<GSG>::MultiPathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - factors
    - std::move
    - dimension
    - MultiPath
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiPathGenerator<GSG>::MultiPathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                                const TimeGrid& times,\n
      \                                               GSG generator,\n                                                bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: "&\n    MultiPathGenerator<GSG>::next() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::next()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: "&\n    MultiPathGenerator<GSG>::antithetic() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::antithetic()
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:108,1
    - Dst: lastSequence
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:114,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:117,1
    - Dst: factors
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:118,1
    - Dst: initialValues
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:122,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:124,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:129,1
    - Dst: pathSize
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:131,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:134,1
    - Dst: std::transform
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:136,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:136,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:137,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:138,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:139,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:141,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:141,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:142,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:143,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp:145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - antithetic
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 151
    functionName: "&\n    MultiPathGenerator<GSG>::next(bool antithetic) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/multipathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::negate<>
    - std::copy
    - factors
    - value::begin
    - nextSequence
    - Array::begin
    - QL_FAIL
    - initialValues
    - pathSize
    - dt
    - size
    - timeGrid
    - lastSequence
    - evolve
    - front
    linkageType: ''
    returnType: typename MultiPathGenerator<GSG>::sample_type
    signature: "typename MultiPathGenerator<GSG>::sample_type &\n    MultiPathGenerator<GSG>::next(bool
      antithetic) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::PathGenerator::size
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:86,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:87,1
    - Dst: ext::dynamic_pointer_cast<StochasticProcess1D>
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:88,1
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - length
    - timeSteps
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Time
    - Size
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::PathGenerator<GSG>::PathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - Path
    - ext::dynamic_pointer_cast<StochasticProcess1D>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PathGenerator<GSG>::PathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                      Time length,\n                                      Size
      timeSteps,\n                                      GSG generator,\n                                      bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:100,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:101,1
    - Dst: ext::dynamic_pointer_cast<StochasticProcess1D>
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:102,1
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - timeGrid
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - TimeGrid
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 107
    functionName: QuantLib::PathGenerator<GSG>::PathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - Path
    - ext::dynamic_pointer_cast<StochasticProcess1D>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PathGenerator<GSG>::PathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                      TimeGrid timeGrid,\n                                      GSG
      generator,\n                                      bool brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: "&\n    PathGenerator<GSG>::next() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::next()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    PathGenerator<GSG>::antithetic() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::antithetic()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lastSequence
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:127,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:128,1
    - Dst: transform
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:131,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:131,1
    - Dst: value::end
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:135,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:135,1
    - Dst: value::end
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:137,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:143,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:143,1
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:145,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:147,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - antithetic
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionName: "&\n    PathGenerator<GSG>::next(bool antithetic) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - transform
    - std::copy
    - value::begin
    - nextSequence
    - value::end
    - begin
    - length
    - dt
    - x0
    - lastSequence
    - evolve
    - front
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::next(bool
      antithetic) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::PathGenerator::size
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& timeGrid() const'
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:86,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:87,1
    - Dst: ext::dynamic_pointer_cast<StochasticProcess1D>
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:88,1
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - length
    - timeSteps
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Time
    - Size
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::PathGenerator<GSG>::PathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - Path
    - ext::dynamic_pointer_cast<StochasticProcess1D>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PathGenerator<GSG>::PathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                      Time length,\n                                      Size
      timeSteps,\n                                      GSG generator,\n                                      bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:100,1
    - Dst: dimension
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:101,1
    - Dst: ext::dynamic_pointer_cast<StochasticProcess1D>
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:102,1
    - Dst: Path
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - timeGrid
    - generator
    - brownianBridge
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - TimeGrid
    - GSG
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 107
    functionName: QuantLib::PathGenerator<GSG>::PathGenerator
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - Path
    - ext::dynamic_pointer_cast<StochasticProcess1D>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PathGenerator<GSG>::PathGenerator(const ext::shared_ptr<StochasticProcess>&
      process,\n                                      TimeGrid timeGrid,\n                                      GSG
      generator,\n                                      bool brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: "&\n    PathGenerator<GSG>::next() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::next()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    PathGenerator<GSG>::antithetic() const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::antithetic()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lastSequence
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:127,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:128,1
    - Dst: transform
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:131,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:131,1
    - Dst: value::end
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:135,1
    - Dst: value::begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:135,1
    - Dst: value::end
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:137,1
    - Dst: front
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:143,1
    - Dst: x0
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:143,1
    - Dst: length
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:145,1
    - Dst: dt
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:147,1
    - Dst: evolve
      Src: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - antithetic
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionName: "&\n    PathGenerator<GSG>::next(bool antithetic) const"
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/pathgenerator.hpp
    functionUses: 0
    functionsReached:
    - transform
    - std::copy
    - value::begin
    - nextSequence
    - value::end
    - begin
    - length
    - dt
    - x0
    - lastSequence
    - evolve
    - front
    linkageType: ''
    returnType: typename PathGenerator<GSG>::sample_type
    signature: "typename PathGenerator<GSG>::sample_type &\n    PathGenerator<GSG>::next(bool
      antithetic) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Time>
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:39,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Time>
    - QuantLib::BrownianBridge::initialize
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BrownianBridge::size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:44,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BrownianBridge::initialize
    - QuantLib::BrownianBridge::size
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(const std::vector<Time>& times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BrownianBridge::size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:51,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' timeGrid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BrownianBridge::initialize
    - QuantLib::BrownianBridge::size
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(const TimeGrid& timeGrid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 110
    functionName: QuantLib::BrownianBridge::initialize
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Time>
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:39,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Time>
    - QuantLib::BrownianBridge::initialize
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(Size steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BrownianBridge::size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:44,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BrownianBridge::initialize
    - QuantLib::BrownianBridge::size
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(const std::vector<Time>& times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BrownianBridge::size
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:51,1
    - Dst: QuantLib::BrownianBridge::initialize
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' timeGrid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::BrownianBridge::BrownianBridge
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BrownianBridge::initialize
    - QuantLib::BrownianBridge::size
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::BrownianBridge(const TimeGrid& timeGrid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 110
    functionName: QuantLib::BrownianBridge::initialize
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/brownianbridge.cpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void BrownianBridge::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: ~ExerciseStrategy()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/exercisestrategy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExerciseStrategy()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: ~ExerciseStrategy()
    functionSourceFile: /src/quantlib/ql/methods/montecarlo/exercisestrategy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExerciseStrategy()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::detail::null_checker
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void null_checker(T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::ordinal_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ordinal_holder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::power_of_two_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void power_of_two_holder(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::percent_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void percent_holder(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::sequence_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sequence_holder(InputIterator begin, InputIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::detail::null_checker
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void null_checker(T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::ordinal_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ordinal_holder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::power_of_two_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void power_of_two_holder(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::percent_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void percent_holder(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::sequence_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sequence_holder(InputIterator begin, InputIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::null_checker<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::checknull
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::null_checker<T>
    linkageType: ''
    returnType: detail::null_checker<T>
    signature: detail::null_checker<T> checknull(T x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ordinal_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::ordinal
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::ordinal_holder
    linkageType: ''
    returnType: detail::ordinal_holder
    signature: detail::ordinal_holder ordinal(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::power_of_two_holder<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::io::power_of_two
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::power_of_two_holder<T>
    linkageType: ''
    returnType: detail::power_of_two_holder<T>
    signature: detail::power_of_two_holder<T> power_of_two(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::io::percent
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder percent(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::io::rate
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder rate(Rate r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::io::volatility
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder volatility(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::sequence_holder<typename Container::const_iterator>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::io::sequence
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - detail::sequence_holder<typename Container::const_iterator>
    linkageType: ''
    returnType: detail::sequence_holder<typename Container::const_iterator>
    signature: detail::sequence_holder<typename Container::const_iterator> sequence(const
      Container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::null_checker<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::checknull
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::null_checker<T>
    linkageType: ''
    returnType: detail::null_checker<T>
    signature: detail::null_checker<T> checknull(T x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ordinal_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::ordinal
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::ordinal_holder
    linkageType: ''
    returnType: detail::ordinal_holder
    signature: detail::ordinal_holder ordinal(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::power_of_two_holder<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::io::power_of_two
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::power_of_two_holder<T>
    linkageType: ''
    returnType: detail::power_of_two_holder<T>
    signature: detail::power_of_two_holder<T> power_of_two(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::io::percent
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder percent(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::io::rate
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder rate(Rate r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::io::volatility
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder volatility(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::sequence_holder<typename Container::const_iterator>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::io::sequence
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - detail::sequence_holder<typename Container::const_iterator>
    linkageType: ''
    returnType: detail::sequence_holder<typename Container::const_iterator>
    signature: detail::sequence_holder<typename Container::const_iterator> sequence(const
      Container& c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' checker'
    argTypes:
    - std::ostream
    - null_checker<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: "& operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - power_of_two_holder<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: "& operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - sequence_holder<I>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: "& operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' checker'
    argTypes:
    - std::ostream
    - null_checker<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: "& operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - power_of_two_holder<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: "& operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - sequence_holder<I>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: "& operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::detail::null_checker
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void null_checker(T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::ordinal_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ordinal_holder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::power_of_two_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void power_of_two_holder(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::percent_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void percent_holder(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::sequence_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sequence_holder(InputIterator begin, InputIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::detail::null_checker
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void null_checker(T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::ordinal_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ordinal_holder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::power_of_two_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void power_of_two_holder(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::percent_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void percent_holder(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::sequence_holder
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sequence_holder(InputIterator begin, InputIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::null_checker<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::checknull
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::null_checker<T>
    linkageType: ''
    returnType: detail::null_checker<T>
    signature: detail::null_checker<T> checknull(T x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ordinal_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::ordinal
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::ordinal_holder
    linkageType: ''
    returnType: detail::ordinal_holder
    signature: detail::ordinal_holder ordinal(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::power_of_two_holder<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::io::power_of_two
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::power_of_two_holder<T>
    linkageType: ''
    returnType: detail::power_of_two_holder<T>
    signature: detail::power_of_two_holder<T> power_of_two(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::io::percent
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder percent(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::io::rate
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder rate(Rate r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::io::volatility
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder volatility(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::sequence_holder<typename Container::const_iterator>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::io::sequence
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - detail::sequence_holder<typename Container::const_iterator>
    linkageType: ''
    returnType: detail::sequence_holder<typename Container::const_iterator>
    signature: detail::sequence_holder<typename Container::const_iterator> sequence(const
      Container& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::null_checker<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::checknull
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::null_checker<T>
    linkageType: ''
    returnType: detail::null_checker<T>
    signature: detail::null_checker<T> checknull(T x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ordinal_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::ordinal
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::ordinal_holder
    linkageType: ''
    returnType: detail::ordinal_holder
    signature: detail::ordinal_holder ordinal(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::power_of_two_holder<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::io::power_of_two
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - detail::power_of_two_holder<T>
    linkageType: ''
    returnType: detail::power_of_two_holder<T>
    signature: detail::power_of_two_holder<T> power_of_two(T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::io::percent
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder percent(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::io::rate
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder rate(Rate r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::percent_holder
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::io::volatility
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::percent_holder
    linkageType: ''
    returnType: detail::percent_holder
    signature: detail::percent_holder volatility(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::sequence_holder<typename Container::const_iterator>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: QuantLib::io::sequence
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - detail::sequence_holder<typename Container::const_iterator>
    linkageType: ''
    returnType: detail::sequence_holder<typename Container::const_iterator>
    signature: detail::sequence_holder<typename Container::const_iterator> sequence(const
      Container& c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' checker'
    argTypes:
    - std::ostream
    - null_checker<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: "& operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - power_of_two_holder<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: "& operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - sequence_holder<I>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: "& operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' checker'
    argTypes:
    - std::ostream
    - null_checker<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: "& operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      null_checker<T>& checker)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<T>
      Src: /src/quantlib/ql/utilities/dataformatters.hpp:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - power_of_two_holder<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: "& operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached:
    - Null<T>
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      power_of_two_holder<T>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - sequence_holder<I>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: "& operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                        const
      sequence_holder<I>& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: operator()(T *) const noexcept
    functionSourceFile: /src/quantlib/ql/utilities/null_deleter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator()(T *) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: operator()(T *) const noexcept
    functionSourceFile: /src/quantlib/ql/utilities/null_deleter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator()(T *) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:41,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:41,1
    - Dst: std::string::find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:48,1
    - Dst: std::string::length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:51,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:51,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:54,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:54,1
    - Dst: QuantLib::PeriodParser::parseOnePeriod
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:57,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:58,1
    - Dst: QuantLib::PeriodParser::parseOnePeriod
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 61
    functionName: QuantLib::PeriodParser::parse
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - std::string::find_first_of
    - std::string::length
    - length
    - QuantLib::PeriodParser::parseOnePeriod
    - std::string::substr
    - std::vector::size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period PeriodParser::parse(const std::string& str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:64,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:64,1
    - Dst: find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:68,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:68,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: static_cast<char>
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:71,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:71,1
    - Dst: find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:78,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:81,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:81,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:83,1
    - Dst: what
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:84,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 88
    functionName: QuantLib::PeriodParser::parseOnePeriod
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - std::toupper
    - std::stoi
    - length
    - static_cast<char>
    - QL_FAIL
    - what
    - substr
    - find_first_of
    linkageType: ''
    returnType: Period
    signature: Period PeriodParser::parseOnePeriod(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::istringstream::imbue
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: std::locale
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: std::locale
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: date_input_facet::date_input_facet
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: date
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:99,1
    - Dst: Date
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:100,1
    - Dst: date_duration::days
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' str'
    - ' fmt'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 104
    functionName: QuantLib::DateParser::parseFormatted
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - date
    - std::locale
    - date_duration::days
    - std::istringstream::imbue
    - date_input_facet::date_input_facet
    - QL_FAIL
    - Date
    linkageType: ''
    returnType: Date
    signature: "Date DateParser::parseFormatted(const std::string& str,\n                                    const
      std::string& fmt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:107,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:109,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:109,1
    - Dst: static_cast<Month>
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:111,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionName: QuantLib::DateParser::parseISO
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Month>
    - std::stoi
    - substr
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date DateParser::parseISO(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:41,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:41,1
    - Dst: std::string::find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:48,1
    - Dst: std::string::length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:51,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:51,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:54,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:54,1
    - Dst: QuantLib::PeriodParser::parseOnePeriod
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:57,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:58,1
    - Dst: QuantLib::PeriodParser::parseOnePeriod
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 61
    functionName: QuantLib::PeriodParser::parse
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - std::string::find_first_of
    - std::string::length
    - length
    - QuantLib::PeriodParser::parseOnePeriod
    - std::string::substr
    - std::vector::size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period PeriodParser::parse(const std::string& str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:64,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:64,1
    - Dst: find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:68,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:68,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: length
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:69,1
    - Dst: static_cast<char>
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:71,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:71,1
    - Dst: find_first_of
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:78,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:81,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:81,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:83,1
    - Dst: what
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:84,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 88
    functionName: QuantLib::PeriodParser::parseOnePeriod
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - std::toupper
    - std::stoi
    - length
    - static_cast<char>
    - QL_FAIL
    - what
    - substr
    - find_first_of
    linkageType: ''
    returnType: Period
    signature: Period PeriodParser::parseOnePeriod(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::istringstream::imbue
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: std::locale
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: std::locale
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: date_input_facet::date_input_facet
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:97,1
    - Dst: date
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:99,1
    - Dst: Date
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:100,1
    - Dst: date_duration::days
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' str'
    - ' fmt'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 104
    functionName: QuantLib::DateParser::parseFormatted
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - date
    - std::locale
    - date_duration::days
    - std::istringstream::imbue
    - date_input_facet::date_input_facet
    - QL_FAIL
    - Date
    linkageType: ''
    returnType: Date
    signature: "Date DateParser::parseFormatted(const std::string& str,\n                                    const
      std::string& fmt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:107,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:109,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:109,1
    - Dst: static_cast<Month>
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:110,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:111,1
    - Dst: substr
      Src: /src/quantlib/ql/utilities/dataparsers.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionName: QuantLib::DateParser::parseISO
    functionSourceFile: /src/quantlib/ql/utilities/dataparsers.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Month>
    - std::stoi
    - substr
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date DateParser::parseISO(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/tracing.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Tracing::enable
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void enable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::Tracing::disable
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::Tracing::setStream
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStream(std::ostream& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::Tracing::enabled
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool enabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& stream()'
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & stream()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::detail::Tracing::depth
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer depth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::Tracing::down
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void down()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::Tracing::up
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void up()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/utilities/tracing.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Tracing::enable
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void enable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::Tracing::disable
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::Tracing::setStream
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setStream(std::ostream& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::Tracing::enabled
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool enabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& stream()'
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & stream()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::detail::Tracing::depth
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer depth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::Tracing::down
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void down()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::Tracing::up
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void up()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - out
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QL_TRACE_ON
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_TRACE_ON(out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 234
    functionName: QL_TRACE
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_TRACE(message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - variable
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: QL_TRACE_VARIABLE
    functionSourceFile: /src/quantlib/ql/utilities/tracing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_TRACE_VARIABLE(variable)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Clone::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Clone()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~Clone()
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Clone()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/clone.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - std::unique_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(std::unique_ptr<T>&& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::empty
      Src: /src/quantlib/ql/utilities/clone.hpp:76,1
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::Clone<T>::empty
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(const Clone<T>& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Clone<T>::swap
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(Clone<T>&& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: '& Clone<T>::operator=(const T& t)'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: '& Clone<T>::operator=(const Clone<T>& t)'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    - reset
    - empty
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(const Clone<T>& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/utilities/clone.hpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& Clone<T>::operator=(Clone<T>&& t) noexcept'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(Clone<T>&& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/clone.hpp:103,1
    - Dst: '& Clone<T>::empty'
      Src: /src/quantlib/ql/utilities/clone.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& Clone<T>::operator*() const'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - '& Clone<T>::empty'
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T & Clone<T>::operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: '* Clone<T>::ptr_::get'
      Src: /src/quantlib/ql/utilities/clone.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: '* Clone<T>::operator->() const'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - '* Clone<T>::ptr_::get'
    linkageType: ''
    returnType: T
    signature: T * Clone<T>::operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::Clone<T>::empty
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Clone<T>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::ptr_::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::Clone<T>::swap
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Clone<T>::ptr_::swap
    linkageType: ''
    returnType: void
    signature: void Clone<T>::swap(Clone<T>& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' t'
    - ' u'
    argTypes:
    - Clone<T>
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Clone<T>& t, Clone<T>& u) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Clone::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Clone()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~Clone()
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Clone()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/clone.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - std::unique_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(std::unique_ptr<T>&& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::empty
      Src: /src/quantlib/ql/utilities/clone.hpp:76,1
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::Clone<T>::empty
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(const Clone<T>& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::Clone<T>::Clone
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Clone<T>::swap
    linkageType: ''
    returnType: void
    signature: void Clone<T>::Clone(Clone<T>&& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: '& Clone<T>::operator=(const T& t)'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    - Dst: clone
      Src: /src/quantlib/ql/utilities/clone.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: '& Clone<T>::operator=(const Clone<T>& t)'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - clone
    - reset
    - empty
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(const Clone<T>& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/utilities/clone.hpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& Clone<T>::operator=(Clone<T>&& t) noexcept'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Clone<T>
    signature: Clone<T> & Clone<T>::operator=(Clone<T>&& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/clone.hpp:103,1
    - Dst: '& Clone<T>::empty'
      Src: /src/quantlib/ql/utilities/clone.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& Clone<T>::operator*() const'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - '& Clone<T>::empty'
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T & Clone<T>::operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: '* Clone<T>::ptr_::get'
      Src: /src/quantlib/ql/utilities/clone.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: '* Clone<T>::operator->() const'
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 0
    functionsReached:
    - '* Clone<T>::ptr_::get'
    linkageType: ''
    returnType: T
    signature: T * Clone<T>::operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::Clone<T>::empty
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Clone<T>::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Clone<T>::ptr_::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::Clone<T>::swap
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Clone<T>::ptr_::swap
    linkageType: ''
    returnType: void
    signature: void Clone<T>::swap(Clone<T>& t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/utilities/clone.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' t'
    - ' u'
    argTypes:
    - Clone<T>
    - Clone<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/utilities/clone.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Clone<T>& t, Clone<T>& u) noexcept
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - ordinal_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                                 const
      ordinal_holder& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      ordinal_holder& holder)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:44,1
    - Dst: width
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:45,1
    - Dst: width
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:49,1
    - Dst: flags
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - percent_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: "& operator<<(std::ostream& out,\n                                 const
      percent_holder& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - width
    - flags
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      percent_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    - Dst: Size
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:29,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - ordinal_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                                 const
      ordinal_holder& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      ordinal_holder& holder)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:44,1
    - Dst: width
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:45,1
    - Dst: width
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:49,1
    - Dst: flags
      Src: /src/quantlib/ql/utilities/dataformatters.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - percent_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: "& operator<<(std::ostream& out,\n                                 const
      percent_holder& holder)"
    functionSourceFile: /src/quantlib/ql/utilities/dataformatters.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - width
    - flags
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      percent_holder& holder)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/utilities/vectors.hpp:36,1
    - Dst: static_cast<T>
      Src: /src/quantlib/ql/utilities/vectors.hpp:37,1
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/utilities/vectors.hpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/utilities/vectors.hpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' v'
    - i
    - defaultValue
    argTypes:
    - std::vector<T>
    - Size
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::get
    functionSourceFile: /src/quantlib/ql/utilities/vectors.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - back
    - empty
    - QuantLib::detail::size
    linkageType: ''
    returnType: T
    signature: "T get(const std::vector<T>& v,\n              Size i,\n              U
      defaultValue)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/utilities/vectors.hpp:36,1
    - Dst: static_cast<T>
      Src: /src/quantlib/ql/utilities/vectors.hpp:37,1
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/utilities/vectors.hpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/utilities/vectors.hpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' v'
    - i
    - defaultValue
    argTypes:
    - std::vector<T>
    - Size
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::get
    functionSourceFile: /src/quantlib/ql/utilities/vectors.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - back
    - empty
    - QuantLib::detail::size
    linkageType: ''
    returnType: T
    signature: "T get(const std::vector<T>& v,\n              Size i,\n              U
      defaultValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void step_iterator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<BigInteger>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' base'
    - step
    argTypes:
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - static_cast<BigInteger>
    linkageType: ''
    returnType: void
    signature: void step_iterator(const Iterator& base, Size step)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<BigInteger>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:66,1
    - Dst: QuantLib::step_iterator::step
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - step_iterator<OtherIterator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::step_iterator::step
    - static_cast<BigInteger>
    linkageType: ''
    returnType: void
    signature: "void step_iterator(const step_iterator<OtherIterator>& i,\n                      std::enable_if_t<std::is_convertible_v\n
      \                     <OtherIterator, Iterator>>* = nullptr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::step_iterator::step
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    linkageType: ''
    returnType: Size
    signature: Size step() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: '& operator=(const step_iterator& other)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator=(const step_iterator& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& operator++()'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: operator++(int)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator++(int)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: operator*() const
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& operator--()'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator--()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: operator--(int)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator--(int)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: '& operator+=(Size n)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator+=(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: '& operator-=(Size n)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator-=(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - n
    argTypes:
    - step_iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator+(const step_iterator& i, Size n)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator+(const step_iterator& i, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' i'
    argTypes:
    - Size
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: operator+(Size n, const step_iterator& i)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator+(Size n, const step_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - n
    argTypes:
    - step_iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: operator-(const step_iterator& i, Size n)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator-(const step_iterator& i, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: operator-(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: difference_type
    signature: difference_type operator-(const step_iterator& lhs, const step_iterator&
      rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: operator==(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: operator!=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 144
    functionName: operator<(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator<(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: operator>(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator>(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: operator<=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: operator>=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator<Iterator>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - it
    - step
    argTypes:
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::make_step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator<Iterator>
    linkageType: ''
    returnType: step_iterator<Iterator>
    signature: step_iterator<Iterator> make_step_iterator(Iterator it, Size step)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void step_iterator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<BigInteger>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' base'
    - step
    argTypes:
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - static_cast<BigInteger>
    linkageType: ''
    returnType: void
    signature: void step_iterator(const Iterator& base, Size step)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<BigInteger>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:66,1
    - Dst: QuantLib::step_iterator::step
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - step_iterator<OtherIterator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::step_iterator::step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::step_iterator::step
    - static_cast<BigInteger>
    linkageType: ''
    returnType: void
    signature: "void step_iterator(const step_iterator<OtherIterator>& i,\n                      std::enable_if_t<std::is_convertible_v\n
      \                     <OtherIterator, Iterator>>* = nullptr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::step_iterator::step
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 2
    functionsReached:
    - static_cast<Size>
    linkageType: ''
    returnType: Size
    signature: Size step() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: '& operator=(const step_iterator& other)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator=(const step_iterator& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& operator++()'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: operator++(int)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator++(int)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: operator*() const
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& operator--()'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator--()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: operator--(int)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator--(int)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: '& operator+=(Size n)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator+=(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: '& operator-=(Size n)'
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator & operator-=(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - n
    argTypes:
    - step_iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator+(const step_iterator& i, Size n)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator+(const step_iterator& i, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' i'
    argTypes:
    - Size
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: operator+(Size n, const step_iterator& i)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator+(Size n, const step_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - n
    argTypes:
    - step_iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: operator-(const step_iterator& i, Size n)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator
    linkageType: ''
    returnType: step_iterator
    signature: step_iterator operator-(const step_iterator& i, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: operator-(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: difference_type
    signature: difference_type operator-(const step_iterator& lhs, const step_iterator&
      rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: operator==(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: operator!=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 144
    functionName: operator<(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator<(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: operator>(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator>(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: operator<=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - step_iterator
    - step_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: operator>=(const step_iterator& lhs, const step_iterator& rhs)
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const step_iterator& lhs, const step_iterator& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: step_iterator<Iterator>
      Src: /src/quantlib/ql/utilities/steppingiterator.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - it
    - step
    argTypes:
    - Iterator
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::make_step_iterator
    functionSourceFile: /src/quantlib/ql/utilities/steppingiterator.hpp
    functionUses: 0
    functionsReached:
    - step_iterator<Iterator>
    linkageType: ''
    returnType: step_iterator<Iterator>
    signature: step_iterator<Iterator> make_step_iterator(Iterator it, Size step)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/utilities/null.hpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::Null
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 6
    functionsReached:
    - T
    linkageType: ''
    returnType: T
    signature: T Null()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Null::Null
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Null()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/utilities/null.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: operator T() const
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 0
    functionsReached:
    - T
    linkageType: ''
    returnType: void
    signature: void operator T() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/utilities/null.hpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::Null
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 6
    functionsReached:
    - T
    linkageType: ''
    returnType: T
    signature: T Null()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Null::Null
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Null()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/utilities/null.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: operator T() const
    functionSourceFile: /src/quantlib/ql/utilities/null.hpp
    functionUses: 0
    functionsReached:
    - T
    linkageType: ''
    returnType: void
    signature: void operator T() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::detail::Tracing::Tracing
    functionSourceFile: /src/quantlib/ql/utilities/tracing.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tracing::Tracing()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::detail::Tracing::Tracing
    functionSourceFile: /src/quantlib/ql/utilities/tracing.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tracing::Tracing()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~ObservableValue()
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ObservableValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:74,1
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(T&& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - ObservableValue<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(const ObservableValue<T>&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:86,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: '& ObservableValue<T>::operator=(T&& t)'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - std::move
    linkageType: ''
    returnType: ObservableValue<T>
    signature: ObservableValue<T> & ObservableValue<T>::operator=(T&& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: '& ObservableValue<T>::operator=(const T& t)'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: ObservableValue<T>
    signature: ObservableValue<T> & ObservableValue<T>::operator=(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - ObservableValue<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: "&\n    ObservableValue<T>::operator=(const ObservableValue<T>&
      t)"
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: ObservableValue<T>
    signature: "ObservableValue<T> &\n    ObservableValue<T>::operator=(const ObservableValue<T>&
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: ObservableValue<T>::operator T() const
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::operator T() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: ObservableValue<T>::operator ext::shared_ptr<Observable>() const
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::operator ext::shared_ptr<Observable>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: '& ObservableValue<T>::value() const'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & ObservableValue<T>::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~ObservableValue()
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ObservableValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:74,1
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(T&& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Observable::Observable
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - ObservableValue<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::ObservableValue<T>::ObservableValue
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - Observable::Observable
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::ObservableValue(const ObservableValue<T>&
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:86,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: '& ObservableValue<T>::operator=(T&& t)'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - std::move
    linkageType: ''
    returnType: ObservableValue<T>
    signature: ObservableValue<T> & ObservableValue<T>::operator=(T&& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: '& ObservableValue<T>::operator=(const T& t)'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: ObservableValue<T>
    signature: ObservableValue<T> & ObservableValue<T>::operator=(const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/utilities/observablevalue.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - ObservableValue<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: "&\n    ObservableValue<T>::operator=(const ObservableValue<T>&
      t)"
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: ObservableValue<T>
    signature: "ObservableValue<T> &\n    ObservableValue<T>::operator=(const ObservableValue<T>&
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: ObservableValue<T>::operator T() const
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::operator T() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: ObservableValue<T>::operator ext::shared_ptr<Observable>() const
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableValue<T>::operator ext::shared_ptr<Observable>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: '& ObservableValue<T>::value() const'
    functionSourceFile: /src/quantlib/ql/utilities/observablevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & ObservableValue<T>::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' helper'
    - value
    argTypes:
    - BlackCalibrationHelper
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::BlackCalibrationHelper::ImpliedVolatilityHelper::ImpliedVolatilityHelper
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolatilityHelper(const BlackCalibrationHelper& helper,\n
      \                               Real value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached:
    - blackPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:48,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:49,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: QuantLib::BlackCalibrationHelper::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached:
    - Brent::solve
    - value
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackCalibrationHelper::impliedVolatility(Real targetValue,\n
      \                                                        Real accuracy,\n                                                         Size
      maxEvaluations,\n                                                         Volatility
      minVol,\n                                                         Volatility
      maxVol) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:60,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:60,1
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:66,1
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:67,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:68,1
    - Dst: QuantLib::BlackCalibrationHelper::impliedVolatility
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:76,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:82,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackCalibrationHelper::calibrationError
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached:
    - blackPrice
    - QuantLib::BlackCalibrationHelper::marketValue
    - value
    - QuantLib::BlackCalibrationHelper::impliedVolatility
    - QL_FAIL
    - std::fabs
    - modelValue
    linkageType: ''
    returnType: Real
    signature: Real BlackCalibrationHelper::calibrationError()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' helper'
    - value
    argTypes:
    - BlackCalibrationHelper
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::BlackCalibrationHelper::ImpliedVolatilityHelper::ImpliedVolatilityHelper
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolatilityHelper(const BlackCalibrationHelper& helper,\n
      \                               Real value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached:
    - blackPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:48,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:49,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - targetValue
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: QuantLib::BlackCalibrationHelper::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 1
    functionsReached:
    - Brent::solve
    - value
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackCalibrationHelper::impliedVolatility(Real targetValue,\n
      \                                                        Real accuracy,\n                                                         Size
      maxEvaluations,\n                                                         Volatility
      minVol,\n                                                         Volatility
      maxVol) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:57,1
    - Dst: QuantLib::BlackCalibrationHelper::marketValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:60,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:60,1
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:66,1
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:67,1
    - Dst: modelValue
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:68,1
    - Dst: QuantLib::BlackCalibrationHelper::impliedVolatility
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:76,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/calibrationhelper.cpp:82,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackCalibrationHelper::calibrationError
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.cpp
    functionUses: 0
    functionsReached:
    - blackPrice
    - QuantLib::BlackCalibrationHelper::marketValue
    - value
    - QuantLib::BlackCalibrationHelper::impliedVolatility
    - QL_FAIL
    - std::fabs
    - modelValue
    linkageType: ''
    returnType: Real
    signature: Real BlackCalibrationHelper::calibrationError()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CalibrationHelper()
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CalibrationHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::BlackCalibrationHelper::BlackCalibrationHelper
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackCalibrationHelper(Handle<Quote> volatility,\n                               CalibrationErrorType
      calibrationErrorType = RelativePriceError,\n                               const
      VolatilityType type = ShiftedLognormal,\n                               const
      Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:63,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::BlackCalibrationHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached:
    - blackPrice
    - value
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackCalibrationHelper::volatility
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::BlackCalibrationHelper::volatilityType
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::BlackCalibrationHelper::marketValue
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real marketValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::BlackCalibrationHelper::setPricingEngine
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setPricingEngine(const ext::shared_ptr<PricingEngine>& engine)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CalibrationHelper()
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CalibrationHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::BlackCalibrationHelper::BlackCalibrationHelper
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackCalibrationHelper(Handle<Quote> volatility,\n                               CalibrationErrorType
      calibrationErrorType = RelativePriceError,\n                               const
      VolatilityType type = ShiftedLognormal,\n                               const
      Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackPrice
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:63,1
    - Dst: value
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::BlackCalibrationHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached:
    - blackPrice
    - value
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackCalibrationHelper::volatility
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::BlackCalibrationHelper::volatilityType
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/calibrationhelper.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::BlackCalibrationHelper::marketValue
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real marketValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::BlackCalibrationHelper::setPricingEngine
    functionSourceFile: /src/quantlib/ql/models/calibrationhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setPricingEngine(const ext::shared_ptr<PricingEngine>& engine)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PrivateConstraint::PrivateConstraint
      Src: /src/quantlib/ql/models/model.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::CalibratedModel::CalibratedModel
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - PrivateConstraint::PrivateConstraint
    linkageType: ''
    returnType: void
    signature: void CalibratedModel::CalibratedModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: null_deleter
      Src: /src/quantlib/ql/models/model.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/model.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - model
    - ' h'
    - weights
    - ' projection'
    argTypes:
    - CalibratedModel*
    - vector<ext::shared_ptr<CalibrationHelper> >
    - vector<Real>
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::CalibratedModel::CalibrationFunction::CalibrationFunction
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - null_deleter
    linkageType: ''
    returnType: void
    signature: "void CalibrationFunction(CalibratedModel* model,\n                            const
      vector<ext::shared_ptr<CalibrationHelper> >& h,\n                            vector<Real>
      weights,\n                            const Projection& projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~CalibrationFunction() override
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CalibrationFunction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParams
      Src: /src/quantlib/ql/models/model.cpp:47,1
    - Dst: include
      Src: /src/quantlib/ql/models/model.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:49,1
    - Dst: calibrationError
      Src: /src/quantlib/ql/models/model.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/model.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::CalibratedModel::CalibrationFunction::value
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - include
    - setParams
    - std::sqrt
    - size
    - calibrationError
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParams
      Src: /src/quantlib/ql/models/model.cpp:57,1
    - Dst: include
      Src: /src/quantlib/ql/models/model.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:59,1
    - Dst: calibrationError
      Src: /src/quantlib/ql/models/model.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/model.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::CalibratedModel::CalibrationFunction::values
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - include
    - setParams
    - std::sqrt
    - size
    - calibrationError
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CalibratedModel::CalibrationFunction::finiteDifferenceEpsilon
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real finiteDifferenceEpsilon() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:86,1
    - Dst: CompositeConstraint
      Src: /src/quantlib/ql/models/model.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:94,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: vector<Real>
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: QuantLib::CalibratedModel::params
      Src: /src/quantlib/ql/models/model.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:102,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:104,1
    - Dst: Projection::project
      Src: /src/quantlib/ql/models/model.cpp:107,1
    - Dst: minimize
      Src: /src/quantlib/ql/models/model.cpp:108,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/models/model.cpp:109,1
    - Dst: QuantLib::CalibratedModel::setParams
      Src: /src/quantlib/ql/models/model.cpp:110,1
    - Dst: Projection::include
      Src: /src/quantlib/ql/models/model.cpp:110,1
    - Dst: Problem::values
      Src: /src/quantlib/ql/models/model.cpp:111,1
    - Dst: Problem::functionEvaluation
      Src: /src/quantlib/ql/models/model.cpp:112,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - ' instruments'
    - ' method'
    - ' endCriteria'
    - ' additionalConstraint'
    - ' weights'
    - ' fixParameters'
    argTypes:
    - vector<ext::shared_ptr<CalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    - Constraint
    - vector<Real>
    - vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 115
    functionName: QuantLib::CalibratedModel::calibrate
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CalibratedModel::params
    - Problem::values
    - Projection::project
    - notifyObservers
    - empty
    - vector<Real>
    - Projection::include
    - QuantLib::CalibratedModel::setParams
    - Array::size
    - minimize
    - size
    - Problem::currentValue
    - CompositeConstraint
    - Problem::functionEvaluation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CalibratedModel::calibrate(\n            const vector<ext::shared_ptr<CalibrationHelper>
      >& instruments,\n            OptimizationMethod& method,\n            const
      EndCriteria& endCriteria,\n            const Constraint& additionalConstraint,\n
      \           const vector<Real>& weights,\n            const vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/models/model.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:120,1
    - Dst: CalibrationFunction::value
      Src: /src/quantlib/ql/models/model.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' params'
    - ' instruments'
    argTypes:
    - Array
    - vector<ext::shared_ptr<CalibrationHelper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionName: QuantLib::CalibratedModel::value
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - size
    - vector<Real>
    - CalibrationFunction::value
    linkageType: ''
    returnType: Real
    signature: "Real CalibratedModel::value(\n                const Array& params,\n
      \               const vector<ext::shared_ptr<CalibrationHelper> >& instruments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:131,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:132,1
    - Dst: QuantLib::CalibratedModel::params
      Src: /src/quantlib/ql/models/model.cpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 136
    functionName: QuantLib::CalibratedModel::params
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::CalibratedModel::params
    linkageType: ''
    returnType: Array
    signature: Array CalibratedModel::params() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/model.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:142,1
    - Dst: end
      Src: /src/quantlib/ql/models/model.cpp:142,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/model.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:146,1
    - Dst: end
      Src: /src/quantlib/ql/models/model.cpp:146,1
    - Dst: QuantLib::CalibratedModel::generateArguments
      Src: /src/quantlib/ql/models/model.cpp:147,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.cpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 149
    functionName: QuantLib::CalibratedModel::setParams
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 1
    functionsReached:
    - notifyObservers
    - QuantLib::CalibratedModel::generateArguments
    - setParam
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CalibratedModel::setParams(const Array& params)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 152
    functionName: QuantLib::ShortRateModel::ShortRateModel
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ShortRateModel::ShortRateModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PrivateConstraint::PrivateConstraint
      Src: /src/quantlib/ql/models/model.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::CalibratedModel::CalibratedModel
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - PrivateConstraint::PrivateConstraint
    linkageType: ''
    returnType: void
    signature: void CalibratedModel::CalibratedModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: null_deleter
      Src: /src/quantlib/ql/models/model.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/model.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - model
    - ' h'
    - weights
    - ' projection'
    argTypes:
    - CalibratedModel*
    - vector<ext::shared_ptr<CalibrationHelper> >
    - vector<Real>
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::CalibratedModel::CalibrationFunction::CalibrationFunction
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - null_deleter
    linkageType: ''
    returnType: void
    signature: "void CalibrationFunction(CalibratedModel* model,\n                            const
      vector<ext::shared_ptr<CalibrationHelper> >& h,\n                            vector<Real>
      weights,\n                            const Projection& projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~CalibrationFunction() override
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CalibrationFunction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParams
      Src: /src/quantlib/ql/models/model.cpp:47,1
    - Dst: include
      Src: /src/quantlib/ql/models/model.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:49,1
    - Dst: calibrationError
      Src: /src/quantlib/ql/models/model.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/model.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::CalibratedModel::CalibrationFunction::value
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - include
    - setParams
    - std::sqrt
    - size
    - calibrationError
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParams
      Src: /src/quantlib/ql/models/model.cpp:57,1
    - Dst: include
      Src: /src/quantlib/ql/models/model.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:59,1
    - Dst: calibrationError
      Src: /src/quantlib/ql/models/model.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/model.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionName: QuantLib::CalibratedModel::CalibrationFunction::values
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - include
    - setParams
    - std::sqrt
    - size
    - calibrationError
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::CalibratedModel::CalibrationFunction::finiteDifferenceEpsilon
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real finiteDifferenceEpsilon() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:86,1
    - Dst: CompositeConstraint
      Src: /src/quantlib/ql/models/model.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:94,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: vector<Real>
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:96,1
    - Dst: QuantLib::CalibratedModel::params
      Src: /src/quantlib/ql/models/model.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:99,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:102,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/model.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/models/model.cpp:104,1
    - Dst: Projection::project
      Src: /src/quantlib/ql/models/model.cpp:107,1
    - Dst: minimize
      Src: /src/quantlib/ql/models/model.cpp:108,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/models/model.cpp:109,1
    - Dst: QuantLib::CalibratedModel::setParams
      Src: /src/quantlib/ql/models/model.cpp:110,1
    - Dst: Projection::include
      Src: /src/quantlib/ql/models/model.cpp:110,1
    - Dst: Problem::values
      Src: /src/quantlib/ql/models/model.cpp:111,1
    - Dst: Problem::functionEvaluation
      Src: /src/quantlib/ql/models/model.cpp:112,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - ' instruments'
    - ' method'
    - ' endCriteria'
    - ' additionalConstraint'
    - ' weights'
    - ' fixParameters'
    argTypes:
    - vector<ext::shared_ptr<CalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    - Constraint
    - vector<Real>
    - vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 115
    functionName: QuantLib::CalibratedModel::calibrate
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CalibratedModel::params
    - Problem::values
    - Projection::project
    - notifyObservers
    - empty
    - vector<Real>
    - Projection::include
    - QuantLib::CalibratedModel::setParams
    - Array::size
    - minimize
    - size
    - Problem::currentValue
    - CompositeConstraint
    - Problem::functionEvaluation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CalibratedModel::calibrate(\n            const vector<ext::shared_ptr<CalibrationHelper>
      >& instruments,\n            OptimizationMethod& method,\n            const
      EndCriteria& endCriteria,\n            const Constraint& additionalConstraint,\n
      \           const vector<Real>& weights,\n            const vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/models/model.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:120,1
    - Dst: CalibrationFunction::value
      Src: /src/quantlib/ql/models/model.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' params'
    - ' instruments'
    argTypes:
    - Array
    - vector<ext::shared_ptr<CalibrationHelper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionName: QuantLib::CalibratedModel::value
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached:
    - size
    - vector<Real>
    - CalibrationFunction::value
    linkageType: ''
    returnType: Real
    signature: "Real CalibratedModel::value(\n                const Array& params,\n
      \               const vector<ext::shared_ptr<CalibrationHelper> >& instruments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:131,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:132,1
    - Dst: QuantLib::CalibratedModel::params
      Src: /src/quantlib/ql/models/model.cpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 136
    functionName: QuantLib::CalibratedModel::params
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 4
    functionsReached:
    - size
    - QuantLib::CalibratedModel::params
    linkageType: ''
    returnType: Array
    signature: Array CalibratedModel::params() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/model.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:142,1
    - Dst: end
      Src: /src/quantlib/ql/models/model.cpp:142,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/model.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/model.cpp:146,1
    - Dst: end
      Src: /src/quantlib/ql/models/model.cpp:146,1
    - Dst: QuantLib::CalibratedModel::generateArguments
      Src: /src/quantlib/ql/models/model.cpp:147,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.cpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 149
    functionName: QuantLib::CalibratedModel::setParams
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - QuantLib::CalibratedModel::generateArguments
    - setParam
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CalibratedModel::setParams(const Array& params)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 152
    functionName: QuantLib::ShortRateModel::ShortRateModel
    functionSourceFile: /src/quantlib/ql/models/model.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ShortRateModel::ShortRateModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/model.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - termStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::TermStructureConsistentModel::TermStructureConsistentModel
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructureConsistentModel(Handle<YieldTermStructure> termStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& termStructure() const'
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & termStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CalibratedModel::generateArguments
      Src: /src/quantlib/ql/models/model.hpp:91,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::CalibratedModel::update
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::CalibratedModel::generateArguments
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::CalibratedModel::endCriteria
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: '& problemValues() const'
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & problemValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::CalibratedModel::functionEvaluation
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer functionEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::CalibratedModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AffineModel::discountBondOption
      Src: /src/quantlib/ql/models/model.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionName: QuantLib::AffineModel::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AffineModel::discountBondOption
    linkageType: ''
    returnType: Real
    signature: "Real AffineModel::discountBondOption(Option::Type type,\n                                                Real
      strike,\n                                                Time maturity,\n                                                Time,\n
      \                                               Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    CalibratedModel::constraint() const"
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Constraint>
    signature: "ext::shared_ptr<Constraint> &\n    CalibratedModel::constraint() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const std::vector<Parameter>& arguments)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:174,1
    - Dst: testParams
      Src: /src/quantlib/ql/models/model.hpp:178,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - testParams
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:192,1
    - Dst: constraint
      Src: /src/quantlib/ql/models/model.hpp:196,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 201
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - constraint
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:207,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:211,1
    - Dst: constraint
      Src: /src/quantlib/ql/models/model.hpp:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 220
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - constraint
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/model.hpp:227,1
    - Dst: PrivateConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/model.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::CalibratedModel::PrivateConstraint::PrivateConstraint
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - PrivateConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void PrivateConstraint(const std::vector<Parameter>& arguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/model.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - termStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: QuantLib::TermStructureConsistentModel::TermStructureConsistentModel
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TermStructureConsistentModel(Handle<YieldTermStructure> termStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& termStructure() const'
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & termStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CalibratedModel::generateArguments
      Src: /src/quantlib/ql/models/model.hpp:91,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/model.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::CalibratedModel::update
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::CalibratedModel::generateArguments
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::CalibratedModel::endCriteria
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: '& problemValues() const'
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & problemValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::CalibratedModel::functionEvaluation
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer functionEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::CalibratedModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AffineModel::discountBondOption
      Src: /src/quantlib/ql/models/model.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionName: QuantLib::AffineModel::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AffineModel::discountBondOption
    linkageType: ''
    returnType: Real
    signature: "Real AffineModel::discountBondOption(Option::Type type,\n                                                Real
      strike,\n                                                Time maturity,\n                                                Time,\n
      \                                               Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    CalibratedModel::constraint() const"
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Constraint>
    signature: "ext::shared_ptr<Constraint> &\n    CalibratedModel::constraint() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const std::vector<Parameter>& arguments)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:174,1
    - Dst: testParams
      Src: /src/quantlib/ql/models/model.hpp:178,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - testParams
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:192,1
    - Dst: constraint
      Src: /src/quantlib/ql/models/model.hpp:196,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 201
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - constraint
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:207,1
    - Dst: size
      Src: /src/quantlib/ql/models/model.hpp:211,1
    - Dst: constraint
      Src: /src/quantlib/ql/models/model.hpp:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 220
    functionName: QuantLib::CalibratedModel::PrivateConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - size
    - constraint
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/model.hpp:227,1
    - Dst: PrivateConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/model.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::CalibratedModel::PrivateConstraint::PrivateConstraint
    functionSourceFile: /src/quantlib/ql/models/model.hpp
    functionUses: 0
    functionsReached:
    - PrivateConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void PrivateConstraint(const std::vector<Parameter>& arguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::Parameter::Parameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void Parameter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& params() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & params() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Parameter::setParam
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setParam(Size i, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/quantlib/ql/models/parameter.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::Parameter::testParams
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - test
    linkageType: ''
    returnType: bool
    signature: bool testParams(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Parameter::size
      Src: /src/quantlib/ql/models/parameter.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Parameter::size
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Parameter::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/models/parameter.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: '& implementation() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Impl>
    signature: ext::shared_ptr<Impl> & implementation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& constraint() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & constraint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - size
    - impl
    - constraint
    argTypes:
    - Size
    - ext::shared_ptr<Impl>
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Parameter::Parameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Parameter(Size size, ext::shared_ptr<Impl> impl, Constraint constraint)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ConstantParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:81,1
    - Dst: ConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' constraint'
    argTypes:
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::ConstantParameter::ConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - ConstantParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void ConstantParameter(const Constraint& constraint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:89,1
    - Dst: ConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/parameter.hpp:92,1
    - Dst: testParams
      Src: /src/quantlib/ql/models/parameter.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - value
    - ' constraint'
    argTypes:
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::ConstantParameter::ConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - ConstantParameter::Impl::Impl
    - testParams
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantParameter(Real value,\n                          const
      Constraint& constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::NullParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:109,1
    - Dst: NullParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:109,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: QuantLib::NullParameter::NullParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - NullParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void NullParameter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::PiecewiseConstantParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(std::vector<Time> times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' params'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::PiecewiseConstantParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/models/parameter.hpp:137,1
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:138,1
    - Dst: PiecewiseConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionName: QuantLib::PiecewiseConstantParameter::PiecewiseConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - size
    - ext::shared_ptr<Parameter::Impl>
    - PiecewiseConstantParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void PiecewiseConstantParameter(const std::vector<Time>& times,\n
      \                                  const Constraint& constraint =\n                                                             NoConstraint())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - termStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::NumericalImpl
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void NumericalImpl(Handle<YieldTermStructure> termStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/models/parameter.hpp:153,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/parameter.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::set
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void set(Time t, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/models/parameter.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::change
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: void change(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/parameter.hpp:160,1
    - Dst: clear
      Src: /src/quantlib/ql/models/parameter.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::reset
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/parameter.hpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 168
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::find
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& termStructure() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & termStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' impl'
    argTypes:
    - ext::shared_ptr<Parameter::Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::TermStructureFittingParameter::TermStructureFittingParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void TermStructureFittingParameter(\n                               const
      ext::shared_ptr<Parameter::Impl>& impl)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:185,1
    - Dst: NumericalImpl::NumericalImpl
      Src: /src/quantlib/ql/models/parameter.hpp:185,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' term'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: QuantLib::TermStructureFittingParameter::TermStructureFittingParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - NumericalImpl::NumericalImpl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void TermStructureFittingParameter(const Handle<YieldTermStructure>&
      term)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::Parameter::Parameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void Parameter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& params() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & params() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Parameter::setParam
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setParam(Size i, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/quantlib/ql/models/parameter.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::Parameter::testParams
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - test
    linkageType: ''
    returnType: bool
    signature: bool testParams(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Parameter::size
      Src: /src/quantlib/ql/models/parameter.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Parameter::size
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Parameter::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/models/parameter.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: '& implementation() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Impl>
    signature: ext::shared_ptr<Impl> & implementation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& constraint() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & constraint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - size
    - impl
    - constraint
    argTypes:
    - Size
    - ext::shared_ptr<Impl>
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Parameter::Parameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Parameter(Size size, ext::shared_ptr<Impl> impl, Constraint constraint)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ConstantParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:81,1
    - Dst: ConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' constraint'
    argTypes:
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::ConstantParameter::ConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - ConstantParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void ConstantParameter(const Constraint& constraint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:89,1
    - Dst: ConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/parameter.hpp:92,1
    - Dst: testParams
      Src: /src/quantlib/ql/models/parameter.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - value
    - ' constraint'
    argTypes:
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::ConstantParameter::ConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - ConstantParameter::Impl::Impl
    - testParams
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantParameter(Real value,\n                          const
      Constraint& constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::NullParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:109,1
    - Dst: NullParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:109,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: QuantLib::NullParameter::NullParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - NullParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void NullParameter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::PiecewiseConstantParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(std::vector<Time> times)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' params'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::PiecewiseConstantParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& params, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/models/parameter.hpp:137,1
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:138,1
    - Dst: PiecewiseConstantParameter::Impl::Impl
      Src: /src/quantlib/ql/models/parameter.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionName: QuantLib::PiecewiseConstantParameter::PiecewiseConstantParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - size
    - ext::shared_ptr<Parameter::Impl>
    - PiecewiseConstantParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void PiecewiseConstantParameter(const std::vector<Time>& times,\n
      \                                  const Constraint& constraint =\n                                                             NoConstraint())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/parameter.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - termStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::NumericalImpl
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void NumericalImpl(Handle<YieldTermStructure> termStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/models/parameter.hpp:153,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/parameter.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::set
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void set(Time t, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/models/parameter.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::change
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: void change(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/parameter.hpp:160,1
    - Dst: clear
      Src: /src/quantlib/ql/models/parameter.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::reset
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/parameter.hpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/models/parameter.hpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/parameter.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 168
    functionName: QuantLib::TermStructureFittingParameter::NumericalImpl::value
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - std::find
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& termStructure() const'
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & termStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' impl'
    argTypes:
    - ext::shared_ptr<Parameter::Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::TermStructureFittingParameter::TermStructureFittingParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void TermStructureFittingParameter(\n                               const
      ext::shared_ptr<Parameter::Impl>& impl)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/parameter.hpp:185,1
    - Dst: NumericalImpl::NumericalImpl
      Src: /src/quantlib/ql/models/parameter.hpp:185,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/parameter.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' term'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: QuantLib::TermStructureFittingParameter::TermStructureFittingParameter
    functionSourceFile: /src/quantlib/ql/models/parameter.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - NumericalImpl::NumericalImpl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void TermStructureFittingParameter(const Handle<YieldTermStructure>&
      term)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::TwoFactorModel::TwoFactorModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TwoFactorModel::TwoFactorModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:31,1
    - Dst: ext::shared_ptr::xProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:34,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:34,1
    - Dst: ext::shared_ptr::yProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:36,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:36,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:38,1
    - Dst: TwoFactorModel::ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoFactorModel::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - TwoFactorModel::ShortRateTree::ShortRateTree
    - ext::shared_ptr::xProcess
    - ext::shared_ptr<Lattice>
    - ext::shared_ptr::yProcess
    - dynamics
    - TrinomialTree::TrinomialTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> TwoFactorModel::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlation
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tree1'
    - ' tree2'
    - ' dynamics'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: "TwoFactorModel::ShortRateTree::ShortRateTree(\n                         const
      ext::shared_ptr<TrinomialTree>& tree1,\n                         const ext::shared_ptr<TrinomialTree>&
      tree2,\n                         const ext::shared_ptr<ShortRateDynamics>& dynamics)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - correlation
    linkageType: ''
    returnType: void
    signature: "void TwoFactorModel::ShortRateTree::ShortRateTree(\n                         const
      ext::shared_ptr<TrinomialTree>& tree1,\n                         const ext::shared_ptr<TrinomialTree>&
      tree2,\n                         const ext::shared_ptr<ShortRateDynamics>& dynamics)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess>
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:58,1
    - Dst: StochasticProcessArray::StochasticProcessArray
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: TwoFactorModel::ShortRateDynamics::process() const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - StochasticProcessArray::StochasticProcessArray
    - ext::shared_ptr<StochasticProcess>
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess>
    signature: ext::shared_ptr<StochasticProcess> TwoFactorModel::ShortRateDynamics::process()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::TwoFactorModel::TwoFactorModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TwoFactorModel::TwoFactorModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:31,1
    - Dst: ext::shared_ptr::xProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:34,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:34,1
    - Dst: ext::shared_ptr::yProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:36,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:36,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:38,1
    - Dst: TwoFactorModel::ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::TwoFactorModel::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - TwoFactorModel::ShortRateTree::ShortRateTree
    - ext::shared_ptr::xProcess
    - ext::shared_ptr<Lattice>
    - ext::shared_ptr::yProcess
    - dynamics
    - TrinomialTree::TrinomialTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> TwoFactorModel::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlation
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tree1'
    - ' tree2'
    - ' dynamics'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: "TwoFactorModel::ShortRateTree::ShortRateTree(\n                         const
      ext::shared_ptr<TrinomialTree>& tree1,\n                         const ext::shared_ptr<TrinomialTree>&
      tree2,\n                         const ext::shared_ptr<ShortRateDynamics>& dynamics)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - correlation
    linkageType: ''
    returnType: void
    signature: "void TwoFactorModel::ShortRateTree::ShortRateTree(\n                         const
      ext::shared_ptr<TrinomialTree>& tree1,\n                         const ext::shared_ptr<TrinomialTree>&
      tree2,\n                         const ext::shared_ptr<ShortRateDynamics>& dynamics)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess>
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:58,1
    - Dst: StochasticProcessArray::StochasticProcessArray
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: TwoFactorModel::ShortRateDynamics::process() const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.cpp
    functionUses: 0
    functionsReached:
    - StochasticProcessArray::StochasticProcessArray
    - ext::shared_ptr<StochasticProcess>
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess>
    signature: ext::shared_ptr<StochasticProcess> TwoFactorModel::ShortRateDynamics::process()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - xProcess
    - yProcess
    - correlation
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - ext::shared_ptr<StochasticProcess1D>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::TwoFactorModel::ShortRateDynamics::ShortRateDynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ShortRateDynamics(ext::shared_ptr<StochasticProcess1D> xProcess,\n
      \                         ext::shared_ptr<StochasticProcess1D> yProcess,\n                          Real
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~ShortRateDynamics()
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ShortRateDynamics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: '& xProcess() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & xProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& yProcess() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & yProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::TwoFactorModel::ShortRateDynamics::correlation
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:116,1
    - Dst: underlying
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:120,1
    - Dst: underlying
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:121,1
    - Dst: shortRate
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:123,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:123,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:124,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: QuantLib::TwoFactorModel::ShortRateTree::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached:
    - underlying
    - std::exp
    - size
    - timeGrid
    - shortRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - xProcess
    - yProcess
    - correlation
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - ext::shared_ptr<StochasticProcess1D>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::TwoFactorModel::ShortRateDynamics::ShortRateDynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ShortRateDynamics(ext::shared_ptr<StochasticProcess1D> xProcess,\n
      \                         ext::shared_ptr<StochasticProcess1D> yProcess,\n                          Real
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~ShortRateDynamics()
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ShortRateDynamics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: '& xProcess() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & xProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& yProcess() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & yProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::TwoFactorModel::ShortRateDynamics::correlation
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:116,1
    - Dst: underlying
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:120,1
    - Dst: underlying
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:121,1
    - Dst: shortRate
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:123,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:123,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:124,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/twofactormodel.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: QuantLib::TwoFactorModel::ShortRateTree::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodel.hpp
    functionUses: 0
    functionsReached:
    - underlying
    - std::exp
    - size
    - timeGrid
    - shortRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:34,1
    - Dst: statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:35,1
    - Dst: set
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:36,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - discountBondPrice
    - theta
    - ' tree'
    argTypes:
    - Size
    - Real
    - ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
    - ShortRateTree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::OneFactorModel::ShortRateTree::Helper::Helper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - statePrices
    - size
    - timeGrid
    - set
    linkageType: ''
    returnType: void
    signature: "void Helper(Size i,\n               Real discountBondPrice,\n               ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
      theta,\n               ShortRateTree& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: change
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:41,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: operator()(Real theta) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - change
    - QuantLib::discount
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:62,1
    - Dst: reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:68,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:69,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:72,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:73,1
    - Dst: change
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ' tree'
    - dynamics
    - ' theta'
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    - ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 78
    functionName: "OneFactorModel::ShortRateTree::ShortRateTree(\n        const ext::shared_ptr<TrinomialTree>&
      tree,\n        ext::shared_ptr<ShortRateDynamics> dynamics,\n        const ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>&
      theta,\n        const TimeGrid& timeGrid)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - change
    - reset
    - std::move
    - termStructure
    - Brent::solve
    - size
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: void
    signature: "void OneFactorModel::ShortRateTree::ShortRateTree(\n        const
      ext::shared_ptr<TrinomialTree>& tree,\n        ext::shared_ptr<ShortRateDynamics>
      dynamics,\n        const ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>&
      theta,\n        const TimeGrid& timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tree'
    - dynamics
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: "OneFactorModel::ShortRateTree::ShortRateTree(const ext::shared_ptr<TrinomialTree>&
      tree,\n                                                 ext::shared_ptr<ShortRateDynamics>
      dynamics,\n                                                 const TimeGrid&
      timeGrid)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorModel::ShortRateTree::ShortRateTree(const ext::shared_ptr<TrinomialTree>&
      tree,\n                                                 ext::shared_ptr<ShortRateDynamics>
      dynamics,\n                                                 const TimeGrid&
      timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::OneFactorModel::OneFactorModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneFactorModel::OneFactorModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:92,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:92,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:93,1
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:94,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::OneFactorModel::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr<Lattice>
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> OneFactorModel::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:98,1
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:99,1
    - Dst: QuantLib::OneFactorAffineModel::discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::OneFactorAffineModel::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - QuantLib::OneFactorAffineModel::discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor OneFactorAffineModel::discount(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:34,1
    - Dst: statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:35,1
    - Dst: set
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:36,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - discountBondPrice
    - theta
    - ' tree'
    argTypes:
    - Size
    - Real
    - ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
    - ShortRateTree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::OneFactorModel::ShortRateTree::Helper::Helper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - statePrices
    - size
    - timeGrid
    - set
    linkageType: ''
    returnType: void
    signature: "void Helper(Size i,\n               Real discountBondPrice,\n               ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
      theta,\n               ShortRateTree& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: change
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:41,1
    - Dst: discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: operator()(Real theta) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - discount
    - change
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:62,1
    - Dst: reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:68,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:69,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:72,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:73,1
    - Dst: change
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ' tree'
    - dynamics
    - ' theta'
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    - ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 78
    functionName: "OneFactorModel::ShortRateTree::ShortRateTree(\n        const ext::shared_ptr<TrinomialTree>&
      tree,\n        ext::shared_ptr<ShortRateDynamics> dynamics,\n        const ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>&
      theta,\n        const TimeGrid& timeGrid)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - change
    - reset
    - std::move
    - termStructure
    - Brent::solve
    - size
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: void
    signature: "void OneFactorModel::ShortRateTree::ShortRateTree(\n        const
      ext::shared_ptr<TrinomialTree>& tree,\n        ext::shared_ptr<ShortRateDynamics>
      dynamics,\n        const ext::shared_ptr<TermStructureFittingParameter::NumericalImpl>&
      theta,\n        const TimeGrid& timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tree'
    - dynamics
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<TrinomialTree>
    - ext::shared_ptr<ShortRateDynamics>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: "OneFactorModel::ShortRateTree::ShortRateTree(const ext::shared_ptr<TrinomialTree>&
      tree,\n                                                 ext::shared_ptr<ShortRateDynamics>
      dynamics,\n                                                 const TimeGrid&
      timeGrid)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorModel::ShortRateTree::ShortRateTree(const ext::shared_ptr<TrinomialTree>&
      tree,\n                                                 ext::shared_ptr<ShortRateDynamics>
      dynamics,\n                                                 const TimeGrid&
      timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::OneFactorModel::OneFactorModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneFactorModel::OneFactorModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:92,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:92,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:93,1
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:94,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::OneFactorModel::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr<Lattice>
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> OneFactorModel::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:98,1
    - Dst: dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:99,1
    - Dst: QuantLib::OneFactorAffineModel::discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::OneFactorAffineModel::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.cpp
    functionUses: 0
    functionsReached:
    - dynamics
    - QuantLib::OneFactorAffineModel::discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor OneFactorAffineModel::discount(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~OneFactorModel() override
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OneFactorModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::OneFactorModel::ShortRateDynamics::ShortRateDynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ShortRateDynamics(ext::shared_ptr<StochasticProcess1D> process)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~ShortRateDynamics()
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ShortRateDynamics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& process()'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & process()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::OneFactorModel::ShortRateTree::size
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::size
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:92,1
    - Dst: shortRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:93,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:94,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::OneFactorModel::ShortRateTree::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached:
    - timeGrid
    - shortRate
    - std::exp
    - QuantLib::OneFactorModel::ShortRateTree::underlying
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::OneFactorModel::ShortRateTree::underlying
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::underlying
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::descendant
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::OneFactorModel::ShortRateTree::descendant
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::descendant
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::probability
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::OneFactorModel::ShortRateTree::probability
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::probability
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::OneFactorModel::ShortRateTree::setSpread
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSpread(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 130
    functionName: QuantLib::OneFactorAffineModel::OneFactorAffineModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneFactorAffineModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorAffineModel::discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - now
    - maturity
    - factors
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::OneFactorAffineModel::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::OneFactorAffineModel::discountBond
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Array factors) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: A
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - now
    - maturity
    - rate
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::OneFactorAffineModel::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 3
    functionsReached:
    - A
    - std::exp
    - B
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Rate rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~OneFactorModel() override
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OneFactorModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::OneFactorModel::ShortRateDynamics::ShortRateDynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ShortRateDynamics(ext::shared_ptr<StochasticProcess1D> process)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~ShortRateDynamics()
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ShortRateDynamics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& process()'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> & process()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::OneFactorModel::ShortRateTree::size
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::size
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:92,1
    - Dst: shortRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:93,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:94,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::OneFactorModel::ShortRateTree::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached:
    - timeGrid
    - shortRate
    - std::exp
    - QuantLib::OneFactorModel::ShortRateTree::underlying
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::OneFactorModel::ShortRateTree::underlying
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::underlying
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::descendant
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::OneFactorModel::ShortRateTree::descendant
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::descendant
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorModel::ShortRateTree::probability
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - index
    - branch
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::OneFactorModel::ShortRateTree::probability
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OneFactorModel::ShortRateTree::probability
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::OneFactorModel::ShortRateTree::setSpread
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSpread(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - nArguments
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 130
    functionName: QuantLib::OneFactorAffineModel::OneFactorAffineModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneFactorAffineModel(Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorAffineModel::discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - now
    - maturity
    - factors
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::OneFactorAffineModel::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::OneFactorAffineModel::discountBond
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Array factors) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: A
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodel.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - now
    - maturity
    - rate
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::OneFactorAffineModel::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodel.hpp
    functionUses: 4
    functionsReached:
    - A
    - std::exp
    - B
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Rate rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:68,1
    - Dst: QuantLib::G2::discountBond
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - now
    - maturity
    - factors
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::G2::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 1
    functionsReached:
    - Array::size
    - QuantLib::G2::discountBond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Array factors) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::G2::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - termStructure
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::G2::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::G2::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: b_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::G2::b
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - b_
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: eta_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::G2::eta
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - eta_
    linkageType: ''
    returnType: Real
    signature: Real eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::G2::rho
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - rho_
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:122,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:122,1
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:123,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:123,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - fitting
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Parameter
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 125
    functionName: QuantLib::G2::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma, Real b, Real eta,
      Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x
    - y
    argTypes:
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::G2::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Rate
    signature: Rate shortRate(Time t, Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - termStructure
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: QuantLib::G2::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Impl(Handle<YieldTermStructure> termStructure,\n                 Real
      a,\n                 Real sigma,\n                 Real b,\n                 Real
      eta,\n                 Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:156,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: QuantLib::G2::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:177,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' termStructure'
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 179
    functionName: QuantLib::G2::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a,\n                         Real sigma,\n                         Real
      b,\n                         Real eta,\n                         Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:68,1
    - Dst: QuantLib::G2::discountBond
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - now
    - maturity
    - factors
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::G2::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 2
    functionsReached:
    - Array::size
    - QuantLib::G2::discountBond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real discountBond(Time now, Time maturity, Array factors) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::G2::discount
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - termStructure
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor discount(Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::G2::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::G2::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: b_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::G2::b
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - b_
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: eta_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::G2::eta
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - eta_
    linkageType: ''
    returnType: Real
    signature: Real eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::G2::rho
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - rho_
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:122,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:122,1
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:123,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:123,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - fitting
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Parameter
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 125
    functionName: QuantLib::G2::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma, Real b, Real eta,
      Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x
    - y
    argTypes:
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::G2::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Rate
    signature: Rate shortRate(Time t, Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - termStructure
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: QuantLib::G2::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Impl(Handle<YieldTermStructure> termStructure,\n                 Real
      a,\n                 Real sigma,\n                 Real b,\n                 Real
      eta,\n                 Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:156,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: QuantLib::G2::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:177,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' termStructure'
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 179
    functionName: QuantLib::G2::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a,\n                         Real sigma,\n                         Real
      b,\n                         Real eta,\n                         Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:37,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:37,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:38,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:38,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:39,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:39,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:40,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:40,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:41,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:41,1
    - Dst: QuantLib::G2::generateArguments
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' termStructure'
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: QuantLib::G2::G2
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::G2::generateArguments
    - BoundaryConstraint
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void G2::G2(const Handle<YieldTermStructure>& termStructure,\n           Real
      a, Real sigma, Real b, Real eta, Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:49,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::G2::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - QuantLib::G2::eta
    - Dynamics::Dynamics
    - QuantLib::G2::rho
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: ext::shared_ptr<TwoFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<TwoFactorModel::ShortRateDynamics> G2::dynamics() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:55,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:55,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::G2::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - FittingParameter
    - termStructure
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: void
    signature: void G2::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:61,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:62,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:62,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:65,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:65,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:66,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:68,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:68,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:69,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:69,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 73
    functionName: QuantLib::G2::sigmaP
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - std::sqrt
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: Real
    signature: Real G2::sigmaP(Time t, Time s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::A
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - T
    - x
    - y
    argTypes:
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::G2::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::B
    - QuantLib::G2::A
    linkageType: ''
    returnType: Real
    signature: Real G2::discountBond(Time t, Time T, Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::sigmaP
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:82,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:83,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:84,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::G2::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - blackFormula
    - QuantLib::G2::sigmaP
    linkageType: ''
    returnType: Real
    signature: "Real G2::discountBondOption(Option::Type type, Real strike, Time maturity,\n
      \       Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:90,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:91,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:91,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:92,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:92,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:93,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:93,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:94,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:95,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:96,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:96,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:97,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:98,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionName: QuantLib::G2::V
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: Real
    signature: Real G2::V(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:103,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::G2::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2::V
    - std::exp
    - termStructure
    linkageType: ''
    returnType: Real
    signature: Real G2::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::G2::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2::B(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:143,1
    - Dst: A
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:146,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:147,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 10
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    - w
    - start
    - payTimes
    - fixedRate
    - ' model'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::vector<Time>
    - Rate
    - G2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 150
    functionName: QuantLib::G2::SwaptionPricingFunction::SwaptionPricingFunction
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::move
    - B
    - std::sqrt
    - size
    - A
    linkageType: ''
    returnType: void
    signature: "void SwaptionPricingFunction(Real a,\n                                Real
      sigma,\n                                Real b,\n                                Real
      eta,\n                                Real rho,\n                                Real
      w,\n                                Real start,\n                                std::vector<Time>
      payTimes,\n                                Rate fixedRate,\n                                const
      G2& model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::G2::SwaptionPricingFunction::mux
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mux() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 153
    functionName: QuantLib::G2::SwaptionPricingFunction::sigmax
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:164,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:170,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:171,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:180,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:184,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 189
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::phi
    - Real
    - std::max
    - std::sqrt
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' lambda'
    - ' Bb'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: QuantLib::G2::SwaptionPricingFunction::SolvingFunction::SolvingFunction
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SolvingFunction(const Array& lambda, const Array& Bb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:221,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:221,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:224,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:225,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:226,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:230,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:231,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:233,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: SwaptionPricingFunction::mux
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:241,1
    - Dst: SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:241,1
    - Dst: SwaptionPricingFunction::mux
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:242,1
    - Dst: SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:242,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:244,1
    - Dst: integrator
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' arguments'
    - fixedRate
    - range
    - intervals
    argTypes:
    - Swaption::arguments
    - Rate
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 246
    functionName: QuantLib::G2::swaption
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - DayCounter::yearFraction
    - SwaptionPricingFunction::mux
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - Null<Real>
    - termStructure
    - integrator
    - SwaptionPricingFunction::sigmax
    - QuantLib::G2::sigma
    - std::vector::size
    - fixedPayDates::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real G2::swaption(const Swaption::arguments& arguments,\n                      Rate
      fixedRate, Real range, Size intervals) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:37,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:37,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:38,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:38,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:39,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:39,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:40,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:40,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:41,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:41,1
    - Dst: QuantLib::G2::generateArguments
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' termStructure'
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: QuantLib::G2::G2
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::G2::generateArguments
    - BoundaryConstraint
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void G2::G2(const Handle<YieldTermStructure>& termStructure,\n           Real
      a, Real sigma, Real b, Real eta, Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:49,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:50,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::G2::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - QuantLib::G2::eta
    - Dynamics::Dynamics
    - QuantLib::G2::rho
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: ext::shared_ptr<TwoFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<TwoFactorModel::ShortRateDynamics> G2::dynamics() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:55,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:55,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::G2::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - FittingParameter
    - termStructure
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: void
    signature: void G2::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:61,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:62,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:62,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:63,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:64,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:65,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:65,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:66,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:68,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:68,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:69,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:69,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 73
    functionName: QuantLib::G2::sigmaP
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - std::sqrt
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: Real
    signature: Real G2::sigmaP(Time t, Time s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::A
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - T
    - x
    - y
    argTypes:
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::G2::discountBond
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::B
    - QuantLib::G2::A
    linkageType: ''
    returnType: Real
    signature: Real G2::discountBond(Time t, Time T, Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::sigmaP
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:82,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:83,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:84,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::G2::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - blackFormula
    - QuantLib::G2::sigmaP
    linkageType: ''
    returnType: Real
    signature: "Real G2::discountBondOption(Option::Type type, Real strike, Time maturity,\n
      \       Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:90,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:91,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:91,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:92,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:92,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:93,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:93,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:94,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:95,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:96,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:96,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:97,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:98,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionName: QuantLib::G2::V
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - std::exp
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - QuantLib::G2::sigma
    linkageType: ''
    returnType: Real
    signature: Real G2::V(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:103,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    - Dst: QuantLib::G2::V
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::G2::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2::V
    - std::exp
    - termStructure
    linkageType: ''
    returnType: Real
    signature: Real G2::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::G2::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2::B(Real x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:143,1
    - Dst: A
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:146,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:147,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 10
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    - w
    - start
    - payTimes
    - fixedRate
    - ' model'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::vector<Time>
    - Rate
    - G2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 150
    functionName: QuantLib::G2::SwaptionPricingFunction::SwaptionPricingFunction
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::move
    - B
    - std::sqrt
    - size
    - A
    linkageType: ''
    returnType: void
    signature: "void SwaptionPricingFunction(Real a,\n                                Real
      sigma,\n                                Real b,\n                                Real
      eta,\n                                Real rho,\n                                Real
      w,\n                                Real start,\n                                std::vector<Time>
      payTimes,\n                                Rate fixedRate,\n                                const
      G2& model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::G2::SwaptionPricingFunction::mux
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mux() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 153
    functionName: QuantLib::G2::SwaptionPricingFunction::sigmax
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:164,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:170,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:171,1
    - Dst: phi
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:180,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:184,1
    - Dst: phi
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 189
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    - phi
    - std::max
    - std::sqrt
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' lambda'
    - ' Bb'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: QuantLib::G2::SwaptionPricingFunction::SolvingFunction::SolvingFunction
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SolvingFunction(const Array& lambda, const Array& Bb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:221,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:221,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:224,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:225,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:226,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:230,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:231,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:233,1
    - Dst: QuantLib::G2::a
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::sigma
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::b
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::eta
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: QuantLib::G2::rho
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:236,1
    - Dst: SwaptionPricingFunction::mux
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:241,1
    - Dst: SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:241,1
    - Dst: SwaptionPricingFunction::mux
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:242,1
    - Dst: SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:242,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:244,1
    - Dst: integrator
      Src: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' arguments'
    - fixedRate
    - range
    - intervals
    argTypes:
    - Swaption::arguments
    - Rate
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 246
    functionName: QuantLib::G2::swaption
    functionSourceFile: /src/quantlib/ql/models/shortrate/twofactormodels/g2.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::a
    - QuantLib::G2::b
    - DayCounter::yearFraction
    - SwaptionPricingFunction::mux
    - QuantLib::G2::eta
    - QuantLib::G2::rho
    - Null<Real>
    - termStructure
    - integrator
    - SwaptionPricingFunction::sigmax
    - QuantLib::G2::sigma
    - std::vector::size
    - fixedPayDates::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real G2::swaption(const Swaption::arguments& arguments,\n                      Rate
      fixedRate, Real range, Size intervals) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:43,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:44,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:46,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:57,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:59,1
    - Dst: QuantLib::MarkovFunctional::validate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:61,1
    - Dst: QuantLib::MarkovFunctional::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 9
    argNames:
    - ' termStructure'
    - reversion
    - volstepdates
    - volatilities
    - ' swaptionVol'
    - ' swaptionExpiries'
    - ' swaptionTenors'
    - ' swapIndexBase'
    - modelSettings
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - std::vector<Date>
    - std::vector<Real>
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Date>
    - std::vector<Period>
    - ext::shared_ptr<SwapIndex>
    - MarkovFunctional::ModelSettings
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 63
    functionName: QuantLib::MarkovFunctional::MarkovFunctional
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - ConstantParameter
    - empty
    - QuantLib::MarkovFunctional::initialize
    - std::move
    - NoConstraint
    - QuantLib::MarkovFunctional::validate
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::MarkovFunctional(const Handle<YieldTermStructure>&
      termStructure,\n                                       const Real reversion,\n
      \                                      std::vector<Date> volstepdates,\n                                       std::vector<Real>
      volatilities,\n                                       const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                       const std::vector<Date>&
      swaptionExpiries,\n                                       const std::vector<Period>&
      swaptionTenors,\n                                       const ext::shared_ptr<SwapIndex>&
      swapIndexBase,\n                                       MarkovFunctional::ModelSettings
      modelSettings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:73,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:74,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:79,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:83,1
    - Dst: QuantLib::MarkovFunctional::validate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:84,1
    - Dst: QuantLib::MarkovFunctional::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - ' termStructure'
    - reversion
    - volstepdates
    - volatilities
    - ' capletVol'
    - ' capletExpiries'
    - iborIndex
    - modelSettings
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - std::vector<Date>
    - std::vector<Real>
    - Handle<OptionletVolatilityStructure>
    - std::vector<Date>
    - ext::shared_ptr<IborIndex>
    - MarkovFunctional::ModelSettings
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 86
    functionName: QuantLib::MarkovFunctional::MarkovFunctional
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - empty
    - QuantLib::MarkovFunctional::initialize
    - std::move
    - NoConstraint
    - QuantLib::MarkovFunctional::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::MarkovFunctional(const Handle<YieldTermStructure>&
      termStructure,\n                                       const Real reversion,\n
      \                                      std::vector<Date> volstepdates,\n                                       std::vector<Real>
      volatilities,\n                                       const Handle<OptionletVolatilityStructure>&
      capletVol,\n                                       const std::vector<Date>&
      capletExpiries,\n                                       ext::shared_ptr<IborIndex>
      iborIndex,\n                                       MarkovFunctional::ModelSettings
      modelSettings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:89,1
    - Dst: QuantLib::MarkovFunctional::updateTimes1
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:90,1
    - Dst: QuantLib::MarkovFunctional::updateTimes2
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::MarkovFunctional::updateTimes
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateTimes1
    - QuantLib::MarkovFunctional::updateTimes2
    - QL_MFMESSAGE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:97,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:98,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 110
    functionName: QuantLib::MarkovFunctional::updateTimes1
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - begin
    - termStructure
    - push_back
    - end
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:113,1
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:114,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:115,1
    - Dst: expiries_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:116,1
    - Dst: tenors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:119,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:119,1
    - Dst: expiries_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:120,1
    - Dst: tenors_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::MarkovFunctional::updateTimes2
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - expiries_::clear
    - push_back
    - termStructure
    - expiries_::push_back
    - size
    - tenors_::clear
    - clear
    - tenors_::push_back
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes2() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:134,1
    - Dst: GaussHermiteIntegration::x
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:141,1
    - Dst: GaussHermiteIntegration::weights
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:145,1
    - Dst: Array
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:149,1
    - Dst: QuantLib::MarkovFunctional::updateTimes1
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:151,1
    - Dst: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:155,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:160,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:160,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:161,1
    - Dst: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:162,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:167,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:171,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:171,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:173,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:174,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:175,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:176,1
    - Dst: auto::second::paymentDates_::rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:178,1
    - Dst: auto::second::paymentDates_::rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:179,1
    - Dst: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:182,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:186,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:187,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:188,1
    - Dst: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:191,1
    - Dst: QuantLib::MarkovFunctional::updateTimes2
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:203,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:206,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:207,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:208,1
    - Dst: ext::make_shared<MfStateProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:211,1
    - Dst: reversion_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:212,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:212,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:214,1
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:218,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:219,1
    - Dst: ext::shared_ptr::enableExtrapolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:223,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:224,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:227,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:227,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:228,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:229,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:230,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:231,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 232
    functionName: QuantLib::MarkovFunctional::initialize
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - PositiveConstraint
    - ext::shared_ptr::enableExtrapolation
    - QuantLib::MarkovFunctional::updateTimes2
    - ext::make_shared<Matrix>
    - registerWith
    - static_cast<Integer>
    - GaussHermiteIntegration::weights
    - CubicInterpolation::CubicInterpolation
    - auto::second::paymentDates_::rbegin
    - rbegin
    - QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
    - PiecewiseConstantParameter
    - empty
    - rend
    - Array
    - begin
    - yGrid
    - QuantLib::MarkovFunctional::makeCapletCalibrationPoint
    - QL_MFMESSAGE
    - size
    - auto::second::paymentDates_::back
    - std::exp
    - QuantLib::Date::minDate
    - setParam
    - ext::make_shared<MfStateProcess>
    - push_back
    - termStructure
    - auto::second::paymentDates_::rend
    - std::max
    - end
    - row_begin
    - reversion_
    - underlyingSwap
    - QuantLib::MarkovFunctional::updateTimes1
    - GaussHermiteIntegration::x
    - params
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:237,1
    - Dst: count
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:237,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:246,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:248,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:249,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:250,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:252,1
    - Dst: CalibrationPoint::yearFractions_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:253,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:254,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:255,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:255,1
    - Dst: CalibrationPoint::paymentDates_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    - Dst: adjust
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - expiry
    - tenor
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 259
    functionName: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - Schedule::date
    - CalibrationPoint::paymentDates_::push_back
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - count
    - Schedule::size
    - CalibrationPoint::yearFractions_::push_back
    - dayCounter
    - ext::shared_ptr::paymentConvention
    - adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::makeSwaptionCalibrationPoint(const Date &expiry,\n
      \                                                       const Period &tenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:263,1
    - Dst: count
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:264,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:271,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:272,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:273,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:274,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:274,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:275,1
    - Dst: CalibrationPoint::paymentDates_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:277,1
    - Dst: CalibrationPoint::yearFractions_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:278,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 282
    functionName: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - CalibrationPoint::paymentDates_::push_back
    - tenor
    - endOfMonth
    - dayCounter
    - count
    - valueDate
    - CalibrationPoint::yearFractions_::push_back
    - businessDayConvention
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::makeCapletCalibrationPoint(const Date &expiry)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:286,1
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:289,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:293,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:293,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:299,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:300,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:301,1
    - Dst: smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:304,1
    - Dst: auto::second::paymentDates_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:307,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:310,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:314,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:315,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:316,1
    - Dst: smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:318,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:322,1
    - Dst: AtmSmileSection::AtmSmileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:323,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:327,1
    - Dst: ext::make_shared<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:334,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:347,1
    - Dst: ext::dynamic_pointer_cast<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:348,1
    - Dst: SmileSectionUtils::strikeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:358,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:359,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:361,1
    - Dst: auto::second::rawSmileSection_::volatilityType
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:361,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:365,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:366,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:368,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:370,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:370,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:372,1
    - Dst: auto::second::rawSmileSection_::volatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:372,1
    - Dst: auto::second::rawSmileSection_::volatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:380,1
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:383,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:384,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:385,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:386,1
    - Dst: SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:378,1
    - Dst: "ext::make_shared<\n                        KahaleSmileSection>"
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:391,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:402,1
    - Dst: ext::dynamic_pointer_cast<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:403,1
    - Dst: customSmileFactory_::smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:410,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: auto::second::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:422,1
    - Dst: auto::second::smileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:424,1
    - Dst: auto::second::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:428,1
    - Dst: auto::second::smileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:430,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 437
    functionName: QuantLib::MarkovFunctional::updateSmiles
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - AtmSmileSection::AtmSmileSection
    - Actual365Fixed
    - rbegin
    - clear
    - std::vector::push_back
    - auto::second::smileSection_::shift
    - rend
    - SmileSectionUtils::strikeGrid
    - QL_MFMESSAGE
    - size
    - std::vector::erase
    - auto::second::paymentDates_::back
    - auto::second::paymentDates_::size
    - Null<Size>
    - auto::second::rawSmileSection_::shift
    - ext::shared_ptr<OptimizationMethod>
    - termStructure
    - push_back
    - emplace_back
    - "ext::make_shared<\n                        KahaleSmileSection>"
    - ext::shared_ptr<SmileSection>
    - std::vector::size
    - SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    - QL_REQUIRE
    - auto::second::smileSection_::digitalOptionPrice
    - smileSection
    - ext::make_shared<KahaleSmileSection>
    - ext::dynamic_pointer_cast<KahaleSmileSection>
    - std::vector::begin
    - auto::second::rawSmileSection_::volatilityType
    - auto::second::rawSmileSection_::volatility
    - customSmileFactory_::smileSection
    - ext::shared_ptr<EndCriteria>
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateSmiles() const
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:441,1
    - Dst: adjustmentFactors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:444,1
    - Dst: digitalsAdjustmentFactors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:445,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:447,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:449,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:449,1
    - Dst: ext::dynamic_pointer_cast<CustomSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:453,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:455,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:459,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:462,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:464,1
    - Dst: auto::second::paymentDates_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:466,1
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:468,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:468,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: CubicInterpolation::enableExtrapolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:479,1
    - Dst: digitalsAdjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:482,1
    - Dst: digitalsAdjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:483,1
    - Dst: digitalsAdjustmentFactors_::front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:495,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:502,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:506,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:511,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:517,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:519,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:521,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:522,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:529,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:530,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:531,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:532,1
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:538,1
    - Dst: ext::shared_ptr::inverseDigitalCall
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:550,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:554,1
    - Dst: QuantLib::MarkovFunctional::marketSwapRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:560,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:564,1
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:566,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:579,1
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:586,1
    - Dst: QuantLib::MarkovFunctional::deflatedZerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:587,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:589,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:590,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:591,1
    - Dst: adjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:595,1
    - Dst: adjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:596,1
    - Dst: adjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:599,1
    - Dst: adjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:600,1
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:603,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 605
    functionName: QuantLib::MarkovFunctional::updateNumeraireTabulation
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - digitalsAdjustmentFactors_::begin
    - CubicInterpolation::enableExtrapolation
    - rbegin
    - adjustmentFactors_::begin
    - rend
    - Array::begin
    - ext::dynamic_pointer_cast<CustomSmileSection>
    - begin
    - digitalsAdjustmentFactors_::insert
    - adjustmentFactors_::clear
    - digitalsAdjustmentFactors_::clear
    - QL_MFMESSAGE
    - size
    - adjustmentFactors_::insert
    - auto::second::paymentDates_::size
    - ext::shared_ptr::inverseDigitalCall
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    - auto::second::rawSmileSection_::shift
    - CubicInterpolation::cCoefficients
    - QuantLib::MarkovFunctional::deflatedZerobond
    - termStructure
    - std::max
    - CubicInterpolation::bCoefficients
    - end
    - QL_REQUIRE
    - CubicInterpolation::aCoefficients
    - QuantLib::MarkovFunctional::marketSwapRate
    - QuantLib::MarkovFunctional::update
    - digitalsAdjustmentFactors_::front
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateNumeraireTabulation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:612,1
    - Dst: marketZerorate_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:615,1
    - Dst: modelZerorate_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:616,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:617,1
    - Dst: marketZerorate_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:618,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:619,1
    - Dst: modelZerorate_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:624,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:625,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:625,1
    - Dst: smileStrikes_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:629,1
    - Dst: marketCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:630,1
    - Dst: marketPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:631,1
    - Dst: modelCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:632,1
    - Dst: modelPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:633,1
    - Dst: marketVega_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:634,1
    - Dst: marketRawCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:635,1
    - Dst: marketRawPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:636,1
    - Dst: atm_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:639,1
    - Dst: annuity_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:640,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:645,1
    - Dst: SmileSectionUtils::moneyGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:646,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:649,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:650,1
    - Dst: ext::shared_ptr::volatilityType
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:650,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:651,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:655,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:655,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:657,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:657,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:663,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:664,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:666,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:666,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:668,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:668,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:670,1
    - Dst: capletPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:672,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:673,1
    - Dst: swaptionPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:674,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:676,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:677,1
    - Dst: capletPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:679,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:680,1
    - Dst: swaptionPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:681,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:683,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:684,1
    - Dst: ext::shared_ptr::vega
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:684,1
    - Dst: smileStrikes_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:686,1
    - Dst: marketCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:687,1
    - Dst: marketPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:688,1
    - Dst: modelCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:689,1
    - Dst: modelPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:690,1
    - Dst: marketVega_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:691,1
    - Dst: marketRawCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:692,1
    - Dst: marketRawPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:693,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 700
    functionName: "&\n    MarkovFunctional::modelOutputs() const"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - capletPriceInternal
    - ext::shared_ptr::shift
    - modelPutPremium_::clear
    - smileStrikes_::push_back
    - marketRawCallPremium_::push_back
    - modelCallPremium_::push_back
    - Real
    - Date
    - zerobond
    - marketVega_::push_back
    - marketRawPutPremium_::push_back
    - modelZerorate_::clear
    - marketRawCallPremium_::clear
    - std::vector::push_back
    - marketRawPutPremium_::clear
    - atm_::push_back
    - annuity_::push_back
    - swaptionPriceInternal
    - marketPutPremium_::clear
    - marketCallPremium_::push_back
    - modelZerorate_::push_back
    - marketPutPremium_::push_back
    - size
    - ext::shared_ptr::vega
    - ext::shared_ptr::volatilityType
    - calculate
    - smileStrikes_::clear
    - marketZerorate_::clear
    - termStructure
    - push_back
    - marketCallPremium_::clear
    - modelPutPremium_::push_back
    - std::log
    - marketVega_::clear
    - modelCallPremium_::clear
    - SmileSectionUtils::moneyGrid
    - marketZerorate_::push_back
    - ext::shared_ptr::optionPrice
    linkageType: ''
    returnType: MarkovFunctional::ModelOutputs
    signature: "MarkovFunctional::ModelOutputs &\n    MarkovFunctional::modelOutputs()
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:704,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:705,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:705,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:710,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:711,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:713,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:713,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:714,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:716,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:717,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:723,1
    - Dst: front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:725,1
    - Dst: front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:726,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:729,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:730,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 739
    functionName: QuantLib::MarkovFunctional::numeraireArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::min<Size>
    - begin
    - termStructure
    - end
    - size
    - front
    - back
    - std::upper_bound
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::numeraireArray(const Time t, const Array& y)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:743,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - T
    - t
    - ' y'
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 741
    functionDepth: 1
    functionLinenumber: 741
    functionLinenumberEnd: 744
    functionName: QuantLib::MarkovFunctional::zerobondArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    - QuantLib::MarkovFunctional::numeraireArray
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::zerobondArray(const Time T, const Time t, const
      Array& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:748,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:750,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:754,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:756,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:757,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:759,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:765,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - T
    - t
    - ' y'
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 746
    functionDepth: 1
    functionLinenumber: 746
    functionLinenumberEnd: 772
    functionName: QuantLib::MarkovFunctional::deflatedZerobondArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - size
    - stdDeviation
    - calculate
    - QuantLib::MarkovFunctional::numeraireArray
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::deflatedZerobondArray(const Time T, const Time
      t, const Array& y) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:779,1
    - Dst: QuantLib::MarkovFunctional::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:780,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:780,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:781,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:781,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:784,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:785,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:785,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:786,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:786,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:787,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:787,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:788,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:788,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 789
    functionName: QuantLib::MarkovFunctional::numeraireImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::termStructure
    - numeraireTime
    - Handle<YieldTermStructure>::discount
    - Real
    - QuantLib::MarkovFunctional::numeraireArray
    - termStructure
    - Handle<YieldTermStructure>::empty
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::numeraireImpl(\n        const Time t, const
      Real y,\n        const Handle<YieldTermStructure> &yts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:796,1
    - Dst: QuantLib::MarkovFunctional::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:796,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:797,1
    - Dst: QuantLib::MarkovFunctional::zerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:799,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:801,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:802,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 791
    functionDepth: 2
    functionLinenumber: 791
    functionLinenumberEnd: 803
    functionName: QuantLib::MarkovFunctional::zerobondImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::termStructure
    - Handle<YieldTermStructure>::discount
    - Real
    - termStructure
    - QuantLib::MarkovFunctional::zerobondArray
    - Handle<YieldTermStructure>::empty
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::zerobondImpl(const Time T, const Time t, const
      Real y,\n                                   const Handle<YieldTermStructure>
      &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - T
    - t
    - y
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 805
    functionDepth: 2
    functionLinenumber: 805
    functionLinenumberEnd: 810
    functionName: QuantLib::MarkovFunctional::deflatedZerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::deflatedZerobond(Time T, Time t,\n                                            Real
      y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:820,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:822,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - expiry
    - p
    - digitalPrice
    - guess
    - shift
    argTypes:
    - Date
    - CalibrationPoint
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 826
    functionName: QuantLib::MarkovFunctional::marketSwapRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - Brent::solve
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::marketSwapRate(const Date &expiry,\n                                          const
      CalibrationPoint &p,\n                                          const Real digitalPrice,\n
      \                                         const Real guess,\n                                          const
      Real shift) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CalibrationPoint::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - expiry
    - p
    - type
    - strike
    argTypes:
    - Date
    - CalibrationPoint
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 835
    functionName: QuantLib::MarkovFunctional::marketDigitalPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - CalibrationPoint::smileSection_::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::marketDigitalPrice(const Date &expiry,\n                                              const
      CalibrationPoint &p,\n                                              const Option::Type
      &type,\n                                              const Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:887,1
    - Dst: MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:889,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:893,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:895,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:901,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:905,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:916,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:919,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:923,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:926,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:927,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:935,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 2
    argNames:
    - out
    - m
    argTypes:
    - std::ostream
    - MarkovFunctional::ModelOutputs
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 940
    functionName: "&operator<<(std::ostream &out,\n                             const
      MarkovFunctional::ModelOutputs &m)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - MarkovFunctional::ModelOutputs::expiries_::size
    - std::setprecision
    - MarkovFunctional::ModelOutputs::expiries_::empty
    - MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
    - std::ostringstream::str
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream &operator<<(std::ostream &out,\n                             const
      MarkovFunctional::ModelOutputs &m)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:946,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:951,1
    - Dst: ext::shared_ptr<IborIndex>::fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:952,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:953,1
    - Dst: ext::shared_ptr<IborIndex>::tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:953,1
    - Dst: ext::shared_ptr<IborIndex>::businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:954,1
    - Dst: ext::shared_ptr<IborIndex>::endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:955,1
    - Dst: ext::shared_ptr<IborIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:957,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:959,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:960,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - fixing
    - referenceDate
    - y
    - zeroFixingDays
    - iborIdx
    argTypes:
    - Date
    - Date
    - Real
    - bool
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 962
    functionName: QuantLib::MarkovFunctional::forwardRateInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>::valueDate
    - ext::shared_ptr<IborIndex>::businessDayConvention
    - calculate
    - ext::shared_ptr<IborIndex>::fixingCalendar
    - ext::shared_ptr<IborIndex>::endOfMonth
    - ext::shared_ptr<IborIndex>::dayCounter
    - ext::shared_ptr<IborIndex>::tenor
    - zerobond
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::forwardRateInternal(\n        const Date &fixing,
      const Date &referenceDate, const Real y,\n        const bool zeroFixingDays,
      ext::shared_ptr<IborIndex> iborIdx) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:970,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:974,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:976,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:978,1
    - Dst: QuantLib::MarkovFunctional::swapAnnuityInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:979,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:982,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:982,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:985,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - fixing
    - tenor
    - referenceDate
    - y
    - zeroFixingDays
    - swapIdx
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 964
    functionDepth: 1
    functionLinenumber: 964
    functionLinenumberEnd: 989
    functionName: QuantLib::MarkovFunctional::swapRateInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - QuantLib::MarkovFunctional::swapAnnuityInternal
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - Schedule::dates
    - ext::shared_ptr::paymentConvention
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swapRateInternal(const Date &fixing, const
      Period &tenor,\n                                       const Date &referenceDate,
      const Real y,\n                                       bool zeroFixingDays,\n
      \                                      ext::shared_ptr<SwapIndex> swapIdx) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:996,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1000,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1002,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1004,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1007,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1009,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1009,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1010,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1010,1
    - Dst: ext::shared_ptr<SwapIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1012,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1013,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1014,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - fixing
    - tenor
    - referenceDate
    - y
    - zeroFixingDays
    - swapIdx
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 1017
    functionName: QuantLib::MarkovFunctional::swapAnnuityInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - Schedule::date
    - ext::shared_ptr<SwapIndex>::dayCounter
    - calculate
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - Schedule::size
    - ext::shared_ptr::paymentConvention
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swapAnnuityInternal(\n        const Date &fixing,
      const Period &tenor, const Date &referenceDate,\n        const Real y, const
      bool zeroFixingDays,\n        ext::shared_ptr<SwapIndex> swapIdx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1028,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1030,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1032,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1034,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1036,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1038,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1039,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1041,1
    - Dst: QuantLib::MarkovFunctional::swapAnnuityInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1042,1
    - Dst: QuantLib::MarkovFunctional::swapRateInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1044,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1046,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1049,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1058,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1059,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1060,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1060,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1061,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1067,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1068,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1068,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1069,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1070,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1074,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1075,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1075,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1076,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1076,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1078,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1078,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1080,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1081,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1082,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1082,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1087,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 8
    argNames:
    - ' type'
    - ' expiry'
    - ' tenor'
    - strike
    - ' referenceDate'
    - y
    - zeroFixingDays
    - ' swapIdx'
    argTypes:
    - Option::Type
    - Date
    - Period
    - Rate
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1019
    functionDepth: 2
    functionLinenumber: 1019
    functionLinenumberEnd: 1088
    functionName: QuantLib::MarkovFunctional::swaptionPriceInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::swapRateInternal
    - CubicInterpolation::aCoefficients
    - calculate
    - QuantLib::MarkovFunctional::swapAnnuityInternal
    - numeraire
    - Array::begin
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - yGrid
    - std::max
    - Array::size
    - Date
    - CubicInterpolation::bCoefficients
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swaptionPriceInternal(const Option::Type& type,\n
      \                                                const Date& expiry,\n                                                 const
      Period& tenor,\n                                                 const Rate
      strike,\n                                                 const Date& referenceDate,\n
      \                                                const Real y,\n                                                 const
      bool zeroFixingDays,\n                                                 const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1095,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1100,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1102,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1104,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1106,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1108,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1109,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1111,1
    - Dst: ext::shared_ptr<IborIndex>::fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1112,1
    - Dst: ext::shared_ptr<IborIndex>::tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1113,1
    - Dst: ext::shared_ptr<IborIndex>::businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1113,1
    - Dst: ext::shared_ptr<IborIndex>::endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1114,1
    - Dst: ext::shared_ptr<IborIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1116,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1119,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1120,1
    - Dst: QuantLib::MarkovFunctional::forwardRateInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1122,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1123,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1126,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1135,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1136,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1137,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1137,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1138,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1144,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1145,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1145,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1146,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1147,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1151,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1152,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1153,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1153,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1155,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1155,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1157,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1158,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1159,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1159,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1164,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 7
    argNames:
    - type
    - expiry
    - strike
    - referenceDate
    - y
    - zeroFixingDays
    - iborIdx
    argTypes:
    - Option::Type
    - Date
    - Rate
    - Date
    - Real
    - bool
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1090
    functionDepth: 1
    functionLinenumber: 1090
    functionLinenumberEnd: 1165
    functionName: QuantLib::MarkovFunctional::capletPriceInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>::valueDate
    - ext::shared_ptr<IborIndex>::fixingCalendar
    - Date
    - zerobond
    - ext::shared_ptr<IborIndex>::dayCounter
    - Array::begin
    - yGrid
    - QuantLib::MarkovFunctional::forwardRateInternal
    - calculate
    - ext::shared_ptr<IborIndex>::endOfMonth
    - Array::end
    - CubicInterpolation::cCoefficients
    - ext::shared_ptr<IborIndex>::tenor
    - termStructure
    - std::max
    - CubicInterpolation::bCoefficients
    - CubicInterpolation::aCoefficients
    - ext::shared_ptr<IborIndex>::businessDayConvention
    - numeraire
    - Array::size
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::capletPriceInternal(\n        const Option::Type
      &type, const Date &expiry, const Rate strike,\n        const Date &referenceDate,
      const Real y, const bool zeroFixingDays,\n        ext::shared_ptr<IborIndex>
      iborIdx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:43,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:44,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:46,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:57,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:59,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:59,1
    - Dst: QuantLib::MarkovFunctional::validate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:61,1
    - Dst: QuantLib::MarkovFunctional::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 9
    argNames:
    - ' termStructure'
    - reversion
    - volstepdates
    - volatilities
    - ' swaptionVol'
    - ' swaptionExpiries'
    - ' swaptionTenors'
    - ' swapIndexBase'
    - modelSettings
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - std::vector<Date>
    - std::vector<Real>
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Date>
    - std::vector<Period>
    - ext::shared_ptr<SwapIndex>
    - MarkovFunctional::ModelSettings
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 63
    functionName: QuantLib::MarkovFunctional::MarkovFunctional
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - ConstantParameter
    - empty
    - QuantLib::MarkovFunctional::initialize
    - std::move
    - NoConstraint
    - QuantLib::MarkovFunctional::validate
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::MarkovFunctional(const Handle<YieldTermStructure>&
      termStructure,\n                                       const Real reversion,\n
      \                                      std::vector<Date> volstepdates,\n                                       std::vector<Real>
      volatilities,\n                                       const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                       const std::vector<Date>&
      swaptionExpiries,\n                                       const std::vector<Period>&
      swaptionTenors,\n                                       const ext::shared_ptr<SwapIndex>&
      swapIndexBase,\n                                       MarkovFunctional::ModelSettings
      modelSettings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:73,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:74,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:74,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:79,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:83,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:83,1
    - Dst: QuantLib::MarkovFunctional::validate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:84,1
    - Dst: QuantLib::MarkovFunctional::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - ' termStructure'
    - reversion
    - volstepdates
    - volatilities
    - ' capletVol'
    - ' capletExpiries'
    - iborIndex
    - modelSettings
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - std::vector<Date>
    - std::vector<Real>
    - Handle<OptionletVolatilityStructure>
    - std::vector<Date>
    - ext::shared_ptr<IborIndex>
    - MarkovFunctional::ModelSettings
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 86
    functionName: QuantLib::MarkovFunctional::MarkovFunctional
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - empty
    - QuantLib::MarkovFunctional::initialize
    - std::move
    - NoConstraint
    - QuantLib::MarkovFunctional::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::MarkovFunctional(const Handle<YieldTermStructure>&
      termStructure,\n                                       const Real reversion,\n
      \                                      std::vector<Date> volstepdates,\n                                       std::vector<Real>
      volatilities,\n                                       const Handle<OptionletVolatilityStructure>&
      capletVol,\n                                       const std::vector<Date>&
      capletExpiries,\n                                       ext::shared_ptr<IborIndex>
      iborIndex,\n                                       MarkovFunctional::ModelSettings
      modelSettings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:89,1
    - Dst: QuantLib::MarkovFunctional::updateTimes1
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:90,1
    - Dst: QuantLib::MarkovFunctional::updateTimes2
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::MarkovFunctional::updateTimes
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateTimes1
    - QuantLib::MarkovFunctional::updateTimes2
    - QL_MFMESSAGE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:97,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:98,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 110
    functionName: QuantLib::MarkovFunctional::updateTimes1
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 3
    functionsReached:
    - begin
    - termStructure
    - push_back
    - end
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:113,1
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:114,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:115,1
    - Dst: expiries_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:116,1
    - Dst: tenors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:119,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:119,1
    - Dst: expiries_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:120,1
    - Dst: tenors_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::MarkovFunctional::updateTimes2
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 3
    functionsReached:
    - QL_REQUIRE
    - expiries_::clear
    - push_back
    - termStructure
    - expiries_::push_back
    - size
    - tenors_::clear
    - clear
    - tenors_::push_back
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateTimes2() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:134,1
    - Dst: GaussHermiteIntegration::x
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:141,1
    - Dst: GaussHermiteIntegration::weights
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:145,1
    - Dst: Array
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:149,1
    - Dst: QuantLib::MarkovFunctional::updateTimes1
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:151,1
    - Dst: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:155,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:160,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:160,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:161,1
    - Dst: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:162,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:167,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:171,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:171,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:173,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:174,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:175,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:176,1
    - Dst: auto::second::paymentDates_::rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:178,1
    - Dst: auto::second::paymentDates_::rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:179,1
    - Dst: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:182,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:186,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:187,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:188,1
    - Dst: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:191,1
    - Dst: QuantLib::MarkovFunctional::updateTimes2
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:203,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:206,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:207,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:208,1
    - Dst: ext::make_shared<MfStateProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:211,1
    - Dst: reversion_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:212,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:212,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:214,1
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:218,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:220,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:219,1
    - Dst: ext::shared_ptr::enableExtrapolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:223,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:224,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:227,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:227,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:228,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:229,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:230,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:231,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 232
    functionName: QuantLib::MarkovFunctional::initialize
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 4
    functionsReached:
    - PositiveConstraint
    - ext::shared_ptr::enableExtrapolation
    - QuantLib::MarkovFunctional::updateTimes2
    - ext::make_shared<Matrix>
    - registerWith
    - static_cast<Integer>
    - GaussHermiteIntegration::weights
    - CubicInterpolation::CubicInterpolation
    - auto::second::paymentDates_::rbegin
    - rbegin
    - QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
    - PiecewiseConstantParameter
    - empty
    - rend
    - Array
    - begin
    - yGrid
    - QuantLib::MarkovFunctional::makeCapletCalibrationPoint
    - QL_MFMESSAGE
    - size
    - auto::second::paymentDates_::back
    - std::exp
    - QuantLib::Date::minDate
    - setParam
    - ext::make_shared<MfStateProcess>
    - push_back
    - termStructure
    - auto::second::paymentDates_::rend
    - std::max
    - end
    - row_begin
    - reversion_
    - underlyingSwap
    - QuantLib::MarkovFunctional::updateTimes1
    - GaussHermiteIntegration::x
    - params
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:237,1
    - Dst: count
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:237,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:246,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:248,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:249,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:250,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:252,1
    - Dst: CalibrationPoint::yearFractions_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:253,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:254,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:255,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:255,1
    - Dst: CalibrationPoint::paymentDates_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    - Dst: adjust
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - expiry
    - tenor
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 259
    functionName: QuantLib::MarkovFunctional::makeSwaptionCalibrationPoint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - Schedule::date
    - CalibrationPoint::paymentDates_::push_back
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - count
    - Schedule::size
    - CalibrationPoint::yearFractions_::push_back
    - dayCounter
    - ext::shared_ptr::paymentConvention
    - adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarkovFunctional::makeSwaptionCalibrationPoint(const Date &expiry,\n
      \                                                       const Period &tenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:263,1
    - Dst: count
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:264,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:271,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:272,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:273,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:274,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:274,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:275,1
    - Dst: CalibrationPoint::paymentDates_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:277,1
    - Dst: CalibrationPoint::yearFractions_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:278,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 282
    functionName: QuantLib::MarkovFunctional::makeCapletCalibrationPoint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - CalibrationPoint::paymentDates_::push_back
    - tenor
    - endOfMonth
    - dayCounter
    - count
    - valueDate
    - CalibrationPoint::yearFractions_::push_back
    - businessDayConvention
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::makeCapletCalibrationPoint(const Date &expiry)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:286,1
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:289,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:293,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:293,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:299,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:300,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:301,1
    - Dst: smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:304,1
    - Dst: auto::second::paymentDates_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:307,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:310,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:314,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:315,1
    - Dst: auto::second::paymentDates_::back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:316,1
    - Dst: smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:318,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:322,1
    - Dst: AtmSmileSection::AtmSmileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:323,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:327,1
    - Dst: ext::make_shared<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:334,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:347,1
    - Dst: ext::dynamic_pointer_cast<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:348,1
    - Dst: SmileSectionUtils::strikeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:358,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:359,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:361,1
    - Dst: auto::second::rawSmileSection_::volatilityType
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:361,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:365,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:366,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:368,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:370,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:370,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:372,1
    - Dst: auto::second::rawSmileSection_::volatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:372,1
    - Dst: auto::second::rawSmileSection_::volatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:380,1
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:383,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:384,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:385,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:386,1
    - Dst: SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:378,1
    - Dst: "ext::make_shared<\n                        KahaleSmileSection>"
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:391,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:402,1
    - Dst: ext::dynamic_pointer_cast<KahaleSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:403,1
    - Dst: customSmileFactory_::smileSection
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:410,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:412,1
    - Dst: auto::second::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:422,1
    - Dst: auto::second::smileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:424,1
    - Dst: auto::second::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:428,1
    - Dst: auto::second::smileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:430,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 437
    functionName: QuantLib::MarkovFunctional::updateSmiles
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - AtmSmileSection::AtmSmileSection
    - Actual365Fixed
    - rbegin
    - clear
    - std::vector::push_back
    - auto::second::smileSection_::shift
    - rend
    - SmileSectionUtils::strikeGrid
    - QL_MFMESSAGE
    - size
    - std::vector::erase
    - auto::second::paymentDates_::back
    - auto::second::paymentDates_::size
    - Null<Size>
    - auto::second::rawSmileSection_::shift
    - ext::shared_ptr<OptimizationMethod>
    - termStructure
    - push_back
    - emplace_back
    - "ext::make_shared<\n                        KahaleSmileSection>"
    - ext::shared_ptr<SmileSection>
    - std::vector::size
    - SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    - QL_REQUIRE
    - auto::second::smileSection_::digitalOptionPrice
    - smileSection
    - ext::make_shared<KahaleSmileSection>
    - ext::dynamic_pointer_cast<KahaleSmileSection>
    - std::vector::begin
    - auto::second::rawSmileSection_::volatilityType
    - auto::second::rawSmileSection_::volatility
    - customSmileFactory_::smileSection
    - ext::shared_ptr<EndCriteria>
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateSmiles() const
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:441,1
    - Dst: adjustmentFactors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:444,1
    - Dst: digitalsAdjustmentFactors_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:445,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:447,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:449,1
    - Dst: rend
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:449,1
    - Dst: ext::dynamic_pointer_cast<CustomSmileSection>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:453,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:455,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:459,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:462,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:464,1
    - Dst: auto::second::paymentDates_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:466,1
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:468,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:468,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:476,1
    - Dst: CubicInterpolation::enableExtrapolation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:479,1
    - Dst: digitalsAdjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:482,1
    - Dst: digitalsAdjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:483,1
    - Dst: digitalsAdjustmentFactors_::front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:495,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:502,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:506,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:511,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:517,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:519,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:521,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:522,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:529,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:530,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:531,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:532,1
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:538,1
    - Dst: ext::shared_ptr::inverseDigitalCall
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:550,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:554,1
    - Dst: QuantLib::MarkovFunctional::marketSwapRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:560,1
    - Dst: auto::second::rawSmileSection_::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:562,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:564,1
    - Dst: QL_MFMESSAGE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:566,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:579,1
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:586,1
    - Dst: QuantLib::MarkovFunctional::deflatedZerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:587,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:589,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:590,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:591,1
    - Dst: adjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:595,1
    - Dst: adjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:596,1
    - Dst: adjustmentFactors_::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:599,1
    - Dst: adjustmentFactors_::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:600,1
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:603,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 439
    functionDepth: 3
    functionLinenumber: 439
    functionLinenumberEnd: 605
    functionName: QuantLib::MarkovFunctional::updateNumeraireTabulation
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - digitalsAdjustmentFactors_::begin
    - CubicInterpolation::enableExtrapolation
    - rbegin
    - adjustmentFactors_::begin
    - rend
    - Array::begin
    - ext::dynamic_pointer_cast<CustomSmileSection>
    - begin
    - digitalsAdjustmentFactors_::insert
    - adjustmentFactors_::clear
    - digitalsAdjustmentFactors_::clear
    - QL_MFMESSAGE
    - size
    - adjustmentFactors_::insert
    - auto::second::paymentDates_::size
    - ext::shared_ptr::inverseDigitalCall
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    - auto::second::rawSmileSection_::shift
    - CubicInterpolation::cCoefficients
    - QuantLib::MarkovFunctional::deflatedZerobond
    - termStructure
    - std::max
    - CubicInterpolation::bCoefficients
    - end
    - QL_REQUIRE
    - CubicInterpolation::aCoefficients
    - QuantLib::MarkovFunctional::marketSwapRate
    - QuantLib::MarkovFunctional::update
    - digitalsAdjustmentFactors_::front
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: void
    signature: void MarkovFunctional::updateNumeraireTabulation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:612,1
    - Dst: marketZerorate_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:615,1
    - Dst: modelZerorate_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:616,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:617,1
    - Dst: marketZerorate_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:618,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:619,1
    - Dst: modelZerorate_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:624,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:625,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:625,1
    - Dst: smileStrikes_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:629,1
    - Dst: marketCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:630,1
    - Dst: marketPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:631,1
    - Dst: modelCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:632,1
    - Dst: modelPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:633,1
    - Dst: marketVega_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:634,1
    - Dst: marketRawCallPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:635,1
    - Dst: marketRawPutPremium_::clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:636,1
    - Dst: atm_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:639,1
    - Dst: annuity_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:640,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:645,1
    - Dst: SmileSectionUtils::moneyGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:646,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:649,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:650,1
    - Dst: ext::shared_ptr::volatilityType
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:650,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:651,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:655,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:655,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:657,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:657,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:663,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:664,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:666,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:666,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:668,1
    - Dst: ext::shared_ptr::optionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:668,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:670,1
    - Dst: capletPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:672,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:673,1
    - Dst: swaptionPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:674,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:676,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:677,1
    - Dst: capletPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:679,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:680,1
    - Dst: swaptionPriceInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:681,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:683,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:684,1
    - Dst: ext::shared_ptr::vega
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:684,1
    - Dst: smileStrikes_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:686,1
    - Dst: marketCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:687,1
    - Dst: marketPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:688,1
    - Dst: modelCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:689,1
    - Dst: modelPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:690,1
    - Dst: marketVega_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:691,1
    - Dst: marketRawCallPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:692,1
    - Dst: marketRawPutPremium_::push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:693,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 700
    functionName: "&\n    MarkovFunctional::modelOutputs() const"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - capletPriceInternal
    - ext::shared_ptr::shift
    - modelPutPremium_::clear
    - smileStrikes_::push_back
    - marketRawCallPremium_::push_back
    - modelCallPremium_::push_back
    - Real
    - Date
    - zerobond
    - marketVega_::push_back
    - marketRawPutPremium_::push_back
    - modelZerorate_::clear
    - marketRawCallPremium_::clear
    - std::vector::push_back
    - marketRawPutPremium_::clear
    - atm_::push_back
    - annuity_::push_back
    - swaptionPriceInternal
    - marketPutPremium_::clear
    - marketCallPremium_::push_back
    - modelZerorate_::push_back
    - marketPutPremium_::push_back
    - size
    - ext::shared_ptr::vega
    - ext::shared_ptr::volatilityType
    - calculate
    - smileStrikes_::clear
    - marketZerorate_::clear
    - termStructure
    - push_back
    - marketCallPremium_::clear
    - modelPutPremium_::push_back
    - std::log
    - marketVega_::clear
    - modelCallPremium_::clear
    - SmileSectionUtils::moneyGrid
    - marketZerorate_::push_back
    - ext::shared_ptr::optionPrice
    linkageType: ''
    returnType: MarkovFunctional::ModelOutputs
    signature: "MarkovFunctional::ModelOutputs &\n    MarkovFunctional::modelOutputs()
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:704,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:705,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:705,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:710,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:711,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:713,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:713,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:714,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:715,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:716,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:717,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:723,1
    - Dst: front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:725,1
    - Dst: front
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:726,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:729,1
    - Dst: back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:730,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 739
    functionName: QuantLib::MarkovFunctional::numeraireArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 3
    functionsReached:
    - calculate
    - std::min<Size>
    - begin
    - termStructure
    - end
    - size
    - front
    - back
    - std::upper_bound
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::numeraireArray(const Time t, const Array& y)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:743,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - T
    - t
    - ' y'
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 741
    functionDepth: 2
    functionLinenumber: 741
    functionLinenumberEnd: 744
    functionName: QuantLib::MarkovFunctional::zerobondArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    - QuantLib::MarkovFunctional::numeraireArray
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::zerobondArray(const Time T, const Time t, const
      Array& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:748,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:750,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:754,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:756,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:757,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:759,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:765,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - T
    - t
    - ' y'
    argTypes:
    - Time
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 746
    functionDepth: 1
    functionLinenumber: 746
    functionLinenumberEnd: 772
    functionName: QuantLib::MarkovFunctional::deflatedZerobondArray
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 5
    functionsReached:
    - size
    - stdDeviation
    - calculate
    - QuantLib::MarkovFunctional::numeraireArray
    linkageType: ''
    returnType: Array
    signature: Array MarkovFunctional::deflatedZerobondArray(const Time T, const Time
      t, const Array& y) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:779,1
    - Dst: QuantLib::MarkovFunctional::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:780,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:780,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:781,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:781,1
    - Dst: QuantLib::MarkovFunctional::numeraireArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:784,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:785,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:785,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:786,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:786,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:787,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:787,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:788,1
    - Dst: numeraireTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:788,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 789
    functionName: QuantLib::MarkovFunctional::numeraireImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::termStructure
    - numeraireTime
    - Handle<YieldTermStructure>::discount
    - Real
    - QuantLib::MarkovFunctional::numeraireArray
    - termStructure
    - Handle<YieldTermStructure>::empty
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::numeraireImpl(\n        const Time t, const
      Real y,\n        const Handle<YieldTermStructure> &yts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:796,1
    - Dst: QuantLib::MarkovFunctional::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:796,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:797,1
    - Dst: QuantLib::MarkovFunctional::zerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:799,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:800,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:801,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:802,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 791
    functionDepth: 2
    functionLinenumber: 791
    functionLinenumberEnd: 803
    functionName: QuantLib::MarkovFunctional::zerobondImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::termStructure
    - Handle<YieldTermStructure>::discount
    - Real
    - termStructure
    - QuantLib::MarkovFunctional::zerobondArray
    - Handle<YieldTermStructure>::empty
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::zerobondImpl(const Time T, const Time t, const
      Real y,\n                                   const Handle<YieldTermStructure>
      &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::deflatedZerobondArray
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - T
    - t
    - y
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 805
    functionDepth: 2
    functionLinenumber: 805
    functionLinenumberEnd: 810
    functionName: QuantLib::MarkovFunctional::deflatedZerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarkovFunctional::deflatedZerobondArray
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::deflatedZerobond(Time T, Time t,\n                                            Real
      y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:820,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:822,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - expiry
    - p
    - digitalPrice
    - guess
    - shift
    argTypes:
    - Date
    - CalibrationPoint
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 826
    functionName: QuantLib::MarkovFunctional::marketSwapRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - Brent::solve
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::marketSwapRate(const Date &expiry,\n                                          const
      CalibrationPoint &p,\n                                          const Real digitalPrice,\n
      \                                         const Real guess,\n                                          const
      Real shift) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CalibrationPoint::smileSection_::digitalOptionPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - expiry
    - p
    - type
    - strike
    argTypes:
    - Date
    - CalibrationPoint
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 835
    functionName: QuantLib::MarkovFunctional::marketDigitalPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - CalibrationPoint::smileSection_::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::marketDigitalPrice(const Date &expiry,\n                                              const
      CalibrationPoint &p,\n                                              const Option::Type
      &type,\n                                              const Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:887,1
    - Dst: MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:889,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:893,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:895,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:901,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:905,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:916,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:919,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:923,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:926,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:927,1
    - Dst: MarkovFunctional::ModelOutputs::expiries_::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:935,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 2
    argNames:
    - out
    - m
    argTypes:
    - std::ostream
    - MarkovFunctional::ModelOutputs
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 940
    functionName: "&operator<<(std::ostream &out,\n                             const
      MarkovFunctional::ModelOutputs &m)"
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - MarkovFunctional::ModelOutputs::expiries_::size
    - std::setprecision
    - MarkovFunctional::ModelOutputs::expiries_::empty
    - MarkovFunctional::ModelOutputs::settings_::smileMoneynessCheckpoints_::size
    - std::ostringstream::str
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream &operator<<(std::ostream &out,\n                             const
      MarkovFunctional::ModelOutputs &m)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:946,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:951,1
    - Dst: ext::shared_ptr<IborIndex>::fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:952,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:953,1
    - Dst: ext::shared_ptr<IborIndex>::tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:953,1
    - Dst: ext::shared_ptr<IborIndex>::businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:954,1
    - Dst: ext::shared_ptr<IborIndex>::endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:955,1
    - Dst: ext::shared_ptr<IborIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:957,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:959,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:960,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - fixing
    - referenceDate
    - y
    - zeroFixingDays
    - iborIdx
    argTypes:
    - Date
    - Date
    - Real
    - bool
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 962
    functionName: QuantLib::MarkovFunctional::forwardRateInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<IborIndex>::valueDate
    - ext::shared_ptr<IborIndex>::businessDayConvention
    - calculate
    - ext::shared_ptr<IborIndex>::fixingCalendar
    - ext::shared_ptr<IborIndex>::endOfMonth
    - ext::shared_ptr<IborIndex>::dayCounter
    - ext::shared_ptr<IborIndex>::tenor
    - zerobond
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::forwardRateInternal(\n        const Date &fixing,
      const Date &referenceDate, const Real y,\n        const bool zeroFixingDays,
      ext::shared_ptr<IborIndex> iborIdx) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:970,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:974,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:976,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:978,1
    - Dst: QuantLib::MarkovFunctional::swapAnnuityInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:979,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:982,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:982,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:984,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:985,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - fixing
    - tenor
    - referenceDate
    - y
    - zeroFixingDays
    - swapIdx
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 964
    functionDepth: 2
    functionLinenumber: 964
    functionLinenumberEnd: 989
    functionName: QuantLib::MarkovFunctional::swapRateInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::MarkovFunctional::swapAnnuityInternal
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - Schedule::dates
    - ext::shared_ptr::paymentConvention
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swapRateInternal(const Date &fixing, const
      Period &tenor,\n                                       const Date &referenceDate,
      const Real y,\n                                       bool zeroFixingDays,\n
      \                                      ext::shared_ptr<SwapIndex> swapIdx) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:996,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1000,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1002,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1004,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1007,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1009,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1009,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1010,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1010,1
    - Dst: ext::shared_ptr<SwapIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1012,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1013,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1014,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - fixing
    - tenor
    - referenceDate
    - y
    - zeroFixingDays
    - swapIdx
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 1017
    functionName: QuantLib::MarkovFunctional::swapAnnuityInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 3
    functionsReached:
    - Schedule::date
    - ext::shared_ptr<SwapIndex>::dayCounter
    - calculate
    - Schedule::calendar
    - ext::shared_ptr::fixedSchedule
    - underlyingSwap
    - Schedule::size
    - ext::shared_ptr::paymentConvention
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swapAnnuityInternal(\n        const Date &fixing,
      const Period &tenor, const Date &referenceDate,\n        const Real y, const
      bool zeroFixingDays,\n        ext::shared_ptr<SwapIndex> swapIdx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1028,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1030,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1032,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1034,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1036,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1038,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1039,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1041,1
    - Dst: QuantLib::MarkovFunctional::swapAnnuityInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1042,1
    - Dst: QuantLib::MarkovFunctional::swapRateInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1044,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1046,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1049,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1052,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1058,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1059,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1060,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1060,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1061,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1067,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1068,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1068,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1069,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1070,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1074,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1075,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1075,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1076,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1076,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1077,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1078,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1078,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1080,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1081,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1082,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1082,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1087,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 8
    argNames:
    - ' type'
    - ' expiry'
    - ' tenor'
    - strike
    - ' referenceDate'
    - y
    - zeroFixingDays
    - ' swapIdx'
    argTypes:
    - Option::Type
    - Date
    - Period
    - Rate
    - Date
    - Real
    - bool
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1019
    functionDepth: 2
    functionLinenumber: 1019
    functionLinenumberEnd: 1088
    functionName: QuantLib::MarkovFunctional::swaptionPriceInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::swapRateInternal
    - CubicInterpolation::aCoefficients
    - calculate
    - QuantLib::MarkovFunctional::swapAnnuityInternal
    - numeraire
    - Array::begin
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - yGrid
    - std::max
    - Array::size
    - Date
    - CubicInterpolation::bCoefficients
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::swaptionPriceInternal(const Option::Type& type,\n
      \                                                const Date& expiry,\n                                                 const
      Period& tenor,\n                                                 const Rate
      strike,\n                                                 const Date& referenceDate,\n
      \                                                const Real y,\n                                                 const
      bool zeroFixingDays,\n                                                 const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1095,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1100,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1102,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1104,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1106,1
    - Dst: yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1108,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1109,1
    - Dst: ext::shared_ptr<IborIndex>::valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1111,1
    - Dst: ext::shared_ptr<IborIndex>::fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1112,1
    - Dst: ext::shared_ptr<IborIndex>::tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1113,1
    - Dst: ext::shared_ptr<IborIndex>::businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1113,1
    - Dst: ext::shared_ptr<IborIndex>::endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1114,1
    - Dst: ext::shared_ptr<IborIndex>::dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1116,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1119,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1120,1
    - Dst: QuantLib::MarkovFunctional::forwardRateInternal
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1122,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1123,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1126,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1129,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1135,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1136,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1137,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1137,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1138,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1144,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1145,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1145,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1146,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1147,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1151,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1152,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1153,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1153,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1155,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1155,1
    - Dst: gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1157,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1158,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1159,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1159,1
    - Dst: numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp:1164,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 7
    argNames:
    - type
    - expiry
    - strike
    - referenceDate
    - y
    - zeroFixingDays
    - iborIdx
    argTypes:
    - Option::Type
    - Date
    - Rate
    - Date
    - Real
    - bool
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1090
    functionDepth: 1
    functionLinenumber: 1090
    functionLinenumberEnd: 1165
    functionName: QuantLib::MarkovFunctional::capletPriceInternal
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>::valueDate
    - ext::shared_ptr<IborIndex>::fixingCalendar
    - Date
    - zerobond
    - ext::shared_ptr<IborIndex>::dayCounter
    - Array::begin
    - yGrid
    - QuantLib::MarkovFunctional::forwardRateInternal
    - calculate
    - ext::shared_ptr<IborIndex>::endOfMonth
    - Array::end
    - CubicInterpolation::cCoefficients
    - ext::shared_ptr<IborIndex>::tenor
    - termStructure
    - std::max
    - CubicInterpolation::bCoefficients
    - CubicInterpolation::aCoefficients
    - ext::shared_ptr<IborIndex>::businessDayConvention
    - numeraire
    - Array::size
    - gaussianShiftedPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real MarkovFunctional::capletPriceInternal(\n        const Option::Type
      &type, const Date &expiry, const Rate strike,\n        const Date &referenceDate,
      const Real y, const bool zeroFixingDays,\n        ext::shared_ptr<IborIndex>
      iborIdx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::HullWhite::FixedReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedReversion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:114,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:114,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - a
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::HullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::HullWhite::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::HullWhite::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - termStructure
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: QuantLib::HullWhite::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:141,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:142,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:143,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::HullWhite::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:155,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::HullWhite::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:164,1
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::HullWhite::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - sigma
    - a
    - ext::shared_ptr<ShortRateDynamics>
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> HullWhite::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::HullWhite::FixedReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedReversion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:114,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:114,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - a
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::HullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::HullWhite::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::HullWhite::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - termStructure
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: QuantLib::HullWhite::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:141,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:142,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:143,1
    - Dst: Real
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::HullWhite::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:155,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::HullWhite::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:164,1
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: QuantLib::HullWhite::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - sigma
    - a
    - ext::shared_ptr<ShortRateDynamics>
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> HullWhite::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:161,1
    - Dst: CachedSwapKey::index::name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - CachedSwapKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: operator==(const CachedSwapKey &o) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - CachedSwapKey::index::name
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const CachedSwapKey &o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:169,1
    - Dst: CachedSwapKey::index::name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:169,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:170,1
    - Dst: CachedSwapKey::fixing::serialNumber
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:170,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:171,1
    - Dst: CachedSwapKey::tenor::length
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:171,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:172,1
    - Dst: CachedSwapKey::tenor::units
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - CachedSwapKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: operator()(CachedSwapKey const &x) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - CachedSwapKey::tenor::units
    - CachedSwapKey::index::name
    - CachedSwapKey::tenor::length
    - QuantLib::local_hash_combine
    - CachedSwapKey::fixing::serialNumber
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(CachedSwapKey const &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:183,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - yieldTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::Gaussian1dModel::Gaussian1dModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Gaussian1dModel(const Handle<YieldTermStructure> &yieldTermStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:192,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 195
    functionName: QuantLib::Gaussian1dModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:198,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::Gaussian1dModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - calculate
    linkageType: ''
    returnType: void
    signature: void generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:209,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:210,1
    - Dst: ext::shared_ptr<SwapIndex>::clone
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:212,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:213,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - index
    - expiry
    - tenor
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 217
    functionName: QuantLib::Gaussian1dModel::underlyingSwap
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - ext::shared_ptr<SwapIndex>::clone
    - end
    - insert
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: "ext::shared_ptr<VanillaSwap> underlyingSwap(const ext::shared_ptr<SwapIndex>
      &index,\n                   const Date &expiry, const Period &tenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: QuantLib::Gaussian1dModel::stateProcess
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> Gaussian1dModel::stateProcess()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numeraireImpl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 235
    functionName: QuantLib::Gaussian1dModel::numeraire
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - numeraireImpl
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::numeraire(const Time t, const Real y,\n                           const
      Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zerobondImpl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: QuantLib::Gaussian1dModel::zerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - zerobondImpl
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobond(const Time T, const Time t, const Real
      y,\n                          const Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:247,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - referenceDate
    - y
    - yts
    argTypes:
    - Date
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionName: QuantLib::Gaussian1dModel::numeraire
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Gaussian1dModel::numeraire
    - termStructure
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::numeraire(const Date &referenceDate, const Real
      y,\n                           const Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:254,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:254,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:255,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - maturity
    - referenceDate
    - y
    - yts
    argTypes:
    - Date
    - Date
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 259
    functionName: QuantLib::Gaussian1dModel::zerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 1
    functionsReached:
    - termStructure
    - Date
    - QuantLib::Gaussian1dModel::zerobond
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobond(const Date &maturity, const Date &referenceDate,\n
      \                         const Real y, const Handle<YieldTermStructure> &yts)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:161,1
    - Dst: CachedSwapKey::index::name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - CachedSwapKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: operator==(const CachedSwapKey &o) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - CachedSwapKey::index::name
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const CachedSwapKey &o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:169,1
    - Dst: CachedSwapKey::index::name
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:169,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:170,1
    - Dst: CachedSwapKey::fixing::serialNumber
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:170,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:171,1
    - Dst: CachedSwapKey::tenor::length
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:171,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:172,1
    - Dst: CachedSwapKey::tenor::units
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - CachedSwapKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: operator()(CachedSwapKey const &x) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - CachedSwapKey::tenor::units
    - CachedSwapKey::index::name
    - CachedSwapKey::tenor::length
    - QuantLib::local_hash_combine
    - CachedSwapKey::fixing::serialNumber
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(CachedSwapKey const &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:183,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - yieldTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::Gaussian1dModel::Gaussian1dModel
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void Gaussian1dModel(const Handle<YieldTermStructure> &yieldTermStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:192,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 195
    functionName: QuantLib::Gaussian1dModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:198,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::Gaussian1dModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - calculate
    linkageType: ''
    returnType: void
    signature: void generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:209,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:210,1
    - Dst: ext::shared_ptr<SwapIndex>::clone
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:212,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:213,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - index
    - expiry
    - tenor
    argTypes:
    - ext::shared_ptr<SwapIndex>
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 217
    functionName: QuantLib::Gaussian1dModel::underlyingSwap
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - ext::shared_ptr<SwapIndex>::clone
    - end
    - insert
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: "ext::shared_ptr<VanillaSwap> underlyingSwap(const ext::shared_ptr<SwapIndex>
      &index,\n                   const Date &expiry, const Period &tenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: QuantLib::Gaussian1dModel::stateProcess
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: ext::shared_ptr<StochasticProcess1D> Gaussian1dModel::stateProcess()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numeraireImpl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 235
    functionName: QuantLib::Gaussian1dModel::numeraire
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 1
    functionsReached:
    - numeraireImpl
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::numeraire(const Time t, const Real y,\n                           const
      Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zerobondImpl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: QuantLib::Gaussian1dModel::zerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 1
    functionsReached:
    - zerobondImpl
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobond(const Time T, const Time t, const Real
      y,\n                          const Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:247,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - referenceDate
    - y
    - yts
    argTypes:
    - Date
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionName: QuantLib::Gaussian1dModel::numeraire
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Gaussian1dModel::numeraire
    - termStructure
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::numeraire(const Date &referenceDate, const Real
      y,\n                           const Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:254,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:254,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:255,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - maturity
    - referenceDate
    - y
    - yts
    argTypes:
    - Date
    - Date
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 259
    functionName: QuantLib::Gaussian1dModel::zerobond
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp
    functionUses: 2
    functionsReached:
    - termStructure
    - Date
    - QuantLib::Gaussian1dModel::zerobond
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobond(const Date &maturity, const Date &referenceDate,\n
      \                         const Real y, const Handle<YieldTermStructure> &yts)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:34,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:37,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:38,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:39,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:40,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:40,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - ' volatilities'
    - reversion
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Real>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - resize
    - std::move
    - QuantLib::Gsr::initialize
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             const std::vector<Real>& volatilities,\n             const
      Real reversion,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:56,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:57,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:57,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:59,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:60,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - ' volatilities'
    - ' reversions'
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 63
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - resize
    - std::move
    - QuantLib::Gsr::initialize
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             const std::vector<Real>& volatilities,\n             const
      std::vector<Real>& reversions,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:71,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:75,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:75,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - volatilities
    - ' reversion'
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 77
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - QuantLib::Gsr::initialize
    - std::vector<Handle<Quote> >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             std::vector<Handle<Quote> > volatilities,\n             const
      Handle<Quote>& reversion,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:88,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - volatilities
    - reversions
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - std::vector<Handle<Quote> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 90
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::Gsr::initialize
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             std::vector<Handle<Quote> > volatilities,\n             std::vector<Handle<Quote>
      > reversions,\n             const Real T)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:94,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - ext::static_pointer_cast<GsrProcess>
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void Gsr::update()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:102,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:108,1
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 115
    functionName: QuantLib::Gsr::updateTimes
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - begin
    - termStructure
    - push_back
    - ext::static_pointer_cast<GsrProcess>
    - end
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gsr::updateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:118,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:119,1
    - Dst: QuantLib::Gsr::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: QuantLib::Gsr::updateVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - size
    - setParam
    - QuantLib::Gsr::update
    - value
    linkageType: ''
    returnType: void
    signature: void Gsr::updateVolatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:125,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:126,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:126,1
    - Dst: QuantLib::Gsr::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::Gsr::updateReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - size
    - setParam
    - QuantLib::Gsr::update
    - value
    linkageType: ''
    returnType: void
    signature: void Gsr::updateReversion()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:133,1
    - Dst: QuantLib::Gsr::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:147,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:150,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:150,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:151,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:152,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:152,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:158,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:159,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:160,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:160,1
    - Dst: ext::make_shared<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:163,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:164,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:164,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:166,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:168,1
    - Dst: ext::make_shared<VolatilityObserver>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:170,1
    - Dst: ext::make_shared<ReversionObserver>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:171,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:174,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - T
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 178
    functionName: QuantLib::Gsr::initialize
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 4
    functionsReached:
    - ConstantParameter
    - ext::make_shared<ReversionObserver>
    - PiecewiseConstantParameter
    - value
    - setParam
    - Array
    - NoConstraint
    - termStructure
    - ext::make_shared<VolatilityObserver>
    - registerWith
    - ext::make_shared<GsrProcess>
    - size
    - QuantLib::Gsr::updateTimes
    - params
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gsr::initialize(Real T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:183,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:186,1
    - Dst: QuantLib::Gsr::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:186,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:187,1
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:190,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:192,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:193,1
    - Dst: ext::shared_ptr::G
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:194,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:196,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:197,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:198,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:199,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:199,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:201,1
    - Dst: ext::shared_ptr::y
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 202
    functionName: QuantLib::Gsr::zerobondImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - Handle<YieldTermStructure>::discount
    - termStructure
    - expectation
    - ext::shared_ptr::y
    - stdDeviation
    - Handle<YieldTermStructure>::empty
    - ext::dynamic_pointer_cast<GsrProcess>
    - QuantLib::Gsr::termStructure
    - ext::shared_ptr::G
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real Gsr::zerobondImpl(const Time T, const Time t, const Real y,\n
      \                      const Handle<YieldTermStructure> &yts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:207,1
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:210,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:213,1
    - Dst: QuantLib::Gsr::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:214,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:214,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:216,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:216,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:217,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 218
    functionName: QuantLib::Gsr::numeraireImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - Handle<YieldTermStructure>::discount
    - Handle<YieldTermStructure>::empty
    - zerobond
    - ext::dynamic_pointer_cast<GsrProcess>
    - ext::shared_ptr::getForwardMeasureTime
    - QuantLib::Gsr::termStructure
    linkageType: ''
    returnType: Real
    signature: "Real Gsr::numeraireImpl(const Time t, const Real y,\n                        const
      Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:34,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:37,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:38,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:39,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:40,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:40,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - ' volatilities'
    - reversion
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Real>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 3
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - resize
    - std::move
    - QuantLib::Gsr::initialize
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             const std::vector<Real>& volatilities,\n             const
      Real reversion,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:56,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:57,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:57,1
    - Dst: resize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:59,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:60,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:60,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - ' volatilities'
    - ' reversions'
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 45
    functionDepth: 3
    functionLinenumber: 45
    functionLinenumberEnd: 63
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - resize
    - std::move
    - QuantLib::Gsr::initialize
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             const std::vector<Real>& volatilities,\n             const
      std::vector<Real>& reversions,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:71,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:72,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:75,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:75,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - volatilities
    - ' reversion'
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 77
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - QuantLib::Gsr::initialize
    - std::vector<Handle<Quote> >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             std::vector<Handle<Quote> > volatilities,\n             const
      Handle<Quote>& reversion,\n             const Real T)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:88,1
    - Dst: QuantLib::Gsr::initialize
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' termStructure'
    - volstepdates
    - volatilities
    - reversions
    - T
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - std::vector<Handle<Quote> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 79
    functionDepth: 3
    functionLinenumber: 79
    functionLinenumberEnd: 90
    functionName: QuantLib::Gsr::Gsr
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::Gsr::initialize
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Gsr::Gsr(const Handle<YieldTermStructure>& termStructure,\n             std::vector<Date>
      volstepdates,\n             std::vector<Handle<Quote> > volatilities,\n             std::vector<Handle<Quote>
      > reversions,\n             const Real T)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:94,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 2
    functionsReached:
    - ext::static_pointer_cast<GsrProcess>
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void Gsr::update()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:102,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:108,1
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 115
    functionName: QuantLib::Gsr::updateTimes
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 1
    functionsReached:
    - begin
    - termStructure
    - push_back
    - ext::static_pointer_cast<GsrProcess>
    - end
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gsr::updateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:118,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:119,1
    - Dst: QuantLib::Gsr::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: QuantLib::Gsr::updateVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - size
    - setParam
    - QuantLib::Gsr::update
    - value
    linkageType: ''
    returnType: void
    signature: void Gsr::updateVolatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:125,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:126,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:126,1
    - Dst: QuantLib::Gsr::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::Gsr::updateReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - size
    - setParam
    - QuantLib::Gsr::update
    - value
    linkageType: ''
    returnType: void
    signature: void Gsr::updateReversion()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:133,1
    - Dst: QuantLib::Gsr::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:147,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:148,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:150,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:150,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:151,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:152,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:152,1
    - Dst: PiecewiseConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:158,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:159,1
    - Dst: setParam
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:160,1
    - Dst: value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:160,1
    - Dst: ext::make_shared<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:163,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:164,1
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:164,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:166,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:168,1
    - Dst: ext::make_shared<VolatilityObserver>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:170,1
    - Dst: ext::make_shared<ReversionObserver>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:171,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:174,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - T
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 178
    functionName: QuantLib::Gsr::initialize
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 8
    functionsReached:
    - ConstantParameter
    - ext::make_shared<ReversionObserver>
    - PiecewiseConstantParameter
    - value
    - setParam
    - Array
    - NoConstraint
    - termStructure
    - ext::make_shared<VolatilityObserver>
    - registerWith
    - ext::make_shared<GsrProcess>
    - size
    - QuantLib::Gsr::updateTimes
    - params
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gsr::initialize(Real T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:183,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:186,1
    - Dst: QuantLib::Gsr::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:186,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:187,1
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:190,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:192,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:193,1
    - Dst: ext::shared_ptr::G
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:194,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:196,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:197,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:198,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:199,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:199,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:201,1
    - Dst: ext::shared_ptr::y
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - T
    - t
    - y
    - yts
    argTypes:
    - Time
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 202
    functionName: QuantLib::Gsr::zerobondImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - Handle<YieldTermStructure>::discount
    - termStructure
    - expectation
    - ext::shared_ptr::y
    - stdDeviation
    - Handle<YieldTermStructure>::empty
    - ext::dynamic_pointer_cast<GsrProcess>
    - QuantLib::Gsr::termStructure
    - ext::shared_ptr::G
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real Gsr::zerobondImpl(const Time T, const Time t, const Real y,\n
      \                      const Handle<YieldTermStructure> &yts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:207,1
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:210,1
    - Dst: Handle<YieldTermStructure>::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:213,1
    - Dst: QuantLib::Gsr::termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:214,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:214,1
    - Dst: Handle<YieldTermStructure>::discount
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:216,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:216,1
    - Dst: zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:217,1
    - Dst: ext::shared_ptr::getForwardMeasureTime
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - t
    - y
    - yts
    argTypes:
    - Time
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 218
    functionName: QuantLib::Gsr::numeraireImpl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - Handle<YieldTermStructure>::discount
    - Handle<YieldTermStructure>::empty
    - zerobond
    - ext::dynamic_pointer_cast<GsrProcess>
    - ext::shared_ptr::getForwardMeasureTime
    - QuantLib::Gsr::termStructure
    linkageType: ''
    returnType: Real
    signature: "Real Gsr::numeraireImpl(const Time t, const Real y,\n                        const
      Handle<YieldTermStructure> &yts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::CoxIngersollRoss::theta
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - theta_
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: k_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::CoxIngersollRoss::k
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - k_
    linkageType: ''
    returnType: Real
    signature: Real k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CoxIngersollRoss::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: r0_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::CoxIngersollRoss::x0
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - r0_
    linkageType: ''
    returnType: Real
    signature: Real x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:93,1
    - Dst: CoxIngersollRossProcess::CoxIngersollRossProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::CoxIngersollRoss::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - CoxIngersollRossProcess::CoxIngersollRossProcess
    - ext::shared_ptr<StochasticProcess1D>
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Real theta,\n                 Real k,\n                 Real
      sigma,\n                 Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::CoxIngersollRoss::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real variable(Time, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::CoxIngersollRoss::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::CoxIngersollRoss::theta
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - theta_
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: k_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::CoxIngersollRoss::k
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - k_
    linkageType: ''
    returnType: Real
    signature: Real k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CoxIngersollRoss::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: r0_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::CoxIngersollRoss::x0
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - r0_
    linkageType: ''
    returnType: Real
    signature: Real x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:93,1
    - Dst: CoxIngersollRossProcess::CoxIngersollRossProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::CoxIngersollRoss::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached:
    - CoxIngersollRossProcess::CoxIngersollRossProcess
    - ext::shared_ptr<StochasticProcess1D>
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Real theta,\n                 Real k,\n                 Real
      sigma,\n                 Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::CoxIngersollRoss::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real variable(Time, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::CoxIngersollRoss::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Vasicek::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: b_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Vasicek::b
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - b_
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lambda_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Vasicek::lambda
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - lambda_
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Vasicek::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Vasicek::r0
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real r0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:84,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - a
    - b
    - sigma
    - r0
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::Vasicek::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Real a,\n                 Real b,\n                 Real
      sigma,\n                 Real r0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Vasicek::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real variable(Time, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::Vasicek::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:100,1
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: QuantLib::Vasicek::b
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: QuantLib::Vasicek::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - QuantLib::Vasicek::b
    - QuantLib::Vasicek::sigma
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> Vasicek::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Vasicek::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 1
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: b_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Vasicek::b
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 1
    functionsReached:
    - b_
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lambda_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Vasicek::lambda
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - lambda_
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Vasicek::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 1
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Vasicek::r0
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real r0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:84,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - a
    - b
    - sigma
    - r0
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::Vasicek::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Real a,\n                 Real b,\n                 Real
      sigma,\n                 Real r0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Vasicek::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real variable(Time, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::Vasicek::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:100,1
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: QuantLib::Vasicek::b
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: QuantLib::Vasicek::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - QuantLib::Vasicek::b
    - QuantLib::Vasicek::sigma
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> Vasicek::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:32,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:33,1
    - Dst: statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - i
    - xMin
    - dx
    - discountBondPrice
    - ' tree'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - ext::shared_ptr<ShortRateTree>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::BlackKarasinski::Helper::Helper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - size
    - timeGrid
    - statePrices
    linkageType: ''
    returnType: void
    signature: "void Helper(Size i, Real xMin, Real dx,\n               Real discountBondPrice,\n
      \              const ext::shared_ptr<ShortRateTree>& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: operator()(Real theta) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:62,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:62,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:63,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:63,1
    - Dst: TermStructureFittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackKarasinski::BlackKarasinski
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - registerWith
    - PositiveConstraint
    - TermStructureFittingParameter
    linkageType: ''
    returnType: void
    signature: "void BlackKarasinski::BlackKarasinski(\n                              const
      Handle<YieldTermStructure>& termStructure,\n                              Real
      a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackKarasinski::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: QuantLib::BlackKarasinski::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:75,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:75,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:81,1
    - Dst: implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:81,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:86,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:87,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:88,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:89,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:92,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:93,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 97
    functionName: QuantLib::BlackKarasinski::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::process
    - QuantLib::BlackKarasinski::a
    - QuantLib::BlackKarasinski::sigma
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - termStructure
    - implementation
    - ext::shared_ptr::underlying
    - Brent::setMaxEvaluations
    - ext::shared_ptr::set
    - Brent::solve
    - size
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr::dx
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> BlackKarasinski::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackKarasinski::tree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:103,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:104,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:104,1
    - Dst: QuantLib::BlackKarasinski::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    - Dst: QuantLib::BlackKarasinski::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: QuantLib::BlackKarasinski::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackKarasinski::tree
    - QuantLib::BlackKarasinski::a
    - QuantLib::BlackKarasinski::sigma
    - Dynamics::Dynamics
    - termStructure
    - TimeGrid
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> BlackKarasinski::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:32,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:33,1
    - Dst: statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - i
    - xMin
    - dx
    - discountBondPrice
    - ' tree'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - ext::shared_ptr<ShortRateTree>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::BlackKarasinski::Helper::Helper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - size
    - timeGrid
    - statePrices
    linkageType: ''
    returnType: void
    signature: "void Helper(Size i, Real xMin, Real dx,\n               Real discountBondPrice,\n
      \              const ext::shared_ptr<ShortRateTree>& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: operator()(Real theta) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:62,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:62,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:63,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:63,1
    - Dst: TermStructureFittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackKarasinski::BlackKarasinski
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - registerWith
    - PositiveConstraint
    - TermStructureFittingParameter
    linkageType: ''
    returnType: void
    signature: "void BlackKarasinski::BlackKarasinski(\n                              const
      Handle<YieldTermStructure>& termStructure,\n                              Real
      a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackKarasinski::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: QuantLib::BlackKarasinski::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:73,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:75,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:75,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:81,1
    - Dst: implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:81,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:86,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:87,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:88,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:89,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:92,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:93,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 97
    functionName: QuantLib::BlackKarasinski::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::process
    - QuantLib::BlackKarasinski::a
    - QuantLib::BlackKarasinski::sigma
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - termStructure
    - implementation
    - ext::shared_ptr::underlying
    - Brent::setMaxEvaluations
    - ext::shared_ptr::set
    - Brent::solve
    - size
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr::dx
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> BlackKarasinski::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackKarasinski::tree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:103,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:104,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:104,1
    - Dst: QuantLib::BlackKarasinski::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    - Dst: QuantLib::BlackKarasinski::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: QuantLib::BlackKarasinski::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackKarasinski::tree
    - QuantLib::BlackKarasinski::a
    - QuantLib::BlackKarasinski::sigma
    - Dynamics::Dynamics
    - termStructure
    - TimeGrid
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> BlackKarasinski::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:33,1
    - Dst: NullParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:36,1
    - Dst: NullParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:37,1
    - Dst: QuantLib::HullWhite::generateArguments
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::HullWhite::HullWhite
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - NullParameter
    - QuantLib::HullWhite::generateArguments
    - forwardRate
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void HullWhite::HullWhite(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:49,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:49,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:55,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:55,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:57,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:58,1
    - Dst: ext::shared_ptr::statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:59,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:60,1
    - Dst: ext::shared_ptr::timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:61,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:62,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:69,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 73
    functionName: QuantLib::HullWhite::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::set
    - ext::shared_ptr::dx
    - ext::shared_ptr::process
    - size
    - ext::shared_ptr::size
    - sigma
    - std::exp
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - termStructure
    - ext::shared_ptr::underlying
    - ShortRateTree::ShortRateTree
    - a
    - std::log
    - TermStructureFittingParameter::implementation
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr::timeGrid
    - ext::shared_ptr::statePrices
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> HullWhite::tree(const TimeGrid& grid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:76,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:77,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:80,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:80,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:81,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: QuantLib::HullWhite::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - sigma
    - B
    - termStructure
    linkageType: ''
    returnType: Real
    signature: Real HullWhite::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::HullWhite::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 1
    functionsReached:
    - sigma
    - a
    - FittingParameter
    - termStructure
    linkageType: ''
    returnType: void
    signature: void HullWhite::generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:95,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:98,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:99,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:101,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:102,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 105
    functionName: QuantLib::HullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - std::exp
    - a
    - B
    - termStructure
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real HullWhite::discountBondOption(Option::Type type, Real strike,\n
      \                                      Time maturity,\n                                       Time
      bondMaturity) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:113,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:116,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:117,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:118,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:119,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:120,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:121,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:127,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:128,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - type
    - strike
    - maturity
    - bondStart
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 131
    functionName: QuantLib::HullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - a
    - B
    - termStructure
    - std::max
    - blackFormula
    - std::sqrt
    - exp
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real HullWhite::discountBondOption(Option::Type type, Real strike,\n
      \                                      Time maturity, Time bondStart,\n                                       Time
      bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:149,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:152,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:156,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - futuresPrice
    - t
    - T
    - sigma
    - a
    argTypes:
    - Real
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 168
    functionName: QuantLib::HullWhite::convexityBias
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - temp
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate HullWhite::convexityBias(Real futuresPrice,\n                                  Time
      t,\n                                  Time T,\n                                  Real
      sigma,\n                                  Real a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:33,1
    - Dst: NullParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:36,1
    - Dst: NullParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:37,1
    - Dst: QuantLib::HullWhite::generateArguments
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::HullWhite::HullWhite
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - NullParameter
    - QuantLib::HullWhite::generateArguments
    - forwardRate
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void HullWhite::HullWhite(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:47,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:49,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:49,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:55,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:55,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:57,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:58,1
    - Dst: ext::shared_ptr::statePrices
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:59,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:60,1
    - Dst: ext::shared_ptr::timeGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:61,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:62,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:69,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 73
    functionName: QuantLib::HullWhite::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::set
    - ext::shared_ptr::dx
    - ext::shared_ptr::process
    - size
    - ext::shared_ptr::size
    - sigma
    - std::exp
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - termStructure
    - ext::shared_ptr::underlying
    - ShortRateTree::ShortRateTree
    - a
    - std::log
    - TermStructureFittingParameter::implementation
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr::timeGrid
    - ext::shared_ptr::statePrices
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> HullWhite::tree(const TimeGrid& grid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:76,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:77,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:80,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:80,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:81,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: QuantLib::HullWhite::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - sigma
    - B
    - termStructure
    linkageType: ''
    returnType: Real
    signature: Real HullWhite::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::HullWhite::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 2
    functionsReached:
    - sigma
    - a
    - FittingParameter
    - termStructure
    linkageType: ''
    returnType: void
    signature: void HullWhite::generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:95,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:96,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:98,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:99,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:101,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:102,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 105
    functionName: QuantLib::HullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - std::exp
    - a
    - B
    - termStructure
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real HullWhite::discountBondOption(Option::Type type, Real strike,\n
      \                                      Time maturity,\n                                       Time
      bondMaturity) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:113,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:114,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:116,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:117,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:118,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:119,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:120,1
    - Dst: exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:121,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:125,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:127,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:128,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - type
    - strike
    - maturity
    - bondStart
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 131
    functionName: QuantLib::HullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - a
    - B
    - termStructure
    - std::max
    - blackFormula
    - std::sqrt
    - exp
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real HullWhite::discountBondOption(Option::Type type, Real strike,\n
      \                                      Time maturity, Time bondStart,\n                                       Time
      bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:149,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:152,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:156,1
    - Dst: temp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - futuresPrice
    - t
    - T
    - sigma
    - a
    argTypes:
    - Real
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 168
    functionName: QuantLib::HullWhite::convexityBias
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/hullwhite.cpp
    functionUses: 0
    functionsReached:
    - temp
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate HullWhite::convexityBias(Real futuresPrice,\n                                  Time
      t,\n                                  Time T,\n                                  Real
      sigma,\n                                  Real a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&reversion() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &reversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '&volatility() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: QuantLib::Gsr::FixedReversions
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - std::vector::insert
    - std::vector::end
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedReversions()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:81,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::Gsr::FixedVolatilities
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - std::vector::insert
    - std::vector::end
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedVolatilities()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionName: QuantLib::Gsr::MoveVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> MoveVolatility(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::Gsr::MoveReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> MoveReversion(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:113,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:114,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:116,1
    - Dst: calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:118,1
    - Dst: QuantLib::Gsr::MoveVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - helpers
    - method
    - endCriteria
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::Gsr::calibrateVolatilitiesIterative
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - Constraint
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
    - std::vector<Real>
    - QuantLib::Gsr::MoveVolatility
    - calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrateVolatilitiesIterative(\n        const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      > &helpers,\n        OptimizationMethod &method, const EndCriteria &endCriteria,\n
      \       const Constraint &constraint = Constraint(),\n        const std::vector<Real>
      &weights = std::vector<Real>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:129,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:130,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:132,1
    - Dst: calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:134,1
    - Dst: QuantLib::Gsr::MoveReversion
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - helpers
    - method
    - endCriteria
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: QuantLib::Gsr::calibrateReversionsIterative
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - Constraint
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
    - std::vector<Real>
    - QuantLib::Gsr::MoveReversion
    - calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrateReversionsIterative(\n        const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      > &helpers,\n        OptimizationMethod &method, const EndCriteria &endCriteria,\n
      \       const Constraint &constraint = Constraint(),\n        const std::vector<Real>
      &weights = std::vector<Real>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:145,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::Gsr::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::static_pointer_cast<GsrProcess>
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::performCalculations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:152,1
    - Dst: QuantLib::Gsr::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::Gsr::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dModel::performCalculations
    - QuantLib::Gsr::updateTimes
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Gsr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::Gsr::VolatilityObserver
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VolatilityObserver(Gsr *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gsr::updateVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Gsr::updateVolatility
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Gsr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::Gsr::ReversionObserver
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReversionObserver(Gsr *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gsr::updateReversion
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Gsr::updateReversion
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: QuantLib::Gsr::numeraireTime
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GsrProcess>
    linkageType: ''
    returnType: Real
    signature: Real Gsr::numeraireTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - T
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::Gsr::numeraireTime
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GsrProcess>
    linkageType: ''
    returnType: void
    signature: void Gsr::numeraireTime(const Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&reversion() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &reversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '&volatility() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: QuantLib::Gsr::FixedReversions
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - std::vector::insert
    - std::vector::end
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedReversions()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:81,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::Gsr::FixedVolatilities
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - std::vector::insert
    - std::vector::end
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedVolatilities()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionName: QuantLib::Gsr::MoveVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 1
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> MoveVolatility(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::Gsr::MoveReversion
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 1
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> MoveReversion(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:113,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:114,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:116,1
    - Dst: calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:118,1
    - Dst: QuantLib::Gsr::MoveVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - helpers
    - method
    - endCriteria
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::Gsr::calibrateVolatilitiesIterative
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - Constraint
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
    - std::vector<Real>
    - QuantLib::Gsr::MoveVolatility
    - calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrateVolatilitiesIterative(\n        const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      > &helpers,\n        OptimizationMethod &method, const EndCriteria &endCriteria,\n
      \       const Constraint &constraint = Constraint(),\n        const std::vector<Real>
      &weights = std::vector<Real>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:129,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:130,1
    - Dst: std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:132,1
    - Dst: calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:134,1
    - Dst: QuantLib::Gsr::MoveReversion
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - helpers
    - method
    - endCriteria
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: QuantLib::Gsr::calibrateReversionsIterative
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - Constraint
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >::size
    - std::vector<Real>
    - QuantLib::Gsr::MoveReversion
    - calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrateReversionsIterative(\n        const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      > &helpers,\n        OptimizationMethod &method, const EndCriteria &endCriteria,\n
      \       const Constraint &constraint = Constraint(),\n        const std::vector<Real>
      &weights = std::vector<Real>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::static_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:145,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::Gsr::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::static_pointer_cast<GsrProcess>
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::performCalculations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:152,1
    - Dst: QuantLib::Gsr::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::Gsr::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dModel::performCalculations
    - QuantLib::Gsr::updateTimes
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Gsr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::Gsr::VolatilityObserver
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VolatilityObserver(Gsr *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gsr::updateVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Gsr::updateVolatility
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Gsr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::Gsr::ReversionObserver
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReversionObserver(Gsr *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gsr::updateReversion
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: QuantLib::Gsr::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Gsr::updateReversion
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: QuantLib::Gsr::numeraireTime
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GsrProcess>
    linkageType: ''
    returnType: Real
    signature: Real Gsr::numeraireTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GsrProcess>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - T
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::Gsr::numeraireTime
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gsr.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GsrProcess>
    linkageType: ''
    returnType: void
    signature: void Gsr::numeraireTime(const Real T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:32,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:34,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:37,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:39,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:42,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:43,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:46,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:48,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:49,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' fixing'
    - ' referenceDate'
    - y
    - ' iborIdx'
    argTypes:
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 51
    functionName: QuantLib::Gaussian1dModel::forwardRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - calculate
    - endOfMonth
    - dayCounter
    - valueDate
    - fixing
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    - QuantLib::Gaussian1dModel::zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::forwardRate(const Date& fixing,\n                                      const
      Date& referenceDate,\n                                      const Real y,\n
      \                                     const ext::shared_ptr<IborIndex>& iborIdx)
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:59,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:61,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:64,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:67,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:69,1
    - Dst: QuantLib::Gaussian1dModel::underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:75,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:80,1
    - Dst: ext::shared_ptr::floatingSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:84,1
    - Dst: QuantLib::Gaussian1dModel::swapAnnuity
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:87,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:92,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:92,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:95,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:95,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:100,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:102,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:103,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:105,1
    - Dst: calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:105,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - ' fixing'
    - ' tenor'
    - ' referenceDate'
    - y
    - ' swapIdx'
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 111
    functionName: QuantLib::Gaussian1dModel::swapRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - calculate
    - QuantLib::Gaussian1dModel::zerobond
    - Schedule::calendar
    - discountingTermStructure
    - ext::shared_ptr::fixedSchedule
    - calendar
    - Handle::empty
    - Schedule::dates
    - ext::shared_ptr::paymentConvention
    - fixing
    - QuantLib::Gaussian1dModel::swapAnnuity
    - ext::shared_ptr::floatingSchedule
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - size
    - QuantLib::Gaussian1dModel::underlyingSwap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::swapRate(const Date& fixing,\n                               const
      Period& tenor,\n                               const Date& referenceDate,\n
      \                              const Real y,\n                               const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:119,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:121,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:124,1
    - Dst: QuantLib::Gaussian1dModel::underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:128,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:130,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:133,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:134,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:134,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:135,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:135,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:137,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:137,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - ' fixing'
    - ' tenor'
    - ' referenceDate'
    - y
    - ' swapIdx'
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 141
    functionName: QuantLib::Gaussian1dModel::swapAnnuity
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 1
    functionsReached:
    - Schedule::date
    - calculate
    - QuantLib::Gaussian1dModel::zerobond
    - Schedule::calendar
    - discountingTermStructure
    - ext::shared_ptr::fixedSchedule
    - dayCounter
    - Schedule::size
    - ext::shared_ptr::paymentConvention
    - QuantLib::Gaussian1dModel::underlyingSwap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::swapAnnuity(const Date& fixing,\n                                  const
      Period& tenor,\n                                  const Date& referenceDate,\n
      \                                 const Real y,\n                                  const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:150,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:152,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:154,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:156,1
    - Dst: QuantLib::Gaussian1dModel::yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:158,1
    - Dst: QuantLib::Gaussian1dModel::yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:161,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:163,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:164,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:166,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:168,1
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:170,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:178,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:179,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:180,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:180,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:181,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:185,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:186,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:186,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:187,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:188,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:192,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:193,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:193,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:194,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:194,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:196,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:198,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:199,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:199,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:200,1
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:204,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 12
    argNames:
    - type
    - expiry
    - valueDate
    - maturity
    - strike
    - referenceDate
    - y
    - yts
    - yStdDevs
    - yGridPoints
    - extrapolatePayoff
    - flatPayoffExtrapolation
    argTypes:
    - Option::Type
    - Date
    - Date
    - Date
    - Rate
    - Date
    - Real
    - Handle<YieldTermStructure>
    - Real
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 205
    functionName: QuantLib::Gaussian1dModel::zerobondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - CubicInterpolation::aCoefficients
    - calculate
    - QuantLib::Gaussian1dModel::yGrid
    - Array::begin
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - std::max
    - Array::size
    - Date
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - QuantLib::Gaussian1dModel::numeraire
    - QuantLib::Gaussian1dModel::zerobond
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobondOption(\n    const Option::Type &type,
      const Date &expiry, const Date &valueDate,\n    const Date &maturity, const
      Rate strike, const Date &referenceDate,\n    const Real y, const Handle<YieldTermStructure>
      &yts, const Real yStdDevs,\n    const Size yGridPoints, const bool extrapolatePayoff,\n
      \   const bool flatPayoffExtrapolation) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:217,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:220,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:221,1
    - Dst: NTL::to_double
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:224,1
    - Dst: boost::math::ntl::RR::value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:224,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:230,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:233,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - a
    - b
    - c
    - d
    - e
    - y0
    - y1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 238
    functionName: QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - NTL::to_double
    - std::erf
    - boost::math::ntl::RR::value
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::gaussianPolynomialIntegral(\n    const Real
      a, const Real b, const Real c, const Real d, const Real e,\n    const Real y0,
      const Real y1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - e
    - h
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::gaussianShiftedPolynomialIntegral(\n    const
      Real a, const Real b, const Real c, const Real d, const Real e,\n    const Real
      h, const Real x0, const Real x1)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:254,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:259,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:260,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:269,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:270,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:271,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 5
    argNames:
    - stdDevs
    - gridPoints
    - T
    - t
    - y
    argTypes:
    - Real
    - int
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 284
    functionName: QuantLib::Gaussian1dModel::yGrid
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 1
    functionsReached:
    - expectation
    - stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array Gaussian1dModel::yGrid(\n    const Real stdDevs, const int gridPoints,
      const Real T, const Real t, const Real y) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:32,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:34,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:37,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:39,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:42,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:43,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:44,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:46,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:48,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:49,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' fixing'
    - ' referenceDate'
    - y
    - ' iborIdx'
    argTypes:
    - Date
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 51
    functionName: QuantLib::Gaussian1dModel::forwardRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - calculate
    - endOfMonth
    - dayCounter
    - valueDate
    - fixing
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    - QuantLib::Gaussian1dModel::zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::forwardRate(const Date& fixing,\n                                      const
      Date& referenceDate,\n                                      const Real y,\n
      \                                     const ext::shared_ptr<IborIndex>& iborIdx)
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:59,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:61,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:64,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:67,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:69,1
    - Dst: QuantLib::Gaussian1dModel::underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:75,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:80,1
    - Dst: ext::shared_ptr::floatingSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:84,1
    - Dst: QuantLib::Gaussian1dModel::swapAnnuity
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:87,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:92,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:92,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:95,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:95,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:96,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:100,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:102,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:103,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:105,1
    - Dst: calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:105,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - ' fixing'
    - ' tenor'
    - ' referenceDate'
    - y
    - ' swapIdx'
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 111
    functionName: QuantLib::Gaussian1dModel::swapRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - calculate
    - QuantLib::Gaussian1dModel::zerobond
    - Schedule::calendar
    - discountingTermStructure
    - ext::shared_ptr::fixedSchedule
    - calendar
    - Handle::empty
    - Schedule::dates
    - ext::shared_ptr::paymentConvention
    - fixing
    - QuantLib::Gaussian1dModel::swapAnnuity
    - ext::shared_ptr::floatingSchedule
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - size
    - QuantLib::Gaussian1dModel::underlyingSwap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::swapRate(const Date& fixing,\n                               const
      Period& tenor,\n                               const Date& referenceDate,\n
      \                              const Real y,\n                               const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:119,1
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:121,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:124,1
    - Dst: QuantLib::Gaussian1dModel::underlyingSwap
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:128,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:130,1
    - Dst: Schedule::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:133,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:134,1
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:134,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:135,1
    - Dst: ext::shared_ptr::paymentConvention
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:135,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:137,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:137,1
    - Dst: Schedule::date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - ' fixing'
    - ' tenor'
    - ' referenceDate'
    - y
    - ' swapIdx'
    argTypes:
    - Date
    - Period
    - Date
    - Real
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 141
    functionName: QuantLib::Gaussian1dModel::swapAnnuity
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 2
    functionsReached:
    - Schedule::date
    - calculate
    - QuantLib::Gaussian1dModel::zerobond
    - Schedule::calendar
    - discountingTermStructure
    - ext::shared_ptr::fixedSchedule
    - dayCounter
    - Schedule::size
    - ext::shared_ptr::paymentConvention
    - QuantLib::Gaussian1dModel::underlyingSwap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::swapAnnuity(const Date& fixing,\n                                  const
      Period& tenor,\n                                  const Date& referenceDate,\n
      \                                 const Real y,\n                                  const
      ext::shared_ptr<SwapIndex>& swapIdx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:150,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:152,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:154,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:156,1
    - Dst: QuantLib::Gaussian1dModel::yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:158,1
    - Dst: QuantLib::Gaussian1dModel::yGrid
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:161,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:163,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:164,1
    - Dst: QuantLib::Gaussian1dModel::zerobond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:166,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:168,1
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:170,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::end
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:174,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:178,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:179,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:180,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:180,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:181,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:185,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:186,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:186,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:187,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:188,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:192,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:193,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:193,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:194,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:194,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:195,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:196,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:198,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:199,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:199,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:200,1
    - Dst: QuantLib::Gaussian1dModel::numeraire
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:204,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 12
    argNames:
    - type
    - expiry
    - valueDate
    - maturity
    - strike
    - referenceDate
    - y
    - yts
    - yStdDevs
    - yGridPoints
    - extrapolatePayoff
    - flatPayoffExtrapolation
    argTypes:
    - Option::Type
    - Date
    - Date
    - Date
    - Rate
    - Date
    - Real
    - Handle<YieldTermStructure>
    - Real
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 205
    functionName: QuantLib::Gaussian1dModel::zerobondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 0
    functionsReached:
    - CubicInterpolation::aCoefficients
    - calculate
    - QuantLib::Gaussian1dModel::yGrid
    - Array::begin
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - std::max
    - Array::size
    - Date
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - QuantLib::Gaussian1dModel::numeraire
    - QuantLib::Gaussian1dModel::zerobond
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::zerobondOption(\n    const Option::Type &type,
      const Date &expiry, const Date &valueDate,\n    const Date &maturity, const
      Rate strike, const Date &referenceDate,\n    const Real y, const Handle<YieldTermStructure>
      &yts, const Real yStdDevs,\n    const Size yGridPoints, const bool extrapolatePayoff,\n
      \   const bool flatPayoffExtrapolation) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:217,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:220,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:221,1
    - Dst: NTL::to_double
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:224,1
    - Dst: boost::math::ntl::RR::value
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:224,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:230,1
    - Dst: std::erf
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:233,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - a
    - b
    - c
    - d
    - e
    - y0
    - y1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 238
    functionName: QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - NTL::to_double
    - std::erf
    - boost::math::ntl::RR::value
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::gaussianPolynomialIntegral(\n    const Real
      a, const Real b, const Real c, const Real d, const Real e,\n    const Real y0,
      const Real y1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - e
    - h
    - x0
    - x1
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Gaussian1dModel::gaussianPolynomialIntegral
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dModel::gaussianShiftedPolynomialIntegral(\n    const
      Real a, const Real b, const Real c, const Real d, const Real e,\n    const Real
      h, const Real x0, const Real x1)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:254,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:259,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:260,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:269,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:270,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:271,1
    - Dst: expectation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 5
    argNames:
    - stdDevs
    - gridPoints
    - T
    - t
    - y
    argTypes:
    - Real
    - int
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 284
    functionName: QuantLib::Gaussian1dModel::yGrid
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp
    functionUses: 2
    functionsReached:
    - expectation
    - stdDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array Gaussian1dModel::yGrid(\n    const Real stdDevs, const int gridPoints,
      const Real T, const Real t, const Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackKarasinski::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 4
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::BlackKarasinski::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 4
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:79,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - alpha
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackKarasinski::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real alpha, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:82,1
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackKarasinski::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:84,1
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackKarasinski::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackKarasinski::a
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 4
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::BlackKarasinski::sigma
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 4
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:79,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - alpha
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackKarasinski::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real alpha, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:82,1
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackKarasinski::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:84,1
    - Dst: fitting_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackKarasinski::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/blackkarasinski.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxIngersollRoss::generateArguments
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' termStructure'
    - theta
    - k
    - sigma
    - x0
    - withFellerConstraint
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::ExtendedCoxIngersollRoss::ExtendedCoxIngersollRoss
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedCoxIngersollRoss::generateArguments
    linkageType: ''
    returnType: void
    signature: "void ExtendedCoxIngersollRoss::ExtendedCoxIngersollRoss(\n                              const
      Handle<YieldTermStructure>& termStructure,\n                              Real
      theta, Real k, Real sigma, Real x0,\n                              bool withFellerConstraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:43,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:47,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:47,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:49,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 51
    functionName: QuantLib::ExtendedCoxIngersollRoss::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - sigma
    - ext::shared_ptr::process
    - Dynamics::Dynamics
    - theta
    - TermStructureFittingParameter::implementation
    - ext::shared_ptr<Lattice>
    - k
    - TrinomialTree::TrinomialTree
    - x0
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: "ext::shared_ptr<Lattice> ExtendedCoxIngersollRoss::tree(\n                                                 const
      TimeGrid& grid) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:54,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:55,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::ExtendedCoxIngersollRoss::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - phi_
    - B
    - QuantLib::ExtendedCoxIngersollRoss::A
    - termStructure
    - x0
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxIngersollRoss::A(Time t, Time s) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:66,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:68,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:69,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:73,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:76,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:80,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:82,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:84,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:86,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:87,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:89,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:89,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:90,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:91,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: chis
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:100,1
    - Dst: chit
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - type
    - strike
    - t
    - s
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 106
    functionName: QuantLib::ExtendedCoxIngersollRoss::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - std::exp
    - phi_
    - std::log
    - chit
    - theta
    - B
    - termStructure
    - QuantLib::ExtendedCoxIngersollRoss::A
    - QL_FAIL
    - std::sqrt
    - std::max<Real>
    - k
    - x0
    - chis
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ExtendedCoxIngersollRoss::discountBondOption(Option::Type type,\n
      \                                                     Real strike,\n                                                      Time
      t, Time s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxIngersollRoss::generateArguments
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' termStructure'
    - theta
    - k
    - sigma
    - x0
    - withFellerConstraint
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::ExtendedCoxIngersollRoss::ExtendedCoxIngersollRoss
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedCoxIngersollRoss::generateArguments
    linkageType: ''
    returnType: void
    signature: "void ExtendedCoxIngersollRoss::ExtendedCoxIngersollRoss(\n                              const
      Handle<YieldTermStructure>& termStructure,\n                              Real
      theta, Real k, Real sigma, Real x0,\n                              bool withFellerConstraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:40,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:43,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:47,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:47,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:49,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 51
    functionName: QuantLib::ExtendedCoxIngersollRoss::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - sigma
    - ext::shared_ptr::process
    - Dynamics::Dynamics
    - theta
    - TermStructureFittingParameter::implementation
    - ext::shared_ptr<Lattice>
    - k
    - TrinomialTree::TrinomialTree
    - x0
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: "ext::shared_ptr<Lattice> ExtendedCoxIngersollRoss::tree(\n                                                 const
      TimeGrid& grid) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:54,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:55,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:56,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:57,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::ExtendedCoxIngersollRoss::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 3
    functionsReached:
    - std::exp
    - phi_
    - B
    - QuantLib::ExtendedCoxIngersollRoss::A
    - termStructure
    - x0
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxIngersollRoss::A(Time t, Time s) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:66,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:68,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:69,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:73,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:76,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:80,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:81,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:82,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:84,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:86,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:87,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:89,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:89,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:90,1
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:91,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:96,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: QuantLib::ExtendedCoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:99,1
    - Dst: chis
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:100,1
    - Dst: chit
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - type
    - strike
    - t
    - s
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 106
    functionName: QuantLib::ExtendedCoxIngersollRoss::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - std::exp
    - phi_
    - std::log
    - chit
    - theta
    - B
    - termStructure
    - QuantLib::ExtendedCoxIngersollRoss::A
    - QL_FAIL
    - std::sqrt
    - std::max<Real>
    - k
    - x0
    - chis
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ExtendedCoxIngersollRoss::discountBondOption(Option::Type type,\n
      \                                                     Real strike,\n                                                      Time
      t, Time s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: ~CustomSmileFactory()
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CustomSmileFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::MarkovFunctional::ModelSettings
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModelSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:142,1
    - Dst: ext::shared_ptr<CustomSmileFactory>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:144,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - yGridPoints
    - yStdDevs
    - gaussHermitePoints
    - digitalGap
    - marketRateAccuracy
    - lowerRateBound
    - upperRateBound
    - adjustments
    argTypes:
    - Size
    - Real
    - Size
    - Real
    - Real
    - Real
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 150
    functionName: QuantLib::MarkovFunctional::ModelSettings
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<CustomSmileFactory>
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ModelSettings(Size yGridPoints,\n                          Real
      yStdDevs,\n                          Size gaussHermitePoints,\n                          Real
      digitalGap,\n                          Real marketRateAccuracy,\n                          Real
      lowerRateBound,\n                          Real upperRateBound,\n                          int
      adjustments,\n                          std::vector<Real> smileMoneyCheckpoints
      = std::vector<Real>(),\n                          ext::shared_ptr<CustomSmileFactory>
      customSmileFactory =\n                              ext::shared_ptr<CustomSmileFactory>())"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: addAdjustment
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:155,1
    - Dst: addAdjustment
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:196,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 199
    functionName: QuantLib::MarkovFunctional::validate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 4
    functionsReached:
    - addAdjustment
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: '&withYGridPoints(Size n)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withYGridPoints(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: '&withYStdDevs(Real s)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withYStdDevs(Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '&withGaussHermitePoints(Size n)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withGaussHermitePoints(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '&withDigitalGap(Real d)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withDigitalGap(Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: '&withMarketRateAccuracy(Real a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withMarketRateAccuracy(Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: '&withUpperRateBound(Real u)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withUpperRateBound(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - l
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: '&withLowerRateBound(Real l)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withLowerRateBound(Real l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '&withAdjustments(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withAdjustments(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '&addAdjustment(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &addAdjustment(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: '&removeAdjustment(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &removeAdjustment(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: '&withSmileMoneynessCheckpoints(const std::vector<Real>& m)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withSmileMoneynessCheckpoints(const std::vector<Real>&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - ext::shared_ptr<CustomSmileFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: '&withCustomSmileFactory(const ext::shared_ptr<CustomSmileFactory>&
      f)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withCustomSmileFactory(const ext::shared_ptr<CustomSmileFactory>&
      f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - o
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionName: QL_MFMESSAGE
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_MFMESSAGE(o, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 325
    functionName: '&modelSettings() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &modelSettings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: '&numeraireDate() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date &numeraireDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: '&numeraireTime() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time &numeraireTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 331
    functionName: '&volatility() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:336,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:337,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:338,1
    - Dst: QuantLib::CalibratedModel::calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:340,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:341,1
    - Dst: QuantLib::MarkovFunctional::FixedFirstVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' helpers'
    - ' method'
    - ' endCriteria'
    argTypes:
    - std::vector<ext::shared_ptr<CalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 343
    functionName: QuantLib::MarkovFunctional::calibrate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::FixedFirstVolatility
    - QuantLib::CalibratedModel::calibrate
    - empty
    - Constraint
    - std::vector<bool>
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void calibrate(const std::vector<ext::shared_ptr<CalibrationHelper>
      >& helpers,\n                       OptimizationMethod& method,\n                       const
      EndCriteria& endCriteria,\n                       const Constraint& constraint
      = Constraint(),\n                       const std::vector<Real>& weights = std::vector<Real>(),\n
      \                      const std::vector<bool>& fixParameters = std::vector<bool>())
      override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:348,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:349,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:353,1
    - Dst: ext::static_pointer_cast<CalibrationHelper>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:354,1
    - Dst: QuantLib::MarkovFunctional::calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' helpers'
    - ' method'
    - ' endCriteria'
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 357
    functionName: QuantLib::MarkovFunctional::calibrate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached:
    - Constraint
    - ext::static_pointer_cast<CalibrationHelper>
    - std::vector<bool>
    - std::vector<Real>
    - QuantLib::MarkovFunctional::calibrate
    - size
    linkageType: ''
    returnType: void
    signature: "void calibrate(const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      >& helpers,\n                       OptimizationMethod& method,\n                       const
      EndCriteria& endCriteria,\n                       const Constraint& constraint
      = Constraint(),\n                       const std::vector<Real>& weights = std::vector<Real>(),\n
      \                      const std::vector<bool>& fixParameters = std::vector<bool>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 359
    functionName: QuantLib::MarkovFunctional::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionName: QuantLib::MarkovFunctional::arbitrageIndices
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Size, Size> >
    signature: std::vector<std::pair<Size, Size> > arbitrageIndices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' indices'
    argTypes:
    - std::vector<std::pair<Size,Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 369
    functionDepth: 2
    functionLinenumber: 369
    functionLinenumberEnd: 372
    functionName: QuantLib::MarkovFunctional::forceArbitrageIndices
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::update
    linkageType: ''
    returnType: void
    signature: void forceArbitrageIndices(const std::vector<std::pair<Size,Size> >&
      indices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:384,1
    - Dst: QuantLib::MarkovFunctional::updateNumeraireTabulation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:385,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 387
    functionName: QuantLib::MarkovFunctional::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateNumeraireTabulation
    - notifyObservers
    - calculate
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::performCalculations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:390,1
    - Dst: QuantLib::MarkovFunctional::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:391,1
    - Dst: QuantLib::MarkovFunctional::updateSmiles
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:392,1
    - Dst: QuantLib::MarkovFunctional::updateNumeraireTabulation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::MarkovFunctional::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateNumeraireTabulation
    - QuantLib::Gaussian1dModel::performCalculations
    - QuantLib::MarkovFunctional::updateTimes
    - QuantLib::MarkovFunctional::updateSmiles
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 400
    functionName: QuantLib::MarkovFunctional::FixedFirstVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedFirstVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - model
    - expiry
    - p
    - marketPrice
    argTypes:
    - MarkovFunctional*
    - Date
    - CalibrationPoint
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionName: QuantLib::MarkovFunctional::ZeroHelper::ZeroHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroHelper(const MarkovFunctional *model, const Date &expiry,\n
      \                      const CalibrationPoint &p, const Real marketPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: marketDigitalPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 490
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - marketDigitalPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: ~CustomSmileFactory()
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CustomSmileFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::MarkovFunctional::ModelSettings
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModelSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:142,1
    - Dst: ext::shared_ptr<CustomSmileFactory>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:144,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - yGridPoints
    - yStdDevs
    - gaussHermitePoints
    - digitalGap
    - marketRateAccuracy
    - lowerRateBound
    - upperRateBound
    - adjustments
    argTypes:
    - Size
    - Real
    - Size
    - Real
    - Real
    - Real
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 150
    functionName: QuantLib::MarkovFunctional::ModelSettings
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<CustomSmileFactory>
    - std::vector<Real>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ModelSettings(Size yGridPoints,\n                          Real
      yStdDevs,\n                          Size gaussHermitePoints,\n                          Real
      digitalGap,\n                          Real marketRateAccuracy,\n                          Real
      lowerRateBound,\n                          Real upperRateBound,\n                          int
      adjustments,\n                          std::vector<Real> smileMoneyCheckpoints
      = std::vector<Real>(),\n                          ext::shared_ptr<CustomSmileFactory>
      customSmileFactory =\n                              ext::shared_ptr<CustomSmileFactory>())"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: addAdjustment
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:155,1
    - Dst: addAdjustment
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:196,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 199
    functionName: QuantLib::MarkovFunctional::validate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 4
    functionsReached:
    - addAdjustment
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void validate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: '&withYGridPoints(Size n)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withYGridPoints(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: '&withYStdDevs(Real s)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withYStdDevs(Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '&withGaussHermitePoints(Size n)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withGaussHermitePoints(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '&withDigitalGap(Real d)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withDigitalGap(Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: '&withMarketRateAccuracy(Real a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withMarketRateAccuracy(Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: '&withUpperRateBound(Real u)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withUpperRateBound(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - l
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: '&withLowerRateBound(Real l)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withLowerRateBound(Real l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '&withAdjustments(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withAdjustments(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '&addAdjustment(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &addAdjustment(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: '&removeAdjustment(int a)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &removeAdjustment(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionName: '&withSmileMoneynessCheckpoints(const std::vector<Real>& m)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withSmileMoneynessCheckpoints(const std::vector<Real>&
      m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - ext::shared_ptr<CustomSmileFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: '&withCustomSmileFactory(const ext::shared_ptr<CustomSmileFactory>&
      f)'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &withCustomSmileFactory(const ext::shared_ptr<CustomSmileFactory>&
      f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - o
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionName: QL_MFMESSAGE
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_MFMESSAGE(o, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 325
    functionName: '&modelSettings() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ModelSettings
    signature: ModelSettings &modelSettings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: '&numeraireDate() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date &numeraireDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: '&numeraireTime() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time &numeraireTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 331
    functionName: '&volatility() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - params
    linkageType: ''
    returnType: Array
    signature: Array &volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:336,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:337,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:338,1
    - Dst: QuantLib::CalibratedModel::calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:340,1
    - Dst: empty
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:341,1
    - Dst: QuantLib::MarkovFunctional::FixedFirstVolatility
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' helpers'
    - ' method'
    - ' endCriteria'
    argTypes:
    - std::vector<ext::shared_ptr<CalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 343
    functionName: QuantLib::MarkovFunctional::calibrate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarkovFunctional::FixedFirstVolatility
    - QuantLib::CalibratedModel::calibrate
    - empty
    - Constraint
    - std::vector<bool>
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void calibrate(const std::vector<ext::shared_ptr<CalibrationHelper>
      >& helpers,\n                       OptimizationMethod& method,\n                       const
      EndCriteria& endCriteria,\n                       const Constraint& constraint
      = Constraint(),\n                       const std::vector<Real>& weights = std::vector<Real>(),\n
      \                      const std::vector<bool>& fixParameters = std::vector<bool>())
      override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Constraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:348,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:349,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:350,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:353,1
    - Dst: ext::static_pointer_cast<CalibrationHelper>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:354,1
    - Dst: QuantLib::MarkovFunctional::calibrate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' helpers'
    - ' method'
    - ' endCriteria'
    argTypes:
    - std::vector<ext::shared_ptr<BlackCalibrationHelper> >
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 357
    functionName: QuantLib::MarkovFunctional::calibrate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 2
    functionsReached:
    - Constraint
    - ext::static_pointer_cast<CalibrationHelper>
    - std::vector<bool>
    - std::vector<Real>
    - QuantLib::MarkovFunctional::calibrate
    - size
    linkageType: ''
    returnType: void
    signature: "void calibrate(const std::vector<ext::shared_ptr<BlackCalibrationHelper>
      >& helpers,\n                       OptimizationMethod& method,\n                       const
      EndCriteria& endCriteria,\n                       const Constraint& constraint
      = Constraint(),\n                       const std::vector<Real>& weights = std::vector<Real>(),\n
      \                      const std::vector<bool>& fixParameters = std::vector<bool>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 359
    functionName: QuantLib::MarkovFunctional::update
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionName: QuantLib::MarkovFunctional::arbitrageIndices
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Size, Size> >
    signature: std::vector<std::pair<Size, Size> > arbitrageIndices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarkovFunctional::update
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' indices'
    argTypes:
    - std::vector<std::pair<Size,Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 369
    functionDepth: 2
    functionLinenumber: 369
    functionLinenumberEnd: 372
    functionName: QuantLib::MarkovFunctional::forceArbitrageIndices
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::update
    linkageType: ''
    returnType: void
    signature: void forceArbitrageIndices(const std::vector<std::pair<Size,Size> >&
      indices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:384,1
    - Dst: QuantLib::MarkovFunctional::updateNumeraireTabulation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:385,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 387
    functionName: QuantLib::MarkovFunctional::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateNumeraireTabulation
    - notifyObservers
    - calculate
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dModel::performCalculations
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:390,1
    - Dst: QuantLib::MarkovFunctional::updateTimes
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:391,1
    - Dst: QuantLib::MarkovFunctional::updateSmiles
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:392,1
    - Dst: QuantLib::MarkovFunctional::updateNumeraireTabulation
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::MarkovFunctional::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarkovFunctional::updateNumeraireTabulation
    - QuantLib::Gaussian1dModel::performCalculations
    - QuantLib::MarkovFunctional::updateTimes
    - QuantLib::MarkovFunctional::updateSmiles
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 400
    functionName: QuantLib::MarkovFunctional::FixedFirstVolatility
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 2
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> FixedFirstVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - model
    - expiry
    - p
    - marketPrice
    argTypes:
    - MarkovFunctional*
    - Date
    - CalibrationPoint
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionName: QuantLib::MarkovFunctional::ZeroHelper::ZeroHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroHelper(const MarkovFunctional *model, const Date &expiry,\n
      \                      const CalibrationPoint &p, const Real marketPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: marketDigitalPrice
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 490
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/markovfunctional.hpp
    functionUses: 0
    functionsReached:
    - marketDigitalPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:31,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:33,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - r0
    - a
    - b
    - sigma
    - lambda
    argTypes:
    - Rate
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::Vasicek::Vasicek
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void Vasicek::Vasicek(Rate r0, Real a, Real b, Real sigma, Real lambda)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:37,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:38,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:41,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:41,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::b
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::lambda
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 47
    functionName: QuantLib::Vasicek::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::Vasicek::b
    - QuantLib::Vasicek::lambda
    - std::sqrt
    - QuantLib::Vasicek::sigma
    - QuantLib::Vasicek::B
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: Real
    signature: Real Vasicek::A(Time t, Time T) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::Vasicek::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::Vasicek::a
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Vasicek::B(Time t, Time T) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:62,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:65,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:68,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:69,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:69,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:71,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:72,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 75
    functionName: QuantLib::Vasicek::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - discountBond
    - blackFormula
    - std::fabs
    - std::sqrt
    - QuantLib::Vasicek::sigma
    - QuantLib::Vasicek::B
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: Real
    signature: "Real Vasicek::discountBondOption(Option::Type type,\n                                     Real
      strike, Time maturity,\n                                     Time bondMaturity)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:31,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:33,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - r0
    - a
    - b
    - sigma
    - lambda
    argTypes:
    - Rate
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::Vasicek::Vasicek
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: void Vasicek::Vasicek(Rate r0, Real a, Real b, Real sigma, Real lambda)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:37,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:38,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:41,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:41,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::b
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::lambda
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 47
    functionName: QuantLib::Vasicek::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::Vasicek::b
    - QuantLib::Vasicek::lambda
    - std::sqrt
    - QuantLib::Vasicek::sigma
    - QuantLib::Vasicek::B
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: Real
    signature: Real Vasicek::A(Time t, Time T) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::Vasicek::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 3
    functionsReached:
    - std::exp
    - QuantLib::Vasicek::a
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Vasicek::B(Time t, Time T) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Vasicek::a
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:62,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:65,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:66,1
    - Dst: QuantLib::Vasicek::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:68,1
    - Dst: QuantLib::Vasicek::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:69,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:69,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:71,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:72,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 75
    functionName: QuantLib::Vasicek::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/vasicek.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - discountBond
    - blackFormula
    - std::fabs
    - std::sqrt
    - QuantLib::Vasicek::sigma
    - QuantLib::Vasicek::B
    - QuantLib::Vasicek::a
    linkageType: ''
    returnType: Real
    signature: "Real Vasicek::discountBondOption(Option::Type type,\n                                     Real
      strike, Time maturity,\n                                     Time bondMaturity)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - phi
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Parameter
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter phi, Real theta, Real k, Real sigma, Real x0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - phi_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - y
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - phi_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - termStructure
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real theta, Real
      k, Real sigma, Real x0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 132
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:141,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' termStructure'
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 143
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real theta, Real k, Real sigma, Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:150,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::ExtendedCoxIngersollRoss::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - sigma
    - Dynamics::Dynamics
    - theta
    - ext::shared_ptr<ShortRateDynamics>
    - k
    - x0
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> ExtendedCoxIngersollRoss::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::ExtendedCoxIngersollRoss::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 2
    functionsReached:
    - sigma
    - theta
    - FittingParameter
    - termStructure
    - k
    - x0
    linkageType: ''
    returnType: void
    signature: void ExtendedCoxIngersollRoss::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - phi
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Parameter
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter phi, Real theta, Real k, Real sigma, Real x0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - phi_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: phi_
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - y
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ExtendedCoxIngersollRoss::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - phi_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - termStructure
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real theta, Real
      k, Real sigma, Real x0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 132
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:141,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' termStructure'
    - theta
    - k
    - sigma
    - x0
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 143
    functionName: QuantLib::ExtendedCoxIngersollRoss::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real theta, Real k, Real sigma, Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:150,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::ExtendedCoxIngersollRoss::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 0
    functionsReached:
    - sigma
    - Dynamics::Dynamics
    - theta
    - ext::shared_ptr<ShortRateDynamics>
    - k
    - x0
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> ExtendedCoxIngersollRoss::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FittingParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: termStructure
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    - Dst: x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::ExtendedCoxIngersollRoss::generateArguments
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/extendedcoxingersollross.hpp
    functionUses: 2
    functionsReached:
    - sigma
    - theta
    - FittingParameter
    - termStructure
    - k
    - x0
    linkageType: ''
    returnType: void
    signature: void ExtendedCoxIngersollRoss::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - k
    - theta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real k, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:39,1
    - Dst: VolatilityConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - k
    - theta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::VolatilityConstraint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - VolatilityConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void VolatilityConstraint(Real k, Real theta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:49,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:49,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:50,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:50,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:52,1
    - Dst: VolatilityConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:52,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:54,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:55,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - r0
    - theta
    - k
    - sigma
    - withFellerConstraint
    argTypes:
    - Rate
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 56
    functionName: QuantLib::CoxIngersollRoss::CoxIngersollRoss
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - VolatilityConstraint
    - ConstantParameter
    - PositiveConstraint
    linkageType: ''
    returnType: void
    signature: "void CoxIngersollRoss::CoxIngersollRoss(Rate r0, Real theta,\n                                       Real
      k, Real sigma,\n                                       bool withFellerConstraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:60,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::CoxIngersollRoss::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRoss::x0
    - Dynamics::Dynamics
    - QuantLib::CoxIngersollRoss::theta
    - QuantLib::CoxIngersollRoss::k
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::CoxIngersollRoss::sigma
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> CoxIngersollRoss::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:65,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:67,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:67,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:68,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:69,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:70,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:70,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::CoxIngersollRoss::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - QuantLib::CoxIngersollRoss::theta
    - QuantLib::CoxIngersollRoss::k
    - std::sqrt
    - QuantLib::CoxIngersollRoss::sigma
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRoss::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:76,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::CoxIngersollRoss::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRoss::sigma
    - QuantLib::CoxIngersollRoss::k
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRoss::B(Time t, Time T) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:87,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:88,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:88,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:89,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:89,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:94,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:97,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:101,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:105,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:106,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:108,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:108,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:109,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:115,1
    - Dst: QuantLib::CoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:115,1
    - Dst: chis
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:116,1
    - Dst: chit
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - type
    - strike
    - t
    - s
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 123
    functionName: QuantLib::CoxIngersollRoss::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRoss::x0
    - QuantLib::CoxIngersollRoss::B
    - std::exp
    - std::log
    - chit
    - QuantLib::CoxIngersollRoss::theta
    - discountBond
    - QL_FAIL
    - std::sqrt
    - std::max<Real>
    - QuantLib::CoxIngersollRoss::k
    - QuantLib::CoxIngersollRoss::sigma
    - QuantLib::CoxIngersollRoss::A
    - chis
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRoss::discountBondOption(Option::Type type,\n                                              Real
      strike,\n                                              Time t, Time s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CoxIngersollRoss::dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:128,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:128,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:129,1
    - Dst: QuantLib::CoxIngersollRoss::dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:130,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 131
    functionName: QuantLib::CoxIngersollRoss::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr<Lattice>
    - QuantLib::CoxIngersollRoss::dynamics
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> CoxIngersollRoss::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - k
    - theta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real k, Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:39,1
    - Dst: VolatilityConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - k
    - theta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::CoxIngersollRoss::VolatilityConstraint::VolatilityConstraint
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - VolatilityConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void VolatilityConstraint(Real k, Real theta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:49,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:49,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:50,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:50,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:52,1
    - Dst: VolatilityConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:52,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:54,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:55,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - r0
    - theta
    - k
    - sigma
    - withFellerConstraint
    argTypes:
    - Rate
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 56
    functionName: QuantLib::CoxIngersollRoss::CoxIngersollRoss
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - VolatilityConstraint
    - ConstantParameter
    - PositiveConstraint
    linkageType: ''
    returnType: void
    signature: "void CoxIngersollRoss::CoxIngersollRoss(Rate r0, Real theta,\n                                       Real
      k, Real sigma,\n                                       bool withFellerConstraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:60,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::CoxIngersollRoss::dynamics
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CoxIngersollRoss::x0
    - Dynamics::Dynamics
    - QuantLib::CoxIngersollRoss::theta
    - QuantLib::CoxIngersollRoss::k
    - ext::shared_ptr<ShortRateDynamics>
    - QuantLib::CoxIngersollRoss::sigma
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> CoxIngersollRoss::dynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:65,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:67,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:67,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:68,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:69,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:70,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:70,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::CoxIngersollRoss::A
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - QuantLib::CoxIngersollRoss::theta
    - QuantLib::CoxIngersollRoss::k
    - std::sqrt
    - QuantLib::CoxIngersollRoss::sigma
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRoss::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:76,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: QuantLib::CoxIngersollRoss::B
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CoxIngersollRoss::sigma
    - QuantLib::CoxIngersollRoss::k
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRoss::B(Time t, Time T) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:87,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:88,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:88,1
    - Dst: discountBond
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:89,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:89,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:94,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:97,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:101,1
    - Dst: QuantLib::CoxIngersollRoss::sigma
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:102,1
    - Dst: QuantLib::CoxIngersollRoss::B
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:105,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:106,1
    - Dst: QuantLib::CoxIngersollRoss::k
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:108,1
    - Dst: QuantLib::CoxIngersollRoss::theta
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:108,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:109,1
    - Dst: QuantLib::CoxIngersollRoss::x0
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:115,1
    - Dst: QuantLib::CoxIngersollRoss::A
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:115,1
    - Dst: chis
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:116,1
    - Dst: chit
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - type
    - strike
    - t
    - s
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 123
    functionName: QuantLib::CoxIngersollRoss::discountBondOption
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRoss::x0
    - QuantLib::CoxIngersollRoss::B
    - std::exp
    - std::log
    - chit
    - QuantLib::CoxIngersollRoss::theta
    - discountBond
    - QL_FAIL
    - std::sqrt
    - std::max<Real>
    - QuantLib::CoxIngersollRoss::k
    - QuantLib::CoxIngersollRoss::sigma
    - QuantLib::CoxIngersollRoss::A
    - chis
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRoss::discountBondOption(Option::Type type,\n                                              Real
      strike,\n                                              Time t, Time s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CoxIngersollRoss::dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:128,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:128,1
    - Dst: ext::shared_ptr<Lattice>
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:129,1
    - Dst: QuantLib::CoxIngersollRoss::dynamics
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:130,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 131
    functionName: QuantLib::CoxIngersollRoss::tree
    functionSourceFile: /src/quantlib/ql/models/shortrate/onefactormodels/coxingersollross.cpp
    functionUses: 0
    functionsReached:
    - TrinomialTree::TrinomialTree
    - ext::shared_ptr<Lattice>
    - QuantLib::CoxIngersollRoss::dynamics
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: ext::shared_ptr<Lattice> CoxIngersollRoss::tree(const TimeGrid& grid)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' length'
    - ' volatility'
    - index
    - fixedLegFrequency
    - fixedLegDayCounter
    - includeFirstSwaplet
    - termStructure
    - errorType
    - type
    - shift
    argTypes:
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Frequency
    - DayCounter
    - bool
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 49
    functionName: QuantLib::CapHelper::CapHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CapHelper::CapHelper(const Period& length,\n                         const
      Handle<Quote>& volatility,\n                         ext::shared_ptr<IborIndex>
      index,\n                         Frequency fixedLegFrequency,\n                         DayCounter
      fixedLegDayCounter,\n                         bool includeFirstSwaplet,\n                         Handle<YieldTermStructure>
      termStructure,\n                         BlackCalibrationHelper::CalibrationErrorType
      errorType,\n                         const VolatilityType type,\n                         const
      Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:52,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:54,1
    - Dst: DiscretizedCapFloor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:57,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:58,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:59,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:60,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 61
    functionName: QuantLib::CapHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - calculate
    - std::vector::begin
    - dayCounter
    - std::vector::end
    - DiscretizedCapFloor
    - end
    - setupArguments
    - insert
    linkageType: ''
    returnType: void
    signature: void CapHelper::addTimesTo(std::list<Time>& times) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:64,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:65,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::CapHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real CapHelper::modelValue() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:70,1
    - Dst: ext::make_shared<BlackCapFloorEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:76,1
    - Dst: ext::make_shared<BachelierCapFloorEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:79,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:83,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:85,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:86,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 89
    functionName: QuantLib::CapHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - QL_FAIL
    - setPricingEngine
    - Actual365Fixed
    - NPV
    - ext::make_shared<BlackCapFloorEngine>
    - ext::make_shared<BachelierCapFloorEngine>
    linkageType: ''
    returnType: Real
    signature: Real CapHelper::blackPrice(Volatility sigma) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:93,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:97,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:98,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:100,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:101,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:106,1
    - Dst: currency
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:107,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:108,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:109,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:110,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:111,1
    - Dst: IborIndex::IborIndex
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:103,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:117,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:117,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:118,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:119,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:121,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:123,1
    - Dst: Period
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:126,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:127,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:130,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:133,1
    - Dst: Swap::setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:136,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:136,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:137,1
    - Dst: Swap::NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:138,1
    - Dst: Swap::legBPS
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:138,1
    - Dst: ext::make_shared<Cap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:139,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:140,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 144
    functionName: QuantLib::CapHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - Swap::legBPS
    - endOfMonth
    - dayCounter
    - QuantLib::BlackCalibrationHelper::performCalculations
    - Swap::NPV
    - referenceDate
    - tenor
    - Swap::setPricingEngine
    - IborIndex::IborIndex
    - IborLeg
    - fixingCalendar
    - ext::make_shared<Cap>
    - fixingDays
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Period
    - FixedRateLeg
    - std::vector<Rate>
    - currency
    - ext::shared_ptr<PricingEngine>
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void CapHelper::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' length'
    - ' volatility'
    - index
    - fixedLegFrequency
    - fixedLegDayCounter
    - includeFirstSwaplet
    - termStructure
    - errorType
    - type
    - shift
    argTypes:
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Frequency
    - DayCounter
    - bool
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 49
    functionName: QuantLib::CapHelper::CapHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CapHelper::CapHelper(const Period& length,\n                         const
      Handle<Quote>& volatility,\n                         ext::shared_ptr<IborIndex>
      index,\n                         Frequency fixedLegFrequency,\n                         DayCounter
      fixedLegDayCounter,\n                         bool includeFirstSwaplet,\n                         Handle<YieldTermStructure>
      termStructure,\n                         BlackCalibrationHelper::CalibrationErrorType
      errorType,\n                         const VolatilityType type,\n                         const
      Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:52,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:54,1
    - Dst: DiscretizedCapFloor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:57,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:58,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:59,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:60,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 61
    functionName: QuantLib::CapHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - calculate
    - std::vector::begin
    - dayCounter
    - std::vector::end
    - DiscretizedCapFloor
    - end
    - setupArguments
    - insert
    linkageType: ''
    returnType: void
    signature: void CapHelper::addTimesTo(std::list<Time>& times) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:64,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:65,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::CapHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real CapHelper::modelValue() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:70,1
    - Dst: ext::make_shared<BlackCapFloorEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:75,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:76,1
    - Dst: ext::make_shared<BachelierCapFloorEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:79,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:83,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:85,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:86,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 89
    functionName: QuantLib::CapHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - QL_FAIL
    - setPricingEngine
    - Actual365Fixed
    - NPV
    - ext::make_shared<BlackCapFloorEngine>
    - ext::make_shared<BachelierCapFloorEngine>
    linkageType: ''
    returnType: Real
    signature: Real CapHelper::blackPrice(Volatility sigma) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:93,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:97,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:98,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:100,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:101,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:106,1
    - Dst: currency
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:107,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:108,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:109,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:110,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:111,1
    - Dst: IborIndex::IborIndex
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:103,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:117,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:117,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:118,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:119,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:121,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:123,1
    - Dst: Period
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:126,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:127,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:130,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:133,1
    - Dst: Swap::setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:136,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:136,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:137,1
    - Dst: Swap::NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:138,1
    - Dst: Swap::legBPS
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:138,1
    - Dst: ext::make_shared<Cap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:139,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:140,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 144
    functionName: QuantLib::CapHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/caphelper.cpp
    functionUses: 0
    functionsReached:
    - Swap::legBPS
    - endOfMonth
    - dayCounter
    - QuantLib::BlackCalibrationHelper::performCalculations
    - Swap::NPV
    - referenceDate
    - tenor
    - Swap::setPricingEngine
    - IborIndex::IborIndex
    - IborLeg
    - fixingCalendar
    - ext::make_shared<Cap>
    - fixingDays
    - DiscountingSwapEngine::DiscountingSwapEngine
    - Period
    - FixedRateLeg
    - std::vector<Rate>
    - currency
    - ext::shared_ptr<PricingEngine>
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void CapHelper::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' maturity'
    - ' length'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Period
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Period& maturity,\n                                   const
      Period& length,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' exerciseDate'
    - ' length'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Date
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 83
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Date& exerciseDate,\n                                   const
      Period& length,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:106,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' exerciseDate'
    - ' endDate'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 108
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Date& exerciseDate,\n                                   const
      Date& endDate,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:112,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:114,1
    - Dst: DiscretizedSwaption
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:116,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:117,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:118,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:119,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:120,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 121
    functionName: QuantLib::SwaptionHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - calculate
    - std::vector::begin
    - dayCounter
    - std::vector::end
    - end
    - setupArguments
    - insert
    - DiscretizedSwaption
    linkageType: ''
    returnType: void
    signature: void SwaptionHelper::addTimesTo(std::list<Time>& times) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:124,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:125,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::SwaptionHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SwaptionHelper::modelValue() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:130,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:135,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:136,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:139,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:143,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:146,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:147,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:148,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 150
    functionName: QuantLib::SwaptionHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - calculate
    - ext::make_shared<BlackSwaptionEngine>
    - QL_FAIL
    - setPricingEngine
    - Actual365Fixed
    - NPV
    linkageType: ''
    returnType: Real
    signature: Real SwaptionHelper::blackPrice(Volatility sigma) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:154,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:156,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:157,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:157,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:161,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:162,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:162,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:164,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:165,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:166,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:170,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:171,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:172,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:174,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:175,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:177,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:178,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:179,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:182,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:185,1
    - Dst: QuantLib::SwaptionHelper::makeSwap
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:186,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:187,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:188,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:189,1
    - Dst: QuantLib::SwaptionHelper::makeSwap
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:195,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:196,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:197,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:198,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 199
    functionName: QuantLib::SwaptionHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<Swaption>
    - referenceDate
    - tenor
    - Null<Size>
    - Calendar::advance
    - EuropeanExercise::EuropeanExercise
    - fixingDays
    - valueDate
    - Null<Real>
    - auto::fairRate
    - QuantLib::BlackCalibrationHelper::performCalculations
    - Date
    - QuantLib::SwaptionHelper::makeSwap
    - setPricingEngine
    - auto::setPricingEngine
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: void SwaptionHelper::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:205,1
    - Dst: ext::make_shared<OvernightIndexedSwap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:207,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:208,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:209,1
    - Dst: Calendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:210,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - fixedSchedule
    - floatSchedule
    - exerciseRate
    - type
    argTypes:
    - Schedule
    - Schedule
    - Rate
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 216
    functionName: QuantLib::SwaptionHelper::makeSwap
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<VanillaSwap>
    - std::move
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::make_shared<OvernightIndexedSwap>
    - Calendar
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: "ext::shared_ptr<FixedVsFloatingSwap> SwaptionHelper::makeSwap(Schedule
      fixedSchedule,\n                                                                  Schedule
      floatSchedule,\n                                                                  Rate
      exerciseRate,\n                                                                  Swap::Type
      type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' maturity'
    - ' length'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Period
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Period& maturity,\n                                   const
      Period& length,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' exerciseDate'
    - ' length'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Date
    - Period
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 83
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Date& exerciseDate,\n                                   const
      Period& length,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:106,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 15
    argNames:
    - ' exerciseDate'
    - ' endDate'
    - ' volatility'
    - index
    - ' fixedLegTenor'
    - fixedLegDayCounter
    - floatingLegDayCounter
    - termStructure
    - errorType
    - strike
    - nominal
    - type
    - shift
    - settlementDays
    - averagingMethod
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<IborIndex>
    - Period
    - DayCounter
    - DayCounter
    - Handle<YieldTermStructure>
    - CalibrationErrorType
    - Real
    - Real
    - VolatilityType
    - Real
    - Natural
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 108
    functionName: QuantLib::SwaptionHelper::SwaptionHelper
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwaptionHelper::SwaptionHelper(const Date& exerciseDate,\n                                   const
      Date& endDate,\n                                   const Handle<Quote>& volatility,\n
      \                                  ext::shared_ptr<IborIndex> index,\n                                   const
      Period& fixedLegTenor,\n                                   DayCounter fixedLegDayCounter,\n
      \                                  DayCounter floatingLegDayCounter,\n                                   Handle<YieldTermStructure>
      termStructure,\n                                   CalibrationErrorType errorType,\n
      \                                  const Real strike,\n                                   const
      Real nominal,\n                                   const VolatilityType type,\n
      \                                  const Real shift,\n                                   Natural
      settlementDays,\n                                   RateAveraging::Type averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:112,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:114,1
    - Dst: DiscretizedSwaption
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:116,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:117,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:118,1
    - Dst: insert
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:119,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:120,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::list<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 121
    functionName: QuantLib::SwaptionHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - calculate
    - std::vector::begin
    - dayCounter
    - std::vector::end
    - end
    - setupArguments
    - insert
    - DiscretizedSwaption
    linkageType: ''
    returnType: void
    signature: void SwaptionHelper::addTimesTo(std::list<Time>& times) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:124,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:125,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::SwaptionHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SwaptionHelper::modelValue() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:130,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:135,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:136,1
    - Dst: ext::make_shared<BachelierSwaptionEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:139,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:143,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:146,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:147,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:148,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 150
    functionName: QuantLib::SwaptionHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BachelierSwaptionEngine>
    - calculate
    - ext::make_shared<BlackSwaptionEngine>
    - QL_FAIL
    - setPricingEngine
    - Actual365Fixed
    - NPV
    linkageType: ''
    returnType: Real
    signature: Real SwaptionHelper::blackPrice(Volatility sigma) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:154,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:156,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:157,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:157,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:161,1
    - Dst: valueDate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:162,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:162,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:164,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:165,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:166,1
    - Dst: Date
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:170,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:171,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:172,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:174,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:175,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:177,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:178,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:179,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:182,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:185,1
    - Dst: QuantLib::SwaptionHelper::makeSwap
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:186,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:187,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:188,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:189,1
    - Dst: QuantLib::SwaptionHelper::makeSwap
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:195,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:196,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:197,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:198,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 199
    functionName: QuantLib::SwaptionHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<Swaption>
    - referenceDate
    - tenor
    - Null<Size>
    - Calendar::advance
    - EuropeanExercise::EuropeanExercise
    - fixingDays
    - valueDate
    - Null<Real>
    - auto::fairRate
    - QuantLib::BlackCalibrationHelper::performCalculations
    - Date
    - QuantLib::SwaptionHelper::makeSwap
    - setPricingEngine
    - auto::setPricingEngine
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: void SwaptionHelper::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:205,1
    - Dst: ext::make_shared<OvernightIndexedSwap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:207,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:208,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:209,1
    - Dst: Calendar
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:210,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - fixedSchedule
    - floatSchedule
    - exerciseRate
    - type
    argTypes:
    - Schedule
    - Schedule
    - Rate
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 216
    functionName: QuantLib::SwaptionHelper::makeSwap
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp
    functionUses: 2
    functionsReached:
    - ext::make_shared<VanillaSwap>
    - std::move
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::make_shared<OvernightIndexedSwap>
    - Calendar
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: "ext::shared_ptr<FixedVsFloatingSwap> SwaptionHelper::makeSwap(Schedule
      fixedSchedule,\n                                                                  Schedule
      floatSchedule,\n                                                                  Rate
      exerciseRate,\n                                                                  Swap::Type
      type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& underlying() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: ext::shared_ptr<FixedVsFloatingSwap> & underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::SwaptionHelper::swaption
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<Swaption>
    signature: ext::shared_ptr<Swaption> swaption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& underlying() const'
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<FixedVsFloatingSwap>
    signature: ext::shared_ptr<FixedVsFloatingSwap> & underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::SwaptionHelper::swaption
    functionSourceFile: /src/quantlib/ql/models/shortrate/calibrationhelpers/swaptionhelper.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<Swaption>
    signature: ext::shared_ptr<Swaption> swaption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - a
    - b
    - vl
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::Garch11::Garch11
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Garch11(Real a, Real b, Real vl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' qs'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Garch11::Garch11
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: void Garch11(const time_series& qs, Mode mode = BestOfTwo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11::alpha
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Garch11::beta
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Garch11::omega
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Garch11::ltVol
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ltVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Garch11::logLikelihood
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real logLikelihood() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Garch11::mode
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Mode
    signature: Mode mode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calculate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::alpha
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::beta
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::omega
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Garch11::beta
    - QuantLib::Garch11::calculate
    - QuantLib::Garch11::alpha
    - QuantLib::Garch11::omega
    linkageType: ''
    returnType: time_series
    signature: time_series calculate(const time_series& quoteSeries) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:82,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 2
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: void calibrate(const time_series& quoteSeries) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:95,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' quoteSeries'
    - ' method'
    - ' endCriteria'
    argTypes:
    - time_series
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 3
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrate(const time_series& quoteSeries,\n                       OptimizationMethod&
      method,\n                       const EndCriteria& endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:104,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' quoteSeries'
    - ' method'
    - ' endCriteria'
    - ' initialGuess'
    argTypes:
    - time_series
    - OptimizationMethod
    - EndCriteria
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 4
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrate(const time_series& quoteSeries,\n                       OptimizationMethod&
      method,\n                       const EndCriteria& endCriteria,\n                       const
      Array& initialGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:112,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:114,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:117,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: void calibrate(ForwardIterator begin, ForwardIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:126,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:128,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:132,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - begin
    - end
    - ' method'
    - endCriteria
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: "void calibrate(ForwardIterator begin, ForwardIterator end,\n                       OptimizationMethod&
      method,\n                       EndCriteria endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:142,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:144,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:148,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - begin
    - end
    - ' method'
    - endCriteria
    - ' initialGuess'
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OptimizationMethod
    - EndCriteria
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: "void calibrate(ForwardIterator begin, ForwardIterator end,\n                       OptimizationMethod&
      method,\n                       EndCriteria endCriteria,\n                       const
      Array& initialGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - sigma2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::Garch11::forecast
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forecast(Real r, Real sigma2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/models/volatility/garch.hpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - begin
    - end
    - ' r2'
    argTypes:
    - InputIterator
    - InputIterator
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 168
    functionName: QuantLib::Garch11::to_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 3
    functionsReached:
    - push_back
    linkageType: ''
    returnType: Real
    signature: "Real to_r2(InputIterator begin, InputIterator end,\n                          std::vector<Volatility>&
      r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.hpp:246,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.hpp:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - begin
    - end
    - alpha
    - beta
    - omega
    argTypes:
    - InputIterator
    - InputIterator
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 249
    functionName: QuantLib::Garch11::costFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 3
    functionsReached:
    - Real
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real costFunction(InputIterator begin, InputIterator end,\n                                 Real
      alpha, Real beta, Real omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::alpha
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::beta
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::omega
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: QuantLib::Garch11::costFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Garch11::beta
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::alpha
    - QuantLib::Garch11::omega
    linkageType: ''
    returnType: Real
    signature: Real costFunction(InputIterator begin, InputIterator end) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - a
    - b
    - vl
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::Garch11::Garch11
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Garch11(Real a, Real b, Real vl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' qs'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Garch11::Garch11
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: void Garch11(const time_series& qs, Mode mode = BestOfTwo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11::alpha
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Garch11::beta
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Garch11::omega
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Garch11::ltVol
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ltVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Garch11::logLikelihood
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real logLikelihood() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Garch11::mode
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Mode
    signature: Mode mode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calculate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::alpha
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::beta
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    - Dst: QuantLib::Garch11::omega
      Src: /src/quantlib/ql/models/volatility/garch.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Garch11::beta
    - QuantLib::Garch11::calculate
    - QuantLib::Garch11::alpha
    - QuantLib::Garch11::omega
    linkageType: ''
    returnType: time_series
    signature: time_series calculate(const time_series& quoteSeries) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:82,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - time_series
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 6
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: void calibrate(const time_series& quoteSeries) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:95,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' quoteSeries'
    - ' method'
    - ' endCriteria'
    argTypes:
    - time_series
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 7
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrate(const time_series& quoteSeries,\n                       OptimizationMethod&
      method,\n                       const EndCriteria& endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/garch.hpp:104,1
    - Dst: QuantLib::Garch11::calibrate
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    - Dst: auto::cbegin
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    - Dst: auto::cend
      Src: /src/quantlib/ql/models/volatility/garch.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' quoteSeries'
    - ' method'
    - ' endCriteria'
    - ' initialGuess'
    argTypes:
    - time_series
    - OptimizationMethod
    - EndCriteria
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 8
    functionsReached:
    - values
    - auto::cbegin
    - auto::cend
    - QuantLib::Garch11::calibrate
    linkageType: ''
    returnType: void
    signature: "void calibrate(const time_series& quoteSeries,\n                       OptimizationMethod&
      method,\n                       const EndCriteria& endCriteria,\n                       const
      Array& initialGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:112,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:114,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:117,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: void calibrate(ForwardIterator begin, ForwardIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:126,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:128,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:132,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - begin
    - end
    - ' method'
    - endCriteria
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OptimizationMethod
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: "void calibrate(ForwardIterator begin, ForwardIterator end,\n                       OptimizationMethod&
      method,\n                       EndCriteria endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::to_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:142,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.hpp:144,1
    - Dst: ext::shared_ptr::functionValue
      Src: /src/quantlib/ql/models/volatility/garch.hpp:148,1
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - begin
    - end
    - ' method'
    - endCriteria
    - ' initialGuess'
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OptimizationMethod
    - EndCriteria
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: QuantLib::Garch11::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::to_r2
    - QuantLib::Garch11::calibrate_r2
    - ext::shared_ptr::functionValue
    linkageType: ''
    returnType: void
    signature: "void calibrate(ForwardIterator begin, ForwardIterator end,\n                       OptimizationMethod&
      method,\n                       EndCriteria endCriteria,\n                       const
      Array& initialGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - sigma2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::Garch11::forecast
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forecast(Real r, Real sigma2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/models/volatility/garch.hpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - begin
    - end
    - ' r2'
    argTypes:
    - InputIterator
    - InputIterator
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 168
    functionName: QuantLib::Garch11::to_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 6
    functionsReached:
    - push_back
    linkageType: ''
    returnType: Real
    signature: "Real to_r2(InputIterator begin, InputIterator end,\n                          std::vector<Volatility>&
      r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.hpp:246,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.hpp:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - begin
    - end
    - alpha
    - beta
    - omega
    argTypes:
    - InputIterator
    - InputIterator
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 249
    functionName: QuantLib::Garch11::costFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 7
    functionsReached:
    - Real
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real costFunction(InputIterator begin, InputIterator end,\n                                 Real
      alpha, Real beta, Real omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::costFunction
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::alpha
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::beta
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    - Dst: QuantLib::Garch11::omega
      Src: /src/quantlib/ql/models/volatility/garch.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - InputIterator
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: QuantLib::Garch11::costFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::Garch11::beta
    - QuantLib::Garch11::costFunction
    - QuantLib::Garch11::alpha
    - QuantLib::Garch11::omega
    linkageType: ''
    returnType: Real
    signature: Real costFunction(InputIterator begin, InputIterator end) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Garch11Constraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl (Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::Garch11Constraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:49,1
    - Dst: Garch11Constraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::Garch11Constraint::Garch11Constraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - Garch11Constraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Garch11Constraint(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r2
    argTypes:
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11CostFunction::Garch11CostFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Garch11CostFunction::Garch11CostFunction(\n                                            const
      std::vector<Volatility> &r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11CostFunction::value
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Garch11CostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::Garch11CostFunction::values
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array Garch11CostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:101,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: QuantLib::Garch11CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Garch11CostFunction::gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:128,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 139
    functionName: QuantLib::Garch11CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - std::log
    - begin
    - size
    - end
    linkageType: ''
    returnType: Real
    signature: "Real Garch11CostFunction::valueAndGradient(Array& grad,\n                                                   const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - A2
    - acf
    - idx
    argTypes:
    - Real
    - Array
    - std::vector<std::size_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::FitAcfProblem::FitAcfProblem
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FitAcfProblem::FitAcfProblem(Real A2, Array acf, std::vector<std::size_t>
      idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 161
    functionName: QuantLib::FitAcfProblem::size
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FitAcfProblem::size
    linkageType: ''
    returnType: Size
    signature: Size FitAcfProblem::size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' x'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::FitAcfProblem::targetAndValue
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetAndValue(const Array& x, Array& target,\n
      \                                          Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - ' x'
    - ' grad_fct2fit'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Matrix
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 204
    functionName: QuantLib::FitAcfProblem::targetValueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetValueAndGradient(const Array& x,\n                                                   Matrix&
      grad_fct2fit,\n                                                   Array& target,\n
      \                                                  Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: QuantLib::FitAcfConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: QuantLib::FitAcfConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:222,1
    - Dst: FitAcfConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::FitAcfConstraint::FitAcfConstraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - FitAcfConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void FitAcfConstraint(Real gammaLower, Real gammaUpper)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garch.cpp:246,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:247,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:253,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:260,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:286,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:297,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:299,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:304,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 313
    functionName: QuantLib::initialGuess1
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - std::fabs
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess1(const Array &acf, Real mean_r2,\n                           Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:333,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:337,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:353,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:355,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 369
    functionName: QuantLib::initialGuess2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess2 (const Array &acf, Real mean_r2,\n                            Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Garch11Constraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl (Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::Garch11Constraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:49,1
    - Dst: Garch11Constraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::Garch11Constraint::Garch11Constraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - Garch11Constraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Garch11Constraint(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r2
    argTypes:
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11CostFunction::Garch11CostFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Garch11CostFunction::Garch11CostFunction(\n                                            const
      std::vector<Volatility> &r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11CostFunction::value
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Garch11CostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::Garch11CostFunction::values
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array Garch11CostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:101,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: QuantLib::Garch11CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Garch11CostFunction::gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:128,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 139
    functionName: QuantLib::Garch11CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - std::log
    - begin
    - size
    - end
    linkageType: ''
    returnType: Real
    signature: "Real Garch11CostFunction::valueAndGradient(Array& grad,\n                                                   const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - A2
    - acf
    - idx
    argTypes:
    - Real
    - Array
    - std::vector<std::size_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::FitAcfProblem::FitAcfProblem
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FitAcfProblem::FitAcfProblem(Real A2, Array acf, std::vector<std::size_t>
      idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 161
    functionName: QuantLib::FitAcfProblem::size
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FitAcfProblem::size
    linkageType: ''
    returnType: Size
    signature: Size FitAcfProblem::size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' x'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::FitAcfProblem::targetAndValue
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetAndValue(const Array& x, Array& target,\n
      \                                          Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - ' x'
    - ' grad_fct2fit'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Matrix
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 204
    functionName: QuantLib::FitAcfProblem::targetValueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetValueAndGradient(const Array& x,\n                                                   Matrix&
      grad_fct2fit,\n                                                   Array& target,\n
      \                                                  Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: QuantLib::FitAcfConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: QuantLib::FitAcfConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:222,1
    - Dst: FitAcfConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::FitAcfConstraint::FitAcfConstraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - FitAcfConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void FitAcfConstraint(Real gammaLower, Real gammaUpper)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garch.cpp:246,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:247,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:253,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:260,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:286,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:297,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:299,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:304,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 313
    functionName: QuantLib::initialGuess1
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - std::fabs
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess1(const Array &acf, Real mean_r2,\n                           Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:333,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:337,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:353,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:355,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 369
    functionName: QuantLib::initialGuess2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess2 (const Array &acf, Real mean_r2,\n                            Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:377,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:380,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:382,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - ' quoteSeries'
    - alpha
    - beta
    - omega
    argTypes:
    - time_series
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 390
    functionName: QuantLib::Garch11::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 2
    functionsReached:
    - end
    - std::sqrt
    - cbegin
    linkageType: ''
    returnType: Garch11::time_series
    signature: "Garch11::time_series Garch11::calculate(const time_series& quoteSeries,\n
      \                      Real alpha, Real beta, Real omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - mode
    - r2
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Mode
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 400
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n                   Mode
      mode, const std::vector<Volatility> &r2, Real mean_r2,\n                   Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:406,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:410,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:412,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:416,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:418,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: autocovariances
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:422,1
    - Dst: initialGuess1
      Src: /src/quantlib/ql/models/volatility/garch.cpp:431,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:432,1
    - Dst: initialGuess2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:438,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:439,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:447,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:464,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:469,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:470,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:470,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:476,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:481,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:482,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:482,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 68
    argCount: 8
    argNames:
    - mode
    - r2
    - mean_r2
    - method
    - endCriteria
    - alpha
    - beta
    - omega
    argTypes:
    - Mode
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - EndCriteria
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 500
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - Garch11Constraint::test
    - std::vector<Volatility>::end
    - std::vector::begin
    - Array::begin
    - std::vector::end
    - initialGuess2
    - Real
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - Garch11CostFunction::value
    - std::min
    - std::sqrt
    - std::transform
    - autocovariances
    - initialGuess1
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n                   Mode
      mode, const std::vector<Volatility> &r2, Real mean_r2,\n                   OptimizationMethod
      &method, const EndCriteria &endCriteria,\n                   Real &alpha, Real
      &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - r2
    - method
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - OptimizationMethod
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 502
    functionDepth: 1
    functionLinenumber: 502
    functionLinenumberEnd: 510
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 9
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               OptimizationMethod &method,\n               const
      EndCriteria &endCriteria,\n               const Array &initGuess, Real &alpha,
      Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:518,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - r2
    - mean_r2
    - method
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 523
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - std::vector<Volatility>::end
    - std::vector::begin
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - std::transform
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               Real mean_r2,\n               OptimizationMethod
      &method,\n               const EndCriteria &endCriteria,\n               const
      Array &initGuess, Real &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Problem::Problem
      Src: /src/quantlib/ql/models/volatility/garch.cpp:533,1
    - Dst: OptimizationMethod::minimize
      Src: /src/quantlib/ql/models/volatility/garch.cpp:536,1
    - Dst: ext::shared_ptr::currentValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - r2
    - method
    - constraints
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - OptimizationMethod
    - Constraint
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 542
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 10
    functionsReached:
    - Problem::Problem
    - ext::shared_ptr::currentValue
    - OptimizationMethod::minimize
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               OptimizationMethod &method,\n               Constraint
      &constraints,\n               const EndCriteria &endCriteria,\n               const
      Array &initGuess, Real &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:551,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - r2
    - mean_r2
    - method
    - constraints
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - Constraint
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 556
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - std::vector<Volatility>::end
    - std::vector::begin
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - std::transform
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               Real mean_r2,\n               OptimizationMethod
      &method,\n               Constraint &constraints,\n               const EndCriteria
      &endCriteria,\n               const Array &initGuess, Real &alpha, Real &beta,
      Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Garch11Constraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl (Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::Garch11Constraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:49,1
    - Dst: Garch11Constraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::Garch11Constraint::Garch11Constraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - Garch11Constraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Garch11Constraint(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r2
    argTypes:
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11CostFunction::Garch11CostFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Garch11CostFunction::Garch11CostFunction(\n                                            const
      std::vector<Volatility> &r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11CostFunction::value
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Garch11CostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::Garch11CostFunction::values
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array Garch11CostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:101,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: QuantLib::Garch11CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Garch11CostFunction::gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:128,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 139
    functionName: QuantLib::Garch11CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - std::log
    - begin
    - size
    - end
    linkageType: ''
    returnType: Real
    signature: "Real Garch11CostFunction::valueAndGradient(Array& grad,\n                                                   const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - A2
    - acf
    - idx
    argTypes:
    - Real
    - Array
    - std::vector<std::size_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::FitAcfProblem::FitAcfProblem
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FitAcfProblem::FitAcfProblem(Real A2, Array acf, std::vector<std::size_t>
      idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 161
    functionName: QuantLib::FitAcfProblem::size
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::FitAcfProblem::size
    linkageType: ''
    returnType: Size
    signature: Size FitAcfProblem::size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' x'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::FitAcfProblem::targetAndValue
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetAndValue(const Array& x, Array& target,\n
      \                                          Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - ' x'
    - ' grad_fct2fit'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Matrix
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 204
    functionName: QuantLib::FitAcfProblem::targetValueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetValueAndGradient(const Array& x,\n                                                   Matrix&
      grad_fct2fit,\n                                                   Array& target,\n
      \                                                  Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: QuantLib::FitAcfConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: QuantLib::FitAcfConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:222,1
    - Dst: FitAcfConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::FitAcfConstraint::FitAcfConstraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - FitAcfConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void FitAcfConstraint(Real gammaLower, Real gammaUpper)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garch.cpp:246,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:247,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:253,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:260,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:286,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:297,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:299,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:304,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 313
    functionName: QuantLib::initialGuess1
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - std::fabs
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess1(const Array &acf, Real mean_r2,\n                           Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:333,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:337,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:353,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:355,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 369
    functionName: QuantLib::initialGuess2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess2 (const Array &acf, Real mean_r2,\n                            Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Garch11Constraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl (Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:41,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::Garch11Constraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:49,1
    - Dst: Garch11Constraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::Garch11Constraint::Garch11Constraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - Garch11Constraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Garch11Constraint(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - r2
    argTypes:
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::Garch11CostFunction::Garch11CostFunction
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Garch11CostFunction::Garch11CostFunction(\n                                            const
      std::vector<Volatility> &r2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::Garch11CostFunction::value
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Garch11CostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::Garch11CostFunction::values
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array Garch11CostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:101,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: QuantLib::Garch11CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void Garch11CostFunction::gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:118,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garch.cpp:128,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 139
    functionName: QuantLib::Garch11CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::transform
    - std::log
    - begin
    - size
    - end
    linkageType: ''
    returnType: Real
    signature: "Real Garch11CostFunction::valueAndGradient(Array& grad,\n                                                   const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/volatility/garch.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - A2
    - acf
    - idx
    argTypes:
    - Real
    - Array
    - std::vector<std::size_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::FitAcfProblem::FitAcfProblem
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FitAcfProblem::FitAcfProblem(Real A2, Array acf, std::vector<std::size_t>
      idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 161
    functionName: QuantLib::FitAcfProblem::size
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::FitAcfProblem::size
    linkageType: ''
    returnType: Size
    signature: Size FitAcfProblem::size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' x'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::FitAcfProblem::targetAndValue
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetAndValue(const Array& x, Array& target,\n
      \                                          Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FitAcfProblem::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:197,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/volatility/garch.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - ' x'
    - ' grad_fct2fit'
    - ' target'
    - ' fct2fit'
    argTypes:
    - Array
    - Matrix
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 204
    functionName: QuantLib::FitAcfProblem::targetValueAndGradient
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FitAcfProblem::size
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void FitAcfProblem::targetValueAndGradient(const Array& x,\n                                                   Matrix&
      grad_fct2fit,\n                                                   Array& target,\n
      \                                                  Array& fct2fit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: QuantLib::FitAcfConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real gammaLower, Real gammaUpper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: QuantLib::FitAcfConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/volatility/garch.cpp:222,1
    - Dst: FitAcfConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/volatility/garch.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - gammaLower
    - gammaUpper
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::FitAcfConstraint::FitAcfConstraint
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - FitAcfConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void FitAcfConstraint(Real gammaLower, Real gammaUpper)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:238,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:242,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garch.cpp:246,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:247,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:248,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:253,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:254,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:260,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:274,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:286,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:297,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:299,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:304,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 313
    functionName: QuantLib::initialGuess1
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - std::fabs
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess1(const Array &acf, Real mean_r2,\n                           Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:324,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:333,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/volatility/garch.cpp:337,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/volatility/garch.cpp:343,1
    - Dst: NonLinearLeastSquare::setInitialValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:353,1
    - Dst: NonLinearLeastSquare::perform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:355,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 5
    argNames:
    - acf
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Array
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 369
    functionName: QuantLib::initialGuess2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 0
    functionsReached:
    - NonLinearLeastSquare::perform
    - Garch11Constraint::test
    - Real
    - std::max
    - Array::size
    - std::sqrt
    - NonLinearLeastSquare::setInitialValue
    - std::vector::push_back
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real initialGuess2 (const Array &acf, Real mean_r2,\n                            Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:377,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:380,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:382,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - ' quoteSeries'
    - alpha
    - beta
    - omega
    argTypes:
    - time_series
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 390
    functionName: QuantLib::Garch11::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 2
    functionsReached:
    - end
    - std::sqrt
    - cbegin
    linkageType: ''
    returnType: Garch11::time_series
    signature: "Garch11::time_series Garch11::calculate(const time_series& quoteSeries,\n
      \                      Real alpha, Real beta, Real omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - mode
    - r2
    - mean_r2
    - alpha
    - beta
    - omega
    argTypes:
    - Mode
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 400
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 12
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n                   Mode
      mode, const std::vector<Volatility> &r2, Real mean_r2,\n                   Real
      &alpha, Real &beta, Real &omega)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/models/volatility/garch.cpp:406,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:410,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:412,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garch.cpp:416,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:418,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:419,1
    - Dst: autocovariances
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:421,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/volatility/garch.cpp:422,1
    - Dst: initialGuess1
      Src: /src/quantlib/ql/models/volatility/garch.cpp:431,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:432,1
    - Dst: initialGuess2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:438,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:439,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:447,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:464,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:469,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:470,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:470,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:476,1
    - Dst: Garch11Constraint::test
      Src: /src/quantlib/ql/models/volatility/garch.cpp:481,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/volatility/garch.cpp:482,1
    - Dst: Garch11CostFunction::value
      Src: /src/quantlib/ql/models/volatility/garch.cpp:482,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 68
    argCount: 8
    argNames:
    - mode
    - r2
    - mean_r2
    - method
    - endCriteria
    - alpha
    - beta
    - omega
    argTypes:
    - Mode
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - EndCriteria
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 500
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 13
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - Garch11Constraint::test
    - std::vector<Volatility>::end
    - std::vector::begin
    - Array::begin
    - std::vector::end
    - initialGuess2
    - Real
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - Garch11CostFunction::value
    - std::min
    - std::sqrt
    - std::transform
    - autocovariances
    - initialGuess1
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n                   Mode
      mode, const std::vector<Volatility> &r2, Real mean_r2,\n                   OptimizationMethod
      &method, const EndCriteria &endCriteria,\n                   Real &alpha, Real
      &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - r2
    - method
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - OptimizationMethod
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 502
    functionDepth: 1
    functionLinenumber: 502
    functionLinenumberEnd: 510
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 14
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               OptimizationMethod &method,\n               const
      EndCriteria &endCriteria,\n               const Array &initGuess, Real &alpha,
      Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:518,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:519,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - r2
    - mean_r2
    - method
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 523
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 15
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - std::vector<Volatility>::end
    - std::vector::begin
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - std::transform
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               Real mean_r2,\n               OptimizationMethod
      &method,\n               const EndCriteria &endCriteria,\n               const
      Array &initGuess, Real &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Problem::Problem
      Src: /src/quantlib/ql/models/volatility/garch.cpp:533,1
    - Dst: OptimizationMethod::minimize
      Src: /src/quantlib/ql/models/volatility/garch.cpp:536,1
    - Dst: ext::shared_ptr::currentValue
      Src: /src/quantlib/ql/models/volatility/garch.cpp:537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - r2
    - method
    - constraints
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - OptimizationMethod
    - Constraint
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 542
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 15
    functionsReached:
    - Problem::Problem
    - ext::shared_ptr::currentValue
    - OptimizationMethod::minimize
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               OptimizationMethod &method,\n               Constraint
      &constraints,\n               const EndCriteria &endCriteria,\n               const
      Array &initGuess, Real &alpha, Real &beta, Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/models/volatility/garch.cpp:551,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector<Volatility>::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector<Volatility>::end
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/volatility/garch.cpp:552,1
    - Dst: QuantLib::Garch11::calibrate_r2
      Src: /src/quantlib/ql/models/volatility/garch.cpp:554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - r2
    - mean_r2
    - method
    - constraints
    - endCriteria
    - initGuess
    - alpha
    - beta
    - omega
    argTypes:
    - std::vector<Volatility>
    - Real
    - OptimizationMethod
    - Constraint
    - EndCriteria
    - Array
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 556
    functionName: QuantLib::Garch11::calibrate_r2
    functionSourceFile: /src/quantlib/ql/models/volatility/garch.cpp
    functionUses: 16
    functionsReached:
    - QuantLib::Garch11::calibrate_r2
    - std::vector<Volatility>::end
    - std::vector::begin
    - std::vector<Volatility>::begin
    - std::vector<Volatility>::size
    - std::transform
    linkageType: ''
    returnType: ext::shared_ptr<Problem>
    signature: "ext::shared_ptr<Problem> Garch11::calibrate_r2(\n               const
      std::vector<Volatility> &r2,\n               Real mean_r2,\n               OptimizationMethod
      &method,\n               Constraint &constraints,\n               const EndCriteria
      &endCriteria,\n               const Array &initGuess, Real &alpha, Real &beta,
      Real &omega)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: QuantLib::GarmanKlassAbstract::GarmanKlassAbstract
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassAbstract(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    - Dst: calculatePoint
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<IntervalPrice>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: QuantLib::GarmanKlassAbstract::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - begin
    - calculatePoint
    - std::fabs
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<IntervalPrice>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::GarmanKlassSimpleSigma::GarmanKlassSimpleSigma
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSimpleSigma(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::GarmanKlassSimpleSigma::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - open
    - close
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - y
    - marketOpenFraction
    - a
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::GarmanKlassOpenClose::GarmanKlassOpenClose
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GarmanKlassOpenClose(Real y, Real marketOpenFraction,\n                             Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:93,1
    - Dst: TimeSeries<IntervalPrice>::const_iterator::second::close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:94,1
    - Dst: second::open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:94,1
    - Dst: QuantLib::GarmanKlassSimpleSigma::calculatePoint
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<IntervalPrice>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: QuantLib::GarmanKlassOpenClose::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - TimeSeries<IntervalPrice>::const_iterator::second::close
    - std::log
    - QuantLib::GarmanKlassSimpleSigma::calculatePoint
    - begin
    - second::open
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<IntervalPrice>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::GarmanKlassSigma1::GarmanKlassSigma1
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma1(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::ParkinsonSigma::ParkinsonSigma
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParkinsonSigma(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::ParkinsonSigma::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - open
    - high
    - low
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::GarmanKlassSigma3::GarmanKlassSigma3
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma3(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::GarmanKlassSigma4::GarmanKlassSigma4
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma4(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionName: QuantLib::GarmanKlassSigma4::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - open
    - low
    - high
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: QuantLib::GarmanKlassSigma5::GarmanKlassSigma5
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma5(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionName: QuantLib::GarmanKlassSigma5::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - open
    - low
    - high
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::GarmanKlassSigma6::GarmanKlassSigma6
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma6(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: QuantLib::GarmanKlassAbstract::GarmanKlassAbstract
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassAbstract(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    - Dst: calculatePoint
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<IntervalPrice>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: QuantLib::GarmanKlassAbstract::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - begin
    - calculatePoint
    - std::fabs
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<IntervalPrice>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::GarmanKlassSimpleSigma::GarmanKlassSimpleSigma
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSimpleSigma(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::GarmanKlassSimpleSigma::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 1
    functionsReached:
    - open
    - close
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - y
    - marketOpenFraction
    - a
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::GarmanKlassOpenClose::GarmanKlassOpenClose
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GarmanKlassOpenClose(Real y, Real marketOpenFraction,\n                             Real
      a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:93,1
    - Dst: TimeSeries<IntervalPrice>::const_iterator::second::close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:94,1
    - Dst: second::open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:94,1
    - Dst: QuantLib::GarmanKlassSimpleSigma::calculatePoint
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<IntervalPrice>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: QuantLib::GarmanKlassOpenClose::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - TimeSeries<IntervalPrice>::const_iterator::second::close
    - std::log
    - QuantLib::GarmanKlassSimpleSigma::calculatePoint
    - begin
    - second::open
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<IntervalPrice>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::GarmanKlassSigma1::GarmanKlassSigma1
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma1(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::ParkinsonSigma::ParkinsonSigma
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParkinsonSigma(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:124,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::ParkinsonSigma::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - open
    - high
    - low
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::GarmanKlassSigma3::GarmanKlassSigma3
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma3(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::GarmanKlassSigma4::GarmanKlassSigma4
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma4(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:150,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionName: QuantLib::GarmanKlassSigma4::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - open
    - low
    - high
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: QuantLib::GarmanKlassSigma5::GarmanKlassSigma5
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma5(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: high
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:163,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: low
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:164,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: close
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: open
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:165,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/garmanklass.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - IntervalPrice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionName: QuantLib::GarmanKlassSigma5::calculatePoint
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - open
    - low
    - high
    linkageType: ''
    returnType: Real
    signature: Real calculatePoint(const IntervalPrice& p) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - y
    - marketOpenFraction
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::GarmanKlassSigma6::GarmanKlassSigma6
    functionSourceFile: /src/quantlib/ql/models/volatility/garmanklass.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GarmanKlassSigma6(Real y, Real marketOpenFraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantEstimator::ConstantEstimator
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConstantEstimator(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::ConstantEstimator::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calibrate(const TimeSeries<Volatility>&) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantEstimator::ConstantEstimator
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConstantEstimator(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::ConstantEstimator::calibrate
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calibrate(const TimeSeries<Volatility>&) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:26,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:28,1
    - Dst: std::advance
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:31,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - ' volatilitySeries'
    argTypes:
    - TimeSeries<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 44
    functionName: QuantLib::ConstantEstimator::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::sqrt
    - values
    - std::advance
    - size
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> ConstantEstimator::calculate(const TimeSeries<Volatility>&
      volatilitySeries)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:26,1
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:28,1
    - Dst: std::advance
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:31,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/constantestimator.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - ' volatilitySeries'
    argTypes:
    - TimeSeries<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 44
    functionName: QuantLib::ConstantEstimator::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/constantestimator.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::sqrt
    - values
    - std::advance
    - size
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> ConstantEstimator::calculate(const TimeSeries<Volatility>&
      volatilitySeries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: QuantLib::SimpleLocalEstimator::SimpleLocalEstimator
    functionSourceFile: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleLocalEstimator(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:47,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionName: QuantLib::SimpleLocalEstimator::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - begin
    - std::fabs
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<Real>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: QuantLib::SimpleLocalEstimator::SimpleLocalEstimator
    functionSourceFile: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleLocalEstimator(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:47,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:50,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' quoteSeries'
    argTypes:
    - TimeSeries<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionName: QuantLib::SimpleLocalEstimator::calculate
    functionSourceFile: /src/quantlib/ql/models/volatility/simplelocalestimator.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - begin
    - std::fabs
    - std::sqrt
    - end
    linkageType: ''
    returnType: TimeSeries<Volatility>
    signature: TimeSeries<Volatility> calculate(const TimeSeries<Real>& quoteSeries)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:28,1
    - Dst: QuantLib::HestonModel::theta
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:28,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:30,1
    - Dst: QuantLib::HestonModel::kappa
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:32,1
    - Dst: QuantLib::HestonModel::sigma
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:33,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:34,1
    - Dst: QuantLib::HestonModel::rho
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:34,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:35,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:36,1
    - Dst: QuantLib::HestonModel::v0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:36,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:37,1
    - Dst: QuantLib::HestonModel::generateArguments
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:40,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:41,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:42,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::HestonModel::HestonModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonModel::kappa
    - QuantLib::HestonModel::sigma
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::HestonModel::theta
    - dividendYield
    - s0
    - QuantLib::HestonModel::generateArguments
    - BoundaryConstraint
    - riskFreeRate
    - registerWith
    - QuantLib::HestonModel::rho
    - QuantLib::HestonModel::v0
    linkageType: ''
    returnType: void
    signature: void HestonModel::HestonModel(const ext::shared_ptr<HestonProcess>
      & process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<HestonProcess>
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:46,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:46,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:47,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:48,1
    - Dst: QuantLib::HestonModel::v0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::kappa
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::theta
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::sigma
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:50,1
    - Dst: QuantLib::HestonModel::rho
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::HestonModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::HestonModel::kappa
    - QuantLib::HestonModel::theta
    - QuantLib::HestonModel::sigma
    - riskFreeRate
    - ext::make_shared<HestonProcess>
    - QuantLib::HestonModel::v0
    - QuantLib::HestonModel::rho
    linkageType: ''
    returnType: void
    signature: void HestonModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:28,1
    - Dst: QuantLib::HestonModel::theta
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:28,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:30,1
    - Dst: QuantLib::HestonModel::kappa
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:32,1
    - Dst: QuantLib::HestonModel::sigma
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:33,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:34,1
    - Dst: QuantLib::HestonModel::rho
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:34,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:35,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:36,1
    - Dst: QuantLib::HestonModel::v0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:36,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:37,1
    - Dst: QuantLib::HestonModel::generateArguments
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:40,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:41,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:42,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::HestonModel::HestonModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonModel::kappa
    - QuantLib::HestonModel::sigma
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::HestonModel::theta
    - dividendYield
    - s0
    - QuantLib::HestonModel::generateArguments
    - BoundaryConstraint
    - riskFreeRate
    - registerWith
    - QuantLib::HestonModel::rho
    - QuantLib::HestonModel::v0
    linkageType: ''
    returnType: void
    signature: void HestonModel::HestonModel(const ext::shared_ptr<HestonProcess>
      & process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<HestonProcess>
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:46,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:46,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:47,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:48,1
    - Dst: QuantLib::HestonModel::v0
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::kappa
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::theta
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:49,1
    - Dst: QuantLib::HestonModel::sigma
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:50,1
    - Dst: QuantLib::HestonModel::rho
      Src: /src/quantlib/ql/models/equity/hestonmodel.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::HestonModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::HestonModel::kappa
    - QuantLib::HestonModel::theta
    - QuantLib::HestonModel::sigma
    - riskFreeRate
    - ext::make_shared<HestonProcess>
    - QuantLib::HestonModel::v0
    - QuantLib::HestonModel::rho
    linkageType: ''
    returnType: void
    signature: void HestonModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:27,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: QuantLib::BatesModel::nu
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: QuantLib::BatesModel::delta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: QuantLib::BatesModel::lambda
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: QuantLib::BatesModel::generateArguments
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<BatesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 37
    functionName: QuantLib::BatesModel::BatesModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - QuantLib::BatesModel::delta
    - PositiveConstraint
    - resize
    - NoConstraint
    - QuantLib::BatesModel::lambda
    - QuantLib::BatesModel::generateArguments
    - QuantLib::BatesModel::nu
    linkageType: ''
    returnType: void
    signature: void BatesModel::BatesModel(const ext::shared_ptr<BatesProcess> & process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BatesProcess>
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:40,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:41,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:41,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:42,1
    - Dst: v0
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:42,1
    - Dst: kappa
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: theta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: rho
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: QuantLib::BatesModel::lambda
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    - Dst: QuantLib::BatesModel::nu
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    - Dst: QuantLib::BatesModel::delta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::BatesModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 1
    functionsReached:
    - kappa
    - dividendYield
    - s0
    - sigma
    - QuantLib::BatesModel::delta
    - v0
    - theta
    - riskFreeRate
    - QuantLib::BatesModel::lambda
    - ext::make_shared<BatesProcess>
    - rho
    - QuantLib::BatesModel::nu
    linkageType: ''
    returnType: void
    signature: void BatesModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:51,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:54,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:56,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' process'
    - kappaLambda
    - thetaLambda
    argTypes:
    - ext::shared_ptr<BatesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 57
    functionName: QuantLib::BatesDetJumpModel::BatesDetJumpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpModel::BatesDetJumpModel(\n            const ext::shared_ptr<BatesProcess>
      & process,\n            Real kappaLambda, Real thetaLambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:64,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:66,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:67,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:68,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:68,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:69,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:69,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:70,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - ' process'
    - lambda
    - nuUp
    - nuDown
    - p
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 71
    functionName: QuantLib::BatesDoubleExpModel::BatesDoubleExpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - BoundaryConstraint
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpModel::BatesDoubleExpModel(\n        const ext::shared_ptr<HestonProcess>
      & process,\n        Real lambda, Real nuUp, Real nuDown, Real p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:79,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:82,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:82,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:84,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - lambda
    - nuUp
    - nuDown
    - p
    - kappaLambda
    - thetaLambda
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 85
    functionName: QuantLib::BatesDoubleExpDetJumpModel::BatesDoubleExpDetJumpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpModel::BatesDoubleExpDetJumpModel(\n        const
      ext::shared_ptr<HestonProcess> & process,\n        Real lambda, Real nuUp, Real
      nuDown,\n        Real p, Real kappaLambda, Real thetaLambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:27,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: QuantLib::BatesModel::nu
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: QuantLib::BatesModel::delta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: QuantLib::BatesModel::lambda
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:34,1
    - Dst: QuantLib::BatesModel::generateArguments
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<BatesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 25
    functionDepth: 2
    functionLinenumber: 25
    functionLinenumberEnd: 37
    functionName: QuantLib::BatesModel::BatesModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - QuantLib::BatesModel::delta
    - PositiveConstraint
    - resize
    - NoConstraint
    - QuantLib::BatesModel::lambda
    - QuantLib::BatesModel::generateArguments
    - QuantLib::BatesModel::nu
    linkageType: ''
    returnType: void
    signature: void BatesModel::BatesModel(const ext::shared_ptr<BatesProcess> & process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BatesProcess>
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:40,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:41,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:41,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:42,1
    - Dst: v0
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:42,1
    - Dst: kappa
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: theta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: sigma
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: rho
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:43,1
    - Dst: QuantLib::BatesModel::lambda
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    - Dst: QuantLib::BatesModel::nu
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    - Dst: QuantLib::BatesModel::delta
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::BatesModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 2
    functionsReached:
    - kappa
    - dividendYield
    - s0
    - sigma
    - QuantLib::BatesModel::delta
    - v0
    - theta
    - riskFreeRate
    - QuantLib::BatesModel::lambda
    - ext::make_shared<BatesProcess>
    - rho
    - QuantLib::BatesModel::nu
    linkageType: ''
    returnType: void
    signature: void BatesModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:51,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:54,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:56,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' process'
    - kappaLambda
    - thetaLambda
    argTypes:
    - ext::shared_ptr<BatesProcess>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 57
    functionName: QuantLib::BatesDetJumpModel::BatesDetJumpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpModel::BatesDetJumpModel(\n            const ext::shared_ptr<BatesProcess>
      & process,\n            Real kappaLambda, Real thetaLambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:64,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:66,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:67,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:68,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:68,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:69,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:69,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:70,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - ' process'
    - lambda
    - nuUp
    - nuDown
    - p
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 71
    functionName: QuantLib::BatesDoubleExpModel::BatesDoubleExpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - BoundaryConstraint
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpModel::BatesDoubleExpModel(\n        const ext::shared_ptr<HestonProcess>
      & process,\n        Real lambda, Real nuUp, Real nuDown, Real p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:79,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:82,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:82,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:84,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/batesmodel.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - lambda
    - nuUp
    - nuDown
    - p
    - kappaLambda
    - thetaLambda
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 85
    functionName: QuantLib::BatesDoubleExpDetJumpModel::BatesDoubleExpDetJumpModel
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpModel::BatesDoubleExpDetJumpModel(\n        const
      ext::shared_ptr<HestonProcess> & process,\n        Real lambda, Real nuUp, Real
      nuDown,\n        Real p, Real kappaLambda, Real thetaLambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:37,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:43,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 9
    argNames:
    - ' riskFreeRate'
    - ' dividendYield'
    - ' s0'
    - v0
    - ' theta'
    - ' kappa'
    - ' sigma'
    - ' rho'
    - timeGrid
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Parameter
    - Parameter
    - Parameter
    - Parameter
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 48
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::PiecewiseTimeDependentHestonModel
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached:
    - PositiveConstraint
    - ConstantParameter
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseTimeDependentHestonModel::PiecewiseTimeDependentHestonModel(\n
      \       const Handle<YieldTermStructure>& riskFreeRate,\n        const Handle<YieldTermStructure>&
      dividendYield,\n        const Handle<Quote>& s0,\n        Real v0,\n        const
      Parameter& theta,\n        const Parameter& kappa,\n        const Parameter&
      sigma,\n        const Parameter& rho,\n        TimeGrid timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: '& PiecewiseTimeDependentHestonModel::timeGrid() const'
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & PiecewiseTimeDependentHestonModel::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: "& \n    PiecewiseTimeDependentHestonModel::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> & \n    PiecewiseTimeDependentHestonModel::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: "& \n    PiecewiseTimeDependentHestonModel::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> & \n    PiecewiseTimeDependentHestonModel::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:37,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:43,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 9
    argNames:
    - ' riskFreeRate'
    - ' dividendYield'
    - ' s0'
    - v0
    - ' theta'
    - ' kappa'
    - ' sigma'
    - ' rho'
    - timeGrid
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Parameter
    - Parameter
    - Parameter
    - Parameter
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 48
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::PiecewiseTimeDependentHestonModel
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached:
    - PositiveConstraint
    - ConstantParameter
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseTimeDependentHestonModel::PiecewiseTimeDependentHestonModel(\n
      \       const Handle<YieldTermStructure>& riskFreeRate,\n        const Handle<YieldTermStructure>&
      dividendYield,\n        const Handle<Quote>& s0,\n        Real v0,\n        const
      Parameter& theta,\n        const Parameter& kappa,\n        const Parameter&
      sigma,\n        const Parameter& rho,\n        TimeGrid timeGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: '& PiecewiseTimeDependentHestonModel::timeGrid() const'
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid & PiecewiseTimeDependentHestonModel::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: "& \n    PiecewiseTimeDependentHestonModel::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> & \n    PiecewiseTimeDependentHestonModel::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: "& \n    PiecewiseTimeDependentHestonModel::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> & \n    PiecewiseTimeDependentHestonModel::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::HestonModel::theta
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::HestonModel::kappa
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::HestonModel::sigma
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::HestonModel::rho
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::HestonModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonModel::process
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 76
    functionName: QuantLib::HestonModel::FellerConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/equity/hestonmodel.hpp:80,1
    - Dst: FellerConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/equity/hestonmodel.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonModel::FellerConstraint::FellerConstraint
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached:
    - FellerConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void FellerConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::HestonModel::theta
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::HestonModel::kappa
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::HestonModel::sigma
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::HestonModel::rho
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::HestonModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonModel::process
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 76
    functionName: QuantLib::HestonModel::FellerConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/equity/hestonmodel.hpp:80,1
    - Dst: FellerConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/equity/hestonmodel.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonModel::FellerConstraint::FellerConstraint
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodel.hpp
    functionUses: 0
    functionsReached:
    - FellerConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void FellerConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - ' maturity'
    - calendar
    - s0
    - strikePrice
    - ' volatility'
    - ' riskFreeRate'
    - ' dividendYield'
    - errorType
    argTypes:
    - Period
    - Calendar
    - Real
    - Real
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonModelHelper::HestonModelHelper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - std::move
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void HestonModelHelper::HestonModelHelper(const Period& maturity,\n
      \                                        Calendar calendar,\n                                         const
      Real s0,\n                                         const Real strikePrice,\n
      \                                        const Handle<Quote>& volatility,\n
      \                                        const Handle<YieldTermStructure>& riskFreeRate,\n
      \                                        const Handle<YieldTermStructure>& dividendYield,\n
      \                                        BlackCalibrationHelper::CalibrationErrorType
      errorType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - ' maturity'
    - calendar
    - ' s0'
    - strikePrice
    - ' volatility'
    - ' riskFreeRate'
    - ' dividendYield'
    - errorType
    argTypes:
    - Period
    - Calendar
    - Handle<Quote>
    - Real
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 62
    functionName: QuantLib::HestonModelHelper::HestonModelHelper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonModelHelper::HestonModelHelper(const Period& maturity,\n
      \                                        Calendar calendar,\n                                         const
      Handle<Quote>& s0,\n                                         const Real strikePrice,\n
      \                                        const Handle<Quote>& volatility,\n
      \                                        const Handle<YieldTermStructure>& riskFreeRate,\n
      \                                        const Handle<YieldTermStructure>& dividendYield,\n
      \                                        BlackCalibrationHelper::CalibrationErrorType
      errorType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:66,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:66,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:68,1
    - Dst: value
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:69,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:69,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:73,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:75,1
    - Dst: ext::make_shared<VanillaOption>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:76,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::HestonModelHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<VanillaOption>
    - referenceDate
    - timeFromReference
    - value
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::make_shared<EuropeanExercise>
    - discount
    - QuantLib::BlackCalibrationHelper::performCalculations
    - advance
    linkageType: ''
    returnType: void
    signature: void HestonModelHelper::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:81,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:82,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::HestonModelHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real HestonModelHelper::modelValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:88,1
    - Dst: QuantLib::HestonModelHelper::maturity
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:88,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:89,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:90,1
    - Dst: value
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: QuantLib::HestonModelHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - value
    - discount
    - blackFormula
    - QuantLib::HestonModelHelper::maturity
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real HestonModelHelper::blackPrice(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - ' maturity'
    - calendar
    - s0
    - strikePrice
    - ' volatility'
    - ' riskFreeRate'
    - ' dividendYield'
    - errorType
    argTypes:
    - Period
    - Calendar
    - Real
    - Real
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonModelHelper::HestonModelHelper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - std::move
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void HestonModelHelper::HestonModelHelper(const Period& maturity,\n
      \                                        Calendar calendar,\n                                         const
      Real s0,\n                                         const Real strikePrice,\n
      \                                        const Handle<Quote>& volatility,\n
      \                                        const Handle<YieldTermStructure>& riskFreeRate,\n
      \                                        const Handle<YieldTermStructure>& dividendYield,\n
      \                                        BlackCalibrationHelper::CalibrationErrorType
      errorType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - ' maturity'
    - calendar
    - ' s0'
    - strikePrice
    - ' volatility'
    - ' riskFreeRate'
    - ' dividendYield'
    - errorType
    argTypes:
    - Period
    - Calendar
    - Handle<Quote>
    - Real
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BlackCalibrationHelper::CalibrationErrorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 62
    functionName: QuantLib::HestonModelHelper::HestonModelHelper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonModelHelper::HestonModelHelper(const Period& maturity,\n
      \                                        Calendar calendar,\n                                         const
      Handle<Quote>& s0,\n                                         const Real strikePrice,\n
      \                                        const Handle<Quote>& volatility,\n
      \                                        const Handle<YieldTermStructure>& riskFreeRate,\n
      \                                        const Handle<YieldTermStructure>& dividendYield,\n
      \                                        BlackCalibrationHelper::CalibrationErrorType
      errorType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:66,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:66,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:68,1
    - Dst: value
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:69,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:69,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:73,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:75,1
    - Dst: ext::make_shared<VanillaOption>
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:76,1
    - Dst: QuantLib::BlackCalibrationHelper::performCalculations
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::HestonModelHelper::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<VanillaOption>
    - referenceDate
    - timeFromReference
    - value
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::make_shared<EuropeanExercise>
    - discount
    - QuantLib::BlackCalibrationHelper::performCalculations
    - advance
    linkageType: ''
    returnType: void
    signature: void HestonModelHelper::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:81,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:82,1
    - Dst: NPV
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::HestonModelHelper::modelValue
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setPricingEngine
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real HestonModelHelper::modelValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:88,1
    - Dst: QuantLib::HestonModelHelper::maturity
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:88,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:89,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:90,1
    - Dst: value
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: QuantLib::HestonModelHelper::blackPrice
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - value
    - discount
    - blackFormula
    - QuantLib::HestonModelHelper::maturity
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real HestonModelHelper::blackPrice(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::theta
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::kappa
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::sigma
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::rho
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho(Time t)   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::s0
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real s0()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::theta
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::kappa
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::sigma
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::rho
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho(Time t)   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::PiecewiseTimeDependentHestonModel::s0
    functionSourceFile: /src/quantlib/ql/models/equity/piecewisetimedependenthestonmodel.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real s0()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::BatesModel::nu
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu()     const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::BatesModel::delta
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real delta()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::BatesModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BatesDetJumpModel::kappaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::BatesDetJumpModel::thetaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real thetaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::BatesDoubleExpModel::p
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real p()      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::BatesDoubleExpModel::nuDown
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nuDown() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::BatesDoubleExpModel::nuUp
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nuUp()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::BatesDoubleExpModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::BatesDoubleExpDetJumpModel::kappaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::BatesDoubleExpDetJumpModel::thetaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real thetaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::BatesModel::nu
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu()     const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::BatesModel::delta
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real delta()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::BatesModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BatesDetJumpModel::kappaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::BatesDetJumpModel::thetaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real thetaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::BatesDoubleExpModel::p
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real p()      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::BatesDoubleExpModel::nuDown
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nuDown() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::BatesDoubleExpModel::nuUp
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nuUp()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::BatesDoubleExpModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::BatesDoubleExpDetJumpModel::kappaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappaLambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::BatesDoubleExpDetJumpModel::thetaLambda
    functionSourceFile: /src/quantlib/ql/models/equity/batesmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real thetaLambda() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:68,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:70,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:81,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:84,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:85,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:86,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:89,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:97,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:98,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:99,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:102,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:110,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:111,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:112,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 6
    argNames:
    - ' rnd'
    - t0
    - t1
    - vGrid
    - v0
    - ' params'
    argTypes:
    - SquareRootProcessRNDCalculator
    - Time
    - Time
    - Size
    - Real
    - HestonSLVFokkerPlanckFdmParams
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 121
    functionName: QuantLib::varianceMesher
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - std::log
    - QuantLib::Null
    - ext::make_shared<Concentrating1dMesher>
    - std::max
    - QL_FAIL
    - std::make_tuple
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: "ext::shared_ptr<Fdm1dMesher> varianceMesher(\n            const SquareRootProcessRNDCalculator&
      rnd,\n            Time t0, Time t1, Size vGrid,\n            Real v0, const
      HestonSLVFokkerPlanckFdmParams& params)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:129,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:133,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:134,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:135,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:136,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:138,1
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:141,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: QuantLib::integratePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherIntegral
    - location
    - index
    - std::pow
    - QuantLib::size
    - DiscreteSimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real integratePDF(const Array& p,\n                          const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n                          FdmSquareRootFwdOp::TransformationType
      trafoType,\n                          Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::integratePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::rescalePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::integratePDF
    linkageType: ''
    returnType: Array
    signature: "Array rescalePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n            FdmSquareRootFwdOp::TransformationType
      trafoType, Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:168,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: interpolate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:172,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:178,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:179,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:180,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:181,1
    - Dst: Interpolation2D::xMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::xMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::yMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: Interpolation2D::yMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:185,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    - Dst: interpol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - ' p'
    - ' oldMesher'
    - ' newMesher'
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - ext::shared_ptr<FdmMesherComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 193
    functionName: QuantLib::reshapePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - interpolate
    - location
    - Matrix::row_begin
    - interpol
    - begin
    - Interpolation2D::xMin
    - Interpolation2D::yMax
    - QuantLib::size
    - layout
    - Interpolator
    - locations
    - Interpolation2D::yMin
    - index
    - Matrix::columns
    - QL_REQUIRE
    - getFdm1dMeshers
    - std::copy
    - Matrix::rows
    - Interpolation2D::xMax
    linkageType: ''
    returnType: Array
    signature: "Array reshapePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& oldMesher,\n            const ext::shared_ptr<FdmMesherComposite>&
      newMesher,\n            const Interpolator& interp = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: ~FdmScheme()
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - scheme
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSchemeWrapper::FdmSchemeWrapper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeWrapper(T* scheme)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: QuantLib::FdmSchemeWrapper::step
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSchemeWrapper::step
    linkageType: ''
    returnType: void
    signature: void step(Array& a, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::FdmSchemeWrapper::setStep
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSchemeWrapper::setStep
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt) override
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:221,1
    - Dst: HundsdorferScheme::HundsdorferScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:223,1
    - Dst: FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:222,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:225,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:227,1
    - Dst: FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:226,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:229,1
    - Dst: CraigSneydScheme::CraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:231,1
    - Dst: FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:230,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:233,1
    - Dst: ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:235,1
    - Dst: FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:234,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:238,1
    - Dst: ImplicitEulerScheme::ImplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:240,1
    - Dst: FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:239,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:242,1
    - Dst: ExplicitEulerScheme::ExplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:244,1
    - Dst: FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:243,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - desc
    - ' op'
    argTypes:
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 248
    functionName: QuantLib::fdmSchemeFactory
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
    - ExplicitEulerScheme::ExplicitEulerScheme
    - CraigSneydScheme::CraigSneydScheme
    - FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
    - ext::shared_ptr<FdmScheme>
    - FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
    - ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    - HundsdorferScheme::HundsdorferScheme
    - QL_FAIL
    - FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
    - FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
    - ImplicitEulerScheme::ImplicitEulerScheme
    - FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
    - DouglasScheme::DouglasScheme
    linkageType: ''
    returnType: ext::shared_ptr<FdmScheme>
    signature: "ext::shared_ptr<FdmScheme> fdmSchemeFactory(\n            const FdmSchemeDesc
      desc,\n            const ext::shared_ptr<FdmLinearOpComposite>& op)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:68,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:70,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:81,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:84,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:85,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:86,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:89,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:97,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:98,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:99,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:102,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:110,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:111,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:112,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 6
    argNames:
    - ' rnd'
    - t0
    - t1
    - vGrid
    - v0
    - ' params'
    argTypes:
    - SquareRootProcessRNDCalculator
    - Time
    - Time
    - Size
    - Real
    - HestonSLVFokkerPlanckFdmParams
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 121
    functionName: QuantLib::varianceMesher
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - std::log
    - QuantLib::Null
    - ext::make_shared<Concentrating1dMesher>
    - std::max
    - QL_FAIL
    - std::make_tuple
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: "ext::shared_ptr<Fdm1dMesher> varianceMesher(\n            const SquareRootProcessRNDCalculator&
      rnd,\n            Time t0, Time t1, Size vGrid,\n            Real v0, const
      HestonSLVFokkerPlanckFdmParams& params)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:129,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:133,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:134,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:135,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:136,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:138,1
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:141,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: QuantLib::integratePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 1
    functionsReached:
    - FdmMesherIntegral
    - location
    - index
    - std::pow
    - QuantLib::size
    - DiscreteSimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real integratePDF(const Array& p,\n                          const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n                          FdmSquareRootFwdOp::TransformationType
      trafoType,\n                          Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::integratePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::rescalePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::integratePDF
    linkageType: ''
    returnType: Array
    signature: "Array rescalePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n            FdmSquareRootFwdOp::TransformationType
      trafoType, Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:168,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: interpolate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:172,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:178,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:179,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:180,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:181,1
    - Dst: Interpolation2D::xMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::xMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::yMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: Interpolation2D::yMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:185,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    - Dst: interpol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - ' p'
    - ' oldMesher'
    - ' newMesher'
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - ext::shared_ptr<FdmMesherComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 193
    functionName: QuantLib::reshapePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - interpolate
    - location
    - Matrix::row_begin
    - interpol
    - begin
    - Interpolation2D::xMin
    - Interpolation2D::yMax
    - QuantLib::size
    - layout
    - Interpolator
    - locations
    - Interpolation2D::yMin
    - index
    - Matrix::columns
    - QL_REQUIRE
    - getFdm1dMeshers
    - std::copy
    - Matrix::rows
    - Interpolation2D::xMax
    linkageType: ''
    returnType: Array
    signature: "Array reshapePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& oldMesher,\n            const ext::shared_ptr<FdmMesherComposite>&
      newMesher,\n            const Interpolator& interp = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: ~FdmScheme()
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - scheme
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSchemeWrapper::FdmSchemeWrapper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeWrapper(T* scheme)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: QuantLib::FdmSchemeWrapper::step
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSchemeWrapper::step
    linkageType: ''
    returnType: void
    signature: void step(Array& a, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::FdmSchemeWrapper::setStep
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmSchemeWrapper::setStep
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt) override
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:221,1
    - Dst: HundsdorferScheme::HundsdorferScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:223,1
    - Dst: FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:222,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:225,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:227,1
    - Dst: FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:226,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:229,1
    - Dst: CraigSneydScheme::CraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:231,1
    - Dst: FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:230,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:233,1
    - Dst: ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:235,1
    - Dst: FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:234,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:238,1
    - Dst: ImplicitEulerScheme::ImplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:240,1
    - Dst: FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:239,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:242,1
    - Dst: ExplicitEulerScheme::ExplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:244,1
    - Dst: FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:243,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - desc
    - ' op'
    argTypes:
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 248
    functionName: QuantLib::fdmSchemeFactory
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
    - ExplicitEulerScheme::ExplicitEulerScheme
    - CraigSneydScheme::CraigSneydScheme
    - FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
    - ext::shared_ptr<FdmScheme>
    - FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
    - ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    - HundsdorferScheme::HundsdorferScheme
    - QL_FAIL
    - FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
    - FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
    - ImplicitEulerScheme::ImplicitEulerScheme
    - FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
    - DouglasScheme::DouglasScheme
    linkageType: ''
    returnType: ext::shared_ptr<FdmScheme>
    signature: "ext::shared_ptr<FdmScheme> fdmSchemeFactory(\n            const FdmSchemeDesc
      desc,\n            const ext::shared_ptr<FdmLinearOpComposite>& op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:258,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:258,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:259,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:262,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - localVol
    - hestonModel
    - ' endDate'
    - params
    - logging
    - mandatoryDates
    - mixingFactor
    argTypes:
    - Handle<LocalVolTermStructure>
    - Handle<HestonModel>
    - Date
    - HestonSLVFokkerPlanckFdmParams
    - bool
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 264
    functionName: QuantLib::HestonSLVFDMModel::HestonSLVFDMModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonSLVFDMModel::HestonSLVFDMModel(Handle<LocalVolTermStructure>
      localVol,\n                                         Handle<HestonModel> hestonModel,\n
      \                                        const Date& endDate,\n                                         HestonSLVFokkerPlanckFdmParams
      params,\n                                         const bool logging,\n                                         std::vector<Date>
      mandatoryDates,\n                                         const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::HestonSLVFDMModel::hestonProcess
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> HestonSLVFDMModel::hestonProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::HestonSLVFDMModel::localVol
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVFDMModel::localVol()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: QuantLib::HestonSLVFDMModel::leverageFunction
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVFDMModel::leverageFunction()
      const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:282,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:285,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:287,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:289,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:291,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:293,1
    - Dst: ext::shared_ptr::kappa
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:294,1
    - Dst: ext::shared_ptr::theta
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:295,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:296,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:303,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:304,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:306,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:311,1
    - Dst: maxTime
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:311,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:320,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:320,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:322,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:325,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:325,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:329,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:329,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: TimeGrid::TimeGrid
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:337,1
    - Dst: LocalVolRNDCalculator::rescaleTimeSteps
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:344,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:353,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:353,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:354,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:354,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:356,1
    - Dst: LocalVolRNDCalculator::mesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:356,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:357,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:357,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:358,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:361,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: LocalVolRNDCalculator::mesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:364,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:367,1
    - Dst: varianceMesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:367,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:368,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:369,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:370,1
    - Dst: ext::shared_ptr::back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:371,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:375,1
    - Dst: back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:375,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:380,1
    - Dst: std::vector::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:381,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:381,1
    - Dst: QuantLib::HestonSLVFDMModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:386,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:386,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:394,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:396,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:397,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:398,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:399,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:401,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:401,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:404,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:404,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:405,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:406,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:407,1
    - Dst: FixedLocalVolSurface::FixedLocalVolSurface
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:412,1
    - Dst: FdmHestonFwdOp::FdmHestonFwdOp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:415,1
    - Dst: FdmHestonGreensFct
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:417,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:418,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:421,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:422,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:423,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:426,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:427,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:428,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:430,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:431,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:433,1
    - Dst: reshapePDF<Bilinear>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:435,1
    - Dst: rescalePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:438,1
    - Dst: ext::shared_ptr<FdmLinearOpComposite>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:440,1
    - Dst: FdmHestonFwdOp::FdmHestonFwdOp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:441,1
    - Dst: Exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:446,1
    - Dst: Array
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:448,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:448,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:450,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:450,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:451,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:451,1
    - Dst: QuantLib::FdmSchemeDesc::ImplicitEuler
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:457,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:463,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:469,1
    - Dst: Pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:469,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:470,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:473,1
    - Dst: Exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:473,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:475,1
    - Dst: Pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:475,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:476,1
    - Dst: QuantLib::HestonSLVFDMModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:479,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:482,1
    - Dst: Real
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:482,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:484,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:484,1
    - Dst: ext::shared_ptr::setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:486,1
    - Dst: Linear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:486,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:489,1
    - Dst: Array::front
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:489,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:490,1
    - Dst: LocalVolRNDCalculator::invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:490,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:492,1
    - Dst: Array::back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:492,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:493,1
    - Dst: LocalVolRNDCalculator::invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:493,1
    - Dst: ext::shared_ptr::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:496,1
    - Dst: ext::shared_ptr::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:497,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:499,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:501,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:501,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: ext::shared_ptr::row_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:505,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:505,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: ext::shared_ptr::row_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:508,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:509,1
    - Dst: ext::shared_ptr::setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:511,1
    - Dst: Linear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:511,1
    - Dst: ext::shared_ptr::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:515,1
    - Dst: ext::shared_ptr::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:516,1
    - Dst: rescalePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:519,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:523,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:524,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 529
    functionName: QuantLib::HestonSLVFDMModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - ext::make_shared<Predefined1dMesher>
    - ext::shared_ptr::dayCounter
    - std::vector::reserve
    - LocalVolRNDCalculator::rescaleTimeSteps
    - FixedLocalVolSurface::FixedLocalVolSurface
    - ext::shared_ptr::column_begin
    - ext::shared_ptr::row_begin
    - ext::shared_ptr::size
    - std::min
    - QuantLib::HestonSLVFDMModel::localVol
    - push_back
    - QuantLib::FdmSchemeDesc::ImplicitEuler
    - ext::shared_ptr::sigma
    - rescalePDF
    - ext::make_shared<Array>
    - ext::shared_ptr::row_end
    - at
    - std::vector::begin
    - process
    - std::vector::end
    - ext::shared_ptr::localVol
    - ext::shared_ptr::value
    - FdmHestonFwdOp::FdmHestonFwdOp
    - std::sqrt
    - ext::shared_ptr::back
    - std::fill
    - ext::make_shared<FdmMesherComposite>
    - Real
    - ext::shared_ptr::riskFreeRate
    - back
    - DiscreteSimpsonIntegral
    - std::vector::push_back
    - ext::shared_ptr::s0
    - Pow
    - ext::shared_ptr::kappa
    - ext::shared_ptr::v0
    - Matrix::Matrix
    - TimeGrid::TimeGrid
    - ext::shared_ptr::step
    - DayCounter::yearFraction
    - Size
    - ext::shared_ptr::referenceDate
    - maxTime
    - std::vector::size
    - reserve
    - QL_REQUIRE
    - currentLink
    - reshapePDF<Bilinear>
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::column_end
    - LocalVolRNDCalculator::invcdf
    - LocalVolRNDCalculator::mesher
    - varianceMesher
    - Null<Real>
    - std::vector<Real>
    - QL_FAIL
    - end
    - ext::shared_ptr<FdmLinearOpComposite>
    - Array::size
    - ext::shared_ptr::theta
    - FdmHestonGreensFct
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::setStep
    - std::transform
    - clear
    - ext::shared_ptr::at
    - Array
    - begin
    - Exp
    - Linear
    - ext::shared_ptr::setInterpolation
    - ext::shared_ptr::getFdm1dMeshers
    - std::exp
    - std::vector::at
    - locations
    - ext::make_shared<std::vector<Real> >
    - std::max
    - Array::front
    linkageType: ''
    returnType: void
    signature: void HestonSLVFDMModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 535
    functionName: "& HestonSLVFDMModel::logEntries()\n    const"
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: std::list<HestonSLVFDMModel::LogEntry>
    signature: "std::list<HestonSLVFDMModel::LogEntry> & HestonSLVFDMModel::logEntries()\n
      \   const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:68,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:70,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:81,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:84,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:85,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:86,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:89,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:97,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:98,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:99,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:102,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:110,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:111,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:112,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 6
    argNames:
    - ' rnd'
    - t0
    - t1
    - vGrid
    - v0
    - ' params'
    argTypes:
    - SquareRootProcessRNDCalculator
    - Time
    - Time
    - Size
    - Real
    - HestonSLVFokkerPlanckFdmParams
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 121
    functionName: QuantLib::varianceMesher
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - std::log
    - QuantLib::Null
    - ext::make_shared<Concentrating1dMesher>
    - std::max
    - QL_FAIL
    - std::make_tuple
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: "ext::shared_ptr<Fdm1dMesher> varianceMesher(\n            const SquareRootProcessRNDCalculator&
      rnd,\n            Time t0, Time t1, Size vGrid,\n            Real v0, const
      HestonSLVFokkerPlanckFdmParams& params)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:129,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:133,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:134,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:135,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:136,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:138,1
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:141,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: QuantLib::integratePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 2
    functionsReached:
    - FdmMesherIntegral
    - location
    - index
    - std::pow
    - QuantLib::size
    - DiscreteSimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real integratePDF(const Array& p,\n                          const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n                          FdmSquareRootFwdOp::TransformationType
      trafoType,\n                          Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::integratePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::rescalePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::integratePDF
    linkageType: ''
    returnType: Array
    signature: "Array rescalePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n            FdmSquareRootFwdOp::TransformationType
      trafoType, Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:168,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: interpolate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:172,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:178,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:179,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:180,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:181,1
    - Dst: Interpolation2D::xMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::xMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::yMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: Interpolation2D::yMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:185,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    - Dst: interpol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - ' p'
    - ' oldMesher'
    - ' newMesher'
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - ext::shared_ptr<FdmMesherComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 193
    functionName: QuantLib::reshapePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - interpolate
    - location
    - Matrix::row_begin
    - interpol
    - begin
    - Interpolation2D::xMin
    - Interpolation2D::yMax
    - QuantLib::size
    - layout
    - Interpolator
    - locations
    - Interpolation2D::yMin
    - index
    - Matrix::columns
    - QL_REQUIRE
    - getFdm1dMeshers
    - std::copy
    - Matrix::rows
    - Interpolation2D::xMax
    linkageType: ''
    returnType: Array
    signature: "Array reshapePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& oldMesher,\n            const ext::shared_ptr<FdmMesherComposite>&
      newMesher,\n            const Interpolator& interp = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: ~FdmScheme()
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - scheme
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSchemeWrapper::FdmSchemeWrapper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeWrapper(T* scheme)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: QuantLib::FdmSchemeWrapper::step
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSchemeWrapper::step
    linkageType: ''
    returnType: void
    signature: void step(Array& a, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::FdmSchemeWrapper::setStep
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSchemeWrapper::setStep
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt) override
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:221,1
    - Dst: HundsdorferScheme::HundsdorferScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:223,1
    - Dst: FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:222,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:225,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:227,1
    - Dst: FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:226,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:229,1
    - Dst: CraigSneydScheme::CraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:231,1
    - Dst: FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:230,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:233,1
    - Dst: ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:235,1
    - Dst: FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:234,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:238,1
    - Dst: ImplicitEulerScheme::ImplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:240,1
    - Dst: FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:239,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:242,1
    - Dst: ExplicitEulerScheme::ExplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:244,1
    - Dst: FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:243,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - desc
    - ' op'
    argTypes:
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 248
    functionName: QuantLib::fdmSchemeFactory
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
    - ExplicitEulerScheme::ExplicitEulerScheme
    - CraigSneydScheme::CraigSneydScheme
    - FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
    - ext::shared_ptr<FdmScheme>
    - FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
    - ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    - HundsdorferScheme::HundsdorferScheme
    - QL_FAIL
    - FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
    - FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
    - ImplicitEulerScheme::ImplicitEulerScheme
    - FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
    - DouglasScheme::DouglasScheme
    linkageType: ''
    returnType: ext::shared_ptr<FdmScheme>
    signature: "ext::shared_ptr<FdmScheme> fdmSchemeFactory(\n            const FdmSchemeDesc
      desc,\n            const ext::shared_ptr<FdmLinearOpComposite>& op)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:68,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:70,1
    - Dst: invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:74,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:81,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:84,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:85,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:86,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:89,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:97,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:98,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:99,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:102,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:110,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:111,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:112,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:115,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 6
    argNames:
    - ' rnd'
    - t0
    - t1
    - vGrid
    - v0
    - ' params'
    argTypes:
    - SquareRootProcessRNDCalculator
    - Time
    - Time
    - Size
    - Real
    - HestonSLVFokkerPlanckFdmParams
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 121
    functionName: QuantLib::varianceMesher
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - std::log
    - QuantLib::Null
    - ext::make_shared<Concentrating1dMesher>
    - std::max
    - QL_FAIL
    - std::make_tuple
    - std::min
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: "ext::shared_ptr<Fdm1dMesher> varianceMesher(\n            const SquareRootProcessRNDCalculator&
      rnd,\n            Time t0, Time t1, Size vGrid,\n            Real v0, const
      HestonSLVFokkerPlanckFdmParams& params)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:129,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:133,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:134,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:135,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:136,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:138,1
    - Dst: FdmMesherIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:141,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: QuantLib::integratePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 3
    functionsReached:
    - FdmMesherIntegral
    - location
    - index
    - std::pow
    - QuantLib::size
    - DiscreteSimpsonIntegral
    - layout
    linkageType: ''
    returnType: Real
    signature: "Real integratePDF(const Array& p,\n                          const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n                          FdmSquareRootFwdOp::TransformationType
      trafoType,\n                          Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::integratePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - ' mesher'
    - trafoType
    - alpha
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - FdmSquareRootFwdOp::TransformationType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::rescalePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::integratePDF
    linkageType: ''
    returnType: Array
    signature: "Array rescalePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& mesher,\n            FdmSquareRootFwdOp::TransformationType
      trafoType, Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:163,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:164,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:167,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:168,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:170,1
    - Dst: interpolate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:172,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:173,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:174,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:175,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:176,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:178,1
    - Dst: layout
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:179,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:180,1
    - Dst: location
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:181,1
    - Dst: Interpolation2D::xMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::xMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:183,1
    - Dst: Interpolation2D::yMax
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: Interpolation2D::yMin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:184,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:185,1
    - Dst: index
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    - Dst: interpol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - ' p'
    - ' oldMesher'
    - ' newMesher'
    argTypes:
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - ext::shared_ptr<FdmMesherComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 193
    functionName: QuantLib::reshapePDF
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - interpolate
    - location
    - Matrix::row_begin
    - interpol
    - begin
    - Interpolation2D::xMin
    - Interpolation2D::yMax
    - QuantLib::size
    - layout
    - Interpolator
    - locations
    - Interpolation2D::yMin
    - index
    - Matrix::columns
    - QL_REQUIRE
    - getFdm1dMeshers
    - std::copy
    - Matrix::rows
    - Interpolation2D::xMax
    linkageType: ''
    returnType: Array
    signature: "Array reshapePDF(\n            const Array& p,\n            const
      ext::shared_ptr<FdmMesherComposite>& oldMesher,\n            const ext::shared_ptr<FdmMesherComposite>&
      newMesher,\n            const Interpolator& interp = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: ~FdmScheme()
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FdmScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - scheme
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::FdmSchemeWrapper::FdmSchemeWrapper
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmSchemeWrapper(T* scheme)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: QuantLib::FdmSchemeWrapper::step
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSchemeWrapper::step
    linkageType: ''
    returnType: void
    signature: void step(Array& a, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeWrapper::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 209
    functionName: QuantLib::FdmSchemeWrapper::setStep
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::FdmSchemeWrapper::setStep
    linkageType: ''
    returnType: void
    signature: void setStep(Time dt) override
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:221,1
    - Dst: HundsdorferScheme::HundsdorferScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:223,1
    - Dst: FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:222,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:225,1
    - Dst: DouglasScheme::DouglasScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:227,1
    - Dst: FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:226,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:229,1
    - Dst: CraigSneydScheme::CraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:231,1
    - Dst: FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:230,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:233,1
    - Dst: ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:235,1
    - Dst: FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:234,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:238,1
    - Dst: ImplicitEulerScheme::ImplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:240,1
    - Dst: FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:239,1
    - Dst: ext::shared_ptr<FdmScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:242,1
    - Dst: ExplicitEulerScheme::ExplicitEulerScheme
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:244,1
    - Dst: FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:243,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - desc
    - ' op'
    argTypes:
    - FdmSchemeDesc
    - ext::shared_ptr<FdmLinearOpComposite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 248
    functionName: QuantLib::fdmSchemeFactory
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - FdmSchemeWrapper<CraigSneydScheme>::FdmSchemeWrapper<CraigSneydScheme>
    - ExplicitEulerScheme::ExplicitEulerScheme
    - CraigSneydScheme::CraigSneydScheme
    - FdmSchemeWrapper<DouglasScheme>::FdmSchemeWrapper<DouglasScheme>
    - ext::shared_ptr<FdmScheme>
    - FdmSchemeWrapper<ExplicitEulerScheme>::FdmSchemeWrapper<ExplicitEulerScheme>
    - ModifiedCraigSneydScheme::ModifiedCraigSneydScheme
    - HundsdorferScheme::HundsdorferScheme
    - QL_FAIL
    - FdmSchemeWrapper<ModifiedCraigSneydScheme>::FdmSchemeWrapper<ModifiedCraigSneydScheme>
    - FdmSchemeWrapper<HundsdorferScheme>::FdmSchemeWrapper<HundsdorferScheme>
    - ImplicitEulerScheme::ImplicitEulerScheme
    - FdmSchemeWrapper<ImplicitEulerScheme>::FdmSchemeWrapper<ImplicitEulerScheme>
    - DouglasScheme::DouglasScheme
    linkageType: ''
    returnType: ext::shared_ptr<FdmScheme>
    signature: "ext::shared_ptr<FdmScheme> fdmSchemeFactory(\n            const FdmSchemeDesc
      desc,\n            const ext::shared_ptr<FdmLinearOpComposite>& op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:258,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:258,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:259,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:262,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - localVol
    - hestonModel
    - ' endDate'
    - params
    - logging
    - mandatoryDates
    - mixingFactor
    argTypes:
    - Handle<LocalVolTermStructure>
    - Handle<HestonModel>
    - Date
    - HestonSLVFokkerPlanckFdmParams
    - bool
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 264
    functionName: QuantLib::HestonSLVFDMModel::HestonSLVFDMModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonSLVFDMModel::HestonSLVFDMModel(Handle<LocalVolTermStructure>
      localVol,\n                                         Handle<HestonModel> hestonModel,\n
      \                                        const Date& endDate,\n                                         HestonSLVFokkerPlanckFdmParams
      params,\n                                         const bool logging,\n                                         std::vector<Date>
      mandatoryDates,\n                                         const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::HestonSLVFDMModel::hestonProcess
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> HestonSLVFDMModel::hestonProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::HestonSLVFDMModel::localVol
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 1
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVFDMModel::localVol()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: QuantLib::HestonSLVFDMModel::leverageFunction
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVFDMModel::leverageFunction()
      const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:282,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:285,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:287,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:289,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:291,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:293,1
    - Dst: ext::shared_ptr::kappa
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:294,1
    - Dst: ext::shared_ptr::theta
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:295,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:296,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:303,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:304,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:306,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:311,1
    - Dst: maxTime
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:311,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:320,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:320,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:322,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:325,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:325,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:329,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:329,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: TimeGrid::TimeGrid
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:333,1
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:337,1
    - Dst: LocalVolRNDCalculator::rescaleTimeSteps
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:344,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:353,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:353,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:354,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:354,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:356,1
    - Dst: LocalVolRNDCalculator::mesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:356,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:357,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:357,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:358,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:361,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: LocalVolRNDCalculator::mesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:362,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:364,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:367,1
    - Dst: varianceMesher
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:367,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:368,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:369,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:370,1
    - Dst: ext::shared_ptr::back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:371,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:375,1
    - Dst: back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:375,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:380,1
    - Dst: std::vector::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:381,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:381,1
    - Dst: QuantLib::HestonSLVFDMModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:384,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:386,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:386,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:389,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:390,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:394,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:396,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:397,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:398,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:399,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:400,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:401,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:401,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:404,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:404,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:405,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:406,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:407,1
    - Dst: FixedLocalVolSurface::FixedLocalVolSurface
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:412,1
    - Dst: FdmHestonFwdOp::FdmHestonFwdOp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:415,1
    - Dst: FdmHestonGreensFct
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:417,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:418,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:421,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:422,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:423,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:426,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:427,1
    - Dst: ext::shared_ptr::at
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:428,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:430,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:431,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:433,1
    - Dst: reshapePDF<Bilinear>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:435,1
    - Dst: rescalePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:438,1
    - Dst: ext::shared_ptr<FdmLinearOpComposite>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:440,1
    - Dst: FdmHestonFwdOp::FdmHestonFwdOp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:441,1
    - Dst: Exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:446,1
    - Dst: Array
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:447,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:448,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:448,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:450,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:450,1
    - Dst: ext::shared_ptr::getFdm1dMeshers
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:451,1
    - Dst: locations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:451,1
    - Dst: QuantLib::FdmSchemeDesc::ImplicitEuler
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:457,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:463,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:469,1
    - Dst: Pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:469,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:470,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:473,1
    - Dst: Exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:473,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:475,1
    - Dst: Pow
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:475,1
    - Dst: DiscreteSimpsonIntegral
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:476,1
    - Dst: QuantLib::HestonSLVFDMModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:479,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:482,1
    - Dst: Real
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:482,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:484,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:484,1
    - Dst: ext::shared_ptr::setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:486,1
    - Dst: Linear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:486,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:489,1
    - Dst: Array::front
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:489,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:490,1
    - Dst: LocalVolRNDCalculator::invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:490,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:492,1
    - Dst: Array::back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:492,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:493,1
    - Dst: LocalVolRNDCalculator::invcdf
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:493,1
    - Dst: ext::shared_ptr::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:496,1
    - Dst: ext::shared_ptr::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:497,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:499,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:501,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:501,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: ext::shared_ptr::row_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:502,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:505,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:505,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: ext::shared_ptr::row_begin
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: ext::shared_ptr::row_end
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:506,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:508,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:509,1
    - Dst: ext::shared_ptr::setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:511,1
    - Dst: Linear
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:511,1
    - Dst: ext::shared_ptr::setStep
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:515,1
    - Dst: ext::shared_ptr::step
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:516,1
    - Dst: rescalePDF
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:519,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:523,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:524,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 529
    functionName: QuantLib::HestonSLVFDMModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - ext::make_shared<Predefined1dMesher>
    - ext::shared_ptr::dayCounter
    - std::vector::reserve
    - LocalVolRNDCalculator::rescaleTimeSteps
    - FixedLocalVolSurface::FixedLocalVolSurface
    - ext::shared_ptr::column_begin
    - ext::shared_ptr::row_begin
    - ext::shared_ptr::size
    - std::min
    - QuantLib::HestonSLVFDMModel::localVol
    - push_back
    - QuantLib::FdmSchemeDesc::ImplicitEuler
    - ext::shared_ptr::sigma
    - rescalePDF
    - ext::make_shared<Array>
    - ext::shared_ptr::row_end
    - at
    - std::vector::begin
    - process
    - std::vector::end
    - ext::shared_ptr::localVol
    - ext::shared_ptr::value
    - FdmHestonFwdOp::FdmHestonFwdOp
    - std::sqrt
    - ext::shared_ptr::back
    - std::fill
    - ext::make_shared<FdmMesherComposite>
    - Real
    - ext::shared_ptr::riskFreeRate
    - back
    - DiscreteSimpsonIntegral
    - std::vector::push_back
    - ext::shared_ptr::s0
    - Pow
    - ext::shared_ptr::kappa
    - ext::shared_ptr::v0
    - Matrix::Matrix
    - TimeGrid::TimeGrid
    - ext::shared_ptr::step
    - DayCounter::yearFraction
    - Size
    - ext::shared_ptr::referenceDate
    - maxTime
    - std::vector::size
    - reserve
    - QL_REQUIRE
    - currentLink
    - reshapePDF<Bilinear>
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::column_end
    - LocalVolRNDCalculator::invcdf
    - LocalVolRNDCalculator::mesher
    - varianceMesher
    - Null<Real>
    - std::vector<Real>
    - QL_FAIL
    - end
    - ext::shared_ptr<FdmLinearOpComposite>
    - Array::size
    - ext::shared_ptr::theta
    - FdmHestonGreensFct
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::setStep
    - std::transform
    - clear
    - ext::shared_ptr::at
    - Array
    - begin
    - Exp
    - Linear
    - ext::shared_ptr::setInterpolation
    - ext::shared_ptr::getFdm1dMeshers
    - std::exp
    - std::vector::at
    - locations
    - ext::make_shared<std::vector<Real> >
    - std::max
    - Array::front
    linkageType: ''
    returnType: void
    signature: void HestonSLVFDMModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp:533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 535
    functionName: "& HestonSLVFDMModel::logEntries()\n    const"
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvfdmmodel.cpp
    functionUses: 0
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: std::list<HestonSLVFDMModel::LogEntry>
    signature: "std::list<HestonSLVFDMModel::LogEntry> & HestonSLVFDMModel::logEntries()\n
      \   const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::HestonModelHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void addTimesTo(std::list<Time>&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::HestonModelHelper::maturity
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::HestonModelHelper::addTimesTo
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void addTimesTo(std::list<Time>&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::HestonModelHelper::maturity
    functionSourceFile: /src/quantlib/ql/models/equity/hestonmodelhelper.hpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Time
    signature: Time maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::GJRGARCHModel::omega
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::GJRGARCHModel::alpha
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::GJRGARCHModel::beta
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::GJRGARCHModel::gamma
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::GJRGARCHModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::GJRGARCHModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::GJRGARCHModel::process
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<GJRGARCHProcess>
    signature: ext::shared_ptr<GJRGARCHProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::GJRGARCHModel::omega
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::GJRGARCHModel::alpha
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::GJRGARCHModel::beta
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::GJRGARCHModel::gamma
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::GJRGARCHModel::lambda
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::GJRGARCHModel::v0
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::GJRGARCHModel::process
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<GJRGARCHProcess>
    signature: ext::shared_ptr<GJRGARCHProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:54,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:56,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:57,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:64,1
    - Dst: ext::make_shared<TimeGrid>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 9
    argNames:
    - localVol
    - hestonModel
    - brownianGeneratorFactory
    - ' endDate'
    - timeStepsPerYear
    - nBins
    - calibrationPaths
    - ' mandatoryDates'
    - mixingFactor
    argTypes:
    - Handle<LocalVolTermStructure>
    - Handle<HestonModel>
    - ext::shared_ptr<BrownianGeneratorFactory>
    - Date
    - Size
    - Size
    - Size
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionName: QuantLib::HestonSLVMCModel::HestonSLVMCModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - DayCounter::yearFraction
    - ext::make_shared<TimeGrid>
    - Size
    - std::vector::reserve
    - std::vector::begin
    - process
    - std::move
    - std::vector::end
    - std::max
    - registerWith
    - size
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void HestonSLVMCModel::HestonSLVMCModel(\n        Handle<LocalVolTermStructure>
      localVol,\n        Handle<HestonModel> hestonModel,\n        ext::shared_ptr<BrownianGeneratorFactory>
      brownianGeneratorFactory,\n        const Date& endDate,\n        Size timeStepsPerYear,\n
      \       Size nBins,\n        Size calibrationPaths,\n        const std::vector<Date>&
      mandatoryDates,\n        const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::HestonSLVMCModel::hestonProcess
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> HestonSLVMCModel::hestonProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::HestonSLVMCModel::localVol
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVMCModel::localVol()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::HestonSLVMCModel::leverageFunction
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVMCModel::leverageFunction()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:87,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:89,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:91,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:92,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:93,1
    - Dst: QuantLib::HestonSLVMCModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:98,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:102,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:104,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:106,1
    - Dst: Integer
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:108,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:109,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:109,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::make_shared<FixedLocalVolSurface>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:114,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: ext::make_shared<HestonSLVProcess>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:120,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:123,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:128,1
    - Dst: create
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:136,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:139,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:148,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:149,1
    - Dst: dt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:150,1
    - Dst: ext::shared_ptr::evolve
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:161,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: static_cast<unsigned long>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:171,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:180,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: squared
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: QuantLib::HestonSLVMCModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:186,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 188
    functionName: QuantLib::HestonSLVMCModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - ext::shared_ptr::column_end
    - ext::make_shared<HestonSLVProcess>
    - ext::shared_ptr::evolve
    - nextStep
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::s0
    - create
    - squared
    - std::sort
    - begin
    - ext::shared_ptr::column_begin
    - setInterpolation
    - ext::shared_ptr::v0
    - dt
    - size
    - Matrix::Matrix
    - nextPath
    - static_cast<unsigned long>
    - ext::make_shared<std::vector<Real> >
    - QuantLib::HestonSLVMCModel::localVol
    - end
    - std::make_pair
    - at
    - std::vector::begin
    - Integer
    - process
    - std::vector::end
    - ext::shared_ptr::value
    - std::sqrt
    - std::vector<Time>
    - ext::make_shared<FixedLocalVolSurface>
    linkageType: ''
    returnType: void
    signature: void HestonSLVMCModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:54,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:56,1
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:57,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:64,1
    - Dst: ext::make_shared<TimeGrid>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:66,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 9
    argNames:
    - localVol
    - hestonModel
    - brownianGeneratorFactory
    - ' endDate'
    - timeStepsPerYear
    - nBins
    - calibrationPaths
    - ' mandatoryDates'
    - mixingFactor
    argTypes:
    - Handle<LocalVolTermStructure>
    - Handle<HestonModel>
    - ext::shared_ptr<BrownianGeneratorFactory>
    - Date
    - Size
    - Size
    - Size
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionName: QuantLib::HestonSLVMCModel::HestonSLVMCModel
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - DayCounter::yearFraction
    - ext::make_shared<TimeGrid>
    - Size
    - std::vector::reserve
    - std::vector::begin
    - process
    - std::move
    - std::vector::end
    - std::max
    - registerWith
    - size
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void HestonSLVMCModel::HestonSLVMCModel(\n        Handle<LocalVolTermStructure>
      localVol,\n        Handle<HestonModel> hestonModel,\n        ext::shared_ptr<BrownianGeneratorFactory>
      brownianGeneratorFactory,\n        const Date& endDate,\n        Size timeStepsPerYear,\n
      \       Size nBins,\n        Size calibrationPaths,\n        const std::vector<Date>&
      mandatoryDates,\n        const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::HestonSLVMCModel::hestonProcess
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: ext::shared_ptr<HestonProcess> HestonSLVMCModel::hestonProcess() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::HestonSLVMCModel::localVol
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 1
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVMCModel::localVol()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::HestonSLVMCModel::leverageFunction
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> HestonSLVMCModel::leverageFunction()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:87,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:89,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:91,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:92,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:93,1
    - Dst: QuantLib::HestonSLVMCModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:98,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:102,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:104,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:106,1
    - Dst: Integer
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:108,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:109,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:109,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::shared_ptr::column_begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::shared_ptr::column_end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:112,1
    - Dst: ext::make_shared<FixedLocalVolSurface>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:114,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:116,1
    - Dst: ext::make_shared<HestonSLVProcess>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:120,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:123,1
    - Dst: ext::shared_ptr::value
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:128,1
    - Dst: create
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:136,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:139,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:148,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:149,1
    - Dst: dt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:150,1
    - Dst: ext::shared_ptr::evolve
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:161,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:167,1
    - Dst: static_cast<unsigned long>
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:171,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:180,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: squared
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: QuantLib::HestonSLVMCModel::localVol
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: at
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:181,1
    - Dst: setInterpolation
      Src: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp:186,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 188
    functionName: QuantLib::HestonSLVMCModel::performCalculations
    functionSourceFile: /src/quantlib/ql/models/equity/hestonslvmcmodel.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - ext::shared_ptr::column_end
    - ext::make_shared<HestonSLVProcess>
    - ext::shared_ptr::evolve
    - nextStep
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::s0
    - create
    - squared
    - std::sort
    - begin
    - ext::shared_ptr::column_begin
    - setInterpolation
    - ext::shared_ptr::v0
    - dt
    - size
    - Matrix::Matrix
    - nextPath
    - static_cast<unsigned long>
    - ext::make_shared<std::vector<Real> >
    - QuantLib::HestonSLVMCModel::localVol
    - end
    - std::make_pair
    - at
    - std::vector::begin
    - Integer
    - process
    - std::vector::end
    - ext::shared_ptr::value
    - std::sqrt
    - std::vector<Time>
    - ext::make_shared<FixedLocalVolSurface>
    linkageType: ''
    returnType: void
    signature: void HestonSLVMCModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::GJRGARCHModel::VolatilityConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:39,1
    - Dst: VolatilityConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::GJRGARCHModel::VolatilityConstraint::VolatilityConstraint
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - VolatilityConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void VolatilityConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:46,1
    - Dst: QuantLib::GJRGARCHModel::omega
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:46,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:47,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:48,1
    - Dst: QuantLib::GJRGARCHModel::alpha
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:48,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:49,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:50,1
    - Dst: QuantLib::GJRGARCHModel::beta
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:50,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:51,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:52,1
    - Dst: QuantLib::GJRGARCHModel::gamma
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:52,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:53,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: QuantLib::GJRGARCHModel::lambda
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:55,1
    - Dst: QuantLib::GJRGARCHModel::v0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:55,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:56,1
    - Dst: ext::shared_ptr<Constraint>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:58,1
    - Dst: VolatilityConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:59,1
    - Dst: CompositeConstraint::CompositeConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:59,1
    - Dst: QuantLib::GJRGARCHModel::generateArguments
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:64,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:65,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 66
    functionName: QuantLib::GJRGARCHModel::GJRGARCHModel
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint>
    - QuantLib::GJRGARCHModel::alpha
    - ConstantParameter
    - PositiveConstraint
    - VolatilityConstraint
    - QuantLib::GJRGARCHModel::lambda
    - dividendYield
    - QuantLib::GJRGARCHModel::v0
    - s0
    - QuantLib::GJRGARCHModel::omega
    - BoundaryConstraint
    - QuantLib::GJRGARCHModel::gamma
    - NoConstraint
    - riskFreeRate
    - CompositeConstraint::CompositeConstraint
    - QuantLib::GJRGARCHModel::beta
    - QuantLib::GJRGARCHModel::generateArguments
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void GJRGARCHModel::GJRGARCHModel(\n                           const
      ext::shared_ptr<GJRGARCHProcess> & process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GJRGARCHProcess>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:70,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:71,1
    - Dst: QuantLib::GJRGARCHModel::v0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:72,1
    - Dst: QuantLib::GJRGARCHModel::omega
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:72,1
    - Dst: QuantLib::GJRGARCHModel::alpha
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:73,1
    - Dst: QuantLib::GJRGARCHModel::beta
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:73,1
    - Dst: QuantLib::GJRGARCHModel::gamma
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:74,1
    - Dst: QuantLib::GJRGARCHModel::lambda
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:74,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: QuantLib::GJRGARCHModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::GJRGARCHModel::alpha
    - daysPerYear
    - QuantLib::GJRGARCHModel::lambda
    - QuantLib::GJRGARCHModel::v0
    - QuantLib::GJRGARCHModel::omega
    - riskFreeRate
    - QuantLib::GJRGARCHModel::gamma
    - QuantLib::GJRGARCHModel::beta
    - ext::make_shared<GJRGARCHProcess>
    linkageType: ''
    returnType: void
    signature: void GJRGARCHModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::GJRGARCHModel::VolatilityConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:39,1
    - Dst: VolatilityConstraint::Impl::Impl
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::GJRGARCHModel::VolatilityConstraint::VolatilityConstraint
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - VolatilityConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void VolatilityConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:46,1
    - Dst: QuantLib::GJRGARCHModel::omega
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:46,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:47,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:48,1
    - Dst: QuantLib::GJRGARCHModel::alpha
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:48,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:49,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:50,1
    - Dst: QuantLib::GJRGARCHModel::beta
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:50,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:51,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:52,1
    - Dst: QuantLib::GJRGARCHModel::gamma
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:52,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:53,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: QuantLib::GJRGARCHModel::lambda
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:54,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:55,1
    - Dst: QuantLib::GJRGARCHModel::v0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:55,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:56,1
    - Dst: ext::shared_ptr<Constraint>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:58,1
    - Dst: VolatilityConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:59,1
    - Dst: CompositeConstraint::CompositeConstraint
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:59,1
    - Dst: QuantLib::GJRGARCHModel::generateArguments
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:64,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:65,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 66
    functionName: QuantLib::GJRGARCHModel::GJRGARCHModel
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint>
    - QuantLib::GJRGARCHModel::alpha
    - ConstantParameter
    - PositiveConstraint
    - VolatilityConstraint
    - QuantLib::GJRGARCHModel::lambda
    - dividendYield
    - QuantLib::GJRGARCHModel::v0
    - s0
    - QuantLib::GJRGARCHModel::omega
    - BoundaryConstraint
    - QuantLib::GJRGARCHModel::gamma
    - NoConstraint
    - riskFreeRate
    - CompositeConstraint::CompositeConstraint
    - QuantLib::GJRGARCHModel::beta
    - QuantLib::GJRGARCHModel::generateArguments
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void GJRGARCHModel::GJRGARCHModel(\n                           const
      ext::shared_ptr<GJRGARCHProcess> & process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GJRGARCHProcess>
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:70,1
    - Dst: s0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:71,1
    - Dst: QuantLib::GJRGARCHModel::v0
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:72,1
    - Dst: QuantLib::GJRGARCHModel::omega
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:72,1
    - Dst: QuantLib::GJRGARCHModel::alpha
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:73,1
    - Dst: QuantLib::GJRGARCHModel::beta
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:73,1
    - Dst: QuantLib::GJRGARCHModel::gamma
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:74,1
    - Dst: QuantLib::GJRGARCHModel::lambda
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:74,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: QuantLib::GJRGARCHModel::generateArguments
    functionSourceFile: /src/quantlib/ql/models/equity/gjrgarchmodel.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::GJRGARCHModel::alpha
    - daysPerYear
    - QuantLib::GJRGARCHModel::lambda
    - QuantLib::GJRGARCHModel::v0
    - QuantLib::GJRGARCHModel::omega
    - riskFreeRate
    - QuantLib::GJRGARCHModel::gamma
    - QuantLib::GJRGARCHModel::beta
    - ext::make_shared<GJRGARCHProcess>
    linkageType: ''
    returnType: void
    signature: void GJRGARCHModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~CurveState()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CurveState()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::CurveState::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& rateTaus() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & rateTaus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~CurveState()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CurveState()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::CurveState::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& rateTaus() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & rateTaus() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:31,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - paymentTime
    - ' rateTimes'
    argTypes:
    - Time
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 49
    functionName: QuantLib::MarketModelPathwiseDiscounter::MarketModelPathwiseDiscounter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - checkIncreasingTimes
    - resize
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseDiscounter::MarketModelPathwiseDiscounter(Time
      paymentTime,\n                              const std::vector<Time>& rateTimes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ' Discounts'
    - currentStep
    - ' factors'
    argTypes:
    - Matrix
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 83
    functionName: QuantLib::MarketModelPathwiseDiscounter::getFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseDiscounter::getFactors(\n            const
      Matrix& , // LIBORRates, for all steps\n            const Matrix& Discounts,
      // P(t_0, t_j) for j=0,...n for each step\n            Size currentStep,\n            std::vector<Real>&
      factors) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:31,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - paymentTime
    - ' rateTimes'
    argTypes:
    - Time
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 49
    functionName: QuantLib::MarketModelPathwiseDiscounter::MarketModelPathwiseDiscounter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - checkIncreasingTimes
    - resize
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseDiscounter::MarketModelPathwiseDiscounter(Time
      paymentTime,\n                              const std::vector<Time>& rateTimes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ' Discounts'
    - currentStep
    - ' factors'
    argTypes:
    - Matrix
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 83
    functionName: QuantLib::MarketModelPathwiseDiscounter::getFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisediscounter.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseDiscounter::getFactors(\n            const
      Matrix& , // LIBORRates, for all steps\n            const Matrix& Discounts,
      // P(t_0, t_j) for j=0,...n for each step\n            Size currentStep,\n            std::vector<Real>&
      factors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~MarketModel()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: ~MarketModelFactory() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelFactory() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~MarketModel()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: ~MarketModelFactory() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelFactory() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~BrownianGenerator()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BrownianGenerator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~BrownianGeneratorFactory()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BrownianGeneratorFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~BrownianGenerator()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BrownianGenerator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~BrownianGeneratorFactory()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BrownianGeneratorFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' cs'
    - startIndex
    - endIndex
    - numeraireIndex
    argTypes:
    - CurveState
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::SwapForwardMappings::annuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - rateTaus
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::annuity(const CurveState& cs,\n                                      Size
      startIndex,\n                                      Size endIndex,\n                                      Size
      numeraireIndex)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:55,1
    - Dst: QuantLib::SwapForwardMappings::annuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:56,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:58,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:59,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:59,1
    - Dst: QuantLib::SwapForwardMappings::annuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ' cs'
    - startIndex
    - endIndex
    - forwardIndex
    argTypes:
    - CurveState
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapForwardMappings::swapDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - rateTaus
    - QuantLib::SwapForwardMappings::annuity
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::swapDerivative(const CurveState& cs,\n                                             Size
      startIndex,\n                                             Size endIndex,\n                                             Size
      forwardIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:74,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:75,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:76,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:81,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:84,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:87,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:88,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 100
    functionName: QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - rateTaus
    - discountRatio
    - Matrix
    - numberOfRates
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: Matrix
    signature: Matrix SwapForwardMappings::coterminalSwapForwardJacobian(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:104,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:105,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:106,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' cs'
    - displacement
    argTypes:
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 112
    functionName: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - coterminalSwapRates
    - QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
    - forwardRates
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::coterminalSwapZedMatrix(const CurveState&
      cs,\n                                                        const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:117,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:119,1
    - Dst: QuantLib::SwapForwardMappings::swapDerivative
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - Matrix
    - QuantLib::SwapForwardMappings::swapDerivative
    linkageType: ''
    returnType: Matrix
    signature: Matrix SwapForwardMappings::coinitialSwapForwardJacobian(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:130,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:132,1
    - Dst: QuantLib::SwapForwardMappings::swapDerivative
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:135,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' cs'
    - spanningForwards
    argTypes:
    - CurveState
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionName: QuantLib::SwapForwardMappings::cmSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - Matrix
    - QuantLib::SwapForwardMappings::swapDerivative
    - std::min
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::cmSwapForwardJacobian(const CurveState&
      cs,\n                                                      const Size spanningForwards)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:143,1
    - Dst: QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:144,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:145,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:149,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' cs'
    - displacement
    argTypes:
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 140
    functionDepth: 3
    functionLinenumber: 140
    functionLinenumberEnd: 155
    functionName: QuantLib::SwapForwardMappings::coinitialSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - cmSwapRate
    - forwardRates
    - QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::coinitialSwapZedMatrix(const CurveState&
      cs,\n                                                       const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:161,1
    - Dst: QuantLib::SwapForwardMappings::cmSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:162,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:163,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' cs'
    - spanningForwards
    - displacement
    argTypes:
    - CurveState
    - Size
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 173
    functionName: QuantLib::SwapForwardMappings::cmSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - QuantLib::SwapForwardMappings::cmSwapForwardJacobian
    - cmSwapRate
    - forwardRates
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::cmSwapZedMatrix(const CurveState& cs,\n
      \                                               const Size spanningForwards,\n
      \                                               const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:179,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:181,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:182,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:182,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:183,1
    - Dst: QuantLib::SwapForwardMappings::cmSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:185,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:192,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:194,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:194,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:196,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:216,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:217,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ' volStructure'
    - startIndex
    - endIndex
    argTypes:
    - MarketModel
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 175
    functionDepth: 4
    functionLinenumber: 175
    functionLinenumberEnd: 219
    functionName: QuantLib::SwapForwardMappings::swaptionImpliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - displacements
    - evolution
    - QuantLib::SwapForwardMappings::cmSwapZedMatrix
    - pseudoRoot
    - firstAliveRate
    - std::sqrt
    - numberOfFactors
    - LMMCurveState::setOnForwardRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::swaptionImpliedVolatility(const MarketModel&
      volStructure,\n                                                        Size
      startIndex,\n                                                        Size endIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' cs'
    - startIndex
    - endIndex
    - numeraireIndex
    argTypes:
    - CurveState
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::SwapForwardMappings::annuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 1
    functionsReached:
    - rateTaus
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::annuity(const CurveState& cs,\n                                      Size
      startIndex,\n                                      Size endIndex,\n                                      Size
      numeraireIndex)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:55,1
    - Dst: QuantLib::SwapForwardMappings::annuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:56,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:58,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:59,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:59,1
    - Dst: QuantLib::SwapForwardMappings::annuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ' cs'
    - startIndex
    - endIndex
    - forwardIndex
    argTypes:
    - CurveState
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapForwardMappings::swapDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 2
    functionsReached:
    - forwardRate
    - rateTaus
    - QuantLib::SwapForwardMappings::annuity
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::swapDerivative(const CurveState& cs,\n                                             Size
      startIndex,\n                                             Size endIndex,\n                                             Size
      forwardIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:74,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:75,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:76,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:81,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:84,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:87,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:88,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 100
    functionName: QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 1
    functionsReached:
    - forwardRates
    - rateTaus
    - discountRatio
    - Matrix
    - numberOfRates
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: Matrix
    signature: Matrix SwapForwardMappings::coterminalSwapForwardJacobian(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:104,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:105,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:106,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' cs'
    - displacement
    argTypes:
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 112
    functionName: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - coterminalSwapRates
    - QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian
    - forwardRates
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::coterminalSwapZedMatrix(const CurveState&
      cs,\n                                                        const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:117,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:119,1
    - Dst: QuantLib::SwapForwardMappings::swapDerivative
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 1
    functionsReached:
    - numberOfRates
    - Matrix
    - QuantLib::SwapForwardMappings::swapDerivative
    linkageType: ''
    returnType: Matrix
    signature: Matrix SwapForwardMappings::coinitialSwapForwardJacobian(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:130,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:132,1
    - Dst: QuantLib::SwapForwardMappings::swapDerivative
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:135,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' cs'
    - spanningForwards
    argTypes:
    - CurveState
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionName: QuantLib::SwapForwardMappings::cmSwapForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 1
    functionsReached:
    - numberOfRates
    - Matrix
    - QuantLib::SwapForwardMappings::swapDerivative
    - std::min
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::cmSwapForwardJacobian(const CurveState&
      cs,\n                                                      const Size spanningForwards)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:143,1
    - Dst: QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:144,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:145,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:149,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' cs'
    - displacement
    argTypes:
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 140
    functionDepth: 3
    functionLinenumber: 140
    functionLinenumberEnd: 155
    functionName: QuantLib::SwapForwardMappings::coinitialSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - cmSwapRate
    - forwardRates
    - QuantLib::SwapForwardMappings::coinitialSwapForwardJacobian
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::coinitialSwapZedMatrix(const CurveState&
      cs,\n                                                       const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:161,1
    - Dst: QuantLib::SwapForwardMappings::cmSwapForwardJacobian
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:162,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:163,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' cs'
    - spanningForwards
    - displacement
    argTypes:
    - CurveState
    - Size
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 173
    functionName: QuantLib::SwapForwardMappings::cmSwapZedMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 1
    functionsReached:
    - numberOfRates
    - QuantLib::SwapForwardMappings::cmSwapForwardJacobian
    - cmSwapRate
    - forwardRates
    linkageType: ''
    returnType: Matrix
    signature: "Matrix SwapForwardMappings::cmSwapZedMatrix(const CurveState& cs,\n
      \                                               const Size spanningForwards,\n
      \                                               const Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:179,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:181,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:182,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:182,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:183,1
    - Dst: QuantLib::SwapForwardMappings::cmSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:185,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:192,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:194,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:194,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:196,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:216,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp:217,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ' volStructure'
    - startIndex
    - endIndex
    argTypes:
    - MarketModel
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 175
    functionDepth: 4
    functionLinenumber: 175
    functionLinenumberEnd: 219
    functionName: QuantLib::SwapForwardMappings::swaptionImpliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/swapforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - displacements
    - evolution
    - QuantLib::SwapForwardMappings::cmSwapZedMatrix
    - pseudoRoot
    - firstAliveRate
    - std::sqrt
    - numberOfFactors
    - LMMCurveState::setOnForwardRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SwapForwardMappings::swaptionImpliedVolatility(const MarketModel&
      volStructure,\n                                                        Size
      startIndex,\n                                                        Size endIndex)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:37,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:43,1
    - Dst: checkIncreasingTimesAndCalculateTaus
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:46,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:56,1
    - Dst: std::vector<std::pair<Size,Size> >
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:57,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:60,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' evolutionTimes'
    - ' relevanceRates'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<std::pair<Size,Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 77
    functionName: QuantLib::EvolutionDescription::EvolutionDescription
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - empty
    - checkIncreasingTimes
    - begin
    - std::vector<std::pair<Size,Size> >
    - std::vector<Time>
    - size
    - back
    - end
    - checkIncreasingTimesAndCalculateTaus
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EvolutionDescription::EvolutionDescription(\n                     const
      std::vector<Time>& rateTimes,\n                     const std::vector<Time>&
      evolutionTimes,\n                     const std::vector<std::pair<Size,Size>
      >& relevanceRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& EvolutionDescription::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: '& EvolutionDescription::rateTaus() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::rateTaus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: '& EvolutionDescription::evolutionTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::evolutionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& EvolutionDescription::firstAliveRate() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & EvolutionDescription::firstAliveRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& EvolutionDescription::relevanceRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Size,Size> >
    signature: std::vector<std::pair<Size,Size> > & EvolutionDescription::relevanceRates()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::EvolutionDescription::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EvolutionDescription::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::EvolutionDescription::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size EvolutionDescription::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:114,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:116,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:116,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:117,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:122,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 127
    functionName: QuantLib::checkCompatibility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkCompatibility(const EvolutionDescription& evolution,\n                            const
      std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:131,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: QuantLib::isInTerminalMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - begin
    - rateTimes
    - QuantLib::size
    - end
    - std::min_element
    linkageType: ''
    returnType: bool
    signature: "bool isInTerminalMeasure(const EvolutionDescription& evolution,\n
      \                            const std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:140,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:142,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:146,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:147,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:150,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ' evolution'
    - ' numeraires'
    - offset
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 153
    functionName: QuantLib::isInMoneyMarketPlusMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - std::min
    linkageType: ''
    returnType: bool
    signature: "bool isInMoneyMarketPlusMeasure(const EvolutionDescription& evolution,\n
      \                                   const std::vector<Size>& numeraires,\n                                    Size
      offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isInMoneyMarketPlusMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::isInMoneyMarketMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isInMoneyMarketPlusMeasure
    linkageType: ''
    returnType: bool
    signature: "bool isInMoneyMarketMeasure(const EvolutionDescription& evolution,\n
      \                               const std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:162,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:162,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evolution'
    argTypes:
    - EvolutionDescription
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 164
    functionName: QuantLib::terminalMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - evolutionTimes
    - rateTimes
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> terminalMeasure(const EvolutionDescription& evolution)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:168,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:170,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:175,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:176,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' ev'
    - offset
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 184
    functionName: QuantLib::moneyMarketPlusMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - std::min
    linkageType: ''
    returnType: std::vector<Size>
    signature: "std::vector<Size> moneyMarketPlusMeasure(const EvolutionDescription&
      ev,\n                                             Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::moneyMarketPlusMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evol'
    argTypes:
    - EvolutionDescription
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::moneyMarketMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::moneyMarketPlusMeasure
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> moneyMarketMeasure(const EvolutionDescription& evol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:37,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:43,1
    - Dst: checkIncreasingTimesAndCalculateTaus
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:46,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:56,1
    - Dst: std::vector<std::pair<Size,Size> >
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:57,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:60,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' evolutionTimes'
    - ' relevanceRates'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<std::pair<Size,Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 77
    functionName: QuantLib::EvolutionDescription::EvolutionDescription
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - empty
    - checkIncreasingTimes
    - begin
    - std::vector<std::pair<Size,Size> >
    - std::vector<Time>
    - size
    - back
    - end
    - checkIncreasingTimesAndCalculateTaus
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EvolutionDescription::EvolutionDescription(\n                     const
      std::vector<Time>& rateTimes,\n                     const std::vector<Time>&
      evolutionTimes,\n                     const std::vector<std::pair<Size,Size>
      >& relevanceRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& EvolutionDescription::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: '& EvolutionDescription::rateTaus() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::rateTaus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: '& EvolutionDescription::evolutionTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & EvolutionDescription::evolutionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& EvolutionDescription::firstAliveRate() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & EvolutionDescription::firstAliveRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& EvolutionDescription::relevanceRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Size,Size> >
    signature: std::vector<std::pair<Size,Size> > & EvolutionDescription::relevanceRates()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::EvolutionDescription::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EvolutionDescription::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::EvolutionDescription::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size EvolutionDescription::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:114,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:116,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:116,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:117,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:122,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 127
    functionName: QuantLib::checkCompatibility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkCompatibility(const EvolutionDescription& evolution,\n                            const
      std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:131,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:132,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: QuantLib::isInTerminalMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - begin
    - rateTimes
    - QuantLib::size
    - end
    - std::min_element
    linkageType: ''
    returnType: bool
    signature: "bool isInTerminalMeasure(const EvolutionDescription& evolution,\n
      \                            const std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:140,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:142,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:146,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:147,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:150,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ' evolution'
    - ' numeraires'
    - offset
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 153
    functionName: QuantLib::isInMoneyMarketPlusMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - std::min
    linkageType: ''
    returnType: bool
    signature: "bool isInMoneyMarketPlusMeasure(const EvolutionDescription& evolution,\n
      \                                   const std::vector<Size>& numeraires,\n                                    Size
      offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isInMoneyMarketPlusMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - ' numeraires'
    argTypes:
    - EvolutionDescription
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::isInMoneyMarketMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isInMoneyMarketPlusMeasure
    linkageType: ''
    returnType: bool
    signature: "bool isInMoneyMarketMeasure(const EvolutionDescription& evolution,\n
      \                               const std::vector<Size>& numeraires)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:162,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:162,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evolution'
    argTypes:
    - EvolutionDescription
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 164
    functionName: QuantLib::terminalMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - evolutionTimes
    - rateTimes
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> terminalMeasure(const EvolutionDescription& evolution)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:168,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:170,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:175,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:176,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' ev'
    - offset
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 184
    functionName: QuantLib::moneyMarketPlusMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - evolutionTimes
    - QuantLib::size
    - rateTimes
    - std::min
    linkageType: ''
    returnType: std::vector<Size>
    signature: "std::vector<Size> moneyMarketPlusMeasure(const EvolutionDescription&
      ev,\n                                             Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::moneyMarketPlusMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evol'
    argTypes:
    - EvolutionDescription
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::moneyMarketMeasure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::moneyMarketPlusMeasure
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> moneyMarketMeasure(const EvolutionDescription& evol)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:33,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:34,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:35,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:36,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:37,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:39,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:40,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:44,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:45,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - evolver
    - ' product'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 48
    functionName: QuantLib::AccountingEngine::AccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void AccountingEngine::AccountingEngine(ext::shared_ptr<MarketModelEvolver>
      evolver,\n                                       const Clone<MarketModelMultiProduct>&
      product,\n                                       Real initialNumeraireValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:52,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:53,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:58,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:59,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:60,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:60,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:64,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:79,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:79,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:97,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 110
    functionName: QuantLib::AccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - std::fill
    - numeraires
    - nextTimeStep
    - numeraireBonds
    - startNewPath
    - reset
    - begin
    - size
    - end
    - currentState
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real AccountingEngine::singlePathValues(std::vector<Real>& values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:115,1
    - Dst: QuantLib::AccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:117,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::AccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::AccountingEngine::singlePathValues
    - numberOfProducts
    linkageType: ''
    returnType: void
    signature: "void AccountingEngine::multiplePathValues(SequenceStatisticsInc& stats,\n
      \                                             Size numberOfPaths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:33,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:34,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:35,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:36,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:37,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:39,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:40,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:44,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:45,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - evolver
    - ' product'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 48
    functionName: QuantLib::AccountingEngine::AccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void AccountingEngine::AccountingEngine(ext::shared_ptr<MarketModelEvolver>
      evolver,\n                                       const Clone<MarketModelMultiProduct>&
      product,\n                                       Real initialNumeraireValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:51,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:52,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:53,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:58,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:59,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:60,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:60,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:64,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:79,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:79,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:97,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 110
    functionName: QuantLib::AccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - std::fill
    - numeraires
    - nextTimeStep
    - numeraireBonds
    - startNewPath
    - reset
    - begin
    - size
    - end
    - currentState
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real AccountingEngine::singlePathValues(std::vector<Real>& values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:115,1
    - Dst: QuantLib::AccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:117,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/accountingengine.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::AccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/accountingengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::AccountingEngine::singlePathValues
    - numberOfProducts
    linkageType: ''
    returnType: void
    signature: "void AccountingEngine::multiplePathValues(SequenceStatisticsInc& stats,\n
      \                                             Size numberOfPaths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:34,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:38,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:45,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:46,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:47,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' cs'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 59
    functionName: QuantLib::ForwardForwardMappings::ForwardForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - rateTaus
    - discountRatio
    - Matrix
    - numberOfRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix ForwardForwardMappings::ForwardForwardJacobian(const CurveState&
      cs,\n                                                          Size multiplier,\n
      \                                                         Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:76,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:83,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:84,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:86,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - ' cs'
    - ' shortDisplacements'
    - ' longDisplacements'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - std::vector<Spread>
    - std::vector<Spread>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 99
    functionName: QuantLib::ForwardForwardMappings::YMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - discountRatio
    - numberOfRates
    - size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix ForwardForwardMappings::YMatrix(const CurveState& cs,\n                                           const
      std::vector<Spread>& shortDisplacements,\n                                           const
      std::vector<Spread>& longDisplacements,\n                                           Size
      multiplier,\n                                           Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:106,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:116,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:117,1
    - Dst: LMMCurveState::setOnDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' cs'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 124
    functionName: QuantLib::ForwardForwardMappings::RestrictCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    - LMMCurveState::setOnDiscountRatios
    - numberOfRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: LMMCurveState
    signature: "LMMCurveState ForwardForwardMappings::RestrictCurveState(const CurveState&
      cs,\n                                                             Size multiplier,\n
      \                                                            Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:34,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:38,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:45,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:46,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:47,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' cs'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 59
    functionName: QuantLib::ForwardForwardMappings::ForwardForwardJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - rateTaus
    - discountRatio
    - Matrix
    - numberOfRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix ForwardForwardMappings::ForwardForwardJacobian(const CurveState&
      cs,\n                                                          Size multiplier,\n
      \                                                         Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:76,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:83,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:84,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:86,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - ' cs'
    - ' shortDisplacements'
    - ' longDisplacements'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - std::vector<Spread>
    - std::vector<Spread>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 99
    functionName: QuantLib::ForwardForwardMappings::YMatrix
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - discountRatio
    - numberOfRates
    - size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix ForwardForwardMappings::YMatrix(const CurveState& cs,\n                                           const
      std::vector<Spread>& shortDisplacements,\n                                           const
      std::vector<Spread>& longDisplacements,\n                                           Size
      multiplier,\n                                           Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:106,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:116,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:117,1
    - Dst: LMMCurveState::setOnDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' cs'
    - multiplier
    - offset
    argTypes:
    - CurveState
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 124
    functionName: QuantLib::ForwardForwardMappings::RestrictCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/forwardforwardmappings.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    - LMMCurveState::setOnDiscountRatios
    - numberOfRates
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: LMMCurveState
    signature: "LMMCurveState ForwardForwardMappings::RestrictCurveState(const CurveState&
      cs,\n                                                             Size multiplier,\n
      \                                                            Size offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::EvolutionDescription::EvolutionDescription
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EvolutionDescription()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::EvolutionDescription::EvolutionDescription
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolutiondescription.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EvolutionDescription()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~PiecewiseConstantCorrelation()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PiecewiseConstantCorrelation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: "&\n    PiecewiseConstantCorrelation::correlation(Size i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp
    functionUses: 0
    functionsReached:
    - size
    - correlations
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix &\n    PiecewiseConstantCorrelation::correlation(Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~PiecewiseConstantCorrelation()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PiecewiseConstantCorrelation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: "&\n    PiecewiseConstantCorrelation::correlation(Size i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/piecewiseconstantcorrelation.hpp
    functionUses: 0
    functionsReached:
    - size
    - correlations
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix &\n    PiecewiseConstantCorrelation::correlation(Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: "&\n    HistoricalRatesAnalysis::skippedDates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalRatesAnalysis::skippedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: "&\n    HistoricalRatesAnalysis::skippedDatesErrorMessage() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalRatesAnalysis::skippedDatesErrorMessage()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: "&\n    HistoricalRatesAnalysis::stats() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SequenceStatistics>
    signature: "ext::shared_ptr<SequenceStatistics> &\n    HistoricalRatesAnalysis::stats()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: "&\n    HistoricalRatesAnalysis::skippedDates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalRatesAnalysis::skippedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: "&\n    HistoricalRatesAnalysis::skippedDatesErrorMessage() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalRatesAnalysis::skippedDatesErrorMessage()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: "&\n    HistoricalRatesAnalysis::stats() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SequenceStatistics>
    signature: "ext::shared_ptr<SequenceStatistics> &\n    HistoricalRatesAnalysis::stats()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:36,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:37,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:39,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:46,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:48,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:52,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:61,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:61,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:77,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 7
    argNames:
    - ' statistics'
    - ' skippedDates'
    - ' skippedDatesErrorMessage'
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' indexes'
    argTypes:
    - SequenceStatistics
    - std::vector<Date>
    - std::vector<std::string>
    - Date
    - Date
    - Period
    - std::vector<ext::shared_ptr<InterestRateIndex> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 80
    functionName: QuantLib::historicalRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - Calendar::advance
    - reset
    - std::vector::end
    - push_back
    - QuantLib::swap
    - emplace_back
    - what
    - add
    - fixing
    - QuantLib::size
    - fixingCalendar
    - clear
    linkageType: ''
    returnType: void
    signature: "void historicalRatesAnalysis(\n                SequenceStatistics&
      statistics,\n                std::vector<Date>& skippedDates,\n                std::vector<std::string>&
      skippedDatesErrorMessage,\n                const Date& startDate,\n                const
      Date& endDate,\n                const Period& step,\n                const std::vector<ext::shared_ptr<InterestRateIndex>
      >& indexes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:88,1
    - Dst: historicalRatesAnalysis
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - stats
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' indexes'
    argTypes:
    - ext::shared_ptr<SequenceStatistics>
    - Date
    - Date
    - Period
    - std::vector<ext::shared_ptr<InterestRateIndex> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 94
    functionName: QuantLib::HistoricalRatesAnalysis::HistoricalRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp
    functionUses: 0
    functionsReached:
    - historicalRatesAnalysis
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HistoricalRatesAnalysis::HistoricalRatesAnalysis(\n        ext::shared_ptr<SequenceStatistics>
      stats,\n        const Date& startDate,\n        const Date& endDate,\n        const
      Period& step,\n        const std::vector<ext::shared_ptr<InterestRateIndex>
      >& indexes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:36,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:37,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:39,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:40,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:46,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:48,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:52,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:61,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:61,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:71,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:77,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 7
    argNames:
    - ' statistics'
    - ' skippedDates'
    - ' skippedDatesErrorMessage'
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' indexes'
    argTypes:
    - SequenceStatistics
    - std::vector<Date>
    - std::vector<std::string>
    - Date
    - Date
    - Period
    - std::vector<ext::shared_ptr<InterestRateIndex> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 80
    functionName: QuantLib::historicalRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - Calendar::advance
    - reset
    - std::vector::end
    - push_back
    - QuantLib::swap
    - emplace_back
    - what
    - add
    - fixing
    - QuantLib::size
    - fixingCalendar
    - clear
    linkageType: ''
    returnType: void
    signature: "void historicalRatesAnalysis(\n                SequenceStatistics&
      statistics,\n                std::vector<Date>& skippedDates,\n                std::vector<std::string>&
      skippedDatesErrorMessage,\n                const Date& startDate,\n                const
      Date& endDate,\n                const Period& step,\n                const std::vector<ext::shared_ptr<InterestRateIndex>
      >& indexes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:88,1
    - Dst: historicalRatesAnalysis
      Src: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - stats
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' indexes'
    argTypes:
    - ext::shared_ptr<SequenceStatistics>
    - Date
    - Date
    - Period
    - std::vector<ext::shared_ptr<InterestRateIndex> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 94
    functionName: QuantLib::HistoricalRatesAnalysis::HistoricalRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalratesanalysis.cpp
    functionUses: 0
    functionsReached:
    - historicalRatesAnalysis
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HistoricalRatesAnalysis::HistoricalRatesAnalysis(\n        ext::shared_ptr<SequenceStatistics>
      stats,\n        const Date& startDate,\n        const Date& endDate,\n        const
      Period& step,\n        const std::vector<ext::shared_ptr<InterestRateIndex>
      >& indexes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:41,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:43,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:44,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:47,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:48,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:51,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:54,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:56,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:58,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:59,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - evolver
    - constrainedEvolvers
    - diffWeights
    - startIndexOfConstraint
    - endIndexOfConstraint
    - ' product'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - std::vector<std::vector<ext::shared_ptr<ConstrainedEvolver> > >
    - std::vector<std::vector<std::vector<Real> > >
    - std::vector<Size>
    - std::vector<Size>
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: QuantLib::ProxyGreekEngine::ProxyGreekEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::ProxyGreekEngine(\n        ext::shared_ptr<MarketModelEvolver>
      evolver,\n        std::vector<std::vector<ext::shared_ptr<ConstrainedEvolver>
      > > constrainedEvolvers,\n        std::vector<std::vector<std::vector<Real>
      > > diffWeights,\n        std::vector<Size> startIndexOfConstraint,\n        std::vector<Size>
      endIndexOfConstraint,\n        const Clone<MarketModelMultiProduct>& product,\n
      \       Real initialNumeraireValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ProxyGreekEngine::singleEvolverValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:68,1
    - Dst: setThisConstraint
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:69,1
    - Dst: QuantLib::ProxyGreekEngine::singleEvolverValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' values'
    - ' modifiedValues'
    argTypes:
    - std::vector<Real>
    - std::vector<std::vector<std::vector<Real> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::ProxyGreekEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::ProxyGreekEngine::singleEvolverValues
    - setThisConstraint
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::singlePathValues(\n              std::vector<Real>&
      values,\n              std::vector<std::vector<std::vector<Real> > >& modifiedValues)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:81,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:85,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:89,1
    - Dst: QuantLib::ProxyGreekEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:95,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:103,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - ' stats'
    - ' modifiedStats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - std::vector<std::vector<SequenceStatisticsInc> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 110
    functionName: QuantLib::ProxyGreekEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ProxyGreekEngine::singlePathValues
    - std::vector::resize
    - numberOfProducts
    - resize
    - size
    - add
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::multiplePathValues(\n                  SequenceStatisticsInc&
      stats,\n                  std::vector<std::vector<SequenceStatisticsInc> >&
      modifiedStats,\n                  Size numberOfPaths)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:117,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:118,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:130,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:131,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:132,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:132,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:136,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:143,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:158,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:158,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:177,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:186,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - ' evolver'
    - ' values'
    - storeRates
    argTypes:
    - MarketModelEvolver
    - std::vector<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 189
    functionName: QuantLib::ProxyGreekEngine::singleEvolverValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - std::fill
    - numeraires
    - nextTimeStep
    - numeraireBonds
    - startNewPath
    - reset
    - begin
    - size
    - end
    - currentState
    - currentStep
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::singleEvolverValues(MarketModelEvolver& evolver,\n
      \                                              std::vector<Real>& values,\n
      \                                              bool storeRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:41,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:43,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:44,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:47,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:48,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:51,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:54,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:56,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:58,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:59,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - evolver
    - constrainedEvolvers
    - diffWeights
    - startIndexOfConstraint
    - endIndexOfConstraint
    - ' product'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - std::vector<std::vector<ext::shared_ptr<ConstrainedEvolver> > >
    - std::vector<std::vector<std::vector<Real> > >
    - std::vector<Size>
    - std::vector<Size>
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: QuantLib::ProxyGreekEngine::ProxyGreekEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::ProxyGreekEngine(\n        ext::shared_ptr<MarketModelEvolver>
      evolver,\n        std::vector<std::vector<ext::shared_ptr<ConstrainedEvolver>
      > > constrainedEvolvers,\n        std::vector<std::vector<std::vector<Real>
      > > diffWeights,\n        std::vector<Size> startIndexOfConstraint,\n        std::vector<Size>
      endIndexOfConstraint,\n        const Clone<MarketModelMultiProduct>& product,\n
      \       Real initialNumeraireValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ProxyGreekEngine::singleEvolverValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:68,1
    - Dst: setThisConstraint
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:69,1
    - Dst: QuantLib::ProxyGreekEngine::singleEvolverValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' values'
    - ' modifiedValues'
    argTypes:
    - std::vector<Real>
    - std::vector<std::vector<std::vector<Real> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::ProxyGreekEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::ProxyGreekEngine::singleEvolverValues
    - setThisConstraint
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::singlePathValues(\n              std::vector<Real>&
      values,\n              std::vector<std::vector<std::vector<Real> > >& modifiedValues)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:81,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:85,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:87,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:89,1
    - Dst: QuantLib::ProxyGreekEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:95,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:103,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - ' stats'
    - ' modifiedStats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - std::vector<std::vector<SequenceStatisticsInc> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 110
    functionName: QuantLib::ProxyGreekEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ProxyGreekEngine::singlePathValues
    - std::vector::resize
    - numberOfProducts
    - resize
    - size
    - add
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::multiplePathValues(\n                  SequenceStatisticsInc&
      stats,\n                  std::vector<std::vector<SequenceStatisticsInc> >&
      modifiedStats,\n                  Size numberOfPaths)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:116,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:117,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:118,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:130,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:131,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:132,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:132,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:136,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:143,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:158,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:158,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:177,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp:186,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - ' evolver'
    - ' values'
    - storeRates
    argTypes:
    - MarketModelEvolver
    - std::vector<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 189
    functionName: QuantLib::ProxyGreekEngine::singleEvolverValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/proxygreekengine.cpp
    functionUses: 2
    functionsReached:
    - advanceStep
    - std::fill
    - numeraires
    - nextTimeStep
    - numeraireBonds
    - startNewPath
    - reset
    - begin
    - size
    - end
    - currentState
    - currentStep
    linkageType: ''
    returnType: void
    signature: "void ProxyGreekEngine::singleEvolverValues(MarketModelEvolver& evolver,\n
      \                                              std::vector<Real>& values,\n
      \                                              bool storeRates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:37,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:38,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:39,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:39,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:40,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:41,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:42,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:44,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:45,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:57,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:59,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:62,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:66,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:67,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:70,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:72,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:77,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:88,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:89,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:91,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:92,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:93,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:96,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:105,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:114,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:117,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 118
    functionName: QuantLib::PathwiseAccountingEngine::PathwiseAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - alreadyDeflated
    - numberOfFactors
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - Matrix
    - emplace_back
    - end
    - reserve
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseAccountingEngine::PathwiseAccountingEngine(\n        ext::shared_ptr<LogNormalFwdRateEuler>
      evolver, // method relies heavily on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>&
      product,\n        ext::shared_ptr<MarketModel> pseudoRootStructure, // we need
      pseudo-roots and displacements\n        Real initialNumeraireValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:123,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:146,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:147,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:153,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:155,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:157,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:157,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:162,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:166,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:171,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:194,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:195,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:203,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:205,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:219,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:250,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:255,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 84
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 310
    functionName: QuantLib::PathwiseAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - initialRates
    - nextTimeStep
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:315,1
    - Dst: QuantLib::PathwiseAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:318,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 321
    functionName: QuantLib::PathwiseAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::PathwiseAccountingEngine::singlePathValues
    - numberOfProducts
    linkageType: ''
    returnType: void
    signature: "void PathwiseAccountingEngine::multiplePathValues(SequenceStatisticsInc&
      stats,\n        Size numberOfPaths)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:333,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:334,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:335,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:336,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:336,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:337,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:338,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:339,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:340,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:340,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:341,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:345,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:346,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:347,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:350,1
    - Dst: moneyMarketMeasure
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:360,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:361,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:362,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:363,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:363,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:364,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:364,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:366,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:366,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:375,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:381,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:383,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:386,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:390,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:391,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:394,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:396,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:396,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:398,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:401,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:412,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:413,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:415,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:416,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:417,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:417,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:420,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:429,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:435,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:437,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:438,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:441,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:441,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 5
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - ' vegaBumps'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - std::vector<std::vector<Matrix> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 442
    functionName: QuantLib::PathwiseVegasAccountingEngine::PathwiseVegasAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - displacements
    - rateTaus
    - alreadyDeflated
    - firstAliveRate
    - numberOfFactors
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - moneyMarketMeasure
    - emplace_back
    - pseudoRoot
    - Matrix
    - end
    - reserve
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasAccountingEngine::PathwiseVegasAccountingEngine(\n
      \       ext::shared_ptr<LogNormalFwdRateEuler> evolver, // method relies heavily
      on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>& product,\n
      \       ext::shared_ptr<MarketModel> pseudoRootStructure, // we need pseudo-roots
      and displacements\n        const std::vector<std::vector<Matrix> >& vegaBumps,\n
      \       Real initialNumeraireValue)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:473,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:474,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:480,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:482,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:484,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:484,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:489,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:493,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:499,1
    - Dst: getBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:502,1
    - Dst: browniansThisStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:505,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:530,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:531,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:541,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:555,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:601,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:606,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 100
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 675
    functionName: QuantLib::PathwiseVegasAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - nextTimeStep
    - getBumps
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - browniansThisStep
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseVegasAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:680,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:681,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:681,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:683,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:684,1
    - Dst: QuantLib::PathwiseVegasAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:690,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:692,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:700,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:705,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 677
    functionDepth: 1
    functionLinenumber: 677
    functionLinenumberEnd: 708
    functionName: QuantLib::PathwiseVegasAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - resize
    - QuantLib::PathwiseVegasAccountingEngine::singlePathValues
    - std::sqrt
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasAccountingEngine::multiplePathValues(std::vector<Real>&
      means, std::vector<Real>& errors,\n        Size numberOfPaths)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:719,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:720,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:721,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:722,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:722,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:723,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:724,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:725,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:726,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:727,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:731,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:732,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:733,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:734,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:737,1
    - Dst: moneyMarketMeasure
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:738,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:741,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:741,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:743,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:746,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:748,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:753,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:754,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:754,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:755,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:755,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:759,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:768,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:774,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:776,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:779,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:783,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:784,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:787,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:789,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:789,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:791,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:794,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:805,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:806,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:808,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:809,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:810,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:810,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:813,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:822,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:828,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:830,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:831,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:834,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:834,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:844,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 5
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - ' vegaBumps'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - std::vector<std::vector<Matrix> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 713
    functionDepth: 1
    functionLinenumber: 713
    functionLinenumberEnd: 860
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::PathwiseVegasOuterAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - displacements
    - std::vector::reserve
    - rateTaus
    - alreadyDeflated
    - firstAliveRate
    - numberOfFactors
    - std::vector::emplace_back
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - moneyMarketMeasure
    - emplace_back
    - pseudoRoot
    - Matrix
    - end
    - reserve
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasOuterAccountingEngine::PathwiseVegasOuterAccountingEngine(\n
      \       ext::shared_ptr<LogNormalFwdRateEuler> evolver, // method relies heavily
      on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>& product,\n
      \       ext::shared_ptr<MarketModel> pseudoRootStructure, // we need pseudo-roots
      and displacements\n        const std::vector<std::vector<Matrix> >& vegaBumps,\n
      \       Real initialNumeraireValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:888,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:889,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:896,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:898,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:900,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:900,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:905,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:909,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:915,1
    - Dst: getBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:918,1
    - Dst: browniansThisStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:921,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:948,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:949,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:957,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:959,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:973,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1007,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1012,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 103
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 862
    functionDepth: 0
    functionLinenumber: 862
    functionLinenumberEnd: 1110
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - nextTimeStep
    - getBumps
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - browniansThisStep
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseVegasOuterAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1117,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1118,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1118,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1120,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1121,1
    - Dst: QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1127,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1129,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1112
    functionDepth: 1
    functionLinenumber: 1112
    functionLinenumberEnd: 1145
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
    - resize
    - std::sqrt
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary(std::vector<Real>&
      means, std::vector<Real>& errors,\n        Size numberOfPaths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1152,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1157,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1158,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1147
    functionDepth: 2
    functionLinenumber: 1147
    functionLinenumberEnd: 1184
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - resize
    - QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
    linkageType: ''
    returnType: void
    signature: void PathwiseVegasOuterAccountingEngine::multiplePathValues(std::vector<Real>&
      means, std::vector<Real>& errors,Size numberOfPaths)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:37,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:38,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:39,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:39,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:40,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:41,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:42,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:44,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:45,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:57,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:59,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:62,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:66,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:67,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:70,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:72,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:77,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:88,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:89,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:91,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:92,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:93,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:96,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:105,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:114,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:117,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 118
    functionName: QuantLib::PathwiseAccountingEngine::PathwiseAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - alreadyDeflated
    - numberOfFactors
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - Matrix
    - emplace_back
    - end
    - reserve
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseAccountingEngine::PathwiseAccountingEngine(\n        ext::shared_ptr<LogNormalFwdRateEuler>
      evolver, // method relies heavily on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>&
      product,\n        ext::shared_ptr<MarketModel> pseudoRootStructure, // we need
      pseudo-roots and displacements\n        Real initialNumeraireValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:123,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:146,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:147,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:153,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:155,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:157,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:157,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:162,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:166,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:171,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:194,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:195,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:203,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:205,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:219,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:250,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:255,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 84
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 310
    functionName: QuantLib::PathwiseAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - initialRates
    - nextTimeStep
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:315,1
    - Dst: QuantLib::PathwiseAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:318,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' stats'
    - numberOfPaths
    argTypes:
    - SequenceStatisticsInc
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 321
    functionName: QuantLib::PathwiseAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::PathwiseAccountingEngine::singlePathValues
    - numberOfProducts
    linkageType: ''
    returnType: void
    signature: "void PathwiseAccountingEngine::multiplePathValues(SequenceStatisticsInc&
      stats,\n        Size numberOfPaths)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:333,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:334,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:335,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:336,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:336,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:337,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:338,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:339,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:340,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:340,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:341,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:345,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:346,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:347,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:350,1
    - Dst: moneyMarketMeasure
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:356,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:360,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:361,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:362,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:363,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:363,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:364,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:364,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:366,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:366,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:375,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:381,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:383,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:386,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:390,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:391,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:394,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:396,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:396,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:398,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:401,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:412,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:413,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:415,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:416,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:417,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:417,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:420,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:429,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:435,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:437,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:438,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:441,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:441,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 5
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - ' vegaBumps'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - std::vector<std::vector<Matrix> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 442
    functionName: QuantLib::PathwiseVegasAccountingEngine::PathwiseVegasAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - displacements
    - rateTaus
    - alreadyDeflated
    - firstAliveRate
    - numberOfFactors
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - moneyMarketMeasure
    - emplace_back
    - pseudoRoot
    - Matrix
    - end
    - reserve
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasAccountingEngine::PathwiseVegasAccountingEngine(\n
      \       ext::shared_ptr<LogNormalFwdRateEuler> evolver, // method relies heavily
      on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>& product,\n
      \       ext::shared_ptr<MarketModel> pseudoRootStructure, // we need pseudo-roots
      and displacements\n        const std::vector<std::vector<Matrix> >& vegaBumps,\n
      \       Real initialNumeraireValue)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:473,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:474,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:480,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:482,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:484,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:484,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:489,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:493,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:499,1
    - Dst: getBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:502,1
    - Dst: browniansThisStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:505,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:530,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:531,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:539,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:541,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:555,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:601,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:606,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 100
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 675
    functionName: QuantLib::PathwiseVegasAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - nextTimeStep
    - getBumps
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - browniansThisStep
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseVegasAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:680,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:681,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:681,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:683,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:684,1
    - Dst: QuantLib::PathwiseVegasAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:690,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:692,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:700,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:705,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 677
    functionDepth: 1
    functionLinenumber: 677
    functionLinenumberEnd: 708
    functionName: QuantLib::PathwiseVegasAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - resize
    - QuantLib::PathwiseVegasAccountingEngine::singlePathValues
    - std::sqrt
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasAccountingEngine::multiplePathValues(std::vector<Real>&
      means, std::vector<Real>& errors,\n        Size numberOfPaths)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:719,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:720,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:721,1
    - Dst: alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:722,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:722,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:723,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:724,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:725,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:726,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:727,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:731,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:732,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:733,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:734,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:737,1
    - Dst: moneyMarketMeasure
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:738,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:741,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:741,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:743,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:746,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:748,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:753,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:754,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:754,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:755,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:755,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:759,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:768,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:774,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:776,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:779,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:783,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:784,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:787,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:789,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:789,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:791,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:794,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:805,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:806,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:808,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:809,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:810,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:810,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:813,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:822,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:827,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:828,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:830,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:831,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:834,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:834,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:844,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 5
    argNames:
    - evolver
    - ' product'
    - pseudoRootStructure
    - ' vegaBumps'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<LogNormalFwdRateEuler>
    - Clone<MarketModelPathwiseMultiProduct>
    - ext::shared_ptr<MarketModel>
    - std::vector<std::vector<Matrix> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 713
    functionDepth: 1
    functionLinenumber: 713
    functionLinenumberEnd: 860
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::PathwiseVegasOuterAccountingEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - displacements
    - std::vector::reserve
    - rateTaus
    - alreadyDeflated
    - firstAliveRate
    - numberOfFactors
    - std::vector::emplace_back
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - begin
    - possibleCashFlowTimes
    - numberOfRates
    - size
    - std::upper_bound
    - push_back
    - moneyMarketMeasure
    - emplace_back
    - pseudoRoot
    - Matrix
    - end
    - reserve
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - std::move
    - amount::resize
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasOuterAccountingEngine::PathwiseVegasOuterAccountingEngine(\n
      \       ext::shared_ptr<LogNormalFwdRateEuler> evolver, // method relies heavily
      on LMM Euler\n        const Clone<MarketModelPathwiseMultiProduct>& product,\n
      \       ext::shared_ptr<MarketModel> pseudoRootStructure, // we need pseudo-roots
      and displacements\n        const std::vector<std::vector<Matrix> >& vegaBumps,\n
      \       Real initialNumeraireValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:888,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:889,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:896,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:898,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:900,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:900,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:905,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:909,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:915,1
    - Dst: getBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:918,1
    - Dst: browniansThisStep
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:921,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:948,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:949,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:957,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:959,1
    - Dst: getFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:973,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1007,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1012,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 103
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 862
    functionDepth: 0
    functionLinenumber: 862
    functionLinenumberEnd: 1110
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - nextTimeStep
    - getBumps
    - evolution
    - startNewPath
    - reset
    - pseudoRoot
    - std::min<Integer>
    - numberOfFactors
    - size
    - getFactors
    - currentState
    - browniansThisStep
    - currentStep
    linkageType: ''
    returnType: Real
    signature: Real PathwiseVegasOuterAccountingEngine::singlePathValues(std::vector<Real>&
      values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1117,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1118,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1118,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1120,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1121,1
    - Dst: QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1127,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1129,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1112
    functionDepth: 1
    functionLinenumber: 1112
    functionLinenumberEnd: 1145
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 1
    functionsReached:
    - numberOfProducts
    - QuantLib::PathwiseVegasOuterAccountingEngine::singlePathValues
    - resize
    - std::sqrt
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: "void PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary(std::vector<Real>&
      means, std::vector<Real>& errors,\n        Size numberOfPaths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1152,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1157,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp:1158,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ' means'
    - ' errors'
    - numberOfPaths
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1147
    functionDepth: 2
    functionLinenumber: 1147
    functionLinenumberEnd: 1184
    functionName: QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwiseaccountingengine.cpp
    functionUses: 0
    functionsReached:
    - resize
    - QuantLib::PathwiseVegasOuterAccountingEngine::multiplePathValuesElementary
    linkageType: ''
    returnType: void
    signature: void PathwiseVegasOuterAccountingEngine::multiplePathValues(std::vector<Real>&
      means, std::vector<Real>& errors,Size numberOfPaths)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:29,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:30,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:30,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:31,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: '& MarketModel::covariance(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - empty
    - resize
    - pseudoRoot
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & MarketModel::covariance(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:41,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:42,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:42,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:45,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - endIndex
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: '& MarketModel::totalCovariance(Size endIndex) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - empty
    - resize
    - covariance
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & MarketModel::totalCovariance(Size endIndex) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:57,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:57,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:62,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:65,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::MarketModel::timeDependentVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - evolution
    - covariance
    - std::sqrt
    - numberOfRates
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> MarketModel::timeDependentVolatility(Size i)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:29,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:30,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:30,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:31,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: '& MarketModel::covariance(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - empty
    - resize
    - pseudoRoot
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & MarketModel::covariance(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:41,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:42,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:42,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:45,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - endIndex
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: '& MarketModel::totalCovariance(Size endIndex) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - empty
    - resize
    - covariance
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & MarketModel::totalCovariance(Size endIndex) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:57,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:57,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:62,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:65,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodel.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::MarketModel::timeDependentVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodel.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - evolution
    - covariance
    - std::sqrt
    - numberOfRates
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> MarketModel::timeDependentVolatility(Size i)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:33,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:36,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:36,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:37,1
    - Dst: totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:41,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:41,1
    - Dst: totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:43,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:43,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:45,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' marketModel1'
    - ' marketModel2'
    argTypes:
    - MarketModel
    - MarketModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 53
    functionName: QuantLib::rateVolDifferences
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - QL_ENSURE
    - evolution
    - totalCovariance
    - columns
    - std::sqrt
    - evolutionTimes
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> rateVolDifferences(\n                                           const
      MarketModel& marketModel1,\n                                           const
      MarketModel& marketModel2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:62,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:64,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:65,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:65,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:66,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:68,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:68,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:72,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:73,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:76,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:79,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' marketModel1'
    - ' marketModel2'
    - index
    argTypes:
    - MarketModel
    - MarketModel
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 86
    functionName: QuantLib::rateInstVolDifferences
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - QL_ENSURE
    - evolution
    - covariance
    - std::sqrt
    - evolutionTimes
    - QuantLib::size
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> rateInstVolDifferences(\n                                           const
      MarketModel& marketModel1,\n                                           const
      MarketModel& marketModel2,\n                                           Size
      index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:92,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:92,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:93,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:97,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:99,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:101,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:102,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:102,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:103,1
    - Dst: volatility
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:105,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:106,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:106,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:107,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:108,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ' piecewiseConstantCorrelation'
    - "\n                                                 piecewiseConstantVariances"
    argTypes:
    - PiecewiseConstantCorrelation
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 114
    functionName: QuantLib::coterminalSwapPseudoRoots
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - QL_ENSURE
    - rows
    - row_end
    - Matrix::row_begin
    - volatility
    - std::sqrt
    - std::transform
    - QuantLib::size
    - row_begin
    - times
    - std::vector::push_back
    - front
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> coterminalSwapPseudoRoots(\n        const PiecewiseConstantCorrelation&
      piecewiseConstantCorrelation,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >&\n                                                 piecewiseConstantVariances)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:30,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:33,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:36,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:36,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:37,1
    - Dst: totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:41,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:41,1
    - Dst: totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:43,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:43,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:45,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' marketModel1'
    - ' marketModel2'
    argTypes:
    - MarketModel
    - MarketModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 53
    functionName: QuantLib::rateVolDifferences
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - QL_ENSURE
    - evolution
    - totalCovariance
    - columns
    - std::sqrt
    - evolutionTimes
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> rateVolDifferences(\n                                           const
      MarketModel& marketModel1,\n                                           const
      MarketModel& marketModel2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:62,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:64,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:65,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:65,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:66,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:68,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:68,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:72,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:73,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:76,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:79,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' marketModel1'
    - ' marketModel2'
    - index
    argTypes:
    - MarketModel
    - MarketModel
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 86
    functionName: QuantLib::rateInstVolDifferences
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - initialRates
    - QL_ENSURE
    - evolution
    - covariance
    - std::sqrt
    - evolutionTimes
    - QuantLib::size
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> rateInstVolDifferences(\n                                           const
      MarketModel& marketModel1,\n                                           const
      MarketModel& marketModel2,\n                                           Size
      index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:92,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:92,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:93,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:97,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:99,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:101,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:102,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:102,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:103,1
    - Dst: volatility
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:105,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:106,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:106,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:107,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:108,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ' piecewiseConstantCorrelation'
    - "\n                                                 piecewiseConstantVariances"
    argTypes:
    - PiecewiseConstantCorrelation
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 114
    functionName: QuantLib::coterminalSwapPseudoRoots
    functionSourceFile: /src/quantlib/ql/models/marketmodels/marketmodeldifferences.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - QL_ENSURE
    - rows
    - row_end
    - Matrix::row_begin
    - volatility
    - std::sqrt
    - std::transform
    - QuantLib::size
    - row_begin
    - times
    - std::vector::push_back
    - front
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> coterminalSwapPseudoRoots(\n        const PiecewiseConstantCorrelation&
      piecewiseConstantCorrelation,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >&\n                                                 piecewiseConstantVariances)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:27,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:27,1
    - Dst: checkIncreasingTimesAndCalculateTaus
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::CurveState::CurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimesAndCalculateTaus
    - empty
    linkageType: ''
    returnType: void
    signature: void CurveState::CurveState(const std::vector<Time>& rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:36,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:42,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::CurveState::swapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CurveState::swapRate(Size begin,\n                              Size
      end) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - firstValidIndex
    - ' ds'
    - ' taus'
    - ' fwds'
    argTypes:
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::forwardsFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void forwardsFromDiscountRatios(const Size firstValidIndex,\n                                    const
      std::vector<DiscountFactor>& ds,\n                                    const
      std::vector<Time>& taus,\n                                    std::vector<Rate>&
      fwds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:66,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:68,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:70,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - firstValidIndex
    - ' discountFactors'
    - ' taus'
    - ' cotSwapRates'
    - ' cotSwapAnnuities'
    argTypes:
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 85
    functionName: QuantLib::coterminalFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void coterminalFromDiscountRatios(\n                    const Size
      firstValidIndex,\n                    const std::vector<DiscountFactor>& discountFactors,\n
      \                   const std::vector<Time>& taus,\n                    std::vector<Rate>&
      cotSwapRates,\n                    std::vector<Real>& cotSwapAnnuities)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:96,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:98,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:100,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:104,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:115,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 6
    argNames:
    - spanningForwards
    - firstValidIndex
    - ' ds'
    - ' taus'
    - ' constMatSwapRates'
    - ' constMatSwapAnnuities'
    argTypes:
    - Size
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 124
    functionName: QuantLib::constantMaturityFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void constantMaturityFromDiscountRatios(// Size i, // to be added
      later\n                                            const Size spanningForwards,\n
      \                                           const Size firstValidIndex,\n                                            const
      std::vector<DiscountFactor>& ds,\n                                            const
      std::vector<Time>& taus,\n                                            std::vector<Rate>&
      constMatSwapRates,\n                                            std::vector<Real>&
      constMatSwapAnnuities)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:27,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:27,1
    - Dst: checkIncreasingTimesAndCalculateTaus
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::CurveState::CurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimesAndCalculateTaus
    - empty
    linkageType: ''
    returnType: void
    signature: void CurveState::CurveState(const std::vector<Time>& rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:36,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:40,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:42,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::CurveState::swapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CurveState::swapRate(Size begin,\n                              Size
      end) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:51,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - firstValidIndex
    - ' ds'
    - ' taus'
    - ' fwds'
    argTypes:
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::forwardsFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void forwardsFromDiscountRatios(const Size firstValidIndex,\n                                    const
      std::vector<DiscountFactor>& ds,\n                                    const
      std::vector<Time>& taus,\n                                    std::vector<Rate>&
      fwds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:66,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:68,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:70,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - firstValidIndex
    - ' discountFactors'
    - ' taus'
    - ' cotSwapRates'
    - ' cotSwapAnnuities'
    argTypes:
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 85
    functionName: QuantLib::coterminalFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void coterminalFromDiscountRatios(\n                    const Size
      firstValidIndex,\n                    const std::vector<DiscountFactor>& discountFactors,\n
      \                   const std::vector<Time>& taus,\n                    std::vector<Rate>&
      cotSwapRates,\n                    std::vector<Real>& cotSwapAnnuities)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:96,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:98,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:100,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:104,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestate.cpp:115,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 6
    argNames:
    - spanningForwards
    - firstValidIndex
    - ' ds'
    - ' taus'
    - ' constMatSwapRates'
    - ' constMatSwapAnnuities'
    argTypes:
    - Size
    - Size
    - std::vector<DiscountFactor>
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 124
    functionName: QuantLib::constantMaturityFromDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void constantMaturityFromDiscountRatios(// Size i, // to be added
      later\n                                            const Size spanningForwards,\n
      \                                           const Size firstValidIndex,\n                                            const
      std::vector<DiscountFactor>& ds,\n                                            const
      std::vector<Time>& taus,\n                                            std::vector<Rate>&
      constMatSwapRates,\n                                            std::vector<Real>&
      constMatSwapAnnuities)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: ~MarketModelMultiProduct()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/multiproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelMultiProduct()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: ~MarketModelMultiProduct()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/multiproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelMultiProduct()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~ConstrainedEvolver() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/constrainedevolver.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ConstrainedEvolver() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~ConstrainedEvolver() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/constrainedevolver.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ConstrainedEvolver() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:30,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - paymentTime
    - ' rateTimes'
    argTypes:
    - Time
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::MarketModelDiscounter::MarketModelDiscounter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/discounter.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - checkIncreasingTimes
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MarketModelDiscounter::MarketModelDiscounter(\n                                        Time
      paymentTime,\n                                        const std::vector<Time>&
      rateTimes)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:45,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' curveState'
    - numeraire
    argTypes:
    - CurveState
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::MarketModelDiscounter::numeraireBonds
    functionSourceFile: /src/quantlib/ql/models/marketmodels/discounter.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real MarketModelDiscounter::numeraireBonds(const CurveState& curveState,\n
      \                                              Size numeraire) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:30,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:31,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - paymentTime
    - ' rateTimes'
    argTypes:
    - Time
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::MarketModelDiscounter::MarketModelDiscounter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/discounter.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - checkIncreasingTimes
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MarketModelDiscounter::MarketModelDiscounter(\n                                        Time
      paymentTime,\n                                        const std::vector<Time>&
      rateTimes)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:45,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/discounter.cpp:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' curveState'
    - numeraire
    argTypes:
    - CurveState
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::MarketModelDiscounter::numeraireBonds
    functionSourceFile: /src/quantlib/ql/models/marketmodels/discounter.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - discountRatio
    linkageType: ''
    returnType: Real
    signature: "Real MarketModelDiscounter::numeraireBonds(const CurveState& curveState,\n
      \                                              Size numeraire) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~MarketModelEvolver()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolver.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelEvolver()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~MarketModelEvolver()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolver.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelEvolver()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~MarketModelPathwiseMultiProduct()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisemultiproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiProduct()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~MarketModelPathwiseMultiProduct()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisemultiproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiProduct()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::unique
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:42,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:48,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' times'
    - ' mergedTimes'
    - ' isPresent'
    argTypes:
    - std::vector<std::vector<Time> >
    - std::vector<Time>
    - std::vector<std::valarray<bool> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 54
    functionName: QuantLib::mergeTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - std::binary_search
    - std::sort
    - std::vector::begin
    - resize
    - std::vector::end
    - begin
    - std::unique
    - QuantLib::size
    - std::vector::size
    - std::vector::insert
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: "void mergeTimes(const std::vector<std::vector<Time> >& times,\n                    std::vector<Time>&
      mergedTimes,\n                    std::vector<std::valarray<bool> >& isPresent)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:59,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:60,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:66,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - ' set'
    - ' subset'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 90
    functionName: QuantLib::isInSubset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::valarray<bool>
    signature: "std::valarray<bool> isInSubset(const std::vector<Time>& set,\n                                   const
      std::vector<Time>& subset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 104
    functionName: QuantLib::checkIncreasingTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkIncreasingTimes(const std::vector<Time>& times)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:111,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:114,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' times'
    - ' taus'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 123
    functionName: QuantLib::checkIncreasingTimesAndCalculateTaus
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - resize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkIncreasingTimesAndCalculateTaus(const std::vector<Time>&
      times,\n                                              std::vector<Time>& taus)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:35,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:39,1
    - Dst: std::unique
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:40,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:42,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:48,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' times'
    - ' mergedTimes'
    - ' isPresent'
    argTypes:
    - std::vector<std::vector<Time> >
    - std::vector<Time>
    - std::vector<std::valarray<bool> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 54
    functionName: QuantLib::mergeTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - std::binary_search
    - std::sort
    - std::vector::begin
    - resize
    - std::vector::end
    - begin
    - std::unique
    - QuantLib::size
    - std::vector::size
    - std::vector::insert
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: "void mergeTimes(const std::vector<std::vector<Time> >& times,\n                    std::vector<Time>&
      mergedTimes,\n                    std::vector<std::valarray<bool> >& isPresent)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:59,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:60,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:66,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - ' set'
    - ' subset'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 90
    functionName: QuantLib::isInSubset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::valarray<bool>
    signature: "std::valarray<bool> isInSubset(const std::vector<Time>& set,\n                                   const
      std::vector<Time>& subset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' times'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 104
    functionName: QuantLib::checkIncreasingTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkIncreasingTimes(const std::vector<Time>& times)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:111,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:114,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/utilities.cpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' times'
    - ' taus'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 123
    functionName: QuantLib::checkIncreasingTimesAndCalculateTaus
    functionSourceFile: /src/quantlib/ql/models/marketmodels/utilities.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - resize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkIncreasingTimesAndCalculateTaus(const std::vector<Time>&
      times,\n                                              std::vector<Time>& taus)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:61,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:64,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:65,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:66,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:67,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:68,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:69,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:79,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:80,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:81,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: ext::shared_ptr<RateHelper>
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:85,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:86,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:87,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:88,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:89,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:90,1
    - Dst: DepositRateHelper::DepositRateHelper
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:96,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:97,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: ext::shared_ptr<RateHelper>
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:102,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:103,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:104,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:105,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:106,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:107,1
    - Dst: SwapRateHelper::SwapRateHelper
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:114,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:118,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:119,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:123,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:124,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:139,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:143,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:147,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:151,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:152,1
    - Dst: setValue
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:153,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:155,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:156,1
    - Dst: setValue
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:157,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:160,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:161,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:161,1
    - Dst: PiecewiseYieldCurve::forwardRate
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:169,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:175,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:176,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:176,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:192,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 15
    argNames:
    - ' statistics'
    - ' skippedDates'
    - ' skippedDatesErrorMessage'
    - ' failedDates'
    - ' failedDatesErrorMessage'
    - ' fixingPeriods'
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' fwdIndex'
    - ' initialGap'
    - ' horizon'
    - ' iborIndexes'
    - ' swapIndexes'
    - ' yieldCurveDayCounter'
    argTypes:
    - SequenceStatistics
    - std::vector<Date>
    - std::vector<std::string>
    - std::vector<Date>
    - std::vector<std::string>
    - std::vector<Period>
    - Date
    - Date
    - Period
    - ext::shared_ptr<InterestRateIndex>
    - Period
    - Period
    - std::vector<ext::shared_ptr<IborIndex> >
    - std::vector<ext::shared_ptr<SwapIndex> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 195
    functionName: QuantLib::historicalForwardRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - PiecewiseYieldCurve::forwardRate
    - endOfMonth
    - dayCounter
    - DepositRateHelper::DepositRateHelper
    - clear
    - std::vector::push_back
    - fixedLegTenor
    - tenor
    - begin
    - QuantLib::swap
    - QuantLib::size
    - add
    - fixingCalendar
    - iborIndex
    - setValue
    - Interpolator
    - Calendar::advance
    - fixingDays
    - push_back
    - emplace_back
    - SimpleQuote::SimpleQuote
    - end
    - std::vector::begin
    - reset
    - std::vector::end
    - QuantLib::detail::instance
    - what
    - fixing
    - businessDayConvention
    - SwapRateHelper::SwapRateHelper
    - ext::shared_ptr<RateHelper>
    linkageType: ''
    returnType: void
    signature: "void historicalForwardRatesAnalysis(\n                SequenceStatistics&
      statistics,\n                std::vector<Date>& skippedDates,\n                std::vector<std::string>&
      skippedDatesErrorMessage,\n                std::vector<Date>& failedDates,\n
      \               std::vector<std::string>& failedDatesErrorMessage,\n                std::vector<Period>&
      fixingPeriods,\n                const Date& startDate,\n                const
      Date& endDate,\n                const Period& step,\n                const ext::shared_ptr<InterestRateIndex>&
      fwdIndex,\n                const Period& initialGap,\n                const
      Period& horizon,\n                const std::vector<ext::shared_ptr<IborIndex>
      >& iborIndexes,\n                const std::vector<ext::shared_ptr<SwapIndex>
      >& swapIndexes,\n                const DayCounter& yieldCurveDayCounter,\n                Real
      yieldCurveAccuracy = 1.0e-12,\n                const Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: ~HistoricalForwardRatesAnalysis()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~HistoricalForwardRatesAnalysis()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::HistoricalForwardRatesAnalysisImpl::HistoricalForwardRatesAnalysisImpl
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void HistoricalForwardRatesAnalysisImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::fixingPeriods()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::fixingPeriods() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::skippedDates()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::skippedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::skippedDatesErrorMessage()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::skippedDatesErrorMessage() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::failedDates()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::failedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::failedDatesErrorMessage()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::failedDatesErrorMessage() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:289,1
    - Dst: "historicalForwardRatesAnalysis<Traits,\n                                       Interpolator>"
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - stats
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' fwdIndex'
    - ' initialGap'
    - ' horizon'
    - ' iborIndexes'
    - ' swapIndexes'
    - ' yieldCurveDayCounter'
    - yieldCurveAccuracy
    argTypes:
    - ext::shared_ptr<SequenceStatistics>
    - Date
    - Date
    - Period
    - ext::shared_ptr<InterestRateIndex>
    - Period
    - Period
    - std::vector<ext::shared_ptr<IborIndex> >
    - std::vector<ext::shared_ptr<SwapIndex> >
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 299
    functionName: QuantLib::HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::HistoricalForwardRatesAnalysisImpl
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - "historicalForwardRatesAnalysis<Traits,\n                                       Interpolator>"
    linkageType: ''
    returnType: void
    signature: "void HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::HistoricalForwardRatesAnalysisImpl(\n
      \       ext::shared_ptr<SequenceStatistics> stats,\n        const Date& startDate,\n
      \       const Date& endDate,\n        const Period& step,\n        const ext::shared_ptr<InterestRateIndex>&
      fwdIndex,\n        const Period& initialGap,\n        const Period& horizon,\n
      \       const std::vector<ext::shared_ptr<IborIndex> >& iborIndexes,\n        const
      std::vector<ext::shared_ptr<SwapIndex> >& swapIndexes,\n        const DayCounter&
      yieldCurveDayCounter,\n        Real yieldCurveAccuracy)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:61,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:64,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:65,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:66,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:67,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:68,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:69,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:79,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:80,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:81,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: ext::shared_ptr<RateHelper>
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:85,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:86,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:87,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:88,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:89,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:90,1
    - Dst: DepositRateHelper::DepositRateHelper
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:96,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:97,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: ext::shared_ptr<RateHelper>
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:102,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:103,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:104,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:105,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:106,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:107,1
    - Dst: SwapRateHelper::SwapRateHelper
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:100,1
    - Dst: tenor
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:114,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:118,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:119,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:123,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:124,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:139,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:143,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:147,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:151,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:152,1
    - Dst: setValue
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:153,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:155,1
    - Dst: fixing
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:156,1
    - Dst: setValue
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:157,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:160,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:161,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:161,1
    - Dst: PiecewiseYieldCurve::forwardRate
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:169,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:175,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:176,1
    - Dst: what
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:176,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:186,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:192,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 15
    argNames:
    - ' statistics'
    - ' skippedDates'
    - ' skippedDatesErrorMessage'
    - ' failedDates'
    - ' failedDatesErrorMessage'
    - ' fixingPeriods'
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' fwdIndex'
    - ' initialGap'
    - ' horizon'
    - ' iborIndexes'
    - ' swapIndexes'
    - ' yieldCurveDayCounter'
    argTypes:
    - SequenceStatistics
    - std::vector<Date>
    - std::vector<std::string>
    - std::vector<Date>
    - std::vector<std::string>
    - std::vector<Period>
    - Date
    - Date
    - Period
    - ext::shared_ptr<InterestRateIndex>
    - Period
    - Period
    - std::vector<ext::shared_ptr<IborIndex> >
    - std::vector<ext::shared_ptr<SwapIndex> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 195
    functionName: QuantLib::historicalForwardRatesAnalysis
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - PiecewiseYieldCurve::forwardRate
    - endOfMonth
    - dayCounter
    - DepositRateHelper::DepositRateHelper
    - clear
    - std::vector::push_back
    - fixedLegTenor
    - tenor
    - begin
    - QuantLib::swap
    - QuantLib::size
    - add
    - fixingCalendar
    - iborIndex
    - setValue
    - Interpolator
    - Calendar::advance
    - fixingDays
    - push_back
    - emplace_back
    - SimpleQuote::SimpleQuote
    - end
    - std::vector::begin
    - reset
    - std::vector::end
    - QuantLib::detail::instance
    - what
    - fixing
    - businessDayConvention
    - SwapRateHelper::SwapRateHelper
    - ext::shared_ptr<RateHelper>
    linkageType: ''
    returnType: void
    signature: "void historicalForwardRatesAnalysis(\n                SequenceStatistics&
      statistics,\n                std::vector<Date>& skippedDates,\n                std::vector<std::string>&
      skippedDatesErrorMessage,\n                std::vector<Date>& failedDates,\n
      \               std::vector<std::string>& failedDatesErrorMessage,\n                std::vector<Period>&
      fixingPeriods,\n                const Date& startDate,\n                const
      Date& endDate,\n                const Period& step,\n                const ext::shared_ptr<InterestRateIndex>&
      fwdIndex,\n                const Period& initialGap,\n                const
      Period& horizon,\n                const std::vector<ext::shared_ptr<IborIndex>
      >& iborIndexes,\n                const std::vector<ext::shared_ptr<SwapIndex>
      >& swapIndexes,\n                const DayCounter& yieldCurveDayCounter,\n                Real
      yieldCurveAccuracy = 1.0e-12,\n                const Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: ~HistoricalForwardRatesAnalysis()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~HistoricalForwardRatesAnalysis()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::HistoricalForwardRatesAnalysisImpl::HistoricalForwardRatesAnalysisImpl
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void HistoricalForwardRatesAnalysisImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::fixingPeriods()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::fixingPeriods() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::skippedDates()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::skippedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::skippedDatesErrorMessage()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::skippedDatesErrorMessage() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::failedDates()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::failedDates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionName: "&\n    HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::failedDatesErrorMessage()
      const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: "std::vector<std::string> &\n    HistoricalForwardRatesAnalysisImpl<Traits,
      Interpolator>::failedDatesErrorMessage() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:289,1
    - Dst: "historicalForwardRatesAnalysis<Traits,\n                                       Interpolator>"
      Src: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - stats
    - ' startDate'
    - ' endDate'
    - ' step'
    - ' fwdIndex'
    - ' initialGap'
    - ' horizon'
    - ' iborIndexes'
    - ' swapIndexes'
    - ' yieldCurveDayCounter'
    - yieldCurveAccuracy
    argTypes:
    - ext::shared_ptr<SequenceStatistics>
    - Date
    - Date
    - Period
    - ext::shared_ptr<InterestRateIndex>
    - Period
    - Period
    - std::vector<ext::shared_ptr<IborIndex> >
    - std::vector<ext::shared_ptr<SwapIndex> >
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 299
    functionName: QuantLib::HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::HistoricalForwardRatesAnalysisImpl
    functionSourceFile: /src/quantlib/ql/models/marketmodels/historicalforwardratesanalysis.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - "historicalForwardRatesAnalysis<Traits,\n                                       Interpolator>"
    linkageType: ''
    returnType: void
    signature: "void HistoricalForwardRatesAnalysisImpl<Traits, Interpolator>::HistoricalForwardRatesAnalysisImpl(\n
      \       ext::shared_ptr<SequenceStatistics> stats,\n        const Date& startDate,\n
      \       const Date& endDate,\n        const Period& step,\n        const ext::shared_ptr<InterestRateIndex>&
      fwdIndex,\n        const Period& initialGap,\n        const Period& horizon,\n
      \       const std::vector<ext::shared_ptr<IborIndex> >& iborIndexes,\n        const
      std::vector<ext::shared_ptr<SwapIndex> >& swapIndexes,\n        const DayCounter&
      yieldCurveDayCounter,\n        Real yieldCurveAccuracy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:41,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:59,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:62,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:68,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 6
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - ' pseudoBumps'
    - ' displacements'
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Matrix>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 72
    functionName: QuantLib::RatePseudoRootJacobianNumerical::RatePseudoRootJacobianNumerical
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - push_back
    - emplace_back
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianNumerical::RatePseudoRootJacobianNumerical(const
      Matrix& pseudoRoot,\n        Size aliveIndex,\n        Size numeraire,\n        const
      std::vector<Time>& taus,\n        const std::vector<Matrix>& pseudoBumps,\n
      \       const std::vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:83,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - ' oldRates'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Real>
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 118
    functionName: QuantLib::RatePseudoRootJacobianNumerical::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - rows
    - columns
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianNumerical::getBumps(const std::vector<Rate>&
      oldRates,\n        const std::vector<Real>& , // not used in the numerical implementation\n
      \       const std::vector<Rate>& newRates,\n        const std::vector<Real>&
      gaussians,\n        Matrix& B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:127,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:128,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:145,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:148,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:148,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - ' pseudoBumps'
    - displacements
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Matrix>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 160
    functionName: QuantLib::RatePseudoRootJacobian::RatePseudoRootJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    - emplace_back
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobian::RatePseudoRootJacobian(const Matrix&
      pseudoRoot,\n                                                   Size aliveIndex,\n
      \                                                  Size numeraire,\n                                                   const
      std::vector<Time>& taus,\n                                                   const
      std::vector<Matrix>& pseudoBumps,\n                                                   std::vector<Spread>
      displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 5
    argNames:
    - ' oldRates'
    - ' discountRatios'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Rate>
    - std::vector<Real>
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 231
    functionName: QuantLib::RatePseudoRootJacobian::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobian::getBumps(const std::vector<Rate>& oldRates,\n
      \       const std::vector<Real>& discountRatios,\n        const std::vector<Rate>&
      newRates,\n        const std::vector<Real>& gaussians,\n        Matrix& B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:240,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:240,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:245,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:248,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - displacements
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 253
    functionName: QuantLib::RatePseudoRootJacobianAllElements::RatePseudoRootJacobianAllElements
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianAllElements::RatePseudoRootJacobianAllElements(\n
      \       const Matrix& pseudoRoot,\n        Size aliveIndex,\n        Size numeraire,\n
      \       const std::vector<Time>& taus,\n        std::vector<Spread> displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:268,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:269,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 5
    argNames:
    - ' oldRates'
    - ' discountRatios'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 313
    functionName: QuantLib::RatePseudoRootJacobianAllElements::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianAllElements::getBumps(const std::vector<Rate>&
      oldRates,\n        const std::vector<Real>& discountRatios,\n        const std::vector<Rate>&
      newRates,\n        const std::vector<Real>& gaussians,\n        std::vector<Matrix>&
      B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:41,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:59,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:62,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:68,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 6
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - ' pseudoBumps'
    - ' displacements'
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Matrix>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 72
    functionName: QuantLib::RatePseudoRootJacobianNumerical::RatePseudoRootJacobianNumerical
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - push_back
    - emplace_back
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianNumerical::RatePseudoRootJacobianNumerical(const
      Matrix& pseudoRoot,\n        Size aliveIndex,\n        Size numeraire,\n        const
      std::vector<Time>& taus,\n        const std::vector<Matrix>& pseudoBumps,\n
      \       const std::vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:83,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - ' oldRates'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Real>
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 118
    functionName: QuantLib::RatePseudoRootJacobianNumerical::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - rows
    - columns
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianNumerical::getBumps(const std::vector<Rate>&
      oldRates,\n        const std::vector<Real>& , // not used in the numerical implementation\n
      \       const std::vector<Rate>& newRates,\n        const std::vector<Real>&
      gaussians,\n        Matrix& B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:127,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:128,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:145,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:148,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:148,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - ' pseudoBumps'
    - displacements
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Matrix>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 160
    functionName: QuantLib::RatePseudoRootJacobian::RatePseudoRootJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    - emplace_back
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobian::RatePseudoRootJacobian(const Matrix&
      pseudoRoot,\n                                                   Size aliveIndex,\n
      \                                                  Size numeraire,\n                                                   const
      std::vector<Time>& taus,\n                                                   const
      std::vector<Matrix>& pseudoBumps,\n                                                   std::vector<Spread>
      displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:172,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 5
    argNames:
    - ' oldRates'
    - ' discountRatios'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Rate>
    - std::vector<Real>
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 231
    functionName: QuantLib::RatePseudoRootJacobian::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobian::getBumps(const std::vector<Rate>& oldRates,\n
      \       const std::vector<Real>& discountRatios,\n        const std::vector<Rate>&
      newRates,\n        const std::vector<Real>& gaussians,\n        Matrix& B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:240,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:240,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:245,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:248,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' pseudoRoot'
    - aliveIndex
    - numeraire
    - ' taus'
    - displacements
    argTypes:
    - Matrix
    - Size
    - Size
    - std::vector<Time>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 253
    functionName: QuantLib::RatePseudoRootJacobianAllElements::RatePseudoRootJacobianAllElements
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianAllElements::RatePseudoRootJacobianAllElements(\n
      \       const Matrix& pseudoRoot,\n        Size aliveIndex,\n        Size numeraire,\n
      \       const std::vector<Time>& taus,\n        std::vector<Spread> displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:264,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:266,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:268,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp:269,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 5
    argNames:
    - ' oldRates'
    - ' discountRatios'
    - ' newRates'
    - ' gaussians'
    - ' B'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Rate>
    - std::vector<Real>
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 313
    functionName: QuantLib::RatePseudoRootJacobianAllElements::getBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/ratepseudorootjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RatePseudoRootJacobianAllElements::getBumps(const std::vector<Rate>&
      oldRates,\n        const std::vector<Real>& discountRatios,\n        const std::vector<Rate>&
      newRates,\n        const std::vector<Real>& gaussians,\n        std::vector<Matrix>&
      B)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - factorBegin
    - factorEnd
    - rateBegin
    - rateEnd
    - stepBegin
    - stepEnd
    argTypes:
    - Size
    - Size
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 47
    functionName: QuantLib::VegaBumpCluster::VegaBumpCluster
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCluster::VegaBumpCluster(Size factorBegin,\n        Size
      factorEnd,\n        Size rateBegin,\n        Size rateEnd,\n        Size stepBegin,\n
      \       Size stepEnd)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' comparee'
    argTypes:
    - VegaBumpCluster
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 73
    functionName: QuantLib::VegaBumpCluster::doesIntersect
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCluster::doesIntersect(const VegaBumpCluster& comparee)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:78,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:81,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:84,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' volStructure'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 90
    functionName: QuantLib::VegaBumpCluster::isCompatible
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - numberOfSteps
    - evolution
    - numberOfFactors
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCluster::isCompatible(const ext::shared_ptr<MarketModel>&
      volStructure) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:98,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:99,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:100,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:103,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:110,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' volStructure'
    - factorwiseBumping
    argTypes:
    - ext::shared_ptr<MarketModel>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 127
    functionName: QuantLib::VegaBumpCollection::VegaBumpCollection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - evolution
    - push_back
    - numberOfFactors
    - numberOfRates
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCollection::VegaBumpCollection(const ext::shared_ptr<MarketModel>&
      volStructure,\n                           bool factorwiseBumping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:135,1
    - Dst: isCompatible
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - allBumps
    - volStructure
    argTypes:
    - std::vector<VegaBumpCluster>
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 137
    functionName: QuantLib::VegaBumpCollection::VegaBumpCollection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - isCompatible
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCollection::VegaBumpCollection(std::vector<VegaBumpCluster>
      allBumps,\n                                           ext::shared_ptr<MarketModel>
      volStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& VegaBumpCollection::allBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<VegaBumpCluster>
    signature: std::vector<VegaBumpCluster> & VegaBumpCollection::allBumps() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:151,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:157,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:157,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:158,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:159,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:162,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:163,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:166,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:166,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:167,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:167,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:168,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:168,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:173,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:174,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:175,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:175,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 181
    functionName: QuantLib::VegaBumpCollection::isFull
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - rateEnd
    - evolution
    - std::vector::reserve
    - factorBegin
    - stepBegin
    - factorEnd
    - stepEnd
    - numberOfFactors
    - numberOfRates
    - std::vector::push_back
    - rateBegin
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isFull() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:191,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:198,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:198,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:199,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:200,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:202,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:202,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:204,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:209,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:209,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:210,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:210,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:211,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:211,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 220
    functionName: QuantLib::VegaBumpCollection::isNonOverlapping
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - rateEnd
    - std::vector::reserve
    - factorBegin
    - stepBegin
    - factorEnd
    - stepEnd
    - numberOfFactors
    - numberOfRates
    - std::vector::push_back
    - rateBegin
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isNonOverlapping() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VegaBumpCollection::isNonOverlapping
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:227,1
    - Dst: QuantLib::VegaBumpCollection::isFull
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:227,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 228
    functionName: QuantLib::VegaBumpCollection::isSensible
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VegaBumpCollection::isFull
    - QuantLib::VegaBumpCollection::isNonOverlapping
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isSensible() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::VegaBumpCollection::numberBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size VegaBumpCollection::numberBumps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - factorBegin
    - factorEnd
    - rateBegin
    - rateEnd
    - stepBegin
    - stepEnd
    argTypes:
    - Size
    - Size
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 47
    functionName: QuantLib::VegaBumpCluster::VegaBumpCluster
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCluster::VegaBumpCluster(Size factorBegin,\n        Size
      factorEnd,\n        Size rateBegin,\n        Size rateEnd,\n        Size stepBegin,\n
      \       Size stepEnd)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' comparee'
    argTypes:
    - VegaBumpCluster
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 73
    functionName: QuantLib::VegaBumpCluster::doesIntersect
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCluster::doesIntersect(const VegaBumpCluster& comparee)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:78,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:81,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:84,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' volStructure'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 90
    functionName: QuantLib::VegaBumpCluster::isCompatible
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - numberOfSteps
    - evolution
    - numberOfFactors
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCluster::isCompatible(const ext::shared_ptr<MarketModel>&
      volStructure) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:98,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:99,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:100,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:103,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:110,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' volStructure'
    - factorwiseBumping
    argTypes:
    - ext::shared_ptr<MarketModel>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 127
    functionName: QuantLib::VegaBumpCollection::VegaBumpCollection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - evolution
    - push_back
    - numberOfFactors
    - numberOfRates
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCollection::VegaBumpCollection(const ext::shared_ptr<MarketModel>&
      volStructure,\n                           bool factorwiseBumping)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:135,1
    - Dst: isCompatible
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - allBumps
    - volStructure
    argTypes:
    - std::vector<VegaBumpCluster>
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 137
    functionName: QuantLib::VegaBumpCollection::VegaBumpCollection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - isCompatible
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VegaBumpCollection::VegaBumpCollection(std::vector<VegaBumpCluster>
      allBumps,\n                                           ext::shared_ptr<MarketModel>
      volStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& VegaBumpCollection::allBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<VegaBumpCluster>
    signature: std::vector<VegaBumpCluster> & VegaBumpCollection::allBumps() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:151,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:157,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:157,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:158,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:159,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:162,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:163,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:166,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:166,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:167,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:167,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:168,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:168,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:173,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:174,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:175,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:175,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 181
    functionName: QuantLib::VegaBumpCollection::isFull
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 1
    functionsReached:
    - numberOfSteps
    - rateEnd
    - evolution
    - std::vector::reserve
    - factorBegin
    - stepBegin
    - factorEnd
    - stepEnd
    - numberOfFactors
    - numberOfRates
    - std::vector::push_back
    - rateBegin
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isFull() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:191,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:198,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:198,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:199,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:200,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:202,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:202,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:204,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:209,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:209,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:210,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:210,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:211,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:211,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 220
    functionName: QuantLib::VegaBumpCollection::isNonOverlapping
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 1
    functionsReached:
    - numberOfSteps
    - rateEnd
    - std::vector::reserve
    - factorBegin
    - stepBegin
    - factorEnd
    - stepEnd
    - numberOfFactors
    - numberOfRates
    - std::vector::push_back
    - rateBegin
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isNonOverlapping() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VegaBumpCollection::isNonOverlapping
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:227,1
    - Dst: QuantLib::VegaBumpCollection::isFull
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:227,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 228
    functionName: QuantLib::VegaBumpCollection::isSensible
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VegaBumpCollection::isFull
    - QuantLib::VegaBumpCollection::isNonOverlapping
    linkageType: ''
    returnType: bool
    signature: bool VegaBumpCollection::isSensible() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::VegaBumpCollection::numberBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size VegaBumpCollection::numberBumps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:36,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:37,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:39,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:42,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:44,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:44,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:53,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:53,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:72,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:76,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:105,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:111,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:119,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - ' inputModel'
    - startIndex
    - endIndex
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 127
    functionName: QuantLib::SwaptionPseudoDerivative::SwaptionPseudoDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - push_back
    - pseudoRoot
    - std::sqrt
    - numberOfFactors
    - LMMCurveState::setOnForwardRates
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    linkageType: ''
    returnType: void
    signature: "void SwaptionPseudoDerivative::SwaptionPseudoDerivative(\n        const
      ext::shared_ptr<MarketModel>& inputModel, Size startIndex, Size endIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& SwaptionPseudoDerivative::varianceDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SwaptionPseudoDerivative::varianceDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& SwaptionPseudoDerivative::volatilityDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SwaptionPseudoDerivative::volatilityDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::SwaptionPseudoDerivative::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::impliedVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::SwaptionPseudoDerivative::variance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::SwaptionPseudoDerivative::expiry
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - Strike
    - ' annuities'
    - ' currentRates'
    - ' expiries'
    - price
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::QuickCap::QuickCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuickCap::QuickCap(Real Strike,\n            const std::vector<Real>&
      annuities,\n            const std::vector<Real>& currentRates,\n            const
      std::vector<Real>& expiries,\n            Real price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:198,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:200,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuickCap::operator()(Real volatility) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::operator()(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:213,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 226
    functionName: QuantLib::QuickCap::vega
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - blackFormulaVolDerivative
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::vega(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - Strike
    - ' annuities'
    - ' currentRates'
    - ' expiries'
    - price
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::QuickCap::QuickCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuickCap::QuickCap(Real Strike,\n            const std::vector<Real>&
      annuities,\n            const std::vector<Real>& currentRates,\n            const
      std::vector<Real>& expiries,\n            Real price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:198,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:200,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuickCap::operator()(Real volatility) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::operator()(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:213,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 226
    functionName: QuantLib::QuickCap::vega
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - blackFormulaVolDerivative
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::vega(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:238,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:239,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:239,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:242,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:243,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:244,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:245,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:245,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:263,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:267,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:269,1
    - Dst: LMMCurveState::discountRatio
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:272,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:272,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:275,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:278,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:279,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:282,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:297,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:301,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:301,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:306,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:307,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:309,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:310,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:313,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:320,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:330,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:331,1
    - Dst: QuickCap::vega
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:335,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:339,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:343,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:343,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:353,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 5
    argNames:
    - ' inputModel'
    - strike
    - startIndex
    - endIndex
    - firstDF
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Real
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 359
    functionName: QuantLib::CapPseudoDerivative::CapPseudoDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - blackFormulaVolDerivative
    - std::min
    - push_back
    - std::max
    - LMMCurveState::discountRatio
    - blackFormula
    - pseudoRoot
    - LMMCurveState::setOnForwardRates
    - std::sqrt
    - Brent::setMaxEvaluations
    - numberOfFactors
    - numberOfRates
    - Brent::solve
    - QuickCap::vega
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapPseudoDerivative::CapPseudoDerivative(const ext::shared_ptr<MarketModel>&
      inputModel,\n                                             Real strike,\n                                             Size
      startIndex,\n                                             Size endIndex,\n                                             Real
      firstDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionName: '& CapPseudoDerivative::priceDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CapPseudoDerivative::priceDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: '& CapPseudoDerivative::volatilityDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CapPseudoDerivative::volatilityDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    functionName: QuantLib::CapPseudoDerivative::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapPseudoDerivative::impliedVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:36,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:37,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:39,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:42,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:44,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:44,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:53,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:53,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:72,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:76,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:105,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:111,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:119,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - ' inputModel'
    - startIndex
    - endIndex
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 127
    functionName: QuantLib::SwaptionPseudoDerivative::SwaptionPseudoDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - push_back
    - pseudoRoot
    - std::sqrt
    - numberOfFactors
    - LMMCurveState::setOnForwardRates
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    linkageType: ''
    returnType: void
    signature: "void SwaptionPseudoDerivative::SwaptionPseudoDerivative(\n        const
      ext::shared_ptr<MarketModel>& inputModel, Size startIndex, Size endIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& SwaptionPseudoDerivative::varianceDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SwaptionPseudoDerivative::varianceDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& SwaptionPseudoDerivative::volatilityDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SwaptionPseudoDerivative::volatilityDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::SwaptionPseudoDerivative::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::impliedVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::SwaptionPseudoDerivative::variance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::SwaptionPseudoDerivative::expiry
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SwaptionPseudoDerivative::expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - Strike
    - ' annuities'
    - ' currentRates'
    - ' expiries'
    - price
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::QuickCap::QuickCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuickCap::QuickCap(Real Strike,\n            const std::vector<Real>&
      annuities,\n            const std::vector<Real>& currentRates,\n            const
      std::vector<Real>& expiries,\n            Real price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:198,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:200,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuickCap::operator()(Real volatility) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::operator()(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:213,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 226
    functionName: QuantLib::QuickCap::vega
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - blackFormulaVolDerivative
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::vega(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - Strike
    - ' annuities'
    - ' currentRates'
    - ' expiries'
    - price
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::QuickCap::QuickCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuickCap::QuickCap(Real Strike,\n            const std::vector<Real>&
      annuities,\n            const std::vector<Real>& currentRates,\n            const
      std::vector<Real>& expiries,\n            Real price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:198,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:200,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 208
    functionName: QuickCap::operator()(Real volatility) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - blackFormula
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::operator()(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:213,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - volatility
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 226
    functionName: QuantLib::QuickCap::vega
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - blackFormulaVolDerivative
    linkageType: ''
    returnType: Real
    signature: Real QuickCap::vega(Real volatility) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:238,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:239,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:239,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:242,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:243,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:244,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:245,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:245,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:263,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:267,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:269,1
    - Dst: LMMCurveState::discountRatio
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:272,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:272,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:275,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:278,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:279,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:282,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:297,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:301,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:301,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:306,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:307,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:309,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:310,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:313,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:320,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:330,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:331,1
    - Dst: QuickCap::vega
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:335,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:339,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:343,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:343,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp:353,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 5
    argNames:
    - ' inputModel'
    - strike
    - startIndex
    - endIndex
    - firstDF
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Real
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 359
    functionName: QuantLib::CapPseudoDerivative::CapPseudoDerivative
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - blackFormulaVolDerivative
    - std::min
    - push_back
    - std::max
    - LMMCurveState::discountRatio
    - blackFormula
    - pseudoRoot
    - LMMCurveState::setOnForwardRates
    - std::sqrt
    - Brent::setMaxEvaluations
    - numberOfFactors
    - numberOfRates
    - Brent::solve
    - QuickCap::vega
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapPseudoDerivative::CapPseudoDerivative(const ext::shared_ptr<MarketModel>&
      inputModel,\n                                             Real strike,\n                                             Size
      startIndex,\n                                             Size endIndex,\n                                             Real
      firstDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionName: '& CapPseudoDerivative::priceDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CapPseudoDerivative::priceDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: '& CapPseudoDerivative::volatilityDerivative(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CapPseudoDerivative::volatilityDerivative(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    functionName: QuantLib::CapPseudoDerivative::impliedVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/swaptionpseudojacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapPseudoDerivative::impliedVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' bumps'
    - ' swaptions'
    - ' caps'
    argTypes:
    - VegaBumpCollection
    - std::vector<Swaption>
    - std::vector<Cap>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::VolatilityBumpInstrumentJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - numberBumps
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void VolatilityBumpInstrumentJacobian::VolatilityBumpInstrumentJacobian(const
      VegaBumpCollection& bumps,\n        const std::vector<Swaption>& swaptions,\n
      \       const std::vector<Cap>& caps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:48,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:48,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:49,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:57,1
    - Dst: associatedModel
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:59,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:61,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: SwaptionPseudoDerivative::volatilityDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:67,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:80,1
    - Dst: associatedModel
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:83,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:87,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: CapPseudoDerivative::volatilityDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:93,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:106,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 115
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - rateEnd
    - resize
    - numberBumps
    - stepBegin
    - factorBegin
    - factorEnd
    - stepEnd
    - CapPseudoDerivative::volatilityDerivative
    - size
    - allBumps
    - SwaptionPseudoDerivative::volatilityDerivative
    - associatedModel
    - rateBegin
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> VolatilityBumpInstrumentJacobian::derivativesVolatility(Size
      j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::onePercentBump
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> VolatilityBumpInstrumentJacobian::onePercentBump(Size
      j) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:127,1
    - Dst: derivativesVolatility
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: '& VolatilityBumpInstrumentJacobian::getAllOnePercentBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - derivativesVolatility
    linkageType: ''
    returnType: Matrix
    signature: Matrix & VolatilityBumpInstrumentJacobian::getAllOnePercentBumps()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' bumps'
    - ' swaptions'
    - ' caps'
    - multiplierCutOff
    - tolerance
    argTypes:
    - VegaBumpCollection
    - std::vector<VolatilityBumpInstrumentJacobian::Swaption>
    - std::vector<VolatilityBumpInstrumentJacobian::Cap>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionName: QuantLib::OrthogonalizedBumpFinder::OrthogonalizedBumpFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OrthogonalizedBumpFinder::OrthogonalizedBumpFinder(const VegaBumpCollection&
      bumps,\n                                     const std::vector<VolatilityBumpInstrumentJacobian::Swaption>&
      swaptions,\n                                     const std::vector<VolatilityBumpInstrumentJacobian::Cap>&
      caps,\n                                     Real multiplierCutOff,\n                                     Real
      tolerance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getAllOnePercentBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:154,1
    - Dst: OrthogonalProjections::numberValidVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:159,1
    - Dst: getInputBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:164,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:165,1
    - Dst: ext::shared_ptr::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:166,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:168,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:172,1
    - Dst: OrthogonalProjections::validVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:185,1
    - Dst: OrthogonalProjections::validVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:189,1
    - Dst: OrthogonalProjections::GetVector
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:191,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:193,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:193,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:194,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:194,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:195,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:195,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 1
    argNames:
    - ' theBumps'
    argTypes:
    - std::vector<std::vector<Matrix> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 208
    functionName: QuantLib::OrthogonalizedBumpFinder::GetVegaBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - rateEnd
    - getAllOnePercentBumps
    - resize
    - stepBegin
    - factorBegin
    - OrthogonalProjections::GetVector
    - OrthogonalProjections::numberValidVectors
    - factorEnd
    - getInputBumps
    - ext::shared_ptr::numberOfFactors
    - OrthogonalProjections::validVectors
    - stepEnd
    - numberOfRates
    - size
    - rateBegin
    linkageType: ''
    returnType: void
    signature: void OrthogonalizedBumpFinder::GetVegaBumps(std::vector<std::vector<Matrix>
      >& theBumps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' bumps'
    - ' swaptions'
    - ' caps'
    argTypes:
    - VegaBumpCollection
    - std::vector<Swaption>
    - std::vector<Cap>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::VolatilityBumpInstrumentJacobian
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - numberBumps
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void VolatilityBumpInstrumentJacobian::VolatilityBumpInstrumentJacobian(const
      VegaBumpCollection& bumps,\n        const std::vector<Swaption>& swaptions,\n
      \       const std::vector<Cap>& caps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:48,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:48,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:49,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:57,1
    - Dst: associatedModel
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:59,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:61,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:65,1
    - Dst: SwaptionPseudoDerivative::volatilityDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:67,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:68,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:80,1
    - Dst: associatedModel
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:83,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:87,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:91,1
    - Dst: CapPseudoDerivative::volatilityDerivative
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:93,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:94,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: allBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:95,1
    - Dst: numberBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:106,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 115
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 1
    functionsReached:
    - rateEnd
    - resize
    - numberBumps
    - stepBegin
    - factorBegin
    - factorEnd
    - stepEnd
    - CapPseudoDerivative::volatilityDerivative
    - size
    - allBumps
    - SwaptionPseudoDerivative::volatilityDerivative
    - associatedModel
    - rateBegin
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> VolatilityBumpInstrumentJacobian::derivativesVolatility(Size
      j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - j
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::VolatilityBumpInstrumentJacobian::onePercentBump
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VolatilityBumpInstrumentJacobian::derivativesVolatility
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> VolatilityBumpInstrumentJacobian::onePercentBump(Size
      j) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:127,1
    - Dst: derivativesVolatility
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: '& VolatilityBumpInstrumentJacobian::getAllOnePercentBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - size
    - derivativesVolatility
    linkageType: ''
    returnType: Matrix
    signature: Matrix & VolatilityBumpInstrumentJacobian::getAllOnePercentBumps()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' bumps'
    - ' swaptions'
    - ' caps'
    - multiplierCutOff
    - tolerance
    argTypes:
    - VegaBumpCollection
    - std::vector<VolatilityBumpInstrumentJacobian::Swaption>
    - std::vector<VolatilityBumpInstrumentJacobian::Cap>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionName: QuantLib::OrthogonalizedBumpFinder::OrthogonalizedBumpFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OrthogonalizedBumpFinder::OrthogonalizedBumpFinder(const VegaBumpCollection&
      bumps,\n                                     const std::vector<VolatilityBumpInstrumentJacobian::Swaption>&
      swaptions,\n                                     const std::vector<VolatilityBumpInstrumentJacobian::Cap>&
      caps,\n                                     Real multiplierCutOff,\n                                     Real
      tolerance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getAllOnePercentBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:154,1
    - Dst: OrthogonalProjections::numberValidVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:159,1
    - Dst: getInputBumps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:161,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:164,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:165,1
    - Dst: ext::shared_ptr::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:166,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:168,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:172,1
    - Dst: OrthogonalProjections::validVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:185,1
    - Dst: OrthogonalProjections::validVectors
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:189,1
    - Dst: OrthogonalProjections::GetVector
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:191,1
    - Dst: stepBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:193,1
    - Dst: stepEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:193,1
    - Dst: rateBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:194,1
    - Dst: rateEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:194,1
    - Dst: factorBegin
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:195,1
    - Dst: factorEnd
      Src: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp:195,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 1
    argNames:
    - ' theBumps'
    argTypes:
    - std::vector<std::vector<Matrix> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 208
    functionName: QuantLib::OrthogonalizedBumpFinder::GetVegaBumps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - rateEnd
    - getAllOnePercentBumps
    - resize
    - stepBegin
    - factorBegin
    - OrthogonalProjections::GetVector
    - OrthogonalProjections::numberValidVectors
    - factorEnd
    - getInputBumps
    - ext::shared_ptr::numberOfFactors
    - OrthogonalProjections::validVectors
    - stepEnd
    - numberOfRates
    - size
    - rateBegin
    linkageType: ''
    returnType: void
    signature: void OrthogonalizedBumpFinder::GetVegaBumps(std::vector<std::vector<Matrix>
      >& theBumps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: '& getInputBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VegaBumpCollection
    signature: VegaBumpCollection & getInputBumps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: '& getInputBumps() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/bumpinstrumentjacobian.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VegaBumpCollection
    signature: VegaBumpCollection & getInputBumps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::VegaBumpCluster::factorBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factorBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::VegaBumpCluster::factorEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factorEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::VegaBumpCluster::rateBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rateBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::VegaBumpCluster::rateEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rateEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::VegaBumpCluster::stepBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size stepBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::VegaBumpCluster::stepEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size stepEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& associatedModel() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: ext::shared_ptr<MarketModel> & associatedModel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::VegaBumpCluster::factorBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factorBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::VegaBumpCluster::factorEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factorEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::VegaBumpCluster::rateBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rateBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::VegaBumpCluster::rateEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rateEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::VegaBumpCluster::stepBegin
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size stepBegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::VegaBumpCluster::stepEnd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size stepEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& associatedModel() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/pathwisegreeks/vegabumpcluster.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: ext::shared_ptr<MarketModel> & associatedModel() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:50,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:61,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:61,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:63,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - ' rateTimes'
    - longTermCorr
    - beta
    - gamma
    - time
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 71
    functionName: QuantLib::exponentialCorrelations
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::pow
    - QuantLib::size
    - QuantLib::checkIncreasingTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix exponentialCorrelations(const std::vector<Time>& rateTimes,\n
      \                                  Real longTermCorr,\n                                   Real
      beta,\n                                   Real gamma,\n                                   Time
      time)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:82,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:88,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:90,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:92,1
    - Dst: close
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:96,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:97,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:99,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:100,1
    - Dst: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:107,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:107,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:108,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:111,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:115,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 5
    argNames:
    - ' rateTimes'
    - longTermCorr
    - beta
    - gamma
    - times
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialForwardCorrelation::ExponentialForwardCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached:
    - close
    - empty
    - checkIncreasingTimes
    - QuantLib::io::sequence
    - std::move
    - begin
    - exponentialCorrelations
    - resize
    - std::vector<Time>
    - size
    - back
    - end
    - QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExponentialForwardCorrelation::ExponentialForwardCorrelation(const
      std::vector<Time>& rateTimes,\n                                                                 Real
      longTermCorr,\n                                                                 Real
      beta,\n                                                                 Real
      gamma,\n                                                                 std::vector<Time>
      times)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    ExponentialForwardCorrelation::times() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    ExponentialForwardCorrelation::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    ExponentialForwardCorrelation::rateTimes() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    ExponentialForwardCorrelation::rateTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: "&\n    ExponentialForwardCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    ExponentialForwardCorrelation::correlations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::ExponentialForwardCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExponentialForwardCorrelation::numberOfRates() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:45,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:50,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:61,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:61,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:63,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - ' rateTimes'
    - longTermCorr
    - beta
    - gamma
    - time
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 71
    functionName: QuantLib::exponentialCorrelations
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::pow
    - QuantLib::size
    - QuantLib::checkIncreasingTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix exponentialCorrelations(const std::vector<Time>& rateTimes,\n
      \                                  Real longTermCorr,\n                                   Real
      beta,\n                                   Real gamma,\n                                   Time
      time)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:82,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:88,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:90,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:92,1
    - Dst: close
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:96,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:97,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:99,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:100,1
    - Dst: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:107,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:107,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:108,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:111,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:113,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:115,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 5
    argNames:
    - ' rateTimes'
    - longTermCorr
    - beta
    - gamma
    - times
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialForwardCorrelation::ExponentialForwardCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached:
    - close
    - empty
    - checkIncreasingTimes
    - QuantLib::io::sequence
    - std::move
    - begin
    - exponentialCorrelations
    - resize
    - std::vector<Time>
    - size
    - back
    - end
    - QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExponentialForwardCorrelation::ExponentialForwardCorrelation(const
      std::vector<Time>& rateTimes,\n                                                                 Real
      longTermCorr,\n                                                                 Real
      beta,\n                                                                 Real
      gamma,\n                                                                 std::vector<Time>
      times)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    ExponentialForwardCorrelation::times() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    ExponentialForwardCorrelation::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    ExponentialForwardCorrelation::rateTimes() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    ExponentialForwardCorrelation::rateTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: "&\n    ExponentialForwardCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    ExponentialForwardCorrelation::correlations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::ExponentialForwardCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/expcorrelations.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExponentialForwardCorrelation::numberOfRates() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:35,1
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:38,1
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:38,1
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:41,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:43,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:45,1
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:47,1
    - Dst: CovarianceDecomposition
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:48,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:51,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' fwdCorr'
    - ' curveState'
    - displacement
    argTypes:
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::CotSwapFromFwdCorrelation::CotSwapFromFwdCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - CovarianceDecomposition
    - QuantLib::CotSwapFromFwdCorrelation::numberOfRates
    - correlations
    - transpose
    - size
    - rateTimes
    - times
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CotSwapFromFwdCorrelation::CotSwapFromFwdCorrelation(\n            const
      ext::shared_ptr<PiecewiseConstantCorrelation>& fwdCorr,\n            const CurveState&
      curveState,\n            Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& CotSwapFromFwdCorrelation::times() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - times
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CotSwapFromFwdCorrelation::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& CotSwapFromFwdCorrelation::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - rateTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CotSwapFromFwdCorrelation::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size CotSwapFromFwdCorrelation::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: "&\n    CotSwapFromFwdCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    CotSwapFromFwdCorrelation::correlations()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:35,1
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:38,1
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:38,1
    - Dst: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:41,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:43,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:45,1
    - Dst: correlations
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:47,1
    - Dst: CovarianceDecomposition
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:48,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:51,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' fwdCorr'
    - ' curveState'
    - displacement
    argTypes:
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - CurveState
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: QuantLib::CotSwapFromFwdCorrelation::CotSwapFromFwdCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - CovarianceDecomposition
    - QuantLib::CotSwapFromFwdCorrelation::numberOfRates
    - correlations
    - transpose
    - size
    - rateTimes
    - times
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CotSwapFromFwdCorrelation::CotSwapFromFwdCorrelation(\n            const
      ext::shared_ptr<PiecewiseConstantCorrelation>& fwdCorr,\n            const CurveState&
      curveState,\n            Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& CotSwapFromFwdCorrelation::times() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - times
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CotSwapFromFwdCorrelation::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& CotSwapFromFwdCorrelation::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached:
    - rateTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CotSwapFromFwdCorrelation::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::CotSwapFromFwdCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size CotSwapFromFwdCorrelation::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: "&\n    CotSwapFromFwdCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/cotswapfromfwdcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    CotSwapFromFwdCorrelation::correlations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:31,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:42,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:42,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ' fwdCorrelation'
    - ' rateTimes'
    argTypes:
    - Matrix
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 48
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::copy
    - checkIncreasingTimes
    - rows
    - begin
    - columns
    - size
    - end
    - QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation(\n
      \                       const Matrix& fwdCorrelation,\n                        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:53,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' fwdCorrelation'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 69
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 3
    functionsReached:
    - Matrix
    - rows
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> TimeHomogeneousForwardCorrelation::evolvedMatrices(\n
      \                                   const Matrix& fwdCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: "&\n    TimeHomogeneousForwardCorrelation::times() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    TimeHomogeneousForwardCorrelation::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: "&\n    TimeHomogeneousForwardCorrelation::rateTimes() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    TimeHomogeneousForwardCorrelation::rateTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: "&\n    TimeHomogeneousForwardCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    TimeHomogeneousForwardCorrelation::correlations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TimeHomogeneousForwardCorrelation::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:31,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:42,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:42,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:46,1
    - Dst: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ' fwdCorrelation'
    - ' rateTimes'
    argTypes:
    - Matrix
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 48
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::copy
    - checkIncreasingTimes
    - rows
    - begin
    - columns
    - size
    - end
    - QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation(\n
      \                       const Matrix& fwdCorrelation,\n                        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:53,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' fwdCorrelation'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 69
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::evolvedMatrices
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 4
    functionsReached:
    - Matrix
    - rows
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> TimeHomogeneousForwardCorrelation::evolvedMatrices(\n
      \                                   const Matrix& fwdCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: "&\n    TimeHomogeneousForwardCorrelation::times() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    TimeHomogeneousForwardCorrelation::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: "&\n    TimeHomogeneousForwardCorrelation::rateTimes() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    TimeHomogeneousForwardCorrelation::rateTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: "&\n    TimeHomogeneousForwardCorrelation::correlations() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    TimeHomogeneousForwardCorrelation::correlations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::TimeHomogeneousForwardCorrelation::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/correlations/timehomogeneousforwardcorrelation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size TimeHomogeneousForwardCorrelation::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:44,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:48,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:49,1
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' product'
    argTypes:
    - CallSpecifiedMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::DecoratedHedge::DecoratedHedge
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - QuantLib::DecoratedHedge::clear
    - reserve
    linkageType: ''
    returnType: void
    signature: void DecoratedHedge(const CallSpecifiedMultiProduct& product)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:55,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:56,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:58,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::DecoratedHedge::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    - disableCallability
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - enableCallability
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:69,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::DecoratedHedge::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool nextTimeStep(const CurveState& currentState,\n                              std::vector<Size>&
      numberCashFlowsThisStep,\n                              std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    - Dst: DecoratedHedge::DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::DecoratedHedge::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - DecoratedHedge::DecoratedHedge
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> clone() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::DecoratedHedge::save
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void save()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: QuantLib::DecoratedHedge::clear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::DecoratedHedge::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::DecoratedHedge::startRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::DecoratedHedge::stopRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void stopRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:44,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:48,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:49,1
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' product'
    argTypes:
    - CallSpecifiedMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::DecoratedHedge::DecoratedHedge
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - QuantLib::DecoratedHedge::clear
    - reserve
    linkageType: ''
    returnType: void
    signature: void DecoratedHedge(const CallSpecifiedMultiProduct& product)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:55,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:56,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:58,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::DecoratedHedge::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    - disableCallability
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - enableCallability
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:69,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::DecoratedHedge::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool nextTimeStep(const CurveState& currentState,\n                              std::vector<Size>&
      numberCashFlowsThisStep,\n                              std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    - Dst: DecoratedHedge::DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::DecoratedHedge::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - DecoratedHedge::DecoratedHedge
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> clone() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::DecoratedHedge::save
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void save()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: QuantLib::DecoratedHedge::clear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::DecoratedHedge::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::DecoratedHedge::startRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::DecoratedHedge::stopRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void stopRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:117,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:117,1
    - Dst: MultiProductComposite
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:118,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:120,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:121,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:121,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:122,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:123,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:123,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:125,1
    - Dst: finalize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:126,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:129,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:133,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:138,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:142,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:144,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:144,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:145,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:146,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:148,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:149,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:151,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:152,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:155,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:158,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:159,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 8
    argNames:
    - evolver
    - innerEvolvers
    - ' underlying'
    - ' rebate'
    - ' hedge'
    - ' hedgeRebate'
    - ' hedgeStrategy'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - std::vector<ext::shared_ptr<MarketModelEvolver> >
    - MarketModelMultiProduct
    - MarketModelExerciseValue
    - MarketModelMultiProduct
    - MarketModelExerciseValue
    - ExerciseStrategy<CurveState>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 162
    functionName: QuantLib::UpperBoundEngine::UpperBoundEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - DecoratedHedge
    - numberOfProducts
    - finalize
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - CallSpecifiedMultiProduct
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - ExerciseAdapter
    - size
    - add
    - reserve
    - exerciseTimes
    - MultiProductComposite
    linkageType: ''
    returnType: void
    signature: "void UpperBoundEngine::UpperBoundEngine(\n        ext::shared_ptr<MarketModelEvolver>
      evolver,\n        std::vector<ext::shared_ptr<MarketModelEvolver> > innerEvolvers,\n
      \       const MarketModelMultiProduct& underlying,\n        const MarketModelExerciseValue&
      rebate,\n        const MarketModelMultiProduct& hedge,\n        const MarketModelExerciseValue&
      hedgeRebate,\n        const ExerciseStrategy<CurveState>& hedgeStrategy,\n        Real
      initialNumeraireValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UpperBoundEngine::singlePathValue
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:169,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' stats'
    - outerPaths
    - innerPaths
    argTypes:
    - Statistics
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 172
    functionName: QuantLib::UpperBoundEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::UpperBoundEngine::singlePathValue
    linkageType: ''
    returnType: void
    signature: "void UpperBoundEngine::multiplePathValues(Statistics& stats,\n                                              Size
      outerPaths,\n                                              Size innerPaths)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<DecoratedHedge&>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:177,1
    - Dst: item
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:177,1
    - Dst: strategy
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:178,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:183,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:184,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:185,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:186,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:191,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:193,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:193,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:200,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:207,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:216,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:222,1
    - Dst: ext::shared_ptr::setInitialState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:244,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:244,1
    - Dst: stopRecording
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:246,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:247,1
    - Dst: save
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:248,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:254,1
    - Dst: AccountingEngine::multiplePathValues
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:255,1
    - Dst: SequenceStatisticsInc::mean
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:257,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:262,1
    - Dst: startRecording
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:263,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:270,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:283,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:297,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:298,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:309,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:315,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 1
    argNames:
    - innerPaths
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 316
    functionName: QuantLib::UpperBoundEngine::singlePathValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 1
    functionsReached:
    - advanceStep
    - numberOfProducts
    - startNewPath
    - item
    - dynamic_cast<DecoratedHedge&>
    - Real
    - clear
    - numeraires
    - begin
    - enableCallability
    - currentState
    - AccountingEngine::multiplePathValues
    - exercise
    - QuantLib::UpperBoundEngine::collectCashFlows
    - startRecording
    - std::max
    - ext::shared_ptr::setInitialState
    - end
    - save
    - nextTimeStep
    - strategy
    - std::make_pair
    - disableCallability
    - reset
    - std::accumulate
    - stopRecording
    - SequenceStatisticsInc::mean
    linkageType: ''
    returnType: std::pair<Real,Real>
    signature: std::pair<Real,Real> UpperBoundEngine::singlePathValue(Size innerPaths)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:323,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:339,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:339,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - currentStep
    - principalInNumerairePortfolio
    - beginProduct
    - endProduct
    argTypes:
    - Size
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 344
    functionName: QuantLib::UpperBoundEngine::collectCashFlows
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 1
    functionsReached:
    - numeraires
    - numeraireBonds
    - currentState
    linkageType: ''
    returnType: Real
    signature: "Real UpperBoundEngine::collectCashFlows(Size currentStep,\n                                            Real
      principalInNumerairePortfolio,\n                                            Size
      beginProduct,\n                                            Size endProduct)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:44,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:48,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:49,1
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' product'
    argTypes:
    - CallSpecifiedMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::DecoratedHedge::DecoratedHedge
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - QuantLib::DecoratedHedge::clear
    - reserve
    linkageType: ''
    returnType: void
    signature: void DecoratedHedge(const CallSpecifiedMultiProduct& product)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:55,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:56,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:58,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::DecoratedHedge::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    - disableCallability
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - enableCallability
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:69,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::DecoratedHedge::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool nextTimeStep(const CurveState& currentState,\n                              std::vector<Size>&
      numberCashFlowsThisStep,\n                              std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    - Dst: DecoratedHedge::DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::DecoratedHedge::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - DecoratedHedge::DecoratedHedge
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> clone() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::DecoratedHedge::save
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void save()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: QuantLib::DecoratedHedge::clear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::DecoratedHedge::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::DecoratedHedge::startRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::DecoratedHedge::stopRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void stopRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:42,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:44,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:48,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:49,1
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' product'
    argTypes:
    - CallSpecifiedMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::DecoratedHedge::DecoratedHedge
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - numberOfProducts
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - QuantLib::DecoratedHedge::clear
    - reserve
    linkageType: ''
    returnType: void
    signature: void DecoratedHedge(const CallSpecifiedMultiProduct& product)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:55,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:56,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:58,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::DecoratedHedge::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    - disableCallability
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - enableCallability
    linkageType: ''
    returnType: void
    signature: void reset() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:69,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::DecoratedHedge::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool nextTimeStep(const CurveState& currentState,\n                              std::vector<Size>&
      numberCashFlowsThisStep,\n                              std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    - Dst: DecoratedHedge::DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::DecoratedHedge::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - DecoratedHedge::DecoratedHedge
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> clone() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::DecoratedHedge::save
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void save()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecoratedHedge::clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: QuantLib::DecoratedHedge::clear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::DecoratedHedge::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::DecoratedHedge::startRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::DecoratedHedge::stopRecording
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void stopRecording()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:117,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:117,1
    - Dst: MultiProductComposite
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:118,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:120,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:121,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:121,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:122,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:123,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:123,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: DecoratedHedge
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: CallSpecifiedMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:124,1
    - Dst: ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:125,1
    - Dst: finalize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:126,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:129,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:133,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:138,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:142,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:144,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:144,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:145,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:146,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:148,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:149,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:151,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:152,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:155,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:158,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:159,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 8
    argNames:
    - evolver
    - innerEvolvers
    - ' underlying'
    - ' rebate'
    - ' hedge'
    - ' hedgeRebate'
    - ' hedgeStrategy'
    - initialNumeraireValue
    argTypes:
    - ext::shared_ptr<MarketModelEvolver>
    - std::vector<ext::shared_ptr<MarketModelEvolver> >
    - MarketModelMultiProduct
    - MarketModelExerciseValue
    - MarketModelMultiProduct
    - MarketModelExerciseValue
    - ExerciseStrategy<CurveState>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 162
    functionName: QuantLib::UpperBoundEngine::UpperBoundEngine
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - DecoratedHedge
    - numberOfProducts
    - finalize
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - resize
    - CallSpecifiedMultiProduct
    - std::move
    - emplace_back
    - possibleCashFlowTimes
    - ExerciseAdapter
    - size
    - add
    - reserve
    - exerciseTimes
    - MultiProductComposite
    linkageType: ''
    returnType: void
    signature: "void UpperBoundEngine::UpperBoundEngine(\n        ext::shared_ptr<MarketModelEvolver>
      evolver,\n        std::vector<ext::shared_ptr<MarketModelEvolver> > innerEvolvers,\n
      \       const MarketModelMultiProduct& underlying,\n        const MarketModelExerciseValue&
      rebate,\n        const MarketModelMultiProduct& hedge,\n        const MarketModelExerciseValue&
      hedgeRebate,\n        const ExerciseStrategy<CurveState>& hedgeStrategy,\n        Real
      initialNumeraireValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UpperBoundEngine::singlePathValue
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:169,1
    - Dst: add
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' stats'
    - outerPaths
    - innerPaths
    argTypes:
    - Statistics
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 172
    functionName: QuantLib::UpperBoundEngine::multiplePathValues
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 0
    functionsReached:
    - add
    - QuantLib::UpperBoundEngine::singlePathValue
    linkageType: ''
    returnType: void
    signature: "void UpperBoundEngine::multiplePathValues(Statistics& stats,\n                                              Size
      outerPaths,\n                                              Size innerPaths)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<DecoratedHedge&>
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:177,1
    - Dst: item
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:177,1
    - Dst: strategy
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:178,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:183,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:184,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:185,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:186,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:191,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:193,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:193,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:200,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:207,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:216,1
    - Dst: QuantLib::UpperBoundEngine::collectCashFlows
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:222,1
    - Dst: ext::shared_ptr::setInitialState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:244,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:244,1
    - Dst: stopRecording
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:246,1
    - Dst: enableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:247,1
    - Dst: save
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:248,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:254,1
    - Dst: AccountingEngine::multiplePathValues
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:255,1
    - Dst: SequenceStatisticsInc::mean
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:257,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:259,1
    - Dst: disableCallability
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:262,1
    - Dst: startRecording
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:263,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:270,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:283,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:297,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:298,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:309,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:315,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 1
    argNames:
    - innerPaths
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 316
    functionName: QuantLib::UpperBoundEngine::singlePathValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 2
    functionsReached:
    - advanceStep
    - numberOfProducts
    - startNewPath
    - item
    - dynamic_cast<DecoratedHedge&>
    - Real
    - clear
    - numeraires
    - begin
    - enableCallability
    - currentState
    - AccountingEngine::multiplePathValues
    - exercise
    - QuantLib::UpperBoundEngine::collectCashFlows
    - startRecording
    - std::max
    - ext::shared_ptr::setInitialState
    - end
    - save
    - nextTimeStep
    - strategy
    - std::make_pair
    - disableCallability
    - reset
    - std::accumulate
    - stopRecording
    - SequenceStatisticsInc::mean
    linkageType: ''
    returnType: std::pair<Real,Real>
    signature: std::pair<Real,Real> UpperBoundEngine::singlePathValue(Size innerPaths)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:323,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:339,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp:339,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - currentStep
    - principalInNumerairePortfolio
    - beginProduct
    - endProduct
    argTypes:
    - Size
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 344
    functionName: QuantLib::UpperBoundEngine::collectCashFlows
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/upperboundengine.cpp
    functionUses: 2
    functionsReached:
    - numeraires
    - numeraireBonds
    - currentState
    linkageType: ''
    returnType: Real
    signature: "Real UpperBoundEngine::collectCashFlows(Size currentStep,\n                                            Real
      principalInNumerairePortfolio,\n                                            Size
      beginProduct,\n                                            Size endProduct)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~MarketModelExerciseValue()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/exercisevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelExerciseValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~MarketModelExerciseValue()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/exercisevalue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelExerciseValue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFunctions
      Src: /src/quantlib/ql/models/marketmodels/callability/marketmodelbasissystem.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelBasisSystem::numberOfData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/marketmodelbasissystem.hpp
    functionUses: 0
    functionsReached:
    - numberOfFunctions
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> numberOfData() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFunctions
      Src: /src/quantlib/ql/models/marketmodels/callability/marketmodelbasissystem.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelBasisSystem::numberOfData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/marketmodelbasissystem.hpp
    functionUses: 0
    functionsReached:
    - numberOfFunctions
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> numberOfData() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:39,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:41,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:42,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:44,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:47,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:49,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:50,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:51,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:52,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:54,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:55,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:64,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:70,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:71,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:73,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:74,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:76,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:77,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:77,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:78,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:79,1
    - Dst: numberOfFunctions
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:81,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:82,1
    - Dst: numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:83,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:84,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 6
    argNames:
    - basisSystem
    - basisCoefficients
    - ' evolution'
    - ' numeraires'
    - exercise
    - control
    argTypes:
    - Clone<MarketModelBasisSystem>
    - std::vector<std::vector<Real> >
    - EvolutionDescription
    - std::vector<Size>
    - Clone<MarketModelExerciseValue>
    - Clone<MarketModelExerciseValue>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 85
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - evolution
    - resize
    - std::move
    - isExerciseTime
    - push_back
    - std::vector::size
    - emplace_back
    - possibleCashFlowTimes
    - numberOfExercises
    - std::vector<Size>
    - size
    - evolutionTimes
    - rateTimes
    - reserve
    - checkCompatibility
    - numberOfFunctions
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy(\n
      \       Clone<MarketModelBasisSystem> basisSystem,\n        std::vector<std::vector<Real>
      > basisCoefficients,\n        const EvolutionDescription& evolution,\n        const
      std::vector<Size>& numeraires,\n        Clone<MarketModelExerciseValue> exercise,\n
      \       Clone<MarketModelExerciseValue> control)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> LongstaffSchwartzExerciseStrategy::exerciseTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> LongstaffSchwartzExerciseStrategy::relevantTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:98,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:99,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LongstaffSchwartzExerciseStrategy::reset
    linkageType: ''
    returnType: void
    signature: void LongstaffSchwartzExerciseStrategy::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:110,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:112,1
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:117,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:119,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:124,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 134
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - numeraireBonds
    - value
    - std::inner_product
    - begin
    - values
    - end
    linkageType: ''
    returnType: bool
    signature: "bool LongstaffSchwartzExerciseStrategy::exercise(\n                                      const
      CurveState& currentState) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:141,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:143,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:147,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:151,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 155
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
    - discountRatio
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzExerciseStrategy::nextStep(\n                                            const
      CurveState& currentState)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:159,1
    - Dst: LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> LongstaffSchwartzExerciseStrategy::clone()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:39,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:41,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:42,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:44,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:47,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:49,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:50,1
    - Dst: isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:51,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:52,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:54,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:55,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:64,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:70,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:71,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:73,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:74,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:76,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:77,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:77,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:78,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:79,1
    - Dst: numberOfFunctions
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:81,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:82,1
    - Dst: numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:83,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:84,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 6
    argNames:
    - basisSystem
    - basisCoefficients
    - ' evolution'
    - ' numeraires'
    - exercise
    - control
    argTypes:
    - Clone<MarketModelBasisSystem>
    - std::vector<std::vector<Real> >
    - EvolutionDescription
    - std::vector<Size>
    - Clone<MarketModelExerciseValue>
    - Clone<MarketModelExerciseValue>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 85
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - isInSubset
    - evolution
    - resize
    - std::move
    - isExerciseTime
    - push_back
    - std::vector::size
    - emplace_back
    - possibleCashFlowTimes
    - numberOfExercises
    - std::vector<Size>
    - size
    - evolutionTimes
    - rateTimes
    - reserve
    - checkCompatibility
    - numberOfFunctions
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy(\n
      \       Clone<MarketModelBasisSystem> basisSystem,\n        std::vector<std::vector<Real>
      > basisCoefficients,\n        const EvolutionDescription& evolution,\n        const
      std::vector<Size>& numeraires,\n        Clone<MarketModelExerciseValue> exercise,\n
      \       Clone<MarketModelExerciseValue> control)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> LongstaffSchwartzExerciseStrategy::exerciseTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> LongstaffSchwartzExerciseStrategy::relevantTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:98,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:99,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LongstaffSchwartzExerciseStrategy::reset
    linkageType: ''
    returnType: void
    signature: void LongstaffSchwartzExerciseStrategy::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:110,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:112,1
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:117,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:119,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:124,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 134
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - numeraireBonds
    - value
    - std::inner_product
    - begin
    - values
    - end
    linkageType: ''
    returnType: bool
    signature: "bool LongstaffSchwartzExerciseStrategy::exercise(\n                                      const
      CurveState& currentState) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:141,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:143,1
    - Dst: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:147,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:151,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 155
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::LongstaffSchwartzExerciseStrategy::nextStep
    - discountRatio
    linkageType: ''
    returnType: void
    signature: "void LongstaffSchwartzExerciseStrategy::nextStep(\n                                            const
      CurveState& currentState)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:159,1
    - Dst: LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
      Src: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::LongstaffSchwartzExerciseStrategy::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/lsstrategy.cpp
    functionUses: 0
    functionsReached:
    - LongstaffSchwartzExerciseStrategy::LongstaffSchwartzExerciseStrategy
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> LongstaffSchwartzExerciseStrategy::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::SwapForwardBasisSystem::SwapForwardBasisSystem
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapForwardBasisSystem::SwapForwardBasisSystem(const std::vector<Time>&
      rateTimes,\n                                     const std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::SwapForwardBasisSystem::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SwapForwardBasisSystem::numberOfExercises() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:52,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:55,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 59
    functionName: QuantLib::SwapForwardBasisSystem::numberOfFunctions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> SwapForwardBasisSystem::numberOfFunctions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: '& SwapForwardBasisSystem::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & SwapForwardBasisSystem::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::SwapForwardBasisSystem::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapForwardBasisSystem::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapForwardBasisSystem::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapForwardBasisSystem::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::SwapForwardBasisSystem::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> SwapForwardBasisSystem::isExerciseTime() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:88,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:90,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:91,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:106,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:108,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:109,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:110,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:121,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 2
    argNames:
    - ' currentState'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 128
    functionName: QuantLib::SwapForwardBasisSystem::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - coterminalSwapRate
    - resize
    - discountRatio
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapForwardBasisSystem::values(const CurveState& currentState,\n
      \                                std::vector<Real>& results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelBasisSystem>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:132,1
    - Dst: SwapForwardBasisSystem::SwapForwardBasisSystem
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::SwapForwardBasisSystem::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelBasisSystem>
    - SwapForwardBasisSystem::SwapForwardBasisSystem
    linkageType: ''
    returnType: std::unique_ptr<MarketModelBasisSystem>
    signature: std::unique_ptr<MarketModelBasisSystem> SwapForwardBasisSystem::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::SwapForwardBasisSystem::SwapForwardBasisSystem
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapForwardBasisSystem::SwapForwardBasisSystem(const std::vector<Time>&
      rateTimes,\n                                     const std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::SwapForwardBasisSystem::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SwapForwardBasisSystem::numberOfExercises() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:52,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:55,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 59
    functionName: QuantLib::SwapForwardBasisSystem::numberOfFunctions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> SwapForwardBasisSystem::numberOfFunctions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: '& SwapForwardBasisSystem::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & SwapForwardBasisSystem::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::SwapForwardBasisSystem::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapForwardBasisSystem::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapForwardBasisSystem::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapForwardBasisSystem::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::SwapForwardBasisSystem::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> SwapForwardBasisSystem::isExerciseTime() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:88,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:90,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:91,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:106,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:108,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:109,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:110,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:121,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 2
    argNames:
    - ' currentState'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 128
    functionName: QuantLib::SwapForwardBasisSystem::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - coterminalSwapRate
    - resize
    - discountRatio
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapForwardBasisSystem::values(const CurveState& currentState,\n
      \                                std::vector<Real>& results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelBasisSystem>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:132,1
    - Dst: SwapForwardBasisSystem::SwapForwardBasisSystem
      Src: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::SwapForwardBasisSystem::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapforwardbasissystem.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelBasisSystem>
    - SwapForwardBasisSystem::SwapForwardBasisSystem
    linkageType: ''
    returnType: std::unique_ptr<MarketModelBasisSystem>
    signature: std::unique_ptr<MarketModelBasisSystem> SwapForwardBasisSystem::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:31,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:34,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:37,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' rateTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - empty
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue(\n
      \       const std::vector<Time>& rateTimes, std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::BermudanSwaptionExerciseValue::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size BermudanSwaptionExerciseValue::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: "&\n    BermudanSwaptionExerciseValue::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    BermudanSwaptionExerciseValue::evolution()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::BermudanSwaptionExerciseValue::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> BermudanSwaptionExerciseValue::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::BermudanSwaptionExerciseValue::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BermudanSwaptionExerciseValue::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:61,1
    - Dst: p
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:62,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:62,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' state'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: QuantLib::BermudanSwaptionExerciseValue::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - p
    - coterminalSwapRate
    - std::max
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: void
    signature: void BermudanSwaptionExerciseValue::nextStep(const CurveState& state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::BermudanSwaptionExerciseValue::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> BermudanSwaptionExerciseValue::isExerciseTime()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::BermudanSwaptionExerciseValue::value
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct::CashFlow
    signature: MarketModelMultiProduct::CashFlow BermudanSwaptionExerciseValue::value(const
      CurveState& ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelExerciseValue>
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:83,1
    - Dst: BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::BermudanSwaptionExerciseValue::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelExerciseValue>
    - BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
    linkageType: ''
    returnType: std::unique_ptr<MarketModelExerciseValue>
    signature: std::unique_ptr<MarketModelExerciseValue> BermudanSwaptionExerciseValue::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:31,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:34,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:37,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' rateTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - empty
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue(\n
      \       const std::vector<Time>& rateTimes, std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::BermudanSwaptionExerciseValue::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size BermudanSwaptionExerciseValue::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: "&\n    BermudanSwaptionExerciseValue::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    BermudanSwaptionExerciseValue::evolution()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::BermudanSwaptionExerciseValue::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> BermudanSwaptionExerciseValue::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::BermudanSwaptionExerciseValue::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BermudanSwaptionExerciseValue::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:61,1
    - Dst: p
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:62,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:62,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' state'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: QuantLib::BermudanSwaptionExerciseValue::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - p
    - coterminalSwapRate
    - std::max
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: void
    signature: void BermudanSwaptionExerciseValue::nextStep(const CurveState& state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::BermudanSwaptionExerciseValue::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> BermudanSwaptionExerciseValue::isExerciseTime()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::BermudanSwaptionExerciseValue::value
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct::CashFlow
    signature: MarketModelMultiProduct::CashFlow BermudanSwaptionExerciseValue::value(const
      CurveState& ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelExerciseValue>
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:83,1
    - Dst: BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
      Src: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::BermudanSwaptionExerciseValue::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/bermudanswaptionexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelExerciseValue>
    - BermudanSwaptionExerciseValue::BermudanSwaptionExerciseValue
    linkageType: ''
    returnType: std::unique_ptr<MarketModelExerciseValue>
    signature: std::unique_ptr<MarketModelExerciseValue> BermudanSwaptionExerciseValue::clone()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:29,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:32,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:36,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:38,1
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:42,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - ' rateTimes'
    - isExerciseTime
    argTypes:
    - std::vector<Time>
    - std::valarray<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 54
    functionName: QuantLib::NothingExerciseValue::NothingExerciseValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - empty
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - std::valarray<bool>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NothingExerciseValue::NothingExerciseValue(const std::vector<Time>&
      rateTimes,\n                                               std::valarray<bool>
      isExerciseTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::NothingExerciseValue::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NothingExerciseValue::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& NothingExerciseValue::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & NothingExerciseValue::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::NothingExerciseValue::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> NothingExerciseValue::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NothingExerciseValue::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NothingExerciseValue::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::NothingExerciseValue::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NothingExerciseValue::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::NothingExerciseValue::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> NothingExerciseValue::isExerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::NothingExerciseValue::value
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct::CashFlow
    signature: MarketModelMultiProduct::CashFlow NothingExerciseValue::value(const
      CurveState&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelExerciseValue>
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:89,1
    - Dst: NothingExerciseValue::NothingExerciseValue
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::NothingExerciseValue::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelExerciseValue>
    - NothingExerciseValue::NothingExerciseValue
    linkageType: ''
    returnType: std::unique_ptr<MarketModelExerciseValue>
    signature: std::unique_ptr<MarketModelExerciseValue> NothingExerciseValue::clone()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:29,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:32,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:36,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:38,1
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:42,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - ' rateTimes'
    - isExerciseTime
    argTypes:
    - std::vector<Time>
    - std::valarray<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 54
    functionName: QuantLib::NothingExerciseValue::NothingExerciseValue
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - empty
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - std::valarray<bool>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NothingExerciseValue::NothingExerciseValue(const std::vector<Time>&
      rateTimes,\n                                               std::valarray<bool>
      isExerciseTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::NothingExerciseValue::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NothingExerciseValue::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& NothingExerciseValue::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & NothingExerciseValue::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::NothingExerciseValue::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> NothingExerciseValue::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NothingExerciseValue::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NothingExerciseValue::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::NothingExerciseValue::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NothingExerciseValue::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::NothingExerciseValue::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> NothingExerciseValue::isExerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::NothingExerciseValue::value
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct::CashFlow
    signature: MarketModelMultiProduct::CashFlow NothingExerciseValue::value(const
      CurveState&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelExerciseValue>
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:89,1
    - Dst: NothingExerciseValue::NothingExerciseValue
      Src: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::NothingExerciseValue::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nothingexercisevalue.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelExerciseValue>
    - NothingExerciseValue::NothingExerciseValue
    linkageType: ''
    returnType: std::unique_ptr<MarketModelExerciseValue>
    signature: std::unique_ptr<MarketModelExerciseValue> NothingExerciseValue::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:33,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 37
    functionName: QuantLib::SwapBasisSystem::SwapBasisSystem
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapBasisSystem::SwapBasisSystem(const std::vector<Time>& rateTimes,\n
      \                                    const std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::SwapBasisSystem::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SwapBasisSystem::numberOfExercises() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:45,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::SwapBasisSystem::numberOfFunctions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> SwapBasisSystem::numberOfFunctions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: '& SwapBasisSystem::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & SwapBasisSystem::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::SwapBasisSystem::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapBasisSystem::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::SwapBasisSystem::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapBasisSystem::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::SwapBasisSystem::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> SwapBasisSystem::isExerciseTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:70,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:71,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:75,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' currentState'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionName: QuantLib::SwapBasisSystem::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - coterminalSwapRate
    - resize
    - push_back
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void SwapBasisSystem::values(const CurveState& currentState,\n                                 std::vector<Real>&
      results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelBasisSystem>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:80,1
    - Dst: SwapBasisSystem::SwapBasisSystem
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::SwapBasisSystem::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - SwapBasisSystem::SwapBasisSystem
    - std::unique_ptr<MarketModelBasisSystem>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelBasisSystem>
    signature: std::unique_ptr<MarketModelBasisSystem> SwapBasisSystem::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:33,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 37
    functionName: QuantLib::SwapBasisSystem::SwapBasisSystem
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void SwapBasisSystem::SwapBasisSystem(const std::vector<Time>& rateTimes,\n
      \                                    const std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::SwapBasisSystem::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SwapBasisSystem::numberOfExercises() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:45,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::SwapBasisSystem::numberOfFunctions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> SwapBasisSystem::numberOfFunctions() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: '& SwapBasisSystem::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & SwapBasisSystem::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::SwapBasisSystem::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapBasisSystem::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::SwapBasisSystem::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapBasisSystem::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::SwapBasisSystem::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::valarray<bool>
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> SwapBasisSystem::isExerciseTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:70,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:71,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:75,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' currentState'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionName: QuantLib::SwapBasisSystem::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - coterminalSwapRate
    - resize
    - push_back
    - size
    - reserve
    linkageType: ''
    returnType: void
    signature: "void SwapBasisSystem::values(const CurveState& currentState,\n                                 std::vector<Real>&
      results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelBasisSystem>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:80,1
    - Dst: SwapBasisSystem::SwapBasisSystem
      Src: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::SwapBasisSystem::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapbasissystem.cpp
    functionUses: 0
    functionsReached:
    - SwapBasisSystem::SwapBasisSystem
    - std::unique_ptr<MarketModelBasisSystem>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelBasisSystem>
    signature: std::unique_ptr<MarketModelBasisSystem> SwapBasisSystem::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~MarketModelNodeDataProvider()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nodedataprovider.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelNodeDataProvider()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~MarketModelNodeDataProvider()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/nodedataprovider.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelNodeDataProvider()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfVariables
      Src: /src/quantlib/ql/models/marketmodels/callability/marketmodelparametricexercise.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelParametricExercise::numberOfData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/marketmodelparametricexercise.hpp
    functionUses: 0
    functionsReached:
    - numberOfVariables
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> numberOfData() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfVariables
      Src: /src/quantlib/ql/models/marketmodels/callability/marketmodelparametricexercise.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelParametricExercise::numberOfData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/marketmodelparametricexercise.hpp
    functionUses: 0
    functionsReached:
    - numberOfVariables
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> numberOfData() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:29,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:30,1
    - Dst: numberOfVariables
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:30,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:33,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' exercise'
    - parameters
    argTypes:
    - MarketModelParametricExercise
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 37
    functionName: QuantLib::ParametricExerciseAdapter::ParametricExerciseAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - std::move
    - numberOfVariables
    - push_back
    - std::vector::size
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void ParametricExerciseAdapter::ParametricExerciseAdapter(\n        const
      MarketModelParametricExercise& exercise, std::vector<std::vector<Real> > parameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::ParametricExerciseAdapter::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ParametricExerciseAdapter::exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::ParametricExerciseAdapter::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ParametricExerciseAdapter::relevantTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParametricExerciseAdapter::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::ParametricExerciseAdapter::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ParametricExerciseAdapter::reset
    linkageType: ''
    returnType: void
    signature: void ParametricExerciseAdapter::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParametricExerciseAdapter::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ParametricExerciseAdapter::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ParametricExerciseAdapter::nextStep
    linkageType: ''
    returnType: void
    signature: void ParametricExerciseAdapter::nextStep(const CurveState& currentState)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:60,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:61,1
    - Dst: QuantLib::ParametricExerciseAdapter::exercise
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::ParametricExerciseAdapter::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 1
    functionsReached:
    - values
    - resize
    - QuantLib::ParametricExerciseAdapter::exercise
    linkageType: ''
    returnType: bool
    signature: bool ParametricExerciseAdapter::exercise(const CurveState& currentState)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:68,1
    - Dst: ParametricExerciseAdapter::ParametricExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::ParametricExerciseAdapter::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - ParametricExerciseAdapter::ParametricExerciseAdapter
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> ParametricExerciseAdapter::clone()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:29,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:30,1
    - Dst: numberOfVariables
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:30,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:32,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:33,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' exercise'
    - parameters
    argTypes:
    - MarketModelParametricExercise
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 37
    functionName: QuantLib::ParametricExerciseAdapter::ParametricExerciseAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - std::move
    - numberOfVariables
    - push_back
    - std::vector::size
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void ParametricExerciseAdapter::ParametricExerciseAdapter(\n        const
      MarketModelParametricExercise& exercise, std::vector<std::vector<Real> > parameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::ParametricExerciseAdapter::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ParametricExerciseAdapter::exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::ParametricExerciseAdapter::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ParametricExerciseAdapter::relevantTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParametricExerciseAdapter::reset
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::ParametricExerciseAdapter::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ParametricExerciseAdapter::reset
    linkageType: ''
    returnType: void
    signature: void ParametricExerciseAdapter::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParametricExerciseAdapter::nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ParametricExerciseAdapter::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ParametricExerciseAdapter::nextStep
    linkageType: ''
    returnType: void
    signature: void ParametricExerciseAdapter::nextStep(const CurveState& currentState)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:60,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:61,1
    - Dst: QuantLib::ParametricExerciseAdapter::exercise
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::ParametricExerciseAdapter::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 2
    functionsReached:
    - values
    - resize
    - QuantLib::ParametricExerciseAdapter::exercise
    linkageType: ''
    returnType: bool
    signature: bool ParametricExerciseAdapter::exercise(const CurveState& currentState)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:68,1
    - Dst: ParametricExerciseAdapter::ParametricExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::ParametricExerciseAdapter::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/parametricexerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - ParametricExerciseAdapter::ParametricExerciseAdapter
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> ParametricExerciseAdapter::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:34,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::TriggeredSwapExercise::TriggeredSwapExercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::TriggeredSwapExercise(const std::vector<Time>&
      rateTimes,\n                                                 const std::vector<Time>&
      exerciseTimes,\n                                                 std::vector<Rate>
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::TriggeredSwapExercise::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size TriggeredSwapExercise::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& TriggeredSwapExercise::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & TriggeredSwapExercise::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::TriggeredSwapExercise::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TriggeredSwapExercise::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::TriggeredSwapExercise::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TriggeredSwapExercise::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:57,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::TriggeredSwapExercise::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - std::valarray<bool>
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> TriggeredSwapExercise::isExerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:63,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' state'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::TriggeredSwapExercise::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRate
    - resize
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::values(const CurveState& state,\n                                       std::vector<Real>&
      results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:68,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::TriggeredSwapExercise::numberOfVariables
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> TriggeredSwapExercise::numberOfVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:72,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::TriggeredSwapExercise::numberOfParameters
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> TriggeredSwapExercise::numberOfParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' parameters'
    - ' variables'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::TriggeredSwapExercise::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool TriggeredSwapExercise::exercise(\n                                   Size,\n
      \                                  const std::vector<Real>& parameters,\n                                   const
      std::vector<Real>& variables) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:84,1
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - exerciseIndex
    - ' parameters'
    argTypes:
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::TriggeredSwapExercise::guess
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - at
    - resize
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::guess(Size exerciseIndex,\n                                      std::vector<Real>&
      parameters) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelParametricExercise>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:90,1
    - Dst: TriggeredSwapExercise::TriggeredSwapExercise
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::TriggeredSwapExercise::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - TriggeredSwapExercise::TriggeredSwapExercise
    - std::unique_ptr<MarketModelParametricExercise>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelParametricExercise>
    signature: std::unique_ptr<MarketModelParametricExercise> TriggeredSwapExercise::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:34,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' exerciseTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::TriggeredSwapExercise::TriggeredSwapExercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::TriggeredSwapExercise(const std::vector<Time>&
      rateTimes,\n                                                 const std::vector<Time>&
      exerciseTimes,\n                                                 std::vector<Rate>
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::TriggeredSwapExercise::numberOfExercises
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 3
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size TriggeredSwapExercise::numberOfExercises() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& TriggeredSwapExercise::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & TriggeredSwapExercise::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::TriggeredSwapExercise::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TriggeredSwapExercise::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::TriggeredSwapExercise::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TriggeredSwapExercise::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::valarray<bool>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:57,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::TriggeredSwapExercise::isExerciseTime
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - std::valarray<bool>
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> TriggeredSwapExercise::isExerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:63,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' state'
    - ' results'
    argTypes:
    - CurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::TriggeredSwapExercise::values
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRate
    - resize
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::values(const CurveState& state,\n                                       std::vector<Real>&
      results) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:68,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::TriggeredSwapExercise::numberOfVariables
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> TriggeredSwapExercise::numberOfVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:72,1
    - Dst: QuantLib::TriggeredSwapExercise::numberOfExercises
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::TriggeredSwapExercise::numberOfParameters
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TriggeredSwapExercise::numberOfExercises
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> TriggeredSwapExercise::numberOfParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' parameters'
    - ' variables'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::TriggeredSwapExercise::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool TriggeredSwapExercise::exercise(\n                                   Size,\n
      \                                  const std::vector<Real>& parameters,\n                                   const
      std::vector<Real>& variables) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:84,1
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - exerciseIndex
    - ' parameters'
    argTypes:
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::TriggeredSwapExercise::guess
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - at
    - resize
    linkageType: ''
    returnType: void
    signature: "void TriggeredSwapExercise::guess(Size exerciseIndex,\n                                      std::vector<Real>&
      parameters) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelParametricExercise>
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:90,1
    - Dst: TriggeredSwapExercise::TriggeredSwapExercise
      Src: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::TriggeredSwapExercise::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/triggeredswapexercise.cpp
    functionUses: 0
    functionsReached:
    - TriggeredSwapExercise::TriggeredSwapExercise
    - std::unique_ptr<MarketModelParametricExercise>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelParametricExercise>
    signature: std::unique_ptr<MarketModelParametricExercise> TriggeredSwapExercise::clone()
      const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:46,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:57,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:61,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:63,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:64,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:65,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:69,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:71,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:73,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:75,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:77,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:79,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:80,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:82,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:84,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:86,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:87,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:89,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:92,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:93,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:95,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:96,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:98,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:99,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:101,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:102,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:103,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:104,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:106,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:115,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:116,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:117,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:121,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:122,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:123,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:124,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:125,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:132,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:133,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:134,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:138,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:140,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:142,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:147,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:150,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:154,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:157,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:160,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:172,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:180,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:189,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 7
    argNames:
    - ' evolver'
    - ' product'
    - ' dataProvider'
    - ' rebate'
    - ' control'
    - numberOfPaths
    - ' collectedData'
    argTypes:
    - MarketModelEvolver
    - MarketModelMultiProduct
    - MarketModelNodeDataProvider
    - MarketModelExerciseValue
    - MarketModelExerciseValue
    - Size
    - std::vector<std::vector<NodeData> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 203
    functionName: QuantLib::collectNodeData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - numeraireBonds
    - numberOfProducts
    - std::vector::reserve
    - startNewPath
    - discountRatio
    - nextStep
    - std::vector::emplace_back
    - currentStep
    - numeraires
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - possibleCashFlowTimes
    - QuantLib::size
    - currentState
    - QuantLib::value
    - EvolutionDescription::evolutionTimes
    - QuantLib::isInSubset
    - values
    - std::vector::size
    - QL_REQUIRE
    - nextTimeStep
    - resize
    - reset
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void collectNodeData(MarketModelEvolver& evolver,\n                         MarketModelMultiProduct&
      product,\n                         MarketModelNodeDataProvider& dataProvider,\n
      \                        MarketModelExerciseValue& rebate,\n                         MarketModelExerciseValue&
      control,\n                         Size numberOfPaths,\n                         std::vector<std::vector<NodeData>
      >& collectedData)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:46,1
    - Dst: numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:46,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:57,1
    - Dst: maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:61,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:63,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:64,1
    - Dst: possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:65,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:69,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:71,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:73,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:75,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:77,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:79,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:80,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:82,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:84,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:86,1
    - Dst: numeraires
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:87,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:89,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:92,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:93,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:95,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:96,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:98,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:99,1
    - Dst: QuantLib::isInSubset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:101,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:102,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:103,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:104,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:106,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:115,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:116,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:117,1
    - Dst: startNewPath
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:121,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:122,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:123,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:124,1
    - Dst: reset
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:125,1
    - Dst: currentStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:132,1
    - Dst: advanceStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:133,1
    - Dst: currentState
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:134,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:138,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:140,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:142,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:147,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:150,1
    - Dst: values
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:154,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:157,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:160,1
    - Dst: nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:172,1
    - Dst: numeraireBonds
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:180,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp:189,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 7
    argNames:
    - ' evolver'
    - ' product'
    - ' dataProvider'
    - ' rebate'
    - ' control'
    - numberOfPaths
    - ' collectedData'
    argTypes:
    - MarketModelEvolver
    - MarketModelMultiProduct
    - MarketModelNodeDataProvider
    - MarketModelExerciseValue
    - MarketModelExerciseValue
    - Size
    - std::vector<std::vector<NodeData> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 203
    functionName: QuantLib::collectNodeData
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/collectnodedata.cpp
    functionUses: 0
    functionsReached:
    - advanceStep
    - numeraireBonds
    - numberOfProducts
    - std::vector::reserve
    - startNewPath
    - discountRatio
    - nextStep
    - std::vector::emplace_back
    - currentStep
    - numeraires
    - evolution
    - maxNumberOfCashFlowsPerProductPerStep
    - possibleCashFlowTimes
    - QuantLib::size
    - currentState
    - QuantLib::value
    - EvolutionDescription::evolutionTimes
    - QuantLib::isInSubset
    - values
    - std::vector::size
    - QL_REQUIRE
    - nextTimeStep
    - resize
    - reset
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void collectNodeData(MarketModelEvolver& evolver,\n                         MarketModelMultiProduct&
      product,\n                         MarketModelNodeDataProvider& dataProvider,\n
      \                        MarketModelExerciseValue& rebate,\n                         MarketModelExerciseValue&
      control,\n                         Size numberOfPaths,\n                         std::vector<std::vector<NodeData>
      >& collectedData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:30,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:42,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ' rateTimes'
    - swapTriggers
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 46
    functionName: QuantLib::SwapRateTrigger::SwapRateTrigger
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwapRateTrigger::SwapRateTrigger(const std::vector<Time>& rateTimes,\n
      \                                    std::vector<Rate> swapTriggers,\n                                     const
      std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::SwapRateTrigger::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> SwapRateTrigger::exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::SwapRateTrigger::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> SwapRateTrigger::relevantTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::SwapRateTrigger::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapRateTrigger::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::SwapRateTrigger::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRate
    linkageType: ''
    returnType: bool
    signature: bool SwapRateTrigger::exercise(const CurveState& currentState) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::SwapRateTrigger::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapRateTrigger::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:73,1
    - Dst: SwapRateTrigger::SwapRateTrigger
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapRateTrigger::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - SwapRateTrigger::SwapRateTrigger
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> SwapRateTrigger::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:30,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:42,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ' rateTimes'
    - swapTriggers
    - ' exerciseTimes'
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 46
    functionName: QuantLib::SwapRateTrigger::SwapRateTrigger
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwapRateTrigger::SwapRateTrigger(const std::vector<Time>& rateTimes,\n
      \                                    std::vector<Rate> swapTriggers,\n                                     const
      std::vector<Time>& exerciseTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::SwapRateTrigger::exerciseTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> SwapRateTrigger::exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::SwapRateTrigger::relevantTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> SwapRateTrigger::relevantTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::SwapRateTrigger::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapRateTrigger::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' currentState'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::SwapRateTrigger::exercise
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRate
    linkageType: ''
    returnType: bool
    signature: bool SwapRateTrigger::exercise(const CurveState& currentState) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::SwapRateTrigger::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapRateTrigger::nextStep(const CurveState&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<ExerciseStrategy<CurveState>>
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:73,1
    - Dst: SwapRateTrigger::SwapRateTrigger
      Src: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapRateTrigger::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/callability/swapratetrigger.cpp
    functionUses: 0
    functionsReached:
    - SwapRateTrigger::SwapRateTrigger
    - std::unique_ptr<ExerciseStrategy<CurveState>>
    linkageType: ''
    returnType: std::unique_ptr<ExerciseStrategy<CurveState>>
    signature: std::unique_ptr<ExerciseStrategy<CurveState>> SwapRateTrigger::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& AbcdVol::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & AbcdVol::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& AbcdVol::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & AbcdVol::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: '& AbcdVol::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & AbcdVol::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::AbcdVol::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdVol::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::AbcdVol::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: '& AbcdVol::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & AbcdVol::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& AbcdVol::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & AbcdVol::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& AbcdVol::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & AbcdVol::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: '& AbcdVol::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & AbcdVol::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::AbcdVol::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdVol::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::AbcdVol::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AbcdVol::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: '& AbcdVol::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & AbcdVol::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:46,1
    - Dst: AbcdFunction::variance
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - a
    - b
    - c
    - d
    - resetIndex
    - ' rateTimes'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 56
    functionName: QuantLib::PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::variance
    - checkIncreasingTimes
    - std::sqrt
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance(\n
      \       Real a, Real b, Real c, Real d,\n        Size resetIndex,\n        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::PiecewiseConstantAbcdVariance::getABCD
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PiecewiseConstantAbcdVariance::getABCD(Real& a, Real& b, Real&
      c, Real& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& PiecewiseConstantAbcdVariance::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseConstantAbcdVariance::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: '& PiecewiseConstantAbcdVariance::variances() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseConstantAbcdVariance::variances() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: "&\n        PiecewiseConstantAbcdVariance::volatilities() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n        PiecewiseConstantAbcdVariance::volatilities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:46,1
    - Dst: AbcdFunction::variance
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - a
    - b
    - c
    - d
    - resetIndex
    - ' rateTimes'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 56
    functionName: QuantLib::PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::variance
    - checkIncreasingTimes
    - std::sqrt
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance(\n
      \       Real a, Real b, Real c, Real d,\n        Size resetIndex,\n        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: QuantLib::PiecewiseConstantAbcdVariance::getABCD
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PiecewiseConstantAbcdVariance::getABCD(Real& a, Real& b, Real&
      c, Real& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& PiecewiseConstantAbcdVariance::rateTimes() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseConstantAbcdVariance::rateTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: '& PiecewiseConstantAbcdVariance::variances() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseConstantAbcdVariance::variances() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: "&\n        PiecewiseConstantAbcdVariance::volatilities() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantabcdvariance.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n        PiecewiseConstantAbcdVariance::volatilities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~AlphaFormInverseLinear() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaFormInverseLinear() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~AlphaFormLinearHyperbolic() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaFormLinearHyperbolic() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~AlphaFormInverseLinear() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaFormInverseLinear() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~AlphaFormLinearHyperbolic() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaFormLinearHyperbolic() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:56,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:60,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:60,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:63,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:67,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:67,1
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 5
    argNames:
    - period
    - offset
    - ' originalVariances'
    - ' timesForSmallRates'
    - lastCapletVol
    argTypes:
    - Size
    - Size
    - std::vector< PiecewiseConstantAbcdVariance>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 71
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::VolatilityInterpolationSpecifierabcd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    - totalVolatility
    - ext::shared_ptr<PiecewiseConstantVariance>
    - size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityInterpolationSpecifierabcd::VolatilityInterpolationSpecifierabcd(Size
      period,\n        Size offset,\n        const std::vector< PiecewiseConstantAbcdVariance>&
      originalVariances, // these should be associated with the long rates\n        const
      std::vector<Time>& timesForSmallRates, // these should be associated with the
      shorter rates\n        Real lastCapletVol\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' scales'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::setScalingFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::setScalingFactors(const
      std::vector<Real>& scales)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - vol
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::setLastCapletVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::setLastCapletVol(Real vol)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& VolatilityInterpolationSpecifierabcd::interpolatedVariances()
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    signature: std::vector<ext::shared_ptr<PiecewiseConstantVariance> > & VolatilityInterpolationSpecifierabcd::interpolatedVariances()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: '& VolatilityInterpolationSpecifierabcd::originalVariances() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    signature: std::vector<ext::shared_ptr<PiecewiseConstantVariance> > & VolatilityInterpolationSpecifierabcd::originalVariances()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getPeriod
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getPeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getOffset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getOffset() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getNoBigRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getNoBigRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getNoSmallRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getNoSmallRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:127,1
    - Dst: PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:133,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:133,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:146,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:149,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:150,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:161,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:162,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:169,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:170,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:177,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:180,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:181,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:184,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:190,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:191,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 194
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 3
    functionsReached:
    - PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    - PiecewiseConstantAbcdVariance
    - totalVolatility
    - getABCD
    - ext::shared_ptr<PiecewiseConstantVariance>
    - rateTimes
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::recompute()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:56,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:60,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:60,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:63,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:67,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:67,1
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 5
    argNames:
    - period
    - offset
    - ' originalVariances'
    - ' timesForSmallRates'
    - lastCapletVol
    argTypes:
    - Size
    - Size
    - std::vector< PiecewiseConstantAbcdVariance>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 71
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::VolatilityInterpolationSpecifierabcd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    - totalVolatility
    - ext::shared_ptr<PiecewiseConstantVariance>
    - size
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityInterpolationSpecifierabcd::VolatilityInterpolationSpecifierabcd(Size
      period,\n        Size offset,\n        const std::vector< PiecewiseConstantAbcdVariance>&
      originalVariances, // these should be associated with the long rates\n        const
      std::vector<Time>& timesForSmallRates, // these should be associated with the
      shorter rates\n        Real lastCapletVol\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:75,1
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' scales'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::setScalingFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::setScalingFactors(const
      std::vector<Real>& scales)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - vol
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::setLastCapletVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::setLastCapletVol(Real vol)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& VolatilityInterpolationSpecifierabcd::interpolatedVariances()
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    signature: std::vector<ext::shared_ptr<PiecewiseConstantVariance> > & VolatilityInterpolationSpecifierabcd::interpolatedVariances()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: '& VolatilityInterpolationSpecifierabcd::originalVariances() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    signature: std::vector<ext::shared_ptr<PiecewiseConstantVariance> > & VolatilityInterpolationSpecifierabcd::originalVariances()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getPeriod
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getPeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getOffset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getOffset() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getNoBigRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getNoBigRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::getNoSmallRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size VolatilityInterpolationSpecifierabcd::getNoSmallRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:127,1
    - Dst: PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:133,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:133,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:146,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:149,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:150,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:161,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:162,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:169,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:170,1
    - Dst: getABCD
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:177,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:180,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:181,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:184,1
    - Dst: ext::shared_ptr<PiecewiseConstantVariance>
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:190,1
    - Dst: PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
      Src: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp:191,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 194
    functionName: QuantLib::VolatilityInterpolationSpecifierabcd::recompute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.cpp
    functionUses: 6
    functionsReached:
    - PiecewiseConstantAbcdVariance::PiecewiseConstantAbcdVariance
    - PiecewiseConstantAbcdVariance
    - totalVolatility
    - getABCD
    - ext::shared_ptr<PiecewiseConstantVariance>
    - rateTimes
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifierabcd::recompute()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: "&\n    FwdToCotSwapAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    FwdToCotSwapAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: "&\n    FwdToCotSwapAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached:
    - displacements
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    FwdToCotSwapAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: "&\n    FwdToCotSwapAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    FwdToCotSwapAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfRates
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfSteps
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& FwdToCotSwapAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FwdToCotSwapAdapter::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: "&\n    FwdToCotSwapAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    FwdToCotSwapAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: "&\n    FwdToCotSwapAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached:
    - displacements
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    FwdToCotSwapAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: "&\n    FwdToCotSwapAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    FwdToCotSwapAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfRates
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::FwdToCotSwapAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FwdToCotSwapAdapter::numberOfSteps
    linkageType: ''
    returnType: Size
    signature: Size FwdToCotSwapAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& FwdToCotSwapAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FwdToCotSwapAdapter::pseudoRoot(Size i) const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:167,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:170,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:171,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:175,1
    - Dst: BasisIncompleteOrdered::getBasisAsRowsInMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:178,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:192,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:196,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:212,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:219,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:234,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:236,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 91
    argCount: 14
    argNames:
    - capletNumber
    - ' homogeneousSolution'
    - ' previousRateSolution'
    - capletVariance
    - ' correlations'
    - w0
    - w1
    - capletSwaptionPriority
    - maxIterations
    - tolerance
    - ' solution'
    - finalWeight
    - ' swaptionError'
    - ' capletError'
    argTypes:
    - Size
    - std::vector<Volatility>
    - std::vector<Volatility>
    - Real
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Size
    - Real
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 242
    functionName: QuantLib::singleRateClosestPointFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - quadratic::roots
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - q
    - BasisIncompleteOrdered::addVector
    - Real
    - QuantLib::transpose
    - BasisIncompleteOrdered::getBasisAsRowsInMatrix
    - Array::size
    - SphereCylinderOptimizer::findByProjection
    - std::sqrt
    - QuantLib::size
    linkageType: ''
    returnType: bool
    signature: "bool singleRateClosestPointFinder(\n            Size capletNumber,\n
      \           const std::vector<Volatility>& homogeneousSolution,\n            const
      std::vector<Volatility>& previousRateSolution,\n            Real capletVariance,\n
      \           const std::vector<Real>& correlations,\n            Real w0,\n            Real
      w1,\n            Real capletSwaptionPriority,\n            Size maxIterations,\n
      \           Real tolerance,\n            std::vector<Volatility>& solution,\n
      \           Real finalWeight,\n            Real& swaptionError,\n            Real&
      capletError)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:167,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:170,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:171,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:175,1
    - Dst: BasisIncompleteOrdered::getBasisAsRowsInMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:178,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:192,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:196,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:212,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:219,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:234,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:236,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 91
    argCount: 14
    argNames:
    - capletNumber
    - ' homogeneousSolution'
    - ' previousRateSolution'
    - capletVariance
    - ' correlations'
    - w0
    - w1
    - capletSwaptionPriority
    - maxIterations
    - tolerance
    - ' solution'
    - finalWeight
    - ' swaptionError'
    - ' capletError'
    argTypes:
    - Size
    - std::vector<Volatility>
    - std::vector<Volatility>
    - Real
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Size
    - Real
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 242
    functionName: QuantLib::singleRateClosestPointFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - quadratic::roots
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - q
    - BasisIncompleteOrdered::addVector
    - Real
    - QuantLib::transpose
    - BasisIncompleteOrdered::getBasisAsRowsInMatrix
    - Array::size
    - SphereCylinderOptimizer::findByProjection
    - std::sqrt
    - QuantLib::size
    linkageType: ''
    returnType: bool
    signature: "bool singleRateClosestPointFinder(\n            Size capletNumber,\n
      \           const std::vector<Volatility>& homogeneousSolution,\n            const
      std::vector<Volatility>& previousRateSolution,\n            Real capletVariance,\n
      \           const std::vector<Real>& correlations,\n            Real w0,\n            Real
      w1,\n            Real capletSwaptionPriority,\n            Size maxIterations,\n
      \           Real tolerance,\n            std::vector<Volatility>& solution,\n
      \           Real finalWeight,\n            Real& swaptionError,\n            Real&
      capletError)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 7
    argNames:
    - ' evolution'
    - ' corr'
    - "\n        displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - "std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance> >"
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 264
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::CTSMMCapletMaxHomogeneityCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletMaxHomogeneityCalibration::CTSMMCapletMaxHomogeneityCalibration(\n
      \       const EvolutionDescription& evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>&
      corr,\n        const std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance>
      >&\n        displacedSwapVariances,\n        const std::vector<Volatility>&
      mktCapletVols,\n        const ext::shared_ptr<CurveState>& cs,\n        Spread
      displacement,\n        Real caplet0Swaption1Priority)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:284,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:287,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:288,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:289,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:291,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:295,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:306,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:307,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:308,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:308,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:314,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:315,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:321,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:321,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:324,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:334,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:337,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:352,1
    - Dst: singleRateClosestPointFinder
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:360,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:373,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:377,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:385,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:385,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:387,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:389,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:389,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:391,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 13
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' capletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    - numberOfFactors
    - maxIterations
    - tolerance
    - ' deformationSize'
    - ' totalSwaptionError'
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance> >"
    - std::vector<Volatility>
    - CurveState
    - Spread
    - Real
    - Size
    - Size
    - Real
    - Real
    - Real
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 267
    functionDepth: 2
    functionLinenumber: 267
    functionLinenumberEnd: 396
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - times
    - std::vector::push_back
    - rankReducedSqrt
    - QL_ENSURE
    - inverse
    - singleRateClosestPointFinder
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - columns
    - std::sqrt
    - variances
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration(\n
      \       const EvolutionDescription& evolution,\n        const PiecewiseConstantCorrelation&
      corr,\n        const std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& capletVols,\n
      \       const CurveState& cs,\n        const Spread displacement,\n        Real
      caplet0Swaption1Priority, \n        const Size numberOfFactors,\n        Size
      maxIterations,\n        Real tolerance,\n        Real& deformationSize,  //
      ret value\n        Real& totalSwaptionError, // ret value\n        std::vector<Matrix>&
      swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - numberOfFactors
    - maxIterations
    - tolerance
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 421
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletMaxHomogeneityCalibration::calibrationImpl_(\n
      \       Natural numberOfFactors, \n        Natural maxIterations,\n        Real
      tolerance)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:167,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:170,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:171,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:175,1
    - Dst: BasisIncompleteOrdered::getBasisAsRowsInMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:178,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:192,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:196,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:212,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:219,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:234,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:236,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 91
    argCount: 14
    argNames:
    - capletNumber
    - ' homogeneousSolution'
    - ' previousRateSolution'
    - capletVariance
    - ' correlations'
    - w0
    - w1
    - capletSwaptionPriority
    - maxIterations
    - tolerance
    - ' solution'
    - finalWeight
    - ' swaptionError'
    - ' capletError'
    argTypes:
    - Size
    - std::vector<Volatility>
    - std::vector<Volatility>
    - Real
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Size
    - Real
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 242
    functionName: QuantLib::singleRateClosestPointFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - quadratic::roots
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - q
    - BasisIncompleteOrdered::addVector
    - Real
    - QuantLib::transpose
    - BasisIncompleteOrdered::getBasisAsRowsInMatrix
    - Array::size
    - SphereCylinderOptimizer::findByProjection
    - std::sqrt
    - QuantLib::size
    linkageType: ''
    returnType: bool
    signature: "bool singleRateClosestPointFinder(\n            Size capletNumber,\n
      \           const std::vector<Volatility>& homogeneousSolution,\n            const
      std::vector<Volatility>& previousRateSolution,\n            Real capletVariance,\n
      \           const std::vector<Real>& correlations,\n            Real w0,\n            Real
      w1,\n            Real capletSwaptionPriority,\n            Size maxIterations,\n
      \           Real tolerance,\n            std::vector<Volatility>& solution,\n
      \           Real finalWeight,\n            Real& swaptionError,\n            Real&
      capletError)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: q
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:120,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:167,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:170,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:171,1
    - Dst: BasisIncompleteOrdered::addVector
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:175,1
    - Dst: BasisIncompleteOrdered::getBasisAsRowsInMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:178,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:192,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:196,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:212,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:219,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:234,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:236,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 91
    argCount: 14
    argNames:
    - capletNumber
    - ' homogeneousSolution'
    - ' previousRateSolution'
    - capletVariance
    - ' correlations'
    - w0
    - w1
    - capletSwaptionPriority
    - maxIterations
    - tolerance
    - ' solution'
    - finalWeight
    - ' swaptionError'
    - ' capletError'
    argTypes:
    - Size
    - std::vector<Volatility>
    - std::vector<Volatility>
    - Real
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Size
    - Real
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 242
    functionName: QuantLib::singleRateClosestPointFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - quadratic::roots
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - q
    - BasisIncompleteOrdered::addVector
    - Real
    - QuantLib::transpose
    - BasisIncompleteOrdered::getBasisAsRowsInMatrix
    - Array::size
    - SphereCylinderOptimizer::findByProjection
    - std::sqrt
    - QuantLib::size
    linkageType: ''
    returnType: bool
    signature: "bool singleRateClosestPointFinder(\n            Size capletNumber,\n
      \           const std::vector<Volatility>& homogeneousSolution,\n            const
      std::vector<Volatility>& previousRateSolution,\n            Real capletVariance,\n
      \           const std::vector<Real>& correlations,\n            Real w0,\n            Real
      w1,\n            Real capletSwaptionPriority,\n            Size maxIterations,\n
      \           Real tolerance,\n            std::vector<Volatility>& solution,\n
      \           Real finalWeight,\n            Real& swaptionError,\n            Real&
      capletError)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 7
    argNames:
    - ' evolution'
    - ' corr'
    - "\n        displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - "std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance> >"
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 264
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::CTSMMCapletMaxHomogeneityCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletMaxHomogeneityCalibration::CTSMMCapletMaxHomogeneityCalibration(\n
      \       const EvolutionDescription& evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>&
      corr,\n        const std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance>
      >&\n        displacedSwapVariances,\n        const std::vector<Volatility>&
      mktCapletVols,\n        const ext::shared_ptr<CurveState>& cs,\n        Spread
      displacement,\n        Real caplet0Swaption1Priority)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:284,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:287,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:288,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:289,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:291,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:295,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:306,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:307,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:308,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:308,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:314,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:315,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:321,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:321,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:324,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:334,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:337,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:352,1
    - Dst: singleRateClosestPointFinder
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:360,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:373,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:377,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:385,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:385,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:387,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:389,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:389,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:391,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 13
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' capletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    - numberOfFactors
    - maxIterations
    - tolerance
    - ' deformationSize'
    - ' totalSwaptionError'
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance> >"
    - std::vector<Volatility>
    - CurveState
    - Spread
    - Real
    - Size
    - Size
    - Real
    - Real
    - Real
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 267
    functionDepth: 2
    functionLinenumber: 267
    functionLinenumberEnd: 396
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 1
    functionsReached:
    - times
    - std::vector::push_back
    - rankReducedSqrt
    - QL_ENSURE
    - inverse
    - singleRateClosestPointFinder
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - columns
    - std::sqrt
    - variances
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration(\n
      \       const EvolutionDescription& evolution,\n        const PiecewiseConstantCorrelation&
      corr,\n        const std::vector<ext::shared_ptr<\n        PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& capletVols,\n
      \       const CurveState& cs,\n        const Spread displacement,\n        Real
      caplet0Swaption1Priority, \n        const Size numberOfFactors,\n        Size
      maxIterations,\n        Real tolerance,\n        Real& deformationSize,  //
      ret value\n        Real& totalSwaptionError, // ret value\n        std::vector<Matrix>&
      swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - numberOfFactors
    - maxIterations
    - tolerance
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 421
    functionName: QuantLib::CTSMMCapletMaxHomogeneityCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalmaxhomogeneity.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletMaxHomogeneityCalibration::capletMaxHomogeneityCalibration
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletMaxHomogeneityCalibration::calibrationImpl_(\n
      \       Natural numberOfFactors, \n        Natural maxIterations,\n        Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - alpha
    argTypes:
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::AlphaFormInverseLinear::AlphaFormInverseLinear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFormInverseLinear::AlphaFormInverseLinear(std::vector<Time>
      times, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: AlphaFormInverseLinear::operator()(Integer i) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AlphaFormInverseLinear::operator()(Integer i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::AlphaFormInverseLinear::setAlpha
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AlphaFormInverseLinear::setAlpha(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - alpha
    argTypes:
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic(std::vector<Time>
      times, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:43,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: AlphaFormLinearHyperbolic::operator()(Integer i) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AlphaFormLinearHyperbolic::operator()(Integer i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::AlphaFormLinearHyperbolic::setAlpha
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AlphaFormLinearHyperbolic::setAlpha(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - alpha
    argTypes:
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::AlphaFormInverseLinear::AlphaFormInverseLinear
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFormInverseLinear::AlphaFormInverseLinear(std::vector<Time>
      times, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: AlphaFormInverseLinear::operator()(Integer i) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AlphaFormInverseLinear::operator()(Integer i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::AlphaFormInverseLinear::setAlpha
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AlphaFormInverseLinear::setAlpha(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - alpha
    argTypes:
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic(std::vector<Time>
      times, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:43,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: AlphaFormLinearHyperbolic::operator()(Integer i) const
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AlphaFormLinearHyperbolic::operator()(Integer i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::AlphaFormLinearHyperbolic::setAlpha
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaformconcrete.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AlphaFormLinearHyperbolic::setAlpha(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:42,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:43,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:47,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:67,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:73,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:74,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:85,1
    - Dst: AbcdFunction::covariance
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:88,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:99,1
    - Dst: AbcdFunction::covariance
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:110,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:120,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:124,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:124,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:127,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:129,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:129,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:132,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 10
    argNames:
    - a
    - b
    - c
    - d
    - ' ks'
    - ' corr'
    - ' evolution'
    - numberOfFactors
    - ' initialRates'
    - ' displacements'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - vector<Real>
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - EvolutionDescription
    - Size
    - vector<Rate>
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 135
    functionName: QuantLib::AbcdVol::AbcdVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - correlation
    - QL_ENSURE
    - rows
    - Matrix::end
    - Matrix
    - columns
    - Matrix::begin
    - rankReducedSqrt
    - size
    - evolutionTimes
    - rateTimes
    - times
    - AbcdFunction::covariance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdVol::AbcdVol(Real a,\n                     Real b,\n                     Real
      c,\n                     Real d,\n                     const vector<Real>& ks,\n
      \                    const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n
      \                    const EvolutionDescription& evolution,\n                     const
      Size numberOfFactors,\n                     const vector<Rate>& initialRates,\n
      \                    const vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:42,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:43,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:47,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:67,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:73,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:74,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:78,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:85,1
    - Dst: AbcdFunction::covariance
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:88,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:99,1
    - Dst: AbcdFunction::covariance
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:110,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:120,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:124,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:124,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:127,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:129,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:129,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp:132,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 10
    argNames:
    - a
    - b
    - c
    - d
    - ' ks'
    - ' corr'
    - ' evolution'
    - numberOfFactors
    - ' initialRates'
    - ' displacements'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - vector<Real>
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - EvolutionDescription
    - Size
    - vector<Rate>
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 135
    functionName: QuantLib::AbcdVol::AbcdVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/abcdvol.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - correlation
    - QL_ENSURE
    - rows
    - Matrix::end
    - Matrix
    - columns
    - Matrix::begin
    - rankReducedSqrt
    - size
    - evolutionTimes
    - rateTimes
    - times
    - AbcdFunction::covariance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdVol::AbcdVol(Real a,\n                     Real b,\n                     Real
      c,\n                     Real d,\n                     const vector<Real>& ks,\n
      \                    const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n
      \                    const EvolutionDescription& evolution,\n                     const
      Size numberOfFactors,\n                     const vector<Rate>& initialRates,\n
      \                    const vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:29,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:29,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::PiecewiseConstantVariance::variance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - variances
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseConstantVariance::variance(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:35,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:35,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::PiecewiseConstantVariance::volatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - volatilities
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility PiecewiseConstantVariance::volatility(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:41,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:41,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:43,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:43,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::PiecewiseConstantVariance::totalVariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - variances
    - std::accumulate
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseConstantVariance::totalVariance(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    - Dst: QuantLib::PiecewiseConstantVariance::totalVariance
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::PiecewiseConstantVariance::totalVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseConstantVariance::totalVariance
    - rateTimes
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility PiecewiseConstantVariance::totalVolatility(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:29,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:29,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::PiecewiseConstantVariance::variance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - variances
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseConstantVariance::variance(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:35,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:35,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::PiecewiseConstantVariance::volatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - volatilities
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility PiecewiseConstantVariance::volatility(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:41,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:41,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:43,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:43,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: QuantLib::PiecewiseConstantVariance::totalVariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 1
    functionsReached:
    - variances
    - std::accumulate
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseConstantVariance::totalVariance(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    - Dst: QuantLib::PiecewiseConstantVariance::totalVariance
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::PiecewiseConstantVariance::totalVolatility
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseConstantVariance::totalVariance
    - rateTimes
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility PiecewiseConstantVariance::totalVolatility(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:33,1
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:34,1
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:35,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:36,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:42,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:56,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:57,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:62,1
    - Dst: CoterminalSwapCurveState::setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:63,1
    - Dst: CoterminalSwapCurveState::forwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:64,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:66,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:68,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:71,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:73,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:75,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:75,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' ctModel'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 79
    functionName: QuantLib::CotSwapToFwdAdapter::CotSwapToFwdAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - QuantLib::CotSwapToFwdAdapter::numberOfFactors
    - back
    - CoterminalSwapCurveState::forwardRates
    - evolution
    - begin
    - inverse
    - std::find
    - size
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - Matrix
    - pseudoRoot
    - QuantLib::CotSwapToFwdAdapter::numberOfRates
    - CoterminalSwapCurveState::setOnCoterminalSwapRates
    - end
    - row_begin
    - QL_REQUIRE
    - initialRates
    - QuantLib::io::ordinal
    - row_end
    - QuantLib::CotSwapToFwdAdapter::numberOfSteps
    linkageType: ''
    returnType: void
    signature: "void CotSwapToFwdAdapter::CotSwapToFwdAdapter(\n                               const
      ext::shared_ptr<MarketModel>& ctModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coterminalFactory'
    argTypes:
    - ext::shared_ptr<MarketModelFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::CotSwapToFwdAdapterFactory::CotSwapToFwdAdapterFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void CotSwapToFwdAdapterFactory::CotSwapToFwdAdapterFactory(\n             const
      ext::shared_ptr<MarketModelFactory>& coterminalFactory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapterFactory::create
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:93,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:94,1
    - Dst: CotSwapToFwdAdapter::CotSwapToFwdAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::CotSwapToFwdAdapterFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CotSwapToFwdAdapterFactory::create
    - ext::shared_ptr<MarketModel>
    - CotSwapToFwdAdapter::CotSwapToFwdAdapter
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> CotSwapToFwdAdapterFactory::create(\n
      \                                       const EvolutionDescription& evolution,\n
      \                                       Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CotSwapToFwdAdapterFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void CotSwapToFwdAdapterFactory::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:33,1
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:34,1
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:35,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:36,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:42,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:56,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:57,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:62,1
    - Dst: CoterminalSwapCurveState::setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:63,1
    - Dst: CoterminalSwapCurveState::forwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:64,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:66,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:68,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:71,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:73,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:75,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:75,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' ctModel'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 79
    functionName: QuantLib::CotSwapToFwdAdapter::CotSwapToFwdAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - QuantLib::CotSwapToFwdAdapter::numberOfFactors
    - back
    - CoterminalSwapCurveState::forwardRates
    - evolution
    - begin
    - inverse
    - std::find
    - size
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - Matrix
    - pseudoRoot
    - QuantLib::CotSwapToFwdAdapter::numberOfRates
    - CoterminalSwapCurveState::setOnCoterminalSwapRates
    - end
    - row_begin
    - QL_REQUIRE
    - initialRates
    - QuantLib::io::ordinal
    - row_end
    - QuantLib::CotSwapToFwdAdapter::numberOfSteps
    linkageType: ''
    returnType: void
    signature: "void CotSwapToFwdAdapter::CotSwapToFwdAdapter(\n                               const
      ext::shared_ptr<MarketModel>& ctModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coterminalFactory'
    argTypes:
    - ext::shared_ptr<MarketModelFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::CotSwapToFwdAdapterFactory::CotSwapToFwdAdapterFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void CotSwapToFwdAdapterFactory::CotSwapToFwdAdapterFactory(\n             const
      ext::shared_ptr<MarketModelFactory>& coterminalFactory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapterFactory::create
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:93,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:94,1
    - Dst: CotSwapToFwdAdapter::CotSwapToFwdAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::CotSwapToFwdAdapterFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CotSwapToFwdAdapterFactory::create
    - ext::shared_ptr<MarketModel>
    - CotSwapToFwdAdapter::CotSwapToFwdAdapter
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> CotSwapToFwdAdapterFactory::create(\n
      \                                       const EvolutionDescription& evolution,\n
      \                                       Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CotSwapToFwdAdapterFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void CotSwapToFwdAdapterFactory::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:29,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:30,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:31,1
    - Dst: curveState
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:32,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:32,1
    - Dst: curveState
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:33,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - ext::shared_ptr<CTSMMCapletCalibration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::PseudoRootFacade::PseudoRootFacade
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp
    functionUses: 0
    functionsReached:
    - displacements
    - swapPseudoRoots
    - curveState
    linkageType: ''
    returnType: void
    signature: void PseudoRootFacade::PseudoRootFacade(const ext::shared_ptr<CTSMMCapletCalibration>&
      c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:42,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:66,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:66,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - ' covariancePseudoRoots'
    - ' rateTimes'
    - initialRates
    - ' displacements'
    argTypes:
    - std::vector<Matrix>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: QuantLib::PseudoRootFacade::PseudoRootFacade
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PseudoRootFacade::PseudoRootFacade(const std::vector<Matrix>&
      covariancePseudoRoots,\n                                       const std::vector<Rate>&
      rateTimes,\n                                       std::vector<Rate> initialRates,\n
      \                                      const std::vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:29,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:30,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:31,1
    - Dst: curveState
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:32,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:32,1
    - Dst: curveState
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:33,1
    - Dst: swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - ext::shared_ptr<CTSMMCapletCalibration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::PseudoRootFacade::PseudoRootFacade
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp
    functionUses: 0
    functionsReached:
    - displacements
    - swapPseudoRoots
    - curveState
    linkageType: ''
    returnType: void
    signature: void PseudoRootFacade::PseudoRootFacade(const ext::shared_ptr<CTSMMCapletCalibration>&
      c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:42,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:66,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:66,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - ' covariancePseudoRoots'
    - ' rateTimes'
    - initialRates
    - ' displacements'
    argTypes:
    - std::vector<Matrix>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: QuantLib::PseudoRootFacade::PseudoRootFacade
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void PseudoRootFacade::PseudoRootFacade(const std::vector<Matrix>&
      covariancePseudoRoots,\n                                       const std::vector<Rate>&
      rateTimes,\n                                       std::vector<Rate> initialRates,\n
      \                                      const std::vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::VolatilityInterpolationSpecifier::VolatilityInterpolationSpecifier
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifier.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifier()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~VolatilityInterpolationSpecifier()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifier.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityInterpolationSpecifier()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::VolatilityInterpolationSpecifier::VolatilityInterpolationSpecifier
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifier.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VolatilityInterpolationSpecifier()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~VolatilityInterpolationSpecifier()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifier.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityInterpolationSpecifier()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~VolatilityInterpolationSpecifierabcd() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityInterpolationSpecifierabcd() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~VolatilityInterpolationSpecifierabcd() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/volatilityinterpolationspecifierabcd.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VolatilityInterpolationSpecifierabcd() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:37,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - t1
    - t2
    - T
    - S
    - v1
    - v2
    argTypes:
    - Time
    - Time
    - Time
    - Time
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: QuantLib::flatVolCovariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real flatVolCovariance(Time t1,Time t2,\n                           Time
      T, Time S,\n                           Volatility v1, Volatility v2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:57,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:58,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:62,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:87,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:88,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:99,1
    - Dst: flatVolCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:102,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:112,1
    - Dst: flatVolCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:122,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:132,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:139,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:141,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:141,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:144,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 6
    argNames:
    - ' vols'
    - ' corr'
    - ' evolution'
    - numberOfFactors
    - ' initialRates'
    - ' displacements'
    argTypes:
    - vector<Volatility>
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - EvolutionDescription
    - Size
    - vector<Rate>
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 147
    functionName: QuantLib::FlatVol::FlatVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - correlation
    - QL_ENSURE
    - rows
    - Matrix::end
    - flatVolCovariance
    - Matrix
    - columns
    - Matrix::begin
    - size
    - evolutionTimes
    - rateTimes
    - times
    - rankReducedSqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FlatVol::FlatVol(\n            const vector<Volatility>& vols,\n
      \           const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n            const
      EvolutionDescription& evolution,\n            Size numberOfFactors,\n            const
      vector<Rate>& initialRates,\n            const vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:157,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:157,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:159,1
    - Dst: QuantLib::FlatVolFactory::update
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:160,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - longTermCorrelation
    - beta
    - times
    - vols
    - yieldCurve
    - displacement
    argTypes:
    - Real
    - Real
    - vector<Time>
    - vector<Volatility>
    - Handle<YieldTermStructure>
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 162
    functionName: QuantLib::FlatVolFactory::FlatVolFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatVolFactory::update
    - begin
    - std::move
    - LinearInterpolation
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void FlatVolFactory::FlatVolFactory(Real longTermCorrelation,\n                                   Real
      beta,\n                                   vector<Time> times,\n                                   vector<Volatility>
      vols,\n                                   Handle<YieldTermStructure> yieldCurve,\n
      \                                  Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:168,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:172,1
    - Dst: volatility_
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:179,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:186,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:186,1
    - Dst: TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:189,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:192,1
    - Dst: FlatVol::FlatVol
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 199
    functionName: QuantLib::FlatVolFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
    - exponentialCorrelations
    - ext::shared_ptr<MarketModel>
    - volatility_
    - size
    - FlatVol::FlatVol
    - rateTimes
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> FlatVolFactory::create(const EvolutionDescription&
      evolution,\n                                  Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::FlatVolFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 1
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FlatVolFactory::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:37,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - t1
    - t2
    - T
    - S
    - v1
    - v2
    argTypes:
    - Time
    - Time
    - Time
    - Time
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: QuantLib::flatVolCovariance
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real flatVolCovariance(Time t1,Time t2,\n                           Time
      T, Time S,\n                           Volatility v1, Volatility v2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:57,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:58,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:62,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:87,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:88,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:92,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:99,1
    - Dst: flatVolCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:102,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:112,1
    - Dst: flatVolCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:115,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:122,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:132,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:139,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:141,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:141,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:144,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 6
    argNames:
    - ' vols'
    - ' corr'
    - ' evolution'
    - numberOfFactors
    - ' initialRates'
    - ' displacements'
    argTypes:
    - vector<Volatility>
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - EvolutionDescription
    - Size
    - vector<Rate>
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 147
    functionName: QuantLib::FlatVol::FlatVol
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - correlation
    - QL_ENSURE
    - rows
    - Matrix::end
    - flatVolCovariance
    - Matrix
    - columns
    - Matrix::begin
    - size
    - evolutionTimes
    - rateTimes
    - times
    - rankReducedSqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FlatVol::FlatVol(\n            const vector<Volatility>& vols,\n
      \           const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n            const
      EvolutionDescription& evolution,\n            Size numberOfFactors,\n            const
      vector<Rate>& initialRates,\n            const vector<Spread>& displacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:157,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:157,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:159,1
    - Dst: QuantLib::FlatVolFactory::update
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:160,1
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - longTermCorrelation
    - beta
    - times
    - vols
    - yieldCurve
    - displacement
    argTypes:
    - Real
    - Real
    - vector<Time>
    - vector<Volatility>
    - Handle<YieldTermStructure>
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 162
    functionName: QuantLib::FlatVolFactory::FlatVolFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatVolFactory::update
    - begin
    - std::move
    - LinearInterpolation
    - registerWith
    - end
    linkageType: ''
    returnType: void
    signature: "void FlatVolFactory::FlatVolFactory(Real longTermCorrelation,\n                                   Real
      beta,\n                                   vector<Time> times,\n                                   vector<Volatility>
      vols,\n                                   Handle<YieldTermStructure> yieldCurve,\n
      \                                  Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:168,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:172,1
    - Dst: volatility_
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:179,1
    - Dst: exponentialCorrelations
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:186,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:186,1
    - Dst: TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:189,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:192,1
    - Dst: FlatVol::FlatVol
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 199
    functionName: QuantLib::FlatVolFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - TimeHomogeneousForwardCorrelation::TimeHomogeneousForwardCorrelation
    - exponentialCorrelations
    - ext::shared_ptr<MarketModel>
    - volatility_
    - size
    - FlatVol::FlatVol
    - rateTimes
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> FlatVolFactory::create(const EvolutionDescription&
      evolution,\n                                  Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::FlatVolFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.cpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FlatVolFactory::update()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - target
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::Bisection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real Bisection(Real target,\n                   Real low,\n                   Real
      high,\n                   Real tolerance,\n                   T& theObject,\n
      \                  Real (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::FindHighestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindHighestOK(Real low,\n                       Real high,\n
      \                      Real tolerance,\n                       T& theObject,\n
      \                      bool (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::FindLowestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindLowestOK(Real low,\n                      Real high,\n                      Real
      tolerance,\n                      T& theObject,\n                      bool
      (T::*Value)(Real))"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 5
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    - ' failed'
    argTypes:
    - Real
    - Real
    - Real
    - T
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 176
    functionName: QuantLib::Minimize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real Minimize(Real low,\n                  Real high,\n                  Real
      tolerance,\n                  T& theObject,\n                  Real (T::*Value)(Real),\n
      \                 bool (T::*Condition)(Real),\n                  bool& failed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - target
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::Bisection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real Bisection(Real target,\n                   Real low,\n                   Real
      high,\n                   Real tolerance,\n                   T& theObject,\n
      \                  Real (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::FindHighestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindHighestOK(Real low,\n                       Real high,\n
      \                      Real tolerance,\n                       T& theObject,\n
      \                      bool (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::FindLowestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindLowestOK(Real low,\n                      Real high,\n                      Real
      tolerance,\n                      T& theObject,\n                      bool
      (T::*Value)(Real))"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 5
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    - ' failed'
    argTypes:
    - Real
    - Real
    - Real
    - T
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 176
    functionName: QuantLib::Minimize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real Minimize(Real low,\n                  Real high,\n                  Real
      tolerance,\n                  T& theObject,\n                  Real (T::*Value)(Real),\n
      \                 bool (T::*Condition)(Real),\n                  bool& failed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - parametricform
    argTypes:
    - ext::shared_ptr<AlphaForm>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: QuantLib::AlphaFinder::AlphaFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFinder::AlphaFinder(ext::shared_ptr<AlphaForm> parametricform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 194
    functionName: QuantLib::AlphaFinder::computeLinearPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - setAlpha
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::computeLinearPart(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 208
    functionName: QuantLib::AlphaFinder::computeQuadraticPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - setAlpha
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::computeQuadraticPart(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:212,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:215,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:216,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 230
    functionName: QuantLib::AlphaFinder::homogeneityfailure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AlphaFinder::finalPart
    - static_cast<Size>
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::homogeneityfailure(Real alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:244,1
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:258,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 10
    argNames:
    - alphaFound
    - stepindex
    - ' ratetwohomogeneousvols'
    - quadraticPart
    - linearPart
    - constantPart
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 263
    functionName: QuantLib::AlphaFinder::finalPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 1
    functionsReached:
    - setAlpha
    - quadratic::roots
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::finalPart(Real alphaFound,\n                                Integer
      stepindex,\n                                const std::vector<Volatility>& ratetwohomogeneousvols,\n
      \                               Real quadraticPart,\n                                Real
      linearPart,\n                                Real constantPart,\n                                Real&
      alpha,\n                                Real& a,\n                                Real&
      b,\n                                std::vector<Volatility>& ratetwovols)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:267,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:268,1
    - Dst: quadratic::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionName: QuantLib::AlphaFinder::valueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - quadratic::valueAtTurningPoint
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::valueAtTurningPoint(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::AlphaFinder::minusValueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::minusValueAtTurningPoint(Real alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:280,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:285,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:288,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: QuantLib::AlphaFinder::testIfSolutionExists
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AlphaFinder::finalPart
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: bool
    signature: bool AlphaFinder::testIfSolutionExists(Real alpha)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:320,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:333,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:336,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:350,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:352,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:361,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:374,1
    - Dst: Bisection<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:388,1
    - Dst: Bisection<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:397,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:405,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 16
    argNames:
    - alpha0
    - stepindex
    - ' rateonevols'
    - ' ratetwohomogeneousvols'
    - ' correlations'
    - w0
    - w1
    - targetVariance
    - tolerance
    - alphaMax
    - alphaMin
    - steps
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - std::vector<Volatility>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Integer
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 416
    functionName: QuantLib::AlphaFinder::solve
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::AlphaFinder::finalPart
    - Bisection<AlphaFinder>
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::solve(Real alpha0,\n                            Integer
      stepindex, // caplet index\n                            const std::vector<Volatility>&
      rateonevols,\n                            const std::vector<Volatility>& ratetwohomogeneousvols,\n
      \                           const std::vector<Real>& correlations,\n                            Real
      w0,\n                            Real w1,\n                            Real
      targetVariance,\n                            Real tolerance,\n                            Real
      alphaMax,\n                            Real alphaMin,\n                            Integer
      steps,\n                            Real& alpha,\n                            Real&
      a,\n                            Real& b,\n                            std::vector<Volatility>&
      ratetwovols)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:439,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:439,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:444,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:460,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:461,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:462,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:471,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:479,1
    - Dst: FindHighestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:491,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:508,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:511,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:513,1
    - Dst: FindHighestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:521,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:529,1
    - Dst: Minimize<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:541,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:550,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:553,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:554,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 16
    argNames:
    - alpha0
    - stepindex
    - ' rateonevols'
    - ' ratetwohomogeneousvols'
    - ' correlations'
    - w0
    - w1
    - targetVariance
    - tolerance
    - alphaMax
    - alphaMin
    - steps
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - std::vector<Volatility>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Integer
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 418
    functionDepth: 3
    functionLinenumber: 418
    functionLinenumberEnd: 562
    functionName: QuantLib::AlphaFinder::solveWithMaxHomogeneity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - resize
    - QuantLib::AlphaFinder::computeQuadraticPart
    - QuantLib::AlphaFinder::finalPart
    - FindLowestOK<AlphaFinder>
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::testIfSolutionExists
    - size
    - FindHighestOK<AlphaFinder>
    - Minimize<AlphaFinder>
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::solveWithMaxHomogeneity(\n                        Real
      alpha0,\n                        Integer stepindex, // caplet index\n                        const
      std::vector<Volatility>& rateonevols,\n                        const std::vector<Volatility>&
      ratetwohomogeneousvols,\n                        const std::vector<Real>& correlations,\n
      \                       Real w0,\n                        Real w1,\n                        Real
      targetVariance,\n                        Real tolerance,\n                        Real
      alphaMax,\n                        Real alphaMin,\n                        Integer
      steps,\n                        Real& alpha,\n                        Real&
      a,\n                        Real& b,\n                        std::vector<Volatility>&
      ratetwovols)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - target
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::Bisection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real Bisection(Real target,\n                   Real low,\n                   Real
      high,\n                   Real tolerance,\n                   T& theObject,\n
      \                  Real (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::FindHighestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindHighestOK(Real low,\n                       Real high,\n
      \                      Real tolerance,\n                       T& theObject,\n
      \                      bool (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::FindLowestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindLowestOK(Real low,\n                      Real high,\n                      Real
      tolerance,\n                      T& theObject,\n                      bool
      (T::*Value)(Real))"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 5
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    - ' failed'
    argTypes:
    - Real
    - Real
    - Real
    - T
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 176
    functionName: QuantLib::Minimize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real Minimize(Real low,\n                  Real high,\n                  Real
      tolerance,\n                  T& theObject,\n                  Real (T::*Value)(Real),\n
      \                 bool (T::*Condition)(Real),\n                  bool& failed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - target
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 49
    functionName: QuantLib::Bisection
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real Bisection(Real target,\n                   Real low,\n                   Real
      high,\n                   Real tolerance,\n                   T& theObject,\n
      \                  Real (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::FindHighestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindHighestOK(Real low,\n                       Real high,\n
      \                      Real tolerance,\n                       T& theObject,\n
      \                      bool (T::*Value)(Real))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    argTypes:
    - Real
    - Real
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::FindLowestOK
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real FindLowestOK(Real low,\n                      Real high,\n                      Real
      tolerance,\n                      T& theObject,\n                      bool
      (T::*Value)(Real))"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 5
    argNames:
    - low
    - high
    - tolerance
    - ' theObject'
    - ' failed'
    argTypes:
    - Real
    - Real
    - Real
    - T
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 176
    functionName: QuantLib::Minimize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real Minimize(Real low,\n                  Real high,\n                  Real
      tolerance,\n                  T& theObject,\n                  Real (T::*Value)(Real),\n
      \                 bool (T::*Condition)(Real),\n                  bool& failed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - parametricform
    argTypes:
    - ext::shared_ptr<AlphaForm>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: QuantLib::AlphaFinder::AlphaFinder
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AlphaFinder::AlphaFinder(ext::shared_ptr<AlphaForm> parametricform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 194
    functionName: QuantLib::AlphaFinder::computeLinearPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 4
    functionsReached:
    - setAlpha
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::computeLinearPart(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 208
    functionName: QuantLib::AlphaFinder::computeQuadraticPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 4
    functionsReached:
    - setAlpha
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::computeQuadraticPart(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:212,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:215,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:216,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 230
    functionName: QuantLib::AlphaFinder::homogeneityfailure
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AlphaFinder::finalPart
    - static_cast<Size>
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::homogeneityfailure(Real alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setAlpha
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:244,1
    - Dst: quadratic::roots
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:258,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 10
    argNames:
    - alphaFound
    - stepindex
    - ' ratetwohomogeneousvols'
    - quadraticPart
    - linearPart
    - constantPart
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 263
    functionName: QuantLib::AlphaFinder::finalPart
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 5
    functionsReached:
    - setAlpha
    - quadratic::roots
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::finalPart(Real alphaFound,\n                                Integer
      stepindex,\n                                const std::vector<Volatility>& ratetwohomogeneousvols,\n
      \                               Real quadraticPart,\n                                Real
      linearPart,\n                                Real constantPart,\n                                Real&
      alpha,\n                                Real& a,\n                                Real&
      b,\n                                std::vector<Volatility>& ratetwovols)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:267,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:268,1
    - Dst: quadratic::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionName: QuantLib::AlphaFinder::valueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 3
    functionsReached:
    - quadratic::valueAtTurningPoint
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::valueAtTurningPoint(Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::AlphaFinder::minusValueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: Real
    signature: Real AlphaFinder::minusValueAtTurningPoint(Real alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:280,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:285,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:288,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: QuantLib::AlphaFinder::testIfSolutionExists
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AlphaFinder::finalPart
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::computeQuadraticPart
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: bool
    signature: bool AlphaFinder::testIfSolutionExists(Real alpha)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:320,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:333,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:336,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:350,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:352,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:361,1
    - Dst: QuantLib::AlphaFinder::valueAtTurningPoint
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:374,1
    - Dst: Bisection<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:388,1
    - Dst: Bisection<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:397,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:405,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 16
    argNames:
    - alpha0
    - stepindex
    - ' rateonevols'
    - ' ratetwohomogeneousvols'
    - ' correlations'
    - w0
    - w1
    - targetVariance
    - tolerance
    - alphaMax
    - alphaMin
    - steps
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - std::vector<Volatility>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Integer
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 416
    functionName: QuantLib::AlphaFinder::solve
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::AlphaFinder::finalPart
    - Bisection<AlphaFinder>
    - QuantLib::AlphaFinder::valueAtTurningPoint
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::solve(Real alpha0,\n                            Integer
      stepindex, // caplet index\n                            const std::vector<Volatility>&
      rateonevols,\n                            const std::vector<Volatility>& ratetwohomogeneousvols,\n
      \                           const std::vector<Real>& correlations,\n                            Real
      w0,\n                            Real w1,\n                            Real
      targetVariance,\n                            Real tolerance,\n                            Real
      alphaMax,\n                            Real alphaMin,\n                            Integer
      steps,\n                            Real& alpha,\n                            Real&
      a,\n                            Real& b,\n                            std::vector<Volatility>&
      ratetwovols)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:439,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:439,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:444,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:460,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:461,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:462,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:471,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:479,1
    - Dst: FindHighestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:491,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:508,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:511,1
    - Dst: QuantLib::AlphaFinder::testIfSolutionExists
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:513,1
    - Dst: FindHighestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:521,1
    - Dst: FindLowestOK<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:529,1
    - Dst: Minimize<AlphaFinder>
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:541,1
    - Dst: QuantLib::AlphaFinder::finalPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:550,1
    - Dst: QuantLib::AlphaFinder::computeQuadraticPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:553,1
    - Dst: QuantLib::AlphaFinder::computeLinearPart
      Src: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp:554,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 16
    argNames:
    - alpha0
    - stepindex
    - ' rateonevols'
    - ' ratetwohomogeneousvols'
    - ' correlations'
    - w0
    - w1
    - targetVariance
    - tolerance
    - alphaMax
    - alphaMin
    - steps
    - ' alpha'
    - ' a'
    - ' b'
    - ' ratetwovols'
    argTypes:
    - Real
    - Integer
    - std::vector<Volatility>
    - std::vector<Volatility>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Integer
    - Real
    - Real
    - Real
    - std::vector<Volatility>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 418
    functionDepth: 3
    functionLinenumber: 418
    functionLinenumberEnd: 562
    functionName: QuantLib::AlphaFinder::solveWithMaxHomogeneity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphafinder.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - resize
    - QuantLib::AlphaFinder::computeQuadraticPart
    - QuantLib::AlphaFinder::finalPart
    - FindLowestOK<AlphaFinder>
    - QuantLib::AlphaFinder::computeLinearPart
    - QuantLib::AlphaFinder::testIfSolutionExists
    - size
    - FindHighestOK<AlphaFinder>
    - Minimize<AlphaFinder>
    linkageType: ''
    returnType: bool
    signature: "bool AlphaFinder::solveWithMaxHomogeneity(\n                        Real
      alpha0,\n                        Integer stepindex, // caplet index\n                        const
      std::vector<Volatility>& rateonevols,\n                        const std::vector<Volatility>&
      ratetwohomogeneousvols,\n                        const std::vector<Real>& correlations,\n
      \                       Real w0,\n                        Real w1,\n                        Real
      targetVariance,\n                        Real tolerance,\n                        Real
      alphaMax,\n                        Real alphaMin,\n                        Integer
      steps,\n                        Real& alpha,\n                        Real&
      a,\n                        Real& b,\n                        std::vector<Volatility>&
      ratetwovols)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: ~AlphaForm()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaform.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaForm()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: ~AlphaForm()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/alphaform.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AlphaForm()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~CTSMMCapletCalibration()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CTSMMCapletCalibration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: "&\n    CTSMMCapletCalibration::mktCapletVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mktCapletVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: "&\n    CTSMMCapletCalibration::mdlCapletVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mdlCapletVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    CTSMMCapletCalibration::mktSwaptionVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mktSwaptionVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: "&\n    CTSMMCapletCalibration::mdlSwaptionVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mdlSwaptionVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::CTSMMCapletCalibration::failures
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Natural
    signature: Natural CTSMMCapletCalibration::failures() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::CTSMMCapletCalibration::deformationSize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::deformationSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::CTSMMCapletCalibration::capletRmsError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::capletRmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::CTSMMCapletCalibration::capletMaxError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::capletMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::CTSMMCapletCalibration::swaptionRmsError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::swaptionRmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::CTSMMCapletCalibration::swaptionMaxError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::swaptionMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: "&\n    CTSMMCapletCalibration::swapPseudoRoots() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    CTSMMCapletCalibration::swapPseudoRoots()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionName: "&\n    CTSMMCapletCalibration::swapPseudoRoot(Size i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix &\n    CTSMMCapletCalibration::swapPseudoRoot(Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: "&\n    CTSMMCapletCalibration::curveState() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CurveState>
    signature: "ext::shared_ptr<CurveState> &\n    CTSMMCapletCalibration::curveState()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::CTSMMCapletCalibration::displacements
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Volatility>
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> CTSMMCapletCalibration::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~CTSMMCapletCalibration()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CTSMMCapletCalibration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: "&\n    CTSMMCapletCalibration::mktCapletVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mktCapletVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: "&\n    CTSMMCapletCalibration::mdlCapletVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mdlCapletVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    CTSMMCapletCalibration::mktSwaptionVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mktSwaptionVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: "&\n    CTSMMCapletCalibration::mdlSwaptionVols() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::mdlSwaptionVols()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::CTSMMCapletCalibration::failures
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Natural
    signature: Natural CTSMMCapletCalibration::failures() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::CTSMMCapletCalibration::deformationSize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::deformationSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::CTSMMCapletCalibration::capletRmsError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::capletRmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::CTSMMCapletCalibration::capletMaxError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::capletMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::CTSMMCapletCalibration::swaptionRmsError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::swaptionRmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::CTSMMCapletCalibration::swaptionMaxError
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CTSMMCapletCalibration::swaptionMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: "&\n    CTSMMCapletCalibration::swapPseudoRoots() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    CTSMMCapletCalibration::swapPseudoRoots()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionName: "&\n    CTSMMCapletCalibration::swapPseudoRoot(Size i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix &\n    CTSMMCapletCalibration::swapPseudoRoot(Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: "&\n    CTSMMCapletCalibration::curveState() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CurveState>
    signature: "ext::shared_ptr<CurveState> &\n    CTSMMCapletCalibration::curveState()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::CTSMMCapletCalibration::displacements
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Volatility>
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> CTSMMCapletCalibration::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& FlatVol::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & FlatVol::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: '& FlatVol::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & FlatVol::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: '& FlatVol::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & FlatVol::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::FlatVol::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FlatVol::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::FlatVol::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionName: '& FlatVol::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FlatVol::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: '& FlatVol::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & FlatVol::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: '& FlatVol::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & FlatVol::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: '& FlatVol::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & FlatVol::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::FlatVol::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::FlatVol::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::FlatVol::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FlatVol::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionName: '& FlatVol::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/flatvol.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FlatVol::pseudoRoot(Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdPeriodAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:36,1
    - Dst: QuantLib::FwdPeriodAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:37,1
    - Dst: QuantLib::FwdPeriodAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:38,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:47,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:50,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:54,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:67,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:69,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:70,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:70,1
    - Dst: LMMCurveState::forwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:77,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:79,1
    - Dst: LMMCurveState::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:79,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:80,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:82,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:83,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:85,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:85,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:88,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:92,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: std::set::find
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: QuantLib::ForwardForwardMappings::YMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:105,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:113,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:116,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:118,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:118,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:119,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 4
    argNames:
    - ' largeModel'
    - period
    - offset
    - newDisplacements
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Size
    - Size
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 122
    functionName: QuantLib::FwdPeriodAdapter::FwdPeriodAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - firstAliveRate
    - LMMCurveState::rateTimes
    - std::vector::push_back
    - evolution
    - empty
    - std::set::find
    - begin
    - row_end
    - size
    - LMMCurveState::numberOfRates
    - EvolutionDescription
    - push_back
    - Matrix
    - pseudoRoot
    - QuantLib::ForwardForwardMappings::YMatrix
    - end
    - QuantLib::FwdPeriodAdapter::numberOfRates
    - reserve
    - std::vector::size
    - QL_REQUIRE
    - row_begin
    - initialRates
    - resize
    - std::move
    - QuantLib::FwdPeriodAdapter::numberOfSteps
    - LMMCurveState::forwardRates
    - LMMCurveState::setOnForwardRates
    - evolutionTimes
    - QuantLib::FwdPeriodAdapter::numberOfFactors
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void FwdPeriodAdapter::FwdPeriodAdapter(const ext::shared_ptr<MarketModel>&
      largeModel,\n                                       Size period,\n                                       Size
      offset,\n                                       std::vector<Spread> newDisplacements)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdPeriodAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:36,1
    - Dst: QuantLib::FwdPeriodAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:37,1
    - Dst: QuantLib::FwdPeriodAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:38,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:47,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:50,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:54,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:67,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:69,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:70,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:70,1
    - Dst: LMMCurveState::forwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:77,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:79,1
    - Dst: LMMCurveState::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:79,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:80,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:82,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:83,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:85,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:85,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:88,1
    - Dst: LMMCurveState::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:92,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: std::set::find
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:100,1
    - Dst: QuantLib::ForwardForwardMappings::YMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:105,1
    - Dst: firstAliveRate
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:113,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:116,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:118,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:118,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp:119,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 4
    argNames:
    - ' largeModel'
    - period
    - offset
    - newDisplacements
    argTypes:
    - ext::shared_ptr<MarketModel>
    - Size
    - Size
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 122
    functionName: QuantLib::FwdPeriodAdapter::FwdPeriodAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - firstAliveRate
    - LMMCurveState::rateTimes
    - std::vector::push_back
    - evolution
    - empty
    - std::set::find
    - begin
    - row_end
    - size
    - LMMCurveState::numberOfRates
    - EvolutionDescription
    - push_back
    - Matrix
    - pseudoRoot
    - QuantLib::ForwardForwardMappings::YMatrix
    - end
    - QuantLib::FwdPeriodAdapter::numberOfRates
    - reserve
    - std::vector::size
    - QL_REQUIRE
    - row_begin
    - initialRates
    - resize
    - std::move
    - QuantLib::FwdPeriodAdapter::numberOfSteps
    - LMMCurveState::forwardRates
    - LMMCurveState::setOnForwardRates
    - evolutionTimes
    - QuantLib::FwdPeriodAdapter::numberOfFactors
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void FwdPeriodAdapter::FwdPeriodAdapter(const ext::shared_ptr<MarketModel>&
      largeModel,\n                                       Size period,\n                                       Size
      offset,\n                                       std::vector<Spread> newDisplacements)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~PiecewiseConstantVariance()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PiecewiseConstantVariance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~PiecewiseConstantVariance()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/piecewiseconstantvariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PiecewiseConstantVariance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& PseudoRootFacade::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & PseudoRootFacade::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '& PseudoRootFacade::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & PseudoRootFacade::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& PseudoRootFacade::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & PseudoRootFacade::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::PseudoRootFacade::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::PseudoRootFacade::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::PseudoRootFacade::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: '& PseudoRootFacade::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & PseudoRootFacade::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: '& PseudoRootFacade::initialRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & PseudoRootFacade::initialRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: '& PseudoRootFacade::displacements() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & PseudoRootFacade::displacements() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& PseudoRootFacade::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & PseudoRootFacade::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::PseudoRootFacade::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::PseudoRootFacade::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::PseudoRootFacade::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size PseudoRootFacade::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: '& PseudoRootFacade::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/pseudorootfacade.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & PseudoRootFacade::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: "&\n    CotSwapToFwdAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    CotSwapToFwdAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: "&\n    CotSwapToFwdAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached:
    - displacements
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    CotSwapToFwdAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: "&\n    CotSwapToFwdAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    CotSwapToFwdAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfRates
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfSteps
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& CotSwapToFwdAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CotSwapToFwdAdapter::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: "&\n    CotSwapToFwdAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    CotSwapToFwdAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: "&\n    CotSwapToFwdAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached:
    - displacements
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    CotSwapToFwdAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: "&\n    CotSwapToFwdAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    CotSwapToFwdAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfRates
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CotSwapToFwdAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::CotSwapToFwdAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::CotSwapToFwdAdapter::numberOfSteps
    linkageType: ''
    returnType: Size
    signature: Size CotSwapToFwdAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& CotSwapToFwdAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/cotswaptofwdadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & CotSwapToFwdAdapter::pseudoRoot(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:46,1
    - Dst: ext::shared_ptr<AlphaForm>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 11
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - ' alphaInitial'
    - ' alphaMax'
    - ' alphaMin'
    - maximizeHomogeneity
    - parametricForm
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - bool
    - ext::shared_ptr<AlphaForm>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 63
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::CTSMMCapletAlphaFormCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 0
    functionsReached:
    - AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
    - std::move
    - size
    - ext::shared_ptr<AlphaForm>
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletAlphaFormCalibration::CTSMMCapletAlphaFormCalibration(\n
      \       const EvolutionDescription& evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>&
      corr,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& mktCapletVols,\n
      \       const ext::shared_ptr<CurveState>& cs,\n        Spread displacement,\n
      \       const std::vector<Real>& alphaInitial,\n        const std::vector<Real>&
      alphaMax,\n        const std::vector<Real>& alphaMin,\n        bool maximizeHomogeneity,\n
      \       ext::shared_ptr<AlphaForm> parametricForm)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:89,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:92,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:93,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:100,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:106,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:107,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:108,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:111,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:112,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:113,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:113,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:119,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:126,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:126,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:129,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:144,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:159,1
    - Dst: AlphaFinder::solveWithMaxHomogeneity
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:166,1
    - Dst: AlphaFinder::solve
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:184,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:206,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:210,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:218,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:218,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:221,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:223,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:223,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:226,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 18
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' capletVols'
    - ' cs'
    - displacement
    - ' alphaInitial'
    - ' alphaMax'
    - ' alphaMin'
    - maximizeHomogeneity
    - ' parametricForm'
    - numberOfFactors
    - maxIterations
    - tolerance
    - ' alpha'
    - ' a'
    - ' b'
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - CurveState
    - Spread
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - bool
    - ext::shared_ptr<AlphaForm>
    - Size
    - Integer
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 231
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 0
    functionsReached:
    - times
    - std::vector::push_back
    - rankReducedSqrt
    - QL_ENSURE
    - AlphaFinder::solve
    - inverse
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - QL_FAIL
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - AlphaFinder::solveWithMaxHomogeneity
    - columns
    - std::sqrt
    - variances
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration(\n
      \       const EvolutionDescription& evolution,\n        const PiecewiseConstantCorrelation&
      corr,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& capletVols,\n
      \       const CurveState& cs,\n        const Spread displacement,\n\n        const
      std::vector<Real>& alphaInitial,\n        const std::vector<Real>& alphaMax,\n
      \       const std::vector<Real>& alphaMin,\n        bool maximizeHomogeneity,\n
      \       const ext::shared_ptr<AlphaForm>& parametricForm,\n\n        const Size
      numberOfFactors,\n        Integer maxIterations,\n        Real tolerance,\n\n
      \       std::vector<Real>& alpha,\n        std::vector<Real>& a,\n        std::vector<Real>&
      b,\n\n        std::vector<Matrix>& swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - numberOfFactors
    - maxIterations
    - tolerance
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 261
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletAlphaFormCalibration::calibrationImpl_(\n                                Natural
      numberOfFactors,\n                                Natural maxIterations,\n                                Real
      tolerance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:46,1
    - Dst: ext::shared_ptr<AlphaForm>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 11
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - ' alphaInitial'
    - ' alphaMax'
    - ' alphaMin'
    - maximizeHomogeneity
    - parametricForm
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - bool
    - ext::shared_ptr<AlphaForm>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 63
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::CTSMMCapletAlphaFormCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 0
    functionsReached:
    - AlphaFormLinearHyperbolic::AlphaFormLinearHyperbolic
    - std::move
    - size
    - ext::shared_ptr<AlphaForm>
    - rateTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletAlphaFormCalibration::CTSMMCapletAlphaFormCalibration(\n
      \       const EvolutionDescription& evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>&
      corr,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& mktCapletVols,\n
      \       const ext::shared_ptr<CurveState>& cs,\n        Spread displacement,\n
      \       const std::vector<Real>& alphaInitial,\n        const std::vector<Real>&
      alphaMax,\n        const std::vector<Real>& alphaMin,\n        bool maximizeHomogeneity,\n
      \       ext::shared_ptr<AlphaForm> parametricForm)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:89,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:92,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:93,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:100,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:106,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:107,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:108,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:111,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:112,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:113,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:113,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:119,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:126,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:126,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:129,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:144,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:159,1
    - Dst: AlphaFinder::solveWithMaxHomogeneity
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:166,1
    - Dst: AlphaFinder::solve
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:184,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:206,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:210,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:218,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:218,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:221,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:223,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:223,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:226,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 18
    argNames:
    - ' evolution'
    - ' corr'
    - ' displacedSwapVariances'
    - ' capletVols'
    - ' cs'
    - displacement
    - ' alphaInitial'
    - ' alphaMax'
    - ' alphaMin'
    - maximizeHomogeneity
    - ' parametricForm'
    - numberOfFactors
    - maxIterations
    - tolerance
    - ' alpha'
    - ' a'
    - ' b'
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - CurveState
    - Spread
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - bool
    - ext::shared_ptr<AlphaForm>
    - Size
    - Integer
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 231
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 1
    functionsReached:
    - times
    - std::vector::push_back
    - rankReducedSqrt
    - QL_ENSURE
    - AlphaFinder::solve
    - inverse
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - QL_FAIL
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - AlphaFinder::solveWithMaxHomogeneity
    - columns
    - std::sqrt
    - variances
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration(\n
      \       const EvolutionDescription& evolution,\n        const PiecewiseConstantCorrelation&
      corr,\n        const std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      >& displacedSwapVariances,\n        const std::vector<Volatility>& capletVols,\n
      \       const CurveState& cs,\n        const Spread displacement,\n\n        const
      std::vector<Real>& alphaInitial,\n        const std::vector<Real>& alphaMax,\n
      \       const std::vector<Real>& alphaMin,\n        bool maximizeHomogeneity,\n
      \       const ext::shared_ptr<AlphaForm>& parametricForm,\n\n        const Size
      numberOfFactors,\n        Integer maxIterations,\n        Real tolerance,\n\n
      \       std::vector<Real>& alpha,\n        std::vector<Real>& a,\n        std::vector<Real>&
      b,\n\n        std::vector<Matrix>& swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - numberOfFactors
    - maxIterations
    - tolerance
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 261
    functionName: QuantLib::CTSMMCapletAlphaFormCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletAlphaFormCalibration::capletAlphaFormCalibration
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletAlphaFormCalibration::calibrationImpl_(\n                                Natural
      numberOfFactors,\n                                Natural maxIterations,\n                                Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: "&\n    FwdPeriodAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    FwdPeriodAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: "&\n    FwdPeriodAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    FwdPeriodAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: "&\n    FwdPeriodAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    FwdPeriodAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::FwdPeriodAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::FwdPeriodAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::FwdPeriodAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: '& FwdPeriodAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FwdPeriodAdapter::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: "&\n    FwdPeriodAdapter::initialRates() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    FwdPeriodAdapter::initialRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: "&\n    FwdPeriodAdapter::displacements() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: "std::vector<Spread> &\n    FwdPeriodAdapter::displacements() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: "&\n    FwdPeriodAdapter::evolution() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: "EvolutionDescription &\n    FwdPeriodAdapter::evolution() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::FwdPeriodAdapter::numberOfRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::FwdPeriodAdapter::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::FwdPeriodAdapter::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FwdPeriodAdapter::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: '& FwdPeriodAdapter::pseudoRoot(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdperiodadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & FwdPeriodAdapter::pseudoRoot(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:68,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:79,1
    - Dst: getNoBigRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:79,1
    - Dst: setLastCapletVol
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:89,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:89,1
    - Dst: originalVariances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:95,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:95,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:107,1
    - Dst: setScalingFactors
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:112,1
    - Dst: interpolatedVariances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:118,1
    - Dst: static_cast<QuantLib::Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:125,1
    - Dst: CTSMMCapletMaxHomogeneityCalibration::calibrate
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:126,1
    - Dst: CTSMMCapletMaxHomogeneityCalibration::swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:129,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:133,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:134,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:135,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:135,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:131,1
    - Dst: CotSwapToFwdAdapter::CotSwapToFwdAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:137,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:139,1
    - Dst: FwdPeriodAdapter::FwdPeriodAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:141,1
    - Dst: FwdToCotSwapAdapter::FwdToCotSwapAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:145,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:148,1
    - Dst: ext::shared_ptr::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:156,1
    - Dst: ext::shared_ptr::evolution
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:156,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:167,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 21
    argNames:
    - ' evolution'
    - ' corr'
    - "\n        displacedSwapVariances"
    - ' capletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    - numberOfFactors
    - period
    - max1dIterations
    - tolerance1d
    - maxUnperiodicIterations
    - toleranceUnperiodic
    - maxPeriodIterations
    - periodTolerance
    - ' totalSwaptionError'
    - ' swapCovariancePseudoRoots'
    - ' finalScales'
    - ' iterationsDone'
    - ' errorImprovement'
    - ' modelSwaptionVolsMatrix'
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - VolatilityInterpolationSpecifier
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - Real
    - Size
    - Size
    - Size
    - Real
    - Size
    - Real
    - Size
    - Real
    - Real
    - std::vector<Matrix>
    - std::vector<Real>
    - Size
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 177
    functionName: QuantLib::capletSwaptionPeriodicCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - FwdPeriodAdapter::FwdPeriodAdapter
    - FwdToCotSwapAdapter::FwdToCotSwapAdapter
    - ext::shared_ptr::evolution
    - getNoBigRates
    - rbegin
    - PseudoRootFacade::PseudoRootFacade
    - std::vector<Spread>
    - totalVolatility
    - setScalingFactors
    - numberOfRates
    - rateTimes
    - originalVariances
    - CTSMMCapletMaxHomogeneityCalibration::calibrate
    - interpolatedVariances
    - static_cast<QuantLib::Integer>
    - CotSwapToFwdAdapter::CotSwapToFwdAdapter
    - Matrix
    - ext::shared_ptr::totalCovariance
    - ext::shared_ptr::numberOfSteps
    - QL_REQUIRE
    - setLastCapletVol
    - numberOfSteps
    - std::sqrt
    - CTSMMCapletMaxHomogeneityCalibration::swapPseudoRoots
    linkageType: ''
    returnType: Integer
    signature: "Integer capletSwaptionPeriodicCalibration(\n        const EvolutionDescription&
      evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n
      \       VolatilityInterpolationSpecifier&\n        displacedSwapVariances,\n
      \       const std::vector<Volatility>& capletVols,\n        const ext::shared_ptr<CurveState>&
      cs,\n        const Spread displacement,\n        Real caplet0Swaption1Priority,\n
      \       Size numberOfFactors,\n        Size period,\n        Size max1dIterations,\n
      \       Real tolerance1d,\n        Size maxUnperiodicIterations,\n        Real
      toleranceUnperiodic,\n        Size maxPeriodIterations,\n        Real periodTolerance,\n
      \       Real& , // deformationSize used to return information, not set yet\n
      \       Real& totalSwaptionError, // ?\n        std::vector<Matrix>& swapCovariancePseudoRoots,
      \ // the thing we really want the pseudo root for each time step\n        std::vector<Real>
      & finalScales,  //scalings used for matching\n        Size& iterationsDone,
      // number of  period iteratations done\n        Real& errorImprovement, // improvement
      in error for last iteration\n        Matrix& modelSwaptionVolsMatrix // the
      swaption vols calibrated to at each step of the iteration\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:68,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:79,1
    - Dst: getNoBigRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:79,1
    - Dst: setLastCapletVol
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:89,1
    - Dst: rbegin
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:89,1
    - Dst: originalVariances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:95,1
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:95,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:107,1
    - Dst: setScalingFactors
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:112,1
    - Dst: interpolatedVariances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:118,1
    - Dst: static_cast<QuantLib::Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:125,1
    - Dst: CTSMMCapletMaxHomogeneityCalibration::calibrate
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:126,1
    - Dst: CTSMMCapletMaxHomogeneityCalibration::swapPseudoRoots
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:129,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:133,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:134,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:135,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:135,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:131,1
    - Dst: CotSwapToFwdAdapter::CotSwapToFwdAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:137,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:139,1
    - Dst: FwdPeriodAdapter::FwdPeriodAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:141,1
    - Dst: FwdToCotSwapAdapter::FwdToCotSwapAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:145,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:148,1
    - Dst: ext::shared_ptr::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:156,1
    - Dst: ext::shared_ptr::evolution
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:156,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp:167,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 21
    argNames:
    - ' evolution'
    - ' corr'
    - "\n        displacedSwapVariances"
    - ' capletVols'
    - ' cs'
    - displacement
    - caplet0Swaption1Priority
    - numberOfFactors
    - period
    - max1dIterations
    - tolerance1d
    - maxUnperiodicIterations
    - toleranceUnperiodic
    - maxPeriodIterations
    - periodTolerance
    - ' totalSwaptionError'
    - ' swapCovariancePseudoRoots'
    - ' finalScales'
    - ' iterationsDone'
    - ' errorImprovement'
    - ' modelSwaptionVolsMatrix'
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - VolatilityInterpolationSpecifier
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - Real
    - Size
    - Size
    - Size
    - Real
    - Size
    - Real
    - Size
    - Real
    - Real
    - std::vector<Matrix>
    - std::vector<Real>
    - Size
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 177
    functionName: QuantLib::capletSwaptionPeriodicCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalperiodic.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - FwdPeriodAdapter::FwdPeriodAdapter
    - FwdToCotSwapAdapter::FwdToCotSwapAdapter
    - ext::shared_ptr::evolution
    - getNoBigRates
    - rbegin
    - PseudoRootFacade::PseudoRootFacade
    - std::vector<Spread>
    - totalVolatility
    - setScalingFactors
    - numberOfRates
    - rateTimes
    - originalVariances
    - CTSMMCapletMaxHomogeneityCalibration::calibrate
    - interpolatedVariances
    - static_cast<QuantLib::Integer>
    - CotSwapToFwdAdapter::CotSwapToFwdAdapter
    - Matrix
    - ext::shared_ptr::totalCovariance
    - ext::shared_ptr::numberOfSteps
    - QL_REQUIRE
    - setLastCapletVol
    - numberOfSteps
    - std::sqrt
    - CTSMMCapletMaxHomogeneityCalibration::swapPseudoRoots
    linkageType: ''
    returnType: Integer
    signature: "Integer capletSwaptionPeriodicCalibration(\n        const EvolutionDescription&
      evolution,\n        const ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n
      \       VolatilityInterpolationSpecifier&\n        displacedSwapVariances,\n
      \       const std::vector<Volatility>& capletVols,\n        const ext::shared_ptr<CurveState>&
      cs,\n        const Spread displacement,\n        Real caplet0Swaption1Priority,\n
      \       Size numberOfFactors,\n        Size period,\n        Size max1dIterations,\n
      \       Real tolerance1d,\n        Size maxUnperiodicIterations,\n        Real
      toleranceUnperiodic,\n        Size maxPeriodIterations,\n        Real periodTolerance,\n
      \       Real& , // deformationSize used to return information, not set yet\n
      \       Real& totalSwaptionError, // ?\n        std::vector<Matrix>& swapCovariancePseudoRoots,
      \ // the thing we really want the pseudo root for each time step\n        std::vector<Real>
      & finalScales,  //scalings used for matching\n        Size& iterationsDone,
      // number of  period iteratations done\n        Real& errorImprovement, // improvement
      in error for last iteration\n        Matrix& modelSwaptionVolsMatrix // the
      swaption vols calibrated to at each step of the iteration\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:43,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:43,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:44,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:45,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:45,1
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - evolution
    - corr
    - displacedSwapVariances
    - mktCapletVols
    - cs
    - displacement
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: QuantLib::CTSMMCapletCalibration::CTSMMCapletCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - QuantLib::CTSMMCapletCalibration::performChecks
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletCalibration::CTSMMCapletCalibration(\n        EvolutionDescription
      evolution,\n        ext::shared_ptr<PiecewiseConstantCorrelation> corr,\n        std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      > displacedSwapVariances,\n        std::vector<Volatility> mktCapletVols,\n
      \       ext::shared_ptr<CurveState> cs,\n        Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:53,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: "&\n    CTSMMCapletCalibration::timeDependentUnCalibratedSwaptionVols(Size
      i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - volatilities
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::timeDependentUnCalibratedSwaptionVols(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionName: "&\n    CTSMMCapletCalibration::timeDependentCalibratedSwaptionVols(Size
      i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::timeDependentCalibratedSwaptionVols(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:78,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:78,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:80,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:82,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:85,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:85,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:94,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:94,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:102,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:102,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:108,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:113,1
    - Dst: close
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:113,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - ' evolution'
    - '  corr'
    - "\n                                            displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 119
    functionName: QuantLib::CTSMMCapletCalibration::performChecks
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 5
    functionsReached:
    - close
    - back
    - std::setprecision
    - QuantLib::io::sequence
    - begin
    - end
    - numberOfRates
    - evolutionTimes
    - size
    - rateTimes
    - times
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletCalibration::performChecks(\n                    const
      EvolutionDescription& evolution,\n                    const PiecewiseConstantCorrelation&
      \ corr,\n                    const std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >&\n                                            displacedSwapVariances,\n                    const
      std::vector<Volatility>& mktCapletVols,\n                    const CurveState&
      cs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:139,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:143,1
    - Dst: calibrationImpl_
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:148,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:155,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:152,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:158,1
    - Dst: CotSwapToFwdAdapter::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:169,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:172,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:174,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:175,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:177,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:183,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:191,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:188,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:194,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:196,1
    - Dst: ext::shared_ptr::timeDependentVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 5
    argNames:
    - numberOfFactors
    - maxIterations
    - capletVolTolerance
    - innerSolvingMaxIterations
    - innerSolvingTolerance
    argTypes:
    - Natural
    - Natural
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 202
    functionName: QuantLib::CTSMMCapletCalibration::calibrate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - totalVolatility
    - CotSwapToFwdAdapter::totalCovariance
    - push_back
    - std::max
    - std::fabs
    - ext::shared_ptr::totalCovariance
    - std::sqrt
    - ext::shared_ptr::timeDependentVolatility
    - PseudoRootFacade::PseudoRootFacade
    - rateTimes
    - calibrationImpl_
    - clear
    linkageType: ''
    returnType: bool
    signature: "bool CTSMMCapletCalibration::calibrate(Natural numberOfFactors,\n\n
      \                                          Natural maxIterations,\n                                           Real
      capletVolTolerance,\n\n                                           Natural innerSolvingMaxIterations,\n
      \                                          Real innerSolvingTolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:43,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:43,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:44,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:45,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:45,1
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - evolution
    - corr
    - displacedSwapVariances
    - mktCapletVols
    - cs
    - displacement
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - std::vector<ext::shared_ptr<PiecewiseConstantVariance> >
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: QuantLib::CTSMMCapletCalibration::CTSMMCapletCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    - QuantLib::CTSMMCapletCalibration::performChecks
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletCalibration::CTSMMCapletCalibration(\n        EvolutionDescription
      evolution,\n        ext::shared_ptr<PiecewiseConstantCorrelation> corr,\n        std::vector<ext::shared_ptr<PiecewiseConstantVariance>
      > displacedSwapVariances,\n        std::vector<Volatility> mktCapletVols,\n
      \       ext::shared_ptr<CurveState> cs,\n        Spread displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:53,1
    - Dst: volatilities
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: "&\n    CTSMMCapletCalibration::timeDependentUnCalibratedSwaptionVols(Size
      i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - volatilities
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::timeDependentUnCalibratedSwaptionVols(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionName: "&\n    CTSMMCapletCalibration::timeDependentCalibratedSwaptionVols(Size
      i) const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: "std::vector<Volatility> &\n    CTSMMCapletCalibration::timeDependentCalibratedSwaptionVols(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:78,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:78,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:80,1
    - Dst: QuantLib::io::sequence
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:82,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:85,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:85,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:94,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:94,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:102,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:102,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:108,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:113,1
    - Dst: close
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:113,1
    - Dst: std::setprecision
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - ' evolution'
    - '  corr'
    - "\n                                            displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 119
    functionName: QuantLib::CTSMMCapletCalibration::performChecks
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 6
    functionsReached:
    - close
    - back
    - std::setprecision
    - QuantLib::io::sequence
    - begin
    - end
    - numberOfRates
    - evolutionTimes
    - size
    - rateTimes
    - times
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletCalibration::performChecks(\n                    const
      EvolutionDescription& evolution,\n                    const PiecewiseConstantCorrelation&
      \ corr,\n                    const std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >&\n                                            displacedSwapVariances,\n                    const
      std::vector<Volatility>& mktCapletVols,\n                    const CurveState&
      cs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: totalVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:139,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:143,1
    - Dst: calibrationImpl_
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:148,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:155,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:152,1
    - Dst: ext::shared_ptr::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:158,1
    - Dst: CotSwapToFwdAdapter::totalCovariance
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:169,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:172,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:174,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:175,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:177,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:183,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:191,1
    - Dst: PseudoRootFacade::PseudoRootFacade
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:188,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:194,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:196,1
    - Dst: ext::shared_ptr::timeDependentVolatility
      Src: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp:197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 5
    argNames:
    - numberOfFactors
    - maxIterations
    - capletVolTolerance
    - innerSolvingMaxIterations
    - innerSolvingTolerance
    argTypes:
    - Natural
    - Natural
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 202
    functionName: QuantLib::CTSMMCapletCalibration::calibrate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/ctsmmcapletcalibration.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - totalVolatility
    - CotSwapToFwdAdapter::totalCovariance
    - push_back
    - std::max
    - std::fabs
    - ext::shared_ptr::totalCovariance
    - std::sqrt
    - ext::shared_ptr::timeDependentVolatility
    - PseudoRootFacade::PseudoRootFacade
    - rateTimes
    - calibrationImpl_
    - clear
    linkageType: ''
    returnType: bool
    signature: "bool CTSMMCapletCalibration::calibrate(Natural numberOfFactors,\n\n
      \                                          Natural maxIterations,\n                                           Real
      capletVolTolerance,\n\n                                           Natural innerSolvingMaxIterations,\n
      \                                          Real innerSolvingTolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: "&\n    CTSMMCapletAlphaFormCalibration::alpha() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    CTSMMCapletAlphaFormCalibration::alpha()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: "&\n    CTSMMCapletAlphaFormCalibration::alpha() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalalphacalibration.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    CTSMMCapletAlphaFormCalibration::alpha()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:33,1
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:34,1
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:35,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:36,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:42,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:56,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:57,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:62,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:63,1
    - Dst: LMMCurveState::coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:64,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:66,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:71,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:73,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:75,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:75,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' fwdModel'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 79
    functionName: QuantLib::FwdToCotSwapAdapter::FwdToCotSwapAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - back
    - evolution
    - QuantLib::FwdToCotSwapAdapter::numberOfFactors
    - begin
    - row_end
    - LMMCurveState::coterminalSwapRates
    - std::find
    - size
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - Matrix
    - pseudoRoot
    - end
    - row_begin
    - QL_REQUIRE
    - initialRates
    - QuantLib::io::ordinal
    - QuantLib::FwdToCotSwapAdapter::numberOfSteps
    - QuantLib::FwdToCotSwapAdapter::numberOfRates
    - LMMCurveState::setOnForwardRates
    linkageType: ''
    returnType: void
    signature: "void FwdToCotSwapAdapter::FwdToCotSwapAdapter(\n                               const
      ext::shared_ptr<MarketModel>& fwdModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' forwardFactory'
    argTypes:
    - ext::shared_ptr<MarketModelFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::FwdToCotSwapAdapterFactory::FwdToCotSwapAdapterFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FwdToCotSwapAdapterFactory::FwdToCotSwapAdapterFactory(\n                  const
      ext::shared_ptr<MarketModelFactory>& forwardFactory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapterFactory::create
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:93,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:94,1
    - Dst: FwdToCotSwapAdapter::FwdToCotSwapAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::FwdToCotSwapAdapterFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 1
    functionsReached:
    - FwdToCotSwapAdapter::FwdToCotSwapAdapter
    - QuantLib::FwdToCotSwapAdapterFactory::create
    - ext::shared_ptr<MarketModel>
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> FwdToCotSwapAdapterFactory::create(\n
      \                                       const EvolutionDescription& evolution,\n
      \                                       Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::FwdToCotSwapAdapterFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FwdToCotSwapAdapterFactory::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:33,1
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:34,1
    - Dst: QuantLib::FwdToCotSwapAdapter::numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:35,1
    - Dst: Matrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:36,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:42,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:54,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:56,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:57,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:62,1
    - Dst: LMMCurveState::setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:63,1
    - Dst: LMMCurveState::coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:64,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:66,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:71,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:73,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:75,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:75,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' fwdModel'
    argTypes:
    - ext::shared_ptr<MarketModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 79
    functionName: QuantLib::FwdToCotSwapAdapter::FwdToCotSwapAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - displacements
    - back
    - evolution
    - QuantLib::FwdToCotSwapAdapter::numberOfFactors
    - begin
    - row_end
    - LMMCurveState::coterminalSwapRates
    - std::find
    - size
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - Matrix
    - pseudoRoot
    - end
    - row_begin
    - QL_REQUIRE
    - initialRates
    - QuantLib::io::ordinal
    - QuantLib::FwdToCotSwapAdapter::numberOfSteps
    - QuantLib::FwdToCotSwapAdapter::numberOfRates
    - LMMCurveState::setOnForwardRates
    linkageType: ''
    returnType: void
    signature: "void FwdToCotSwapAdapter::FwdToCotSwapAdapter(\n                               const
      ext::shared_ptr<MarketModel>& fwdModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' forwardFactory'
    argTypes:
    - ext::shared_ptr<MarketModelFactory>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: QuantLib::FwdToCotSwapAdapterFactory::FwdToCotSwapAdapterFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FwdToCotSwapAdapterFactory::FwdToCotSwapAdapterFactory(\n                  const
      ext::shared_ptr<MarketModelFactory>& forwardFactory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FwdToCotSwapAdapterFactory::create
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:93,1
    - Dst: ext::shared_ptr<MarketModel>
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:94,1
    - Dst: FwdToCotSwapAdapter::FwdToCotSwapAdapter
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' evolution'
    - numberOfFactors
    argTypes:
    - EvolutionDescription
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: QuantLib::FwdToCotSwapAdapterFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 2
    functionsReached:
    - FwdToCotSwapAdapter::FwdToCotSwapAdapter
    - QuantLib::FwdToCotSwapAdapterFactory::create
    - ext::shared_ptr<MarketModel>
    linkageType: ''
    returnType: ext::shared_ptr<MarketModel>
    signature: "ext::shared_ptr<MarketModel> FwdToCotSwapAdapterFactory::create(\n
      \                                       const EvolutionDescription& evolution,\n
      \                                       Size numberOfFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::FwdToCotSwapAdapterFactory::update
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/fwdtocotswapadapter.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void FwdToCotSwapAdapterFactory::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' evolution'
    - ' corr'
    - "\n                                                displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - ' alpha'
    - lowestRoot
    - useFullApprox
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - "std::vector<ext::shared_ptr<\n                                        PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - std::vector<Real>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 49
    functionName: QuantLib::CTSMMCapletOriginalCalibration::CTSMMCapletOriginalCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletOriginalCalibration::CTSMMCapletOriginalCalibration(\n
      \                           const EvolutionDescription& evolution,\n                            const
      ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n                            const
      std::vector<ext::shared_ptr<\n                                        PiecewiseConstantVariance>
      >&\n                                                displacedSwapVariances,\n
      \                           const std::vector<Volatility>& mktCapletVols,\n
      \                           const ext::shared_ptr<CurveState>& cs,\n                            Spread
      displacement,\n                            const std::vector<Real>& alpha,\n
      \                           bool lowestRoot,\n                            bool
      useFullApprox)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:71,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:74,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:75,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:90,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:91,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:92,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:92,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:97,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:98,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:108,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:112,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:137,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:140,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:155,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:157,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:159,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:174,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:186,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:191,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:263,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:269,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:292,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:295,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:303,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:313,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:317,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:317,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:320,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:322,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:322,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:325,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 106
    argCount: 11
    argNames:
    - ' evolution'
    - ' corr'
    - "\n                                    displacedSwapVariances"
    - ' capletVols'
    - ' cs'
    - displacement
    - ' alpha'
    - lowestRoot
    - useFullAprox
    - numberOfFactors
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - CurveState
    - Spread
    - std::vector<Real>
    - bool
    - bool
    - Size
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 330
    functionName: QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - times
    - rankReducedSqrt
    - QL_ENSURE
    - inverse
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - transpose
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - columns
    - std::sqrt
    - variances
    - evolutionTimes
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletOriginalCalibration::calibrationFunction(\n                            const
      EvolutionDescription& evolution,\n                            const PiecewiseConstantCorrelation&
      corr,\n                            const std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >&\n                                    displacedSwapVariances,\n                            const
      std::vector<Volatility>& capletVols,\n                            const CurveState&
      cs,\n                            Spread displacement,\n\n                            const
      std::vector<Real>& alpha,\n                            bool lowestRoot,\n                            bool
      useFullAprox,\n\n                            Size numberOfFactors,\n                            //Size
      maxIterations,\n                            //Real tolerance,\n\n                            std::vector<Matrix>&
      swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - numberOfFactors
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 332
    functionDepth: 3
    functionLinenumber: 332
    functionLinenumberEnd: 352
    functionName: QuantLib::CTSMMCapletOriginalCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletOriginalCalibration::calibrationImpl_(\n                                Natural
      numberOfFactors,\n                                Natural ,\n                                Real
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' evolution'
    - ' corr'
    - "\n                                                displacedSwapVariances"
    - ' mktCapletVols'
    - ' cs'
    - displacement
    - ' alpha'
    - lowestRoot
    - useFullApprox
    argTypes:
    - EvolutionDescription
    - ext::shared_ptr<PiecewiseConstantCorrelation>
    - "std::vector<ext::shared_ptr<\n                                        PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - ext::shared_ptr<CurveState>
    - Spread
    - std::vector<Real>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 49
    functionName: QuantLib::CTSMMCapletOriginalCalibration::CTSMMCapletOriginalCalibration
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CTSMMCapletOriginalCalibration::CTSMMCapletOriginalCalibration(\n
      \                           const EvolutionDescription& evolution,\n                            const
      ext::shared_ptr<PiecewiseConstantCorrelation>& corr,\n                            const
      std::vector<ext::shared_ptr<\n                                        PiecewiseConstantVariance>
      >&\n                                                displacedSwapVariances,\n
      \                           const std::vector<Volatility>& mktCapletVols,\n
      \                           const ext::shared_ptr<CurveState>& cs,\n                            Spread
      displacement,\n                            const std::vector<Real>& alpha,\n
      \                           bool lowestRoot,\n                            bool
      useFullApprox)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletCalibration::performChecks
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:71,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:74,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:75,1
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:82,1
    - Dst: times
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:90,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:91,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:92,1
    - Dst: correlation
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:92,1
    - Dst: QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:97,1
    - Dst: inverse
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:98,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:108,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:112,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:137,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:140,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:155,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:157,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:159,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:165,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:174,1
    - Dst: variances
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:186,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:191,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:263,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:269,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:292,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:295,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:303,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:313,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:317,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:317,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:320,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:322,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:322,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:325,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 106
    argCount: 11
    argNames:
    - ' evolution'
    - ' corr'
    - "\n                                    displacedSwapVariances"
    - ' capletVols'
    - ' cs'
    - displacement
    - ' alpha'
    - lowestRoot
    - useFullAprox
    - numberOfFactors
    - ' swapCovariancePseudoRoots'
    argTypes:
    - EvolutionDescription
    - PiecewiseConstantCorrelation
    - "std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >"
    - std::vector<Volatility>
    - CurveState
    - Spread
    - std::vector<Real>
    - bool
    - bool
    - Size
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 330
    functionName: QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 1
    functionsReached:
    - static_cast<Integer>
    - times
    - rankReducedSqrt
    - QL_ENSURE
    - inverse
    - numberOfRates
    - rateTimes
    - QuantLib::SwapForwardMappings::coterminalSwapZedMatrix
    - correlation
    - rows
    - transpose
    - std::vector::size
    - QL_REQUIRE
    - numberOfSteps
    - resize
    - QuantLib::CTSMMCapletCalibration::performChecks
    - columns
    - std::sqrt
    - variances
    - evolutionTimes
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletOriginalCalibration::calibrationFunction(\n                            const
      EvolutionDescription& evolution,\n                            const PiecewiseConstantCorrelation&
      corr,\n                            const std::vector<ext::shared_ptr<\n                                PiecewiseConstantVariance>
      >&\n                                    displacedSwapVariances,\n                            const
      std::vector<Volatility>& capletVols,\n                            const CurveState&
      cs,\n                            Spread displacement,\n\n                            const
      std::vector<Real>& alpha,\n                            bool lowestRoot,\n                            bool
      useFullAprox,\n\n                            Size numberOfFactors,\n                            //Size
      maxIterations,\n                            //Real tolerance,\n\n                            std::vector<Matrix>&
      swapCovariancePseudoRoots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
      Src: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - numberOfFactors
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 332
    functionDepth: 3
    functionLinenumber: 332
    functionLinenumberEnd: 352
    functionName: QuantLib::CTSMMCapletOriginalCalibration::calibrationImpl_
    functionSourceFile: /src/quantlib/ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CTSMMCapletOriginalCalibration::calibrationFunction
    linkageType: ''
    returnType: Natural
    signature: "Natural CTSMMCapletOriginalCalibration::calibrationImpl_(\n                                Natural
      numberOfFactors,\n                                Natural ,\n                                Real
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::fillByFactor
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByFactor(std::vector<std::vector<Size> >& M,\n                          Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::fillByStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByStep(std::vector<std::vector<Size> >& M,\n                        Size
      factors, Size steps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: QuantLib::fillByDiagonal
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByDiagonal(std::vector<std::vector<Size> >& M,\n                            Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::fillByFactor
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByFactor(std::vector<std::vector<Size> >& M,\n                          Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::fillByStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByStep(std::vector<std::vector<Size> >& M,\n                        Size
      factors, Size steps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: QuantLib::fillByDiagonal
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByDiagonal(std::vector<std::vector<Size> >& M,\n                            Size
      factors, Size steps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:114,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:115,1
    - Dst: fillByFactor
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:119,1
    - Dst: fillByStep
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:122,1
    - Dst: fillByDiagonal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - factors
    - steps
    - ordering
    argTypes:
    - Size
    - Size
    - Ordering
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 130
    functionName: QuantLib::SobolBrownianGeneratorBase::SobolBrownianGeneratorBase
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - fillByDiagonal
    - fillByFactor
    - std::vector<Size>
    - std::vector<Real>
    - QL_FAIL
    - fillByStep
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGeneratorBase::SobolBrownianGeneratorBase(Size factors,\n
      \                                                  Size steps,\n                                                   Ordering
      ordering)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:134,1
    - Dst: QuantLib::SobolBrownianGeneratorBase::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:137,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:137,1
    - Dst: value::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:138,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:139,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:140,1
    - Dst: value::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:142,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 147
    functionName: QuantLib::SobolBrownianGeneratorBase::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - value::begin
    - begin
    - nextSequence
    - boost::make_permutation_iterator
    - end
    - QuantLib::SobolBrownianGeneratorBase::transform
    linkageType: ''
    returnType: Real
    signature: Real SobolBrownianGeneratorBase::nextPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: "& \n    SobolBrownianGeneratorBase::orderedIndices() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Size> >
    signature: "std::vector<std::vector<Size> > & \n    SobolBrownianGeneratorBase::orderedIndices()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:158,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:162,1
    - Dst: QuantLib::SobolBrownianGeneratorBase::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:173,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:173,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:175,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:176,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:177,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:179,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' variates'
    argTypes:
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 184
    functionName: QuantLib::SobolBrownianGeneratorBase::transform
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - std::vector::begin
    - begin
    - boost::make_permutation_iterator
    - QuantLib::SobolBrownianGeneratorBase::transform
    - size
    - end
    - front
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: "std::vector<std::vector<Real> > SobolBrownianGeneratorBase::transform(\n
      \                           const std::vector<std::vector<Real> >& variates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' output'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: QuantLib::SobolBrownianGeneratorBase::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SobolBrownianGeneratorBase::nextStep(std::vector<Real>& output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: QuantLib::SobolBrownianGeneratorBase::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianGeneratorBase::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: QuantLib::SobolBrownianGeneratorBase::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianGeneratorBase::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SobolRsg
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:207,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - integers
    argTypes:
    - Size
    - Size
    - Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::SobolBrownianGenerator::SobolBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - SobolRsg
    - InverseCumulativeNormal
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGenerator::SobolBrownianGenerator(Size factors,\n
      \                                                  Size steps,\n                                                   Ordering
      ordering,\n                                                   unsigned long
      seed,\n                                                   SobolRsg::DirectionIntegers
      integers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: '& SobolBrownianGenerator::nextSequence()'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & SobolBrownianGenerator::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ordering
    - seed
    - integers
    argTypes:
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::SobolBrownianGeneratorFactory::SobolBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGeneratorFactory::SobolBrownianGeneratorFactory(\n
      \                                   SobolBrownianGenerator::Ordering ordering,\n
      \                                   unsigned long seed,\n                                    SobolRsg::DirectionIntegers
      integers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:221,1
    - Dst: SobolBrownianGenerator::SobolBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: QuantLib::SobolBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - SobolBrownianGenerator::SobolBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> SobolBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Burley2020SobolRsg
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:234,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - integers
    - scrambleSeed
    argTypes:
    - Size
    - Size
    - Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 235
    functionName: QuantLib::Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - Burley2020SobolRsg
    - InverseCumulativeNormal
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator(\n
      \       Size factors,\n        Size steps,\n        Ordering ordering,\n        unsigned
      long seed,\n        SobolRsg::DirectionIntegers integers,\n        unsigned
      long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: '& Burley2020SobolBrownianGenerator::nextSequence()'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: Burley2020SobolRsg::sample_type
    signature: Burley2020SobolRsg::sample_type & Burley2020SobolBrownianGenerator::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ordering
    - seed
    - integers
    - scrambleSeed
    argTypes:
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 246
    functionName: QuantLib::Burley2020SobolBrownianGeneratorFactory::Burley2020SobolBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianGeneratorFactory::Burley2020SobolBrownianGeneratorFactory(\n
      \       SobolBrownianGenerator::Ordering ordering,\n        unsigned long seed,\n
      \       SobolRsg::DirectionIntegers integers,\n        unsigned long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:250,1
    - Dst: Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 252
    functionName: QuantLib::Burley2020SobolBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> Burley2020SobolBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::fillByFactor
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByFactor(std::vector<std::vector<Size> >& M,\n                          Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::fillByStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByStep(std::vector<std::vector<Size> >& M,\n                        Size
      factors, Size steps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: QuantLib::fillByDiagonal
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByDiagonal(std::vector<std::vector<Size> >& M,\n                            Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::fillByFactor
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByFactor(std::vector<std::vector<Size> >& M,\n                          Size
      factors, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::fillByStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByStep(std::vector<std::vector<Size> >& M,\n                        Size
      factors, Size steps)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ' M'
    - factors
    - steps
    argTypes:
    - std::vector<std::vector<Size> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: QuantLib::fillByDiagonal
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fillByDiagonal(std::vector<std::vector<Size> >& M,\n                            Size
      factors, Size steps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:114,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:115,1
    - Dst: fillByFactor
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:119,1
    - Dst: fillByStep
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:122,1
    - Dst: fillByDiagonal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - factors
    - steps
    - ordering
    argTypes:
    - Size
    - Size
    - Ordering
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 130
    functionName: QuantLib::SobolBrownianGeneratorBase::SobolBrownianGeneratorBase
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - fillByDiagonal
    - fillByFactor
    - std::vector<Size>
    - std::vector<Real>
    - QL_FAIL
    - fillByStep
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGeneratorBase::SobolBrownianGeneratorBase(Size factors,\n
      \                                                  Size steps,\n                                                   Ordering
      ordering)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:134,1
    - Dst: QuantLib::SobolBrownianGeneratorBase::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:137,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:137,1
    - Dst: value::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:138,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:139,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:140,1
    - Dst: value::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:141,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:142,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 147
    functionName: QuantLib::SobolBrownianGeneratorBase::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - value::begin
    - begin
    - nextSequence
    - boost::make_permutation_iterator
    - end
    - QuantLib::SobolBrownianGeneratorBase::transform
    linkageType: ''
    returnType: Real
    signature: Real SobolBrownianGeneratorBase::nextPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: "& \n    SobolBrownianGeneratorBase::orderedIndices() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Size> >
    signature: "std::vector<std::vector<Size> > & \n    SobolBrownianGeneratorBase::orderedIndices()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:158,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:162,1
    - Dst: QuantLib::SobolBrownianGeneratorBase::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:173,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:173,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:175,1
    - Dst: boost::make_permutation_iterator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:176,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:177,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:179,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' variates'
    argTypes:
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 184
    functionName: QuantLib::SobolBrownianGeneratorBase::transform
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    - std::vector::begin
    - begin
    - boost::make_permutation_iterator
    - QuantLib::SobolBrownianGeneratorBase::transform
    - size
    - end
    - front
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: "std::vector<std::vector<Real> > SobolBrownianGeneratorBase::transform(\n
      \                           const std::vector<std::vector<Real> >& variates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' output'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: QuantLib::SobolBrownianGeneratorBase::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SobolBrownianGeneratorBase::nextStep(std::vector<Real>& output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: QuantLib::SobolBrownianGeneratorBase::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianGeneratorBase::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 199
    functionName: QuantLib::SobolBrownianGeneratorBase::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianGeneratorBase::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SobolRsg
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:207,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - integers
    argTypes:
    - Size
    - Size
    - Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::SobolBrownianGenerator::SobolBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - SobolRsg
    - InverseCumulativeNormal
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGenerator::SobolBrownianGenerator(Size factors,\n
      \                                                  Size steps,\n                                                   Ordering
      ordering,\n                                                   unsigned long
      seed,\n                                                   SobolRsg::DirectionIntegers
      integers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: '& SobolBrownianGenerator::nextSequence()'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & SobolBrownianGenerator::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ordering
    - seed
    - integers
    argTypes:
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::SobolBrownianGeneratorFactory::SobolBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianGeneratorFactory::SobolBrownianGeneratorFactory(\n
      \                                   SobolBrownianGenerator::Ordering ordering,\n
      \                                   unsigned long seed,\n                                    SobolRsg::DirectionIntegers
      integers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:221,1
    - Dst: SobolBrownianGenerator::SobolBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: QuantLib::SobolBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - SobolBrownianGenerator::SobolBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> SobolBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Burley2020SobolRsg
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:234,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - integers
    - scrambleSeed
    argTypes:
    - Size
    - Size
    - Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 235
    functionName: QuantLib::Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - Burley2020SobolRsg
    - InverseCumulativeNormal
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator(\n
      \       Size factors,\n        Size steps,\n        Ordering ordering,\n        unsigned
      long seed,\n        SobolRsg::DirectionIntegers integers,\n        unsigned
      long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: '& Burley2020SobolBrownianGenerator::nextSequence()'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: Burley2020SobolRsg::sample_type
    signature: Burley2020SobolRsg::sample_type & Burley2020SobolBrownianGenerator::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ordering
    - seed
    - integers
    - scrambleSeed
    argTypes:
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 246
    functionName: QuantLib::Burley2020SobolBrownianGeneratorFactory::Burley2020SobolBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianGeneratorFactory::Burley2020SobolBrownianGeneratorFactory(\n
      \       SobolBrownianGenerator::Ordering ordering,\n        unsigned long seed,\n
      \       SobolRsg::DirectionIntegers integers,\n        unsigned long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:250,1
    - Dst: Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 252
    functionName: QuantLib::Burley2020SobolBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/sobolbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - Burley2020SobolBrownianGenerator::Burley2020SobolBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> Burley2020SobolBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MersenneTwisterUniformRng
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - factors
    - steps
    - seed
    argTypes:
    - Size
    - Size
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: QuantLib::MTBrownianGenerator::MTBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - MersenneTwisterUniformRng
    linkageType: ''
    returnType: void
    signature: void MTBrownianGenerator::MTBrownianGenerator(Size factors, Size steps,
      unsigned long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:32,1
    - Dst: lastSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:35,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' output'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::MTBrownianGenerator::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - begin
    - size
    - lastSequence
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MTBrownianGenerator::nextStep(std::vector<Real>& output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::MTBrownianGenerator::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: Real
    signature: Real MTBrownianGenerator::nextPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::MTBrownianGenerator::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MTBrownianGenerator::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::MTBrownianGenerator::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MTBrownianGenerator::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::MTBrownianGeneratorFactory::MTBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MTBrownianGeneratorFactory::MTBrownianGeneratorFactory(unsigned
      long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:64,1
    - Dst: MTBrownianGenerator::MTBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::MTBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - MTBrownianGenerator::MTBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> MTBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MersenneTwisterUniformRng
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - factors
    - steps
    - seed
    argTypes:
    - Size
    - Size
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: QuantLib::MTBrownianGenerator::MTBrownianGenerator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - MersenneTwisterUniformRng
    linkageType: ''
    returnType: void
    signature: void MTBrownianGenerator::MTBrownianGenerator(Size factors, Size steps,
      unsigned long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:32,1
    - Dst: lastSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:35,1
    - Dst: std::transform
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:38,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' output'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::MTBrownianGenerator::nextStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - begin
    - size
    - lastSequence
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MTBrownianGenerator::nextStep(std::vector<Real>& output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::MTBrownianGenerator::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: Real
    signature: Real MTBrownianGenerator::nextPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::MTBrownianGenerator::numberOfFactors
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MTBrownianGenerator::numberOfFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::MTBrownianGenerator::numberOfSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MTBrownianGenerator::numberOfSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::MTBrownianGeneratorFactory::MTBrownianGeneratorFactory
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MTBrownianGeneratorFactory::MTBrownianGeneratorFactory(unsigned
      long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<BrownianGenerator>
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:64,1
    - Dst: MTBrownianGenerator::MTBrownianGenerator
      Src: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - factors
    - steps
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::MTBrownianGeneratorFactory::create
    functionSourceFile: /src/quantlib/ql/models/marketmodels/browniangenerators/mtbrowniangenerator.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<BrownianGenerator>
    - MTBrownianGenerator::MTBrownianGenerator
    linkageType: ''
    returnType: ext::shared_ptr<BrownianGenerator>
    signature: ext::shared_ptr<BrownianGenerator> MTBrownianGeneratorFactory::create(Size
      factors, Size steps) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::MarketModelVolProcess::MarketModelVolProcess
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/marketmodelvolprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelVolProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~MarketModelVolProcess()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/marketmodelvolprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelVolProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::MarketModelVolProcess::MarketModelVolProcess
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/marketmodelvolprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelVolProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~MarketModelVolProcess()
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/marketmodelvolprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelVolProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:36,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:37,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:38,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:39,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:44,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: isInTerminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:51,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:58,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:61,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:61,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:63,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:69,1
    - Dst: QuantLib::LogNormalFwdRateiBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalFwdRateiBalland::LogNormalFwdRateiBalland
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateiBalland::setForwards
    - initialRates
    - displacements
    - evolution
    - isInTerminalMeasure
    - create
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateiBalland::LogNormalFwdRateiBalland(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalFwdRateiBalland::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateiBalland::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:84,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::LogNormalFwdRateiBalland::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateiBalland::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateiBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:90,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRateiBalland::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateiBalland::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateiBalland::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:96,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::LogNormalFwdRateiBalland::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateiBalland::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:102,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:103,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:104,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:117,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:117,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:118,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:119,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:119,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:132,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:135,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:135,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:141,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 146
    functionName: QuantLib::LogNormalFwdRateiBalland::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - std::exp
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - covariance
    - std::sqrt
    - row_end
    - row_begin
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateiBalland::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::LogNormalFwdRateiBalland::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateiBalland::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: '& LogNormalFwdRateiBalland::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateiBalland::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:36,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:37,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:38,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:39,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:44,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: isInTerminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:51,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:58,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:61,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:61,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:63,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:69,1
    - Dst: QuantLib::LogNormalFwdRateiBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalFwdRateiBalland::LogNormalFwdRateiBalland
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateiBalland::setForwards
    - initialRates
    - displacements
    - evolution
    - isInTerminalMeasure
    - create
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateiBalland::LogNormalFwdRateiBalland(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalFwdRateiBalland::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateiBalland::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:84,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::LogNormalFwdRateiBalland::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateiBalland::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateiBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:90,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRateiBalland::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateiBalland::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateiBalland::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:96,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::LogNormalFwdRateiBalland::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateiBalland::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:102,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:103,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:104,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:116,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:117,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:117,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:118,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:119,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:119,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:132,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:135,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:135,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp:141,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 146
    functionName: QuantLib::LogNormalFwdRateiBalland::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - std::exp
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - covariance
    - std::sqrt
    - row_end
    - row_begin
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateiBalland::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::LogNormalFwdRateiBalland::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateiBalland::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: '& LogNormalFwdRateiBalland::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateiballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateiBalland::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:39,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:41,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:47,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:51,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:58,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:61,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:61,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:68,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:73,1
    - Dst: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:76,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 77
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::LogNormalFwdRateEulerConstrained
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::LogNormalFwdRateEulerConstrained(\n
      \                       const ext::shared_ptr<MarketModel>& marketModel,\n                        const
      BrownianGeneratorFactory& factory,\n                        const std::vector<Size>&
      numeraires,\n                        Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& LogNormalFwdRateEulerConstrained::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateEulerConstrained::numeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:85,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:88,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEulerConstrained::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:94,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEulerConstrained::setInitialState(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:108,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:114,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - ' startIndexOfSwapRate'
    - ' endIndexOfSwapRate'
    argTypes:
    - std::vector<Size>
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 129
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setConstraintType
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - pseudoRoot
    - size
    - reserve
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::setConstraintType(\n        const
      std::vector<Size>& startIndexOfSwapRate,\n        const std::vector<Size>& endIndexOfSwapRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:145,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' rateConstraints'
    - ' isConstraintActive'
    argTypes:
    - std::vector<Rate>
    - std::valarray<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setThisConstraint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::setThisConstraint(\n                                const
      std::vector<Rate>& rateConstraints,\n                                const std::valarray<bool>&
      isConstraintActive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:153,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 155
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEulerConstrained::startNewPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:163,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:166,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:170,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:171,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:179,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:205,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:216,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:219,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 224
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - CumulativeNormalDistribution::derivative
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEulerConstrained::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateEulerConstrained::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionName: '& LogNormalFwdRateEulerConstrained::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateEulerConstrained::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:39,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:41,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:47,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:51,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:53,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:58,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:61,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:61,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:68,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:73,1
    - Dst: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:76,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 77
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::LogNormalFwdRateEulerConstrained
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::LogNormalFwdRateEulerConstrained(\n
      \                       const ext::shared_ptr<MarketModel>& marketModel,\n                        const
      BrownianGeneratorFactory& factory,\n                        const std::vector<Size>&
      numeraires,\n                        Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: '& LogNormalFwdRateEulerConstrained::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateEulerConstrained::numeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:85,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:88,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEulerConstrained::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateEulerConstrained::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:94,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateEulerConstrained::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEulerConstrained::setInitialState(const CurveState&
      cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:103,1
    - Dst: clear
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:108,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:114,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - ' startIndexOfSwapRate'
    - ' endIndexOfSwapRate'
    argTypes:
    - std::vector<Size>
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 129
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setConstraintType
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - pseudoRoot
    - size
    - reserve
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::setConstraintType(\n        const
      std::vector<Size>& startIndexOfSwapRate,\n        const std::vector<Size>& endIndexOfSwapRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:138,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:142,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:145,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' rateConstraints'
    - ' isConstraintActive'
    argTypes:
    - std::vector<Rate>
    - std::valarray<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::setThisConstraint
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEulerConstrained::setThisConstraint(\n                                const
      std::vector<Rate>& rateConstraints,\n                                const std::valarray<bool>&
      isConstraintActive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:153,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 155
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEulerConstrained::startNewPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:163,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:165,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:166,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:170,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:171,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:179,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:205,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:216,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp:219,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 224
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - CumulativeNormalDistribution::derivative
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEulerConstrained::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::LogNormalFwdRateEulerConstrained::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateEulerConstrained::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionName: '& LogNormalFwdRateEulerConstrained::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeulerconstrained.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateEulerConstrained::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:39,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:41,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:48,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:52,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:54,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:58,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:59,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:62,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:62,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:68,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:71,1
    - Dst: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:74,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spanningForwards
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - Size
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 75
    functionName: QuantLib::LogNormalCmSwapRatePc::LogNormalCmSwapRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalCmSwapRatePc::LogNormalCmSwapRatePc(\n                           const
      Size spanningForwards,\n                           const ext::shared_ptr<MarketModel>&
      marketModel,\n                           const BrownianGeneratorFactory& factory,\n
      \                          const std::vector<Size>& numeraires,\n                           Size
      initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& LogNormalCmSwapRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalCmSwapRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:86,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:88,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' swapRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 1
    functionsReached:
    - std::log
    - setOnCMSwapRates
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalCmSwapRatePc::setCMSwapRates(const std::vector<Real>&
      swapRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CMSwapCurveState*>
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:93,1
    - Dst: auto*::cmSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:94,1
    - Dst: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::LogNormalCmSwapRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CMSwapCurveState*>
    - QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    - auto*::cmSwapRates
    linkageType: ''
    returnType: void
    signature: void LogNormalCmSwapRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:101,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: QuantLib::LogNormalCmSwapRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCmSwapRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:111,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:114,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:117,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:118,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:126,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:127,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:131,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:139,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 149
    functionName: QuantLib::LogNormalCmSwapRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - begin
    - Real
    - setOnCMSwapRates
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCmSwapRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::LogNormalCmSwapRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalCmSwapRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: '& LogNormalCmSwapRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalCmSwapRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:39,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:41,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:42,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:43,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:48,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:52,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:54,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:58,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:59,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:62,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:62,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:67,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:68,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:68,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:71,1
    - Dst: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:74,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spanningForwards
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - Size
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 75
    functionName: QuantLib::LogNormalCmSwapRatePc::LogNormalCmSwapRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalCmSwapRatePc::LogNormalCmSwapRatePc(\n                           const
      Size spanningForwards,\n                           const ext::shared_ptr<MarketModel>&
      marketModel,\n                           const BrownianGeneratorFactory& factory,\n
      \                          const std::vector<Size>& numeraires,\n                           Size
      initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& LogNormalCmSwapRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalCmSwapRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:86,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:88,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' swapRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 3
    functionsReached:
    - std::log
    - setOnCMSwapRates
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalCmSwapRatePc::setCMSwapRates(const std::vector<Real>&
      swapRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CMSwapCurveState*>
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:93,1
    - Dst: auto*::cmSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:94,1
    - Dst: QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::LogNormalCmSwapRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const CMSwapCurveState*>
    - QuantLib::LogNormalCmSwapRatePc::setCMSwapRates
    - auto*::cmSwapRates
    linkageType: ''
    returnType: void
    signature: void LogNormalCmSwapRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:101,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: QuantLib::LogNormalCmSwapRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCmSwapRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:111,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:114,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:117,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:118,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:126,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:127,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:131,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:139,1
    - Dst: setOnCMSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 149
    functionName: QuantLib::LogNormalCmSwapRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - begin
    - Real
    - setOnCMSwapRates
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCmSwapRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::LogNormalCmSwapRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalCmSwapRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: '& LogNormalCmSwapRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcmswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalCmSwapRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: '& browniansThisStep() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & browniansThisStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: '& browniansThisStep() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & browniansThisStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:46,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:47,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: isInTerminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:53,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:55,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:59,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:60,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:62,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:63,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:63,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:71,1
    - Dst: QuantLib::LogNormalFwdRateIpc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:74,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 75
    functionName: QuantLib::LogNormalFwdRateIpc::LogNormalFwdRateIpc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - isInTerminalMeasure
    - create
    - QuantLib::LogNormalFwdRateIpc::setForwards
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateIpc::LogNormalFwdRateIpc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& LogNormalFwdRateIpc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateIpc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::LogNormalFwdRateIpc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateIpc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateIpc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:92,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::LogNormalFwdRateIpc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRateIpc::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateIpc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:98,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::LogNormalFwdRateIpc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateIpc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: computePlain
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:111,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:114,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:115,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:116,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:130,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 141
    functionName: QuantLib::LogNormalFwdRateIpc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - covariance
    - row_begin
    - row_end
    - end
    - computePlain
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateIpc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::LogNormalFwdRateIpc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateIpc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& LogNormalFwdRateIpc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateIpc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:46,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:47,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:49,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: isInTerminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:50,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:53,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:55,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:59,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:60,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:62,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:63,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:63,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:71,1
    - Dst: QuantLib::LogNormalFwdRateIpc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:74,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 75
    functionName: QuantLib::LogNormalFwdRateIpc::LogNormalFwdRateIpc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - isInTerminalMeasure
    - create
    - QuantLib::LogNormalFwdRateIpc::setForwards
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateIpc::LogNormalFwdRateIpc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: '& LogNormalFwdRateIpc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateIpc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::LogNormalFwdRateIpc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateIpc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateIpc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:92,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::LogNormalFwdRateIpc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRateIpc::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateIpc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:98,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::LogNormalFwdRateIpc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateIpc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: computePlain
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:111,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:114,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:115,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:116,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:130,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 141
    functionName: QuantLib::LogNormalFwdRateIpc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - covariance
    - row_begin
    - row_end
    - end
    - computePlain
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateIpc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::LogNormalFwdRateIpc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateIpc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& LogNormalFwdRateIpc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateipc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateIpc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:40,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:49,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:55,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:57,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:58,1
    - Dst: QuantLib::NormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:69,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 70
    functionName: QuantLib::NormalFwdRatePc::NormalFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - evolution
    - create
    - pseudoRoot
    - emplace_back
    - QuantLib::NormalFwdRatePc::setForwards
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void NormalFwdRatePc::NormalFwdRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& NormalFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & NormalFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:78,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::NormalFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 1
    functionsReached:
    - size
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NormalFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:85,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::NormalFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::NormalFwdRatePc::setForwards
    linkageType: ''
    returnType: void
    signature: void NormalFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:91,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::NormalFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real NormalFwdRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:101,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:104,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:108,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:109,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:116,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:116,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:120,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 133
    functionName: QuantLib::NormalFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real NormalFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::NormalFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NormalFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: '& NormalFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & NormalFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:40,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:49,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:55,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:57,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:58,1
    - Dst: QuantLib::NormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:69,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 70
    functionName: QuantLib::NormalFwdRatePc::NormalFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - evolution
    - create
    - pseudoRoot
    - emplace_back
    - QuantLib::NormalFwdRatePc::setForwards
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void NormalFwdRatePc::NormalFwdRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& NormalFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & NormalFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:78,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::NormalFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 3
    functionsReached:
    - size
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NormalFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:85,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::NormalFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::NormalFwdRatePc::setForwards
    linkageType: ''
    returnType: void
    signature: void NormalFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:91,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::NormalFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real NormalFwdRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:101,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:104,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:108,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:109,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:116,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:116,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:120,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 133
    functionName: QuantLib::NormalFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real NormalFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::NormalFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NormalFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: '& NormalFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/normalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & NormalFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:60,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:69,1
    - Dst: QuantLib::LogNormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalFwdRatePc::LogNormalFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - QuantLib::LogNormalFwdRatePc::setForwards
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRatePc::LogNormalFwdRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:84,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::LogNormalFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:90,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRatePc::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:96,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::LogNormalFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:106,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:109,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:113,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:114,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:122,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:122,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:123,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:132,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 141
    functionName: QuantLib::LogNormalFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::LogNormalFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& LogNormalFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:60,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:69,1
    - Dst: QuantLib::LogNormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalFwdRatePc::LogNormalFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - QuantLib::LogNormalFwdRatePc::setForwards
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRatePc::LogNormalFwdRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:84,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::LogNormalFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:90,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LogNormalFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRatePc::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:96,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: QuantLib::LogNormalFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:106,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:109,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:113,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:114,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:122,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:122,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:123,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:132,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 141
    functionName: QuantLib::LogNormalFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::LogNormalFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& LogNormalFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:49,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:55,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:56,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:58,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:59,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:65,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:68,1
    - Dst: QuantLib::LogNormalFwdRateEuler::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:71,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::LogNormalFwdRateEuler::LogNormalFwdRateEuler
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalFwdRateEuler::setForwards
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEuler::LogNormalFwdRateEuler(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& LogNormalFwdRateEuler::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateEuler::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:83,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::LogNormalFwdRateEuler::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEuler::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateEuler::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:89,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalFwdRateEuler::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRateEuler::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEuler::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:95,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::LogNormalFwdRateEuler::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEuler::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:108,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:112,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:113,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:121,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:122,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 133
    functionName: QuantLib::LogNormalFwdRateEuler::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEuler::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::LogNormalFwdRateEuler::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateEuler::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: '& LogNormalFwdRateEuler::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateEuler::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:45,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:47,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:49,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:51,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:55,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:56,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:58,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:59,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:59,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:64,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:65,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:65,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:68,1
    - Dst: QuantLib::LogNormalFwdRateEuler::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:71,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::LogNormalFwdRateEuler::LogNormalFwdRateEuler
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalFwdRateEuler::setForwards
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateEuler::LogNormalFwdRateEuler(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& LogNormalFwdRateEuler::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateEuler::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:83,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::LogNormalFwdRateEuler::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEuler::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateEuler::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:89,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalFwdRateEuler::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - forwardRates
    - QuantLib::LogNormalFwdRateEuler::setForwards
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateEuler::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:95,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::LogNormalFwdRateEuler::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEuler::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:108,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:112,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:113,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:121,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:122,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 133
    functionName: QuantLib::LogNormalFwdRateEuler::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateEuler::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::LogNormalFwdRateEuler::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateEuler::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: '& LogNormalFwdRateEuler::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateeuler.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateEuler::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:60,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:69,1
    - Dst: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalCotSwapRatePc::LogNormalCotSwapRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalCotSwapRatePc::LogNormalCotSwapRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalCotSwapRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalCotSwapRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:84,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' swapRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 1
    functionsReached:
    - std::log
    - setOnCoterminalSwapRates
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalCotSwapRatePc::setCoterminalSwapRates(const std::vector<Real>&
      swapRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CoterminalSwapCurveState*>
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:92,1
    - Dst: auto*::coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:93,1
    - Dst: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: QuantLib::LogNormalCotSwapRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - auto*::coterminalSwapRates
    - QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    - dynamic_cast<const CoterminalSwapCurveState*>
    linkageType: ''
    returnType: void
    signature: void LogNormalCotSwapRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:100,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::LogNormalCotSwapRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCotSwapRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:110,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:113,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:116,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:117,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:125,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:126,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:130,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:133,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:138,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 147
    functionName: QuantLib::LogNormalCotSwapRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - begin
    - Real
    - setOnCoterminalSwapRates
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCotSwapRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::LogNormalCotSwapRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalCotSwapRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: '& LogNormalCotSwapRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalCotSwapRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:37,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:39,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:40,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:41,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:60,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:65,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:66,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:69,1
    - Dst: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:72,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 73
    functionName: QuantLib::LogNormalCotSwapRatePc::LogNormalCotSwapRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - displacements
    - evolution
    - create
    - std::inner_product
    - QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    - Real
    - push_back
    - row_end
    - pseudoRoot
    - emplace_back
    - numberOfFactors
    - numberOfRates
    - row_begin
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalCotSwapRatePc::LogNormalCotSwapRatePc(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: '& LogNormalCotSwapRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalCotSwapRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:84,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:86,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' swapRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 3
    functionsReached:
    - std::log
    - setOnCoterminalSwapRates
    - compute
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalCotSwapRatePc::setCoterminalSwapRates(const std::vector<Real>&
      swapRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CoterminalSwapCurveState*>
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:92,1
    - Dst: auto*::coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:93,1
    - Dst: QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: QuantLib::LogNormalCotSwapRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - auto*::coterminalSwapRates
    - QuantLib::LogNormalCotSwapRatePc::setCoterminalSwapRates
    - dynamic_cast<const CoterminalSwapCurveState*>
    linkageType: ''
    returnType: void
    signature: void LogNormalCotSwapRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:100,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::LogNormalCotSwapRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCotSwapRatePc::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:110,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:113,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:116,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:117,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:124,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:125,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:126,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:130,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:133,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:138,1
    - Dst: setOnCoterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp:142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 147
    functionName: QuantLib::LogNormalCotSwapRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::copy
    - std::inner_product
    - begin
    - Real
    - setOnCoterminalSwapRates
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalCotSwapRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::LogNormalCotSwapRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalCotSwapRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: '& LogNormalCotSwapRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalcotswapratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalCotSwapRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:39,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:42,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:42,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:43,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:44,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:45,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:46,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:47,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:50,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:50,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:56,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:57,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:57,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:59,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:61,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:65,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:66,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:69,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:70,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:70,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:77,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:80,1
    - Dst: QuantLib::SVDDFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:83,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:83,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 7
    argNames:
    - ' marketModel'
    - ' factory'
    - ' volProcess'
    - firstVolatilityFactor
    - volatilityFactorStep
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - ext::shared_ptr<MarketModelVolProcess>
    - Size
    - Size
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 93
    functionName: QuantLib::SVDDFwdRatePc::SVDDFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - displacements
    - Real
    - numberOfFactors
    - checkCompatibility
    - evolution
    - create
    - numberOfRates
    - std::min
    - variatesPerStep
    - push_back
    - pseudoRoot
    - emplace_back
    - row_begin
    - reserve
    - QL_REQUIRE
    - initialRates
    - QuantLib::SVDDFwdRatePc::setForwards
    - std::inner_product
    - row_end
    linkageType: ''
    returnType: void
    signature: "void SVDDFwdRatePc::SVDDFwdRatePc(const ext::shared_ptr<MarketModel>&
      marketModel,\n                           const BrownianGeneratorFactory& factory,\n
      \                          const ext::shared_ptr<MarketModelVolProcess>& volProcess,\n
      \                          Size firstVolatilityFactor, \n                           Size
      volatilityFactorStep,\n                           const std::vector<Size>& numeraires,\n
      \                          Size initialStep )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& SVDDFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & SVDDFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:104,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::SVDDFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SVDDFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SVDDFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:111,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::SVDDFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SVDDFwdRatePc::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void SVDDFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:118,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:119,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: QuantLib::SVDDFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real SVDDFwdRatePc::startNewPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:130,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:135,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:143,1
    - Dst: nextstep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:158,1
    - Dst: stepSd
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:159,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:162,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:170,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:170,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:171,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:175,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:180,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:184,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 189
    functionName: QuantLib::SVDDFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextstep
    - std::copy
    - std::inner_product
    - std::exp
    - setOnForwardRates
    - begin
    - Real
    - row_end
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - size
    - end
    - stepSd
    linkageType: ''
    returnType: Real
    signature: Real SVDDFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::SVDDFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SVDDFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: '& SVDDFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & SVDDFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:39,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:42,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:42,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:43,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:44,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:45,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:46,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:47,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:50,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:50,1
    - Dst: variatesPerStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:56,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:57,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:57,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:59,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:61,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:65,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:66,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:69,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:70,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:70,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:76,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:77,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:80,1
    - Dst: QuantLib::SVDDFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:83,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:83,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 7
    argNames:
    - ' marketModel'
    - ' factory'
    - ' volProcess'
    - firstVolatilityFactor
    - volatilityFactorStep
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - ext::shared_ptr<MarketModelVolProcess>
    - Size
    - Size
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 93
    functionName: QuantLib::SVDDFwdRatePc::SVDDFwdRatePc
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - displacements
    - Real
    - numberOfFactors
    - checkCompatibility
    - evolution
    - create
    - numberOfRates
    - std::min
    - variatesPerStep
    - push_back
    - pseudoRoot
    - emplace_back
    - row_begin
    - reserve
    - QL_REQUIRE
    - initialRates
    - QuantLib::SVDDFwdRatePc::setForwards
    - std::inner_product
    - row_end
    linkageType: ''
    returnType: void
    signature: "void SVDDFwdRatePc::SVDDFwdRatePc(const ext::shared_ptr<MarketModel>&
      marketModel,\n                           const BrownianGeneratorFactory& factory,\n
      \                          const ext::shared_ptr<MarketModelVolProcess>& volProcess,\n
      \                          Size firstVolatilityFactor, \n                           Size
      volatilityFactorStep,\n                           const std::vector<Size>& numeraires,\n
      \                          Size initialStep )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: '& SVDDFwdRatePc::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & SVDDFwdRatePc::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:104,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::SVDDFwdRatePc::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SVDDFwdRatePc::setForwards(const std::vector<Real>& forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SVDDFwdRatePc::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:111,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::SVDDFwdRatePc::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SVDDFwdRatePc::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void SVDDFwdRatePc::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:118,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:119,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: QuantLib::SVDDFwdRatePc::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real SVDDFwdRatePc::startNewPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:130,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:135,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:143,1
    - Dst: nextstep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:158,1
    - Dst: stepSd
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:159,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:162,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:170,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:170,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:171,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:175,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:180,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp:184,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 189
    functionName: QuantLib::SVDDFwdRatePc::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached:
    - nextstep
    - std::copy
    - std::inner_product
    - std::exp
    - setOnForwardRates
    - begin
    - Real
    - row_end
    - pseudoRoot
    - nextStep
    - compute
    - row_begin
    - size
    - end
    - stepSd
    linkageType: ''
    returnType: Real
    signature: Real SVDDFwdRatePc::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::SVDDFwdRatePc::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SVDDFwdRatePc::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: '& SVDDFwdRatePc::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/svddfwdratepc.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & SVDDFwdRatePc::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:36,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:37,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:38,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:39,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:60,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:68,1
    - Dst: QuantLib::LogNormalFwdRateBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:71,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 72
    functionName: QuantLib::LogNormalFwdRateBalland::LogNormalFwdRateBalland
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateBalland::setForwards
    - initialRates
    - displacements
    - evolution
    - create
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateBalland::LogNormalFwdRateBalland(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& LogNormalFwdRateBalland::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateBalland::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:83,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::LogNormalFwdRateBalland::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateBalland::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:89,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalFwdRateBalland::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateBalland::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateBalland::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:95,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::LogNormalFwdRateBalland::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateBalland::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:108,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:111,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:112,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:121,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:127,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:127,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:135,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 144
    functionName: QuantLib::LogNormalFwdRateBalland::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - std::sqrt
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateBalland::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::LogNormalFwdRateBalland::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateBalland::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: '& LogNormalFwdRateBalland::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateBalland::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:36,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:37,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:38,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:39,1
    - Dst: displacements
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:40,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:45,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:46,1
    - Dst: checkCompatibility
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:48,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:50,1
    - Dst: create
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:52,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:56,1
    - Dst: reserve
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:57,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:60,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:60,1
    - Dst: covariance
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:68,1
    - Dst: QuantLib::LogNormalFwdRateBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:71,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ' marketModel'
    - ' factory'
    - ' numeraires'
    - initialStep
    argTypes:
    - ext::shared_ptr<MarketModel>
    - BrownianGeneratorFactory
    - std::vector<Size>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 72
    functionName: QuantLib::LogNormalFwdRateBalland::LogNormalFwdRateBalland
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateBalland::setForwards
    - initialRates
    - displacements
    - evolution
    - create
    - push_back
    - pseudoRoot
    - emplace_back
    - covariance
    - numberOfFactors
    - numberOfRates
    - reserve
    - checkCompatibility
    linkageType: ''
    returnType: void
    signature: "void LogNormalFwdRateBalland::LogNormalFwdRateBalland(\n                           const
      ext::shared_ptr<MarketModel>& marketModel,\n                           const
      BrownianGeneratorFactory& factory,\n                           const std::vector<Size>&
      numeraires,\n                           Size initialStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& LogNormalFwdRateBalland::numeraires() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & LogNormalFwdRateBalland::numeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:80,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:83,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' forwards'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: QuantLib::LogNormalFwdRateBalland::setForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 3
    functionsReached:
    - size
    - std::log
    - compute
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateBalland::setForwards(const std::vector<Real>&
      forwards)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LogNormalFwdRateBalland::setForwards
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:89,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cs'
    argTypes:
    - CurveState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::LogNormalFwdRateBalland::setInitialState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LogNormalFwdRateBalland::setForwards
    - forwardRates
    linkageType: ''
    returnType: void
    signature: void LogNormalFwdRateBalland::setInitialState(const CurveState& cs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:95,1
    - Dst: nextPath
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::LogNormalFwdRateBalland::startNewPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - nextPath
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateBalland::startNewPath()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:105,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:108,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:111,1
    - Dst: pseudoRoot
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:112,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: row_end
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:121,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:127,1
    - Dst: initialRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:127,1
    - Dst: compute
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:135,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp:139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 144
    functionName: QuantLib::LogNormalFwdRateBalland::advanceStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached:
    - initialRates
    - std::exp
    - std::copy
    - std::inner_product
    - setOnForwardRates
    - begin
    - Real
    - pseudoRoot
    - nextStep
    - compute
    - std::sqrt
    - row_begin
    - row_end
    - end
    linkageType: ''
    returnType: Real
    signature: Real LogNormalFwdRateBalland::advanceStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::LogNormalFwdRateBalland::currentStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LogNormalFwdRateBalland::currentStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: '& LogNormalFwdRateBalland::currentState() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/lognormalfwdrateballand.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CurveState
    signature: CurveState & LogNormalFwdRateBalland::currentState() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:59,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 9
    argNames:
    - meanLevel
    - reversionSpeed
    - volVar
    - v0
    - ' evolutionTimes'
    - numberSubSteps
    - w1
    - w2
    - cutPoint
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - std::vector<Real>
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 70
    functionName: QuantLib::SquareRootAndersen::SquareRootAndersen
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SquareRootAndersen::SquareRootAndersen(Real meanLevel,\n        Real
      reversionSpeed,\n        Real volVar,\n        Real v0,\n        const std::vector<Real>&
      evolutionTimes,\n        Size numberSubSteps,\n        Real w1,\n        Real
      w2,\n        Real cutPoint )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::SquareRootAndersen::variatesPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::variatesPerStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::SquareRootAndersen::numberSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::numberSteps()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::SquareRootAndersen::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SquareRootAndersen::nextPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:104,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' vt'
    - z
    - j
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 123
    functionName: QuantLib::SquareRootAndersen::DoOneSubStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: void
    signature: void SquareRootAndersen::DoOneSubStep(Real& vt, Real z, Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootAndersen::DoOneSubStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' variates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 138
    functionName: QuantLib::SquareRootAndersen::nextstep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SquareRootAndersen::DoOneSubStep
    linkageType: ''
    returnType: Real
    signature: Real SquareRootAndersen::nextstep(const std::vector<Real>& variates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: QuantLib::SquareRootAndersen::stepSd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SquareRootAndersen::stepSd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: '& SquareRootAndersen::stateVariables() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & SquareRootAndersen::stateVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::SquareRootAndersen::numberStateVariables
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::numberStateVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:59,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 9
    argNames:
    - meanLevel
    - reversionSpeed
    - volVar
    - v0
    - ' evolutionTimes'
    - numberSubSteps
    - w1
    - w2
    - cutPoint
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - std::vector<Real>
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 70
    functionName: QuantLib::SquareRootAndersen::SquareRootAndersen
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SquareRootAndersen::SquareRootAndersen(Real meanLevel,\n        Real
      reversionSpeed,\n        Real volVar,\n        Real v0,\n        const std::vector<Real>&
      evolutionTimes,\n        Size numberSubSteps,\n        Real w1,\n        Real
      w2,\n        Real cutPoint )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::SquareRootAndersen::variatesPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::variatesPerStep()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::SquareRootAndersen::numberSteps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::numberSteps()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::SquareRootAndersen::nextPath
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SquareRootAndersen::nextPath()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:104,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' vt'
    - z
    - j
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 123
    functionName: QuantLib::SquareRootAndersen::DoOneSubStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 1
    functionsReached:
    - CumulativeNormalDistribution
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: void
    signature: void SquareRootAndersen::DoOneSubStep(Real& vt, Real z, Size j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootAndersen::DoOneSubStep
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' variates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 138
    functionName: QuantLib::SquareRootAndersen::nextstep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SquareRootAndersen::DoOneSubStep
    linkageType: ''
    returnType: Real
    signature: Real SquareRootAndersen::nextstep(const std::vector<Real>& variates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: QuantLib::SquareRootAndersen::stepSd
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SquareRootAndersen::stepSd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionName: '& SquareRootAndersen::stateVariables() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & SquareRootAndersen::stateVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::SquareRootAndersen::numberStateVariables
    functionSourceFile: /src/quantlib/ql/models/marketmodels/evolvers/volprocesses/squarerootandersen.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SquareRootAndersen::numberStateVariables() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: QuantLib::CoterminalSwapCurveState::CoterminalSwapCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CoterminalSwapCurveState::CoterminalSwapCurveState(\n                                        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 66
    functionName: QuantLib::CoterminalSwapCurveState::setOnCoterminalSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoterminalSwapCurveState::setOnCoterminalSwapRates(\n                                        const
      std::vector<Rate>& rates,\n                                        Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:70,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: QuantLib::CoterminalSwapCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CoterminalSwapCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:77,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::CoterminalSwapCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CoterminalSwapCurveState::forwardRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::CoterminalSwapCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::coterminalSwapAnnuity(Size numeraire,\n
      \                                                        Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::CoterminalSwapCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CoterminalSwapCurveState::coterminalSwapRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:103,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 110
    functionName: QuantLib::CoterminalSwapCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::cmSwapAnnuity(Size numeraire,\n                                                 Size
      i,\n                                                 Size spanningForwards)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:115,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 122
    functionName: QuantLib::CoterminalSwapCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::cmSwapRate(Size i,\n                                              Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:125,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: '& CoterminalSwapCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& CoterminalSwapCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::coterminalSwapRates()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:136,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: '& CoterminalSwapCurveState::cmSwapRates(Size spanningForwards)
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:145,1
    - Dst: CoterminalSwapCurveState::CoterminalSwapCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::CoterminalSwapCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<CurveState>
    - CoterminalSwapCurveState::CoterminalSwapCurveState
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> CoterminalSwapCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: QuantLib::CoterminalSwapCurveState::CoterminalSwapCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CoterminalSwapCurveState::CoterminalSwapCurveState(\n                                        const
      std::vector<Time>& rateTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:44,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 66
    functionName: QuantLib::CoterminalSwapCurveState::setOnCoterminalSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoterminalSwapCurveState::setOnCoterminalSwapRates(\n                                        const
      std::vector<Rate>& rates,\n                                        Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:70,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: QuantLib::CoterminalSwapCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CoterminalSwapCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:77,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::CoterminalSwapCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CoterminalSwapCurveState::forwardRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::CoterminalSwapCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::coterminalSwapAnnuity(Size numeraire,\n
      \                                                        Size i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::CoterminalSwapCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CoterminalSwapCurveState::coterminalSwapRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:103,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 110
    functionName: QuantLib::CoterminalSwapCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::cmSwapAnnuity(Size numeraire,\n                                                 Size
      i,\n                                                 Size spanningForwards)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:115,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 122
    functionName: QuantLib::CoterminalSwapCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CoterminalSwapCurveState::cmSwapRate(Size i,\n                                              Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:125,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: '& CoterminalSwapCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& CoterminalSwapCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::coterminalSwapRates()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:136,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: '& CoterminalSwapCurveState::cmSwapRates(Size spanningForwards)
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CoterminalSwapCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:145,1
    - Dst: CoterminalSwapCurveState::CoterminalSwapCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::CoterminalSwapCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/coterminalswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<CurveState>
    - CoterminalSwapCurveState::CoterminalSwapCurveState
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> CoterminalSwapCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' rateTimes'
    - spanningForwards
    argTypes:
    - std::vector<Time>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::CMSwapCurveState::CMSwapCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CMSwapCurveState::CMSwapCurveState(const std::vector<Time>& rateTimes,\n
      \                                      Size spanningForwards)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:46,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:54,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:66,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:67,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 85
    functionName: QuantLib::CMSwapCurveState::setOnCMSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - std::min
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSwapCurveState::setOnCMSwapRates(const std::vector<Rate>& rates,\n
      \                                           Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::CMSwapCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CMSwapCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:96,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::CMSwapCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CMSwapCurveState::forwardRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:106,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 111
    functionName: QuantLib::CMSwapCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::coterminalSwapAnnuity(Size numeraire,\n                                                 Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:115,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: QuantLib::CMSwapCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CMSwapCurveState::coterminalSwapRate(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:128,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 138
    functionName: QuantLib::CMSwapCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::cmSwapAnnuity(Size numeraire,\n                                         Size
      i,\n                                         Size spanningForwards) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:143,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 153
    functionName: QuantLib::CMSwapCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::cmSwapRate(Size i,\n                                      Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:156,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: '& CMSwapCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:162,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 167
    functionName: '& CMSwapCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::coterminalSwapRates() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:170,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 179
    functionName: '& CMSwapCurveState::cmSwapRates(Size spanningForwards) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:182,1
    - Dst: CMSwapCurveState::CMSwapCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::CMSwapCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - CMSwapCurveState::CMSwapCurveState
    - std::unique_ptr<CurveState>
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> CMSwapCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' rateTimes'
    - spanningForwards
    argTypes:
    - std::vector<Time>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::CMSwapCurveState::CMSwapCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CMSwapCurveState::CMSwapCurveState(const std::vector<Time>& rateTimes,\n
      \                                      Size spanningForwards)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:46,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:54,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:66,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:67,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 85
    functionName: QuantLib::CMSwapCurveState::setOnCMSwapRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - std::min
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSwapCurveState::setOnCMSwapRates(const std::vector<Rate>& rates,\n
      \                                           Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::CMSwapCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CMSwapCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:96,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: QuantLib::CMSwapCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CMSwapCurveState::forwardRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:106,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 111
    functionName: QuantLib::CMSwapCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::coterminalSwapAnnuity(Size numeraire,\n                                                 Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:115,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: QuantLib::CMSwapCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CMSwapCurveState::coterminalSwapRate(Size i) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:128,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 138
    functionName: QuantLib::CMSwapCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::cmSwapAnnuity(Size numeraire,\n                                         Size
      i,\n                                         Size spanningForwards) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:143,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 153
    functionName: QuantLib::CMSwapCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CMSwapCurveState::cmSwapRate(Size i,\n                                      Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:156,1
    - Dst: forwardsFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: '& CMSwapCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - forwardsFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:162,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 167
    functionName: '& CMSwapCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::coterminalSwapRates() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:170,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 179
    functionName: '& CMSwapCurveState::cmSwapRates(Size spanningForwards) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CMSwapCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:182,1
    - Dst: CMSwapCurveState::CMSwapCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: QuantLib::CMSwapCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/cmswapcurvestate.cpp
    functionUses: 0
    functionsReached:
    - CMSwapCurveState::CMSwapCurveState
    - std::unique_ptr<CurveState>
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> CMSwapCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::LMMCurveState::LMMCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LMMCurveState::LMMCurveState(const std::vector<Time>& rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:47,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 68
    functionName: QuantLib::LMMCurveState::setOnForwardRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMCurveState::setOnForwardRates(const std::vector<Rate>& rates,\n
      \                                         Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:76,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' discRatios'
    - firstValidIndex
    argTypes:
    - std::vector<DiscountFactor>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 96
    functionName: QuantLib::LMMCurveState::setOnDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMCurveState::setOnDiscountRatios(const std::vector<DiscountFactor>&
      discRatios,\n                                            Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:101,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: QuantLib::LMMCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LMMCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::LMMCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate LMMCurveState::forwardRate(Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:116,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:130,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:130,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 136
    functionName: QuantLib::LMMCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::coterminalSwapAnnuity(Size numeraire,\n                                              Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:140,1
    - Dst: QuantLib::LMMCurveState::coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 148
    functionName: QuantLib::LMMCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LMMCurveState::coterminalSwapAnnuity
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate LMMCurveState::coterminalSwapRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:156,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:159,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 163
    functionName: QuantLib::LMMCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::cmSwapAnnuity(Size numeraire,\n                                      Size
      i,\n                                      Size spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:168,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 175
    functionName: QuantLib::LMMCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::cmSwapRate(Size i,\n                                   Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '& LMMCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:183,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: '& LMMCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::coterminalSwapRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:191,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 196
    functionName: '& LMMCurveState::cmSwapRates(Size spanningForwards) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:199,1
    - Dst: LMMCurveState::LMMCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::LMMCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<CurveState>
    - LMMCurveState::LMMCurveState
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> LMMCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' rateTimes'
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::LMMCurveState::LMMCurveState
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LMMCurveState::LMMCurveState(const std::vector<Time>& rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:47,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' rates'
    - firstValidIndex
    argTypes:
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 68
    functionName: QuantLib::LMMCurveState::setOnForwardRates
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMCurveState::setOnForwardRates(const std::vector<Rate>& rates,\n
      \                                         Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:76,1
    - Dst: std::copy
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' discRatios'
    - firstValidIndex
    argTypes:
    - std::vector<DiscountFactor>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 96
    functionName: QuantLib::LMMCurveState::setOnDiscountRatios
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMCurveState::setOnDiscountRatios(const std::vector<DiscountFactor>&
      discRatios,\n                                            Size firstValidIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:101,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: QuantLib::LMMCurveState::discountRatio
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LMMCurveState::discountRatio(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::LMMCurveState::forwardRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate LMMCurveState::forwardRate(Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:116,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:130,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:130,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - numeraire
    - i
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 136
    functionName: QuantLib::LMMCurveState::coterminalSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 1
    functionsReached:
    - static_cast<int>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::coterminalSwapAnnuity(Size numeraire,\n                                              Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:140,1
    - Dst: QuantLib::LMMCurveState::coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 148
    functionName: QuantLib::LMMCurveState::coterminalSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LMMCurveState::coterminalSwapAnnuity
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate LMMCurveState::coterminalSwapRate(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:156,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:159,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - numeraire
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 163
    functionName: QuantLib::LMMCurveState::cmSwapAnnuity
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::cmSwapAnnuity(Size numeraire,\n                                      Size
      i,\n                                      Size spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:168,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - i
    - spanningForwards
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 175
    functionName: QuantLib::LMMCurveState::cmSwapRate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate LMMCurveState::cmSwapRate(Size i,\n                                   Size
      spanningForwards) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '& LMMCurveState::forwardRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::forwardRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:183,1
    - Dst: coterminalFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: '& LMMCurveState::coterminalSwapRates() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - coterminalFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::coterminalSwapRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:191,1
    - Dst: constantMaturityFromDiscountRatios
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - spanningForwards
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 196
    functionName: '& LMMCurveState::cmSwapRates(Size spanningForwards) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - constantMaturityFromDiscountRatios
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & LMMCurveState::cmSwapRates(Size spanningForwards)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<CurveState>
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:199,1
    - Dst: LMMCurveState::LMMCurveState
      Src: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::LMMCurveState::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/curvestates/lmmcurvestate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<CurveState>
    - LMMCurveState::LMMCurveState
    linkageType: ''
    returnType: std::unique_ptr<CurveState>
    signature: std::unique_ptr<CurveState> LMMCurveState::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:32,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:36,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:38,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:40,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:57,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 69
    functionName: QuantLib::SMMDriftCalculator::SMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SMMDriftCalculator::SMMDriftCalculator(\n                                    const
      Matrix& pseudo,\n                                    const std::vector<Spread>&
      displacements,\n                                    const std::vector<Time>&
      taus,\n                                    Size numeraire,\n                                    Size
      alive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:81,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:85,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:89,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:95,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:103,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:109,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - CoterminalSwapCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 130
    functionName: QuantLib::SMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - rateTaus
    - numberOfRates
    - discountRatio
    - coterminalSwapAnnuity
    - static_cast<Integer>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SMMDriftCalculator::compute(const CoterminalSwapCurveState& cs,\n
      \                                    std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:32,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:36,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:38,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:40,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:57,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 69
    functionName: QuantLib::SMMDriftCalculator::SMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SMMDriftCalculator::SMMDriftCalculator(\n                                    const
      Matrix& pseudo,\n                                    const std::vector<Spread>&
      displacements,\n                                    const std::vector<Time>&
      taus,\n                                    Size numeraire,\n                                    Size
      alive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:74,1
    - Dst: coterminalSwapRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:81,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:85,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:89,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:95,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:103,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp:109,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - CoterminalSwapCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 130
    functionName: QuantLib::SMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/smmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - coterminalSwapRates
    - rateTaus
    - numberOfRates
    - discountRatio
    - coterminalSwapAnnuity
    - static_cast<Integer>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SMMDriftCalculator::compute(const CoterminalSwapCurveState& cs,\n
      \                                    std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:29,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:31,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:36,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:45,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:49,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:54,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ' pseudo'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 57
    functionName: QuantLib::LMMNormalDriftCalculator::LMMNormalDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::LMMNormalDriftCalculator(const Matrix&
      pseudo,\n                                                       const std::vector<Time>&
      taus,\n                                                       Size numeraire,\n
      \                                                      Size alive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::compute
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:61,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::LMMNormalDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LMMNormalDriftCalculator::compute
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::compute(const LMMCurveState& cs,\n
      \                                          std::vector<Real>& drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:68,1
    - Dst: QuantLib::LMMNormalDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:72,1
    - Dst: QuantLib::LMMNormalDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' fwds'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionName: QuantLib::LMMNormalDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::LMMNormalDriftCalculator::computeReduced
    - QuantLib::LMMNormalDriftCalculator::computePlain
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::compute(const std::vector<Rate>& fwds,\n
      \                                          std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:79,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::LMMNormalDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - forwardRates
    - QuantLib::LMMNormalDriftCalculator::computePlain
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computePlain(const LMMCurveState& cs,\n
      \                                               std::vector<Real>& drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:96,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 101
    functionName: QuantLib::LMMNormalDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - row_begin
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computePlain(const std::vector<Rate>&
      forwards,\n                                                std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:105,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::LMMNormalDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LMMNormalDriftCalculator::computeReduced
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computeReduced(const LMMCurveState&
      cs,\n                                                std::vector<Real>& drifts)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:120,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:120,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:134,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 156
    functionName: QuantLib::LMMNormalDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - static_cast<Integer>
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computeReduced(const std::vector<Rate>&
      forwards,\n                                                  std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:29,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:31,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:36,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:45,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:49,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:54,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ' pseudo'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 57
    functionName: QuantLib::LMMNormalDriftCalculator::LMMNormalDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::LMMNormalDriftCalculator(const Matrix&
      pseudo,\n                                                       const std::vector<Time>&
      taus,\n                                                       Size numeraire,\n
      \                                                      Size alive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::compute
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:61,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::LMMNormalDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LMMNormalDriftCalculator::compute
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::compute(const LMMCurveState& cs,\n
      \                                          std::vector<Real>& drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:68,1
    - Dst: QuantLib::LMMNormalDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:72,1
    - Dst: QuantLib::LMMNormalDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' fwds'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionName: QuantLib::LMMNormalDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::LMMNormalDriftCalculator::computeReduced
    - QuantLib::LMMNormalDriftCalculator::computePlain
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::compute(const std::vector<Rate>& fwds,\n
      \                                          std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:79,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::LMMNormalDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - forwardRates
    - QuantLib::LMMNormalDriftCalculator::computePlain
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computePlain(const LMMCurveState& cs,\n
      \                                               std::vector<Real>& drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:95,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:96,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 101
    functionName: QuantLib::LMMNormalDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - row_begin
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computePlain(const std::vector<Rate>&
      forwards,\n                                                std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMNormalDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:105,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::LMMNormalDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LMMNormalDriftCalculator::computeReduced
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computeReduced(const LMMCurveState&
      cs,\n                                                std::vector<Real>& drifts)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:120,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:120,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:134,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 156
    functionName: QuantLib::LMMNormalDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmnormaldriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - std::max
    - static_cast<Integer>
    linkageType: ''
    returnType: void
    signature: "void LMMNormalDriftCalculator::computeReduced(const std::vector<Rate>&
      forwards,\n                                                  std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:34,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:53,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:57,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:62,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 65
    functionName: QuantLib::LMMDriftCalculator::LMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::LMMDriftCalculator(const Matrix& pseudo,\n
      \                                          const std::vector<Spread>& displacements,\n
      \                                          const std::vector<Time>& taus,\n
      \                                          Size numeraire,\n                                           Size
      alive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::compute
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:69,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::LMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 1
    functionsReached:
    - forwardRates
    - QuantLib::LMMDriftCalculator::compute
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::compute(const LMMCurveState& cs,\n                                     std::vector<Real>&
      drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:76,1
    - Dst: QuantLib::LMMDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:80,1
    - Dst: QuantLib::LMMDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' fwds'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::LMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::LMMDriftCalculator::computePlain
    - QuantLib::LMMDriftCalculator::computeReduced
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::compute(const std::vector<Rate>& fwds,\n
      \                                    std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:87,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::LMMDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LMMDriftCalculator::computePlain
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computePlain(const LMMCurveState& cs,\n                                          std::vector<Real>&
      drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:105,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 110
    functionName: QuantLib::LMMDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - row_begin
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computePlain(const std::vector<Rate>& forwards,\n
      \                                         std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:114,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::LMMDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LMMDriftCalculator::computeReduced
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computeReduced(const LMMCurveState& cs,\n
      \                                           std::vector<Real>& drifts) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:130,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:130,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:144,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:145,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 179
    functionName: QuantLib::LMMDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - static_cast<Integer>
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computeReduced(const std::vector<Rate>& forwards,\n
      \                                           std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:34,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:53,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:57,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:62,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 65
    functionName: QuantLib::LMMDriftCalculator::LMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::LMMDriftCalculator(const Matrix& pseudo,\n
      \                                          const std::vector<Spread>& displacements,\n
      \                                          const std::vector<Time>& taus,\n
      \                                          Size numeraire,\n                                           Size
      alive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::compute
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:69,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::LMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - forwardRates
    - QuantLib::LMMDriftCalculator::compute
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::compute(const LMMCurveState& cs,\n                                     std::vector<Real>&
      drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:76,1
    - Dst: QuantLib::LMMDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:80,1
    - Dst: QuantLib::LMMDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' fwds'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::LMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::LMMDriftCalculator::computePlain
    - QuantLib::LMMDriftCalculator::computeReduced
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::compute(const std::vector<Rate>& fwds,\n
      \                                    std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::computePlain
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:87,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::LMMDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LMMDriftCalculator::computePlain
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computePlain(const LMMCurveState& cs,\n                                          std::vector<Real>&
      drifts) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:105,1
    - Dst: row_begin
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 110
    functionName: QuantLib::LMMDriftCalculator::computePlain
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - row_begin
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computePlain(const std::vector<Rate>& forwards,\n
      \                                         std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LMMDriftCalculator::computeReduced
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:114,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - LMMCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::LMMDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LMMDriftCalculator::computeReduced
    - forwardRates
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computeReduced(const LMMCurveState& cs,\n
      \                                           std::vector<Real>& drifts) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:130,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:130,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:144,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp:145,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ' forwards'
    - ' drifts'
    argTypes:
    - std::vector<Rate>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 179
    functionName: QuantLib::LMMDriftCalculator::computeReduced
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/lmmdriftcalculator.cpp
    functionUses: 4
    functionsReached:
    - std::max
    - static_cast<Integer>
    linkageType: ''
    returnType: void
    signature: "void LMMDriftCalculator::computeReduced(const std::vector<Rate>& forwards,\n
      \                                           std::vector<Real>& drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:34,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:60,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    - spanningFwds
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 72
    functionName: QuantLib::CMSMMDriftCalculator::CMSMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSMMDriftCalculator::CMSMMDriftCalculator(\n                                const
      Matrix& pseudo,\n                                const std::vector<Spread>&
      displacements,\n                                const std::vector<Time>& taus,\n
      \                               Size numeraire,\n                                Size
      alive,\n                                Size spanningFwds)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:81,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:85,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:89,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:90,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:92,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:94,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:94,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:95,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:97,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:105,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:116,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:122,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:133,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - CMSwapCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 135
    functionName: QuantLib::CMSMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - cmSwapRate
    - rateTaus
    - rows
    - numberOfRates
    - discountRatio
    - cmSwapAnnuity
    - static_cast<Integer>
    - std::min<Integer>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSMMDriftCalculator::compute(const CMSwapCurveState& cs,\n                                       std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:34,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:60,1
    - Dst: transpose
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - ' pseudo'
    - ' displacements'
    - ' taus'
    - numeraire
    - alive
    - spanningFwds
    argTypes:
    - Matrix
    - std::vector<Spread>
    - std::vector<Time>
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 72
    functionName: QuantLib::CMSMMDriftCalculator::CMSMMDriftCalculator
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::min
    - std::max
    - columns
    - transpose
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSMMDriftCalculator::CMSMMDriftCalculator(\n                                const
      Matrix& pseudo,\n                                const std::vector<Spread>&
      displacements,\n                                const std::vector<Time>& taus,\n
      \                               Size numeraire,\n                                Size
      alive,\n                                Size spanningFwds)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:77,1
    - Dst: rateTaus
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:81,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:85,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:89,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:90,1
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:92,1
    - Dst: std::min<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:94,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:94,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:95,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:97,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:105,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:116,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:122,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp:133,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - ' cs'
    - ' drifts'
    argTypes:
    - CMSwapCurveState
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 135
    functionName: QuantLib::CMSMMDriftCalculator::compute
    functionSourceFile: /src/quantlib/ql/models/marketmodels/driftcomputation/cmsmmdriftcalculator.cpp
    functionUses: 0
    functionsReached:
    - cmSwapRate
    - rateTaus
    - rows
    - numberOfRates
    - discountRatio
    - cmSwapAnnuity
    - static_cast<Integer>
    - std::min<Integer>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CMSMMDriftCalculator::compute(const CMSwapCurveState& cs,\n                                       std::vector<Real>&
      drifts) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:30,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:35,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rateTimes
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiProductMultiStep::MultiProductMultiStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - EvolutionDescription
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiProductMultiStep::MultiProductMultiStep(std::vector<Time>
      rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& MultiProductMultiStep::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductMultiStep::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::MultiProductMultiStep::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductMultiStep::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:30,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:35,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rateTimes
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiProductMultiStep::MultiProductMultiStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - EvolutionDescription
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiProductMultiStep::MultiProductMultiStep(std::vector<Time>
      rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& MultiProductMultiStep::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductMultiStep::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::MultiProductMultiStep::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductmultistep.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductMultiStep::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: '& MarketModelComposite::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelComposite::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:31,1
    - Dst: terminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelComposite::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - terminalMeasure
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelComposite::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::MarketModelComposite::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelComposite::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::reset
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::MarketModelComposite::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - product::reset
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:53,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:55,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:58,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:59,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:63,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:66,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:67,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:68,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:70,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' product'
    - multiplier
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 71
    functionName: QuantLib::MarketModelComposite::add
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - EvolutionDescription::rateTimes
    - QL_REQUIRE
    - evolution
    - empty
    - begin
    - QuantLib::MarketModelComposite::size
    - std::equal
    - push_back
    - EvolutionDescription::evolutionTimes
    - emplace_back
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void MarketModelComposite::add(\n                                const
      Clone<MarketModelMultiProduct>& product,\n                                Real
      multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelComposite::add
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' product'
    - multiplier
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::MarketModelComposite::subtract
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarketModelComposite::add
    linkageType: ''
    returnType: void
    signature: "void MarketModelComposite::subtract(\n                                const
      Clone<MarketModelMultiProduct>& product,\n                                Real
      multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:81,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:86,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:86,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:87,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:95,1
    - Dst: iterator::product::evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:96,1
    - Dst: iterator::product::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:99,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:100,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:102,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:105,1
    - Dst: iterator::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:105,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:107,1
    - Dst: iterator::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:108,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:109,1
    - Dst: iterator::product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:109,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::unique
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:119,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:122,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:122,1
    - Dst: iterator::product::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:124,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:125,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:125,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:126,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:129,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 137
    functionName: QuantLib::MarketModelComposite::finalize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - iterator::product::evolution
    - std::vector::insert
    - evolution
    - empty
    - std::sort
    - begin
    - QuantLib::MarketModelComposite::size
    - std::vector<Size>
    - std::find
    - std::vector<std::vector<CashFlow> >
    - front
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - iterator::product::numberOfProducts
    - std::vector<CashFlow>
    - end
    - insert
    - QL_REQUIRE
    - iterator::product::possibleCashFlowTimes
    - std::vector::begin
    - std::vector::end
    - std::unique
    - iterator::product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite::finalize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: QuantLib::MarketModelComposite::size
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::MarketModelComposite::size
    linkageType: ''
    returnType: Size
    signature: Size MarketModelComposite::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: '& MarketModelComposite::item(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: MarketModelMultiProduct & MarketModelComposite::item(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& MarketModelComposite::item(Size i)'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: MarketModelMultiProduct & MarketModelComposite::item(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::MarketModelComposite::multiplier
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real MarketModelComposite::multiplier(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: '& MarketModelComposite::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelComposite::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:31,1
    - Dst: terminalMeasure
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::MarketModelComposite::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - terminalMeasure
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelComposite::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::MarketModelComposite::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelComposite::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::reset
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::MarketModelComposite::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - product::reset
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:53,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:55,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:58,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:58,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:59,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:61,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:63,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:66,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:67,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:68,1
    - Dst: back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:70,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' product'
    - multiplier
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 71
    functionName: QuantLib::MarketModelComposite::add
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 1
    functionsReached:
    - EvolutionDescription::rateTimes
    - QL_REQUIRE
    - evolution
    - empty
    - begin
    - QuantLib::MarketModelComposite::size
    - std::equal
    - push_back
    - EvolutionDescription::evolutionTimes
    - emplace_back
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void MarketModelComposite::add(\n                                const
      Clone<MarketModelMultiProduct>& product,\n                                Real
      multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelComposite::add
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' product'
    - multiplier
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::MarketModelComposite::subtract
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarketModelComposite::add
    linkageType: ''
    returnType: void
    signature: "void MarketModelComposite::subtract(\n                                const
      Clone<MarketModelMultiProduct>& product,\n                                Real
      multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:81,1
    - Dst: front
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:86,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:86,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:87,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:95,1
    - Dst: iterator::product::evolution
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:96,1
    - Dst: iterator::product::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:99,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:100,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:101,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:102,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:105,1
    - Dst: iterator::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:105,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:107,1
    - Dst: iterator::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:108,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:109,1
    - Dst: iterator::product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:109,1
    - Dst: std::sort
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:115,1
    - Dst: std::unique
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:116,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:119,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:120,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:122,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:122,1
    - Dst: iterator::product::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:124,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:125,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:125,1
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:126,1
    - Dst: std::find
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:128,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:129,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 137
    functionName: QuantLib::MarketModelComposite::finalize
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - iterator::product::evolution
    - std::vector::insert
    - evolution
    - empty
    - std::sort
    - begin
    - QuantLib::MarketModelComposite::size
    - std::vector<Size>
    - std::find
    - std::vector<std::vector<CashFlow> >
    - front
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - iterator::product::numberOfProducts
    - std::vector<CashFlow>
    - end
    - insert
    - QL_REQUIRE
    - iterator::product::possibleCashFlowTimes
    - std::vector::begin
    - std::vector::end
    - std::unique
    - iterator::product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite::finalize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelComposite::size
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: QuantLib::MarketModelComposite::size
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::MarketModelComposite::size
    linkageType: ''
    returnType: Size
    signature: Size MarketModelComposite::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: '& MarketModelComposite::item(Size i) const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: MarketModelMultiProduct & MarketModelComposite::item(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: '& MarketModelComposite::item(Size i)'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: MarketModelMultiProduct & MarketModelComposite::item(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::MarketModelComposite::multiplier
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real MarketModelComposite::multiplier(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::MultiProductComposite::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - product::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size MultiProductComposite::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:35,1
    - Dst: product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::MultiProductComposite::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MultiProductComposite::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:48,1
    - Dst: auto::product::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:51,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:57,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:71,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:75,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiProductComposite::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::product::nextTimeStep
    - begin
    - end
    - auto::product::numberOfProducts
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: "bool MultiProductComposite::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:83,1
    - Dst: MultiProductComposite::MultiProductComposite
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiProductComposite::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiProductComposite::MultiProductComposite
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiProductComposite::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::MultiProductComposite::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - product::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size MultiProductComposite::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:35,1
    - Dst: product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::MultiProductComposite::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MultiProductComposite::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:48,1
    - Dst: auto::product::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:51,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:57,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:71,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:75,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiProductComposite::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::product::nextTimeStep
    - begin
    - end
    - auto::product::numberOfProducts
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: "bool MultiProductComposite::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:83,1
    - Dst: MultiProductComposite::MultiProductComposite
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiProductComposite::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiProductComposite::MultiProductComposite
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiProductComposite::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::MarketModelComposite::MarketModelComposite
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::MarketModelComposite::MarketModelComposite
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/compositeproduct.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelComposite()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:31,1
    - Dst: std::make_pair<Size,Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:34,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rateTimes
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiProductOneStep::MultiProductOneStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached:
    - EvolutionDescription
    - std::make_pair<Size,Size>
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiProductOneStep::MultiProductOneStep(std::vector<Time> rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: '& MultiProductOneStep::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductOneStep::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiProductOneStep::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductOneStep::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:31,1
    - Dst: std::make_pair<Size,Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:34,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rateTimes
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiProductOneStep::MultiProductOneStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached:
    - EvolutionDescription
    - std::make_pair<Size,Size>
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiProductOneStep::MultiProductOneStep(std::vector<Time> rateTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: '& MultiProductOneStep::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductOneStep::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiProductOneStep::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multiproductonestep.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector<Size>
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductOneStep::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::SingleProductComposite::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SingleProductComposite::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::SingleProductComposite::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size SingleProductComposite::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:45,1
    - Dst: auto::product::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:48,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:54,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 71
    functionName: QuantLib::SingleProductComposite::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::product::nextTimeStep
    - begin
    - end
    - auto::product::numberOfProducts
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: "bool SingleProductComposite::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:75,1
    - Dst: SingleProductComposite::SingleProductComposite
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::SingleProductComposite::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - SingleProductComposite::SingleProductComposite
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> SingleProductComposite::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::SingleProductComposite::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SingleProductComposite::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: product::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::SingleProductComposite::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - product::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size SingleProductComposite::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:45,1
    - Dst: auto::product::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:48,1
    - Dst: auto::product::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:54,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 71
    functionName: QuantLib::SingleProductComposite::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - auto::product::nextTimeStep
    - begin
    - end
    - auto::product::numberOfProducts
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: "bool SingleProductComposite::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:75,1
    - Dst: SingleProductComposite::SingleProductComposite
      Src: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::SingleProductComposite::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/singleproductcomposite.cpp
    functionUses: 0
    functionsReached:
    - SingleProductComposite::SingleProductComposite
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> SingleProductComposite::clone()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:32,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:33,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:34,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:35,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:36,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:39,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:40,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:50,1
    - Dst: MarketModelPathwiseCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:59,1
    - Dst: relevantTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:60,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:62,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:65,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:68,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:69,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:72,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:73,1
    - Dst: CashFlow::amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:76,1
    - Dst: EvolutionDescription::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:76,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:79,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - ' underlying'
    - ' strategy'
    - rebate
    argTypes:
    - Clone<MarketModelPathwiseMultiProduct>
    - Clone<ExerciseStrategy<CurveState> >
    - Clone<MarketModelPathwiseMultiProduct>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 80
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
    - MarketModelPathwiseCashRebate
    - exerciseTimes
    - evolution
    - empty
    - CashFlow::amount::resize
    - begin
    - relevantTimes
    - std::vector<Size>
    - size
    - std::vector<std::vector<CashFlow> >
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - EvolutionDescription::evolutionTimes
    - std::equal
    - EvolutionDescription::numberOfRates
    - std::vector<CashFlow>
    - end
    - insert
    - QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    - QL_REQUIRE
    - QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    - std::vector::begin
    - std::move
    - std::vector::end
    - QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: void
    signature: "void CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct(\n
      \       const Clone<MarketModelPathwiseMultiProduct>& underlying,\n        const
      Clone<ExerciseStrategy<CurveState> >& strategy,\n        Clone<MarketModelPathwiseMultiProduct>
      rebate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    linkageType: ''
    returnType: bool
    signature: bool CallSpecifiedPathwiseMultiProduct::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> CallSpecifiedPathwiseMultiProduct::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: '& CallSpecifiedPathwiseMultiProduct::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & CallSpecifiedPathwiseMultiProduct::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedPathwiseMultiProduct::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:103,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:103,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:108,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:109,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::reset
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::reset()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:129,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:133,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:139,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:145,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:148,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:153,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 154
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
    - exercise
    - nextStep
    - size
    - evolutionTimes
    linkageType: ''
    returnType: bool
    signature: "bool CallSpecifiedPathwiseMultiProduct::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:158,1
    - Dst: CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> CallSpecifiedPathwiseMultiProduct::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: '& CallSpecifiedPathwiseMultiProduct::underlying() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelPathwiseMultiProduct
    signature: MarketModelPathwiseMultiProduct & CallSpecifiedPathwiseMultiProduct::underlying()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: '& CallSpecifiedPathwiseMultiProduct::strategy() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExerciseStrategy<CurveState>
    signature: ExerciseStrategy<CurveState> & CallSpecifiedPathwiseMultiProduct::strategy()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& CallSpecifiedPathwiseMultiProduct::rebate() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelPathwiseMultiProduct
    signature: MarketModelPathwiseMultiProduct & CallSpecifiedPathwiseMultiProduct::rebate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::enableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::enableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::disableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::disableCallability()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:32,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:33,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:34,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:35,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:36,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:39,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:40,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:42,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:50,1
    - Dst: MarketModelPathwiseCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:59,1
    - Dst: relevantTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:60,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:62,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:65,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:68,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:69,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:70,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:72,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:73,1
    - Dst: CashFlow::amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:76,1
    - Dst: EvolutionDescription::numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:76,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:79,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - ' underlying'
    - ' strategy'
    - rebate
    argTypes:
    - Clone<MarketModelPathwiseMultiProduct>
    - Clone<ExerciseStrategy<CurveState> >
    - Clone<MarketModelPathwiseMultiProduct>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 80
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
    - MarketModelPathwiseCashRebate
    - exerciseTimes
    - evolution
    - empty
    - CashFlow::amount::resize
    - begin
    - relevantTimes
    - std::vector<Size>
    - size
    - std::vector<std::vector<CashFlow> >
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - EvolutionDescription::evolutionTimes
    - std::equal
    - EvolutionDescription::numberOfRates
    - std::vector<CashFlow>
    - end
    - insert
    - QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    - QL_REQUIRE
    - QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    - std::vector::begin
    - std::move
    - std::vector::end
    - QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: void
    signature: "void CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct(\n
      \       const Clone<MarketModelPathwiseMultiProduct>& underlying,\n        const
      Clone<ExerciseStrategy<CurveState> >& strategy,\n        Clone<MarketModelPathwiseMultiProduct>
      rebate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::alreadyDeflated
    linkageType: ''
    returnType: bool
    signature: bool CallSpecifiedPathwiseMultiProduct::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> CallSpecifiedPathwiseMultiProduct::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: '& CallSpecifiedPathwiseMultiProduct::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & CallSpecifiedPathwiseMultiProduct::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> CallSpecifiedPathwiseMultiProduct::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedPathwiseMultiProduct::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:103,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:103,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 4
    functionsReached:
    - std::max
    - QuantLib::CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedPathwiseMultiProduct::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:108,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:109,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::reset
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::reset()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:129,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:133,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:139,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:145,1
    - Dst: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:148,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:153,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 154
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedPathwiseMultiProduct::nextTimeStep
    - exercise
    - nextStep
    - size
    - evolutionTimes
    linkageType: ''
    returnType: bool
    signature: "bool CallSpecifiedPathwiseMultiProduct::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:158,1
    - Dst: CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - CallSpecifiedPathwiseMultiProduct::CallSpecifiedPathwiseMultiProduct
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> CallSpecifiedPathwiseMultiProduct::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: '& CallSpecifiedPathwiseMultiProduct::underlying() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelPathwiseMultiProduct
    signature: MarketModelPathwiseMultiProduct & CallSpecifiedPathwiseMultiProduct::underlying()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: '& CallSpecifiedPathwiseMultiProduct::strategy() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExerciseStrategy<CurveState>
    signature: ExerciseStrategy<CurveState> & CallSpecifiedPathwiseMultiProduct::strategy()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: '& CallSpecifiedPathwiseMultiProduct::rebate() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelPathwiseMultiProduct
    signature: MarketModelPathwiseMultiProduct & CallSpecifiedPathwiseMultiProduct::rebate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::enableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::enableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::CallSpecifiedPathwiseMultiProduct::disableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcallspecified.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedPathwiseMultiProduct::disableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~MarketModelPathwiseSwap() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseSwap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~MarketModelPathwiseSwap() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseSwap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseInverseFloater::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseInverseFloater::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:47,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:57,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 8
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - ' floatingAccruals'
    - ' fixedStrikes'
    - ' fixedMultipliers'
    - ' floatingSpreads'
    - ' paymentTimes'
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 61
    functionName: QuantLib::MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater(\n
      \       const std::vector<Time>& rateTimes,\n        std::vector<Real> fixedAccruals,\n
      \       const std::vector<Real>& floatingAccruals,\n        const std::vector<Real>&
      fixedStrikes,\n        const std::vector<Real>& fixedMultipliers,\n        const
      std::vector<Real>& floatingSpreads,\n        const std::vector<Time>& paymentTimes,\n
      \       bool payer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 99
    functionName: QuantLib::MarketModelPathwiseInverseFloater::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseInverseFloater::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:104,1
    - Dst: MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: QuantLib::MarketModelPathwiseInverseFloater::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseInverseFloater::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: QuantLib::MarketModelPathwiseInverseFloater::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseInverseFloater::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: '& MarketModelPathwiseInverseFloater::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseInverseFloater::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::MarketModelPathwiseInverseFloater::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseInverseFloater::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::MarketModelPathwiseInverseFloater::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseInverseFloater::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::MarketModelPathwiseInverseFloater::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseInverseFloater::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MarketModelPathwiseInverseFloater::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseInverseFloater::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseInverseFloater::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseInverseFloater::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:47,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:54,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:57,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 8
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - ' floatingAccruals'
    - ' fixedStrikes'
    - ' fixedMultipliers'
    - ' floatingSpreads'
    - ' paymentTimes'
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 61
    functionName: QuantLib::MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::move
    - std::vector::pop_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater(\n
      \       const std::vector<Time>& rateTimes,\n        std::vector<Real> fixedAccruals,\n
      \       const std::vector<Real>& floatingAccruals,\n        const std::vector<Real>&
      fixedStrikes,\n        const std::vector<Real>& fixedMultipliers,\n        const
      std::vector<Real>& floatingSpreads,\n        const std::vector<Time>& paymentTimes,\n
      \       bool payer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 99
    functionName: QuantLib::MarketModelPathwiseInverseFloater::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseInverseFloater::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:104,1
    - Dst: MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: QuantLib::MarketModelPathwiseInverseFloater::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseInverseFloater::MarketModelPathwiseInverseFloater
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseInverseFloater::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: QuantLib::MarketModelPathwiseInverseFloater::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseInverseFloater::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: '& MarketModelPathwiseInverseFloater::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseInverseFloater::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::MarketModelPathwiseInverseFloater::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseInverseFloater::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::MarketModelPathwiseInverseFloater::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseInverseFloater::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::MarketModelPathwiseInverseFloater::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseInverseFloater::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MarketModelPathwiseInverseFloater::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseInverseFloater::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseCashRebate::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCashRebate::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:39,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - evolution
    - ' paymentTimes'
    - amounts
    - numberOfProducts
    argTypes:
    - EvolutionDescription
    - std::vector<Time>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 53
    functionName: QuantLib::MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - evolutionTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate(\n
      \       EvolutionDescription evolution,\n        const std::vector<Time>& paymentTimes,\n
      \       Matrix amounts,\n        Size numberOfProducts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::MarketModelPathwiseCashRebate::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCashRebate::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::MarketModelPathwiseCashRebate::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCashRebate::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MarketModelPathwiseCashRebate::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCashRebate::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::MarketModelPathwiseCashRebate::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCashRebate::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::MarketModelPathwiseCashRebate::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCashRebate::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: '& MarketModelPathwiseCashRebate::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCashRebate::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: QuantLib::MarketModelPathwiseCashRebate::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCashRebate::nextTimeStep(\n            const
      CurveState&,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:111,1
    - Dst: MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: QuantLib::MarketModelPathwiseCashRebate::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCashRebate::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseCashRebate::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCashRebate::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:39,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - evolution
    - ' paymentTimes'
    - amounts
    - numberOfProducts
    argTypes:
    - EvolutionDescription
    - std::vector<Time>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 53
    functionName: QuantLib::MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - evolutionTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate(\n
      \       EvolutionDescription evolution,\n        const std::vector<Time>& paymentTimes,\n
      \       Matrix amounts,\n        Size numberOfProducts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::MarketModelPathwiseCashRebate::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCashRebate::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::MarketModelPathwiseCashRebate::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCashRebate::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MarketModelPathwiseCashRebate::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCashRebate::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::MarketModelPathwiseCashRebate::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCashRebate::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::MarketModelPathwiseCashRebate::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCashRebate::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: '& MarketModelPathwiseCashRebate::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCashRebate::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: QuantLib::MarketModelPathwiseCashRebate::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - numberOfRates
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCashRebate::nextTimeStep(\n            const
      CurveState&,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:111,1
    - Dst: MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionName: QuantLib::MarketModelPathwiseCashRebate::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcashrebate.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseCashRebate::MarketModelPathwiseCashRebate
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCashRebate::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~MarketModelPathwiseInverseFloater() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseInverseFloater() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~MarketModelPathwiseInverseFloater() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseInverseFloater() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::MarketModelPathwiseSwap::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseSwap::alreadyDeflated() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:43,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:50,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:53,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:59,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' strikes'
    - multiplier
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Rate>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 64
    functionName: QuantLib::MarketModelPathwiseSwap::MarketModelPathwiseSwap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseSwap::MarketModelPathwiseSwap(const std::vector<Time>&
      rateTimes,\n                         const std::vector<Real>& accruals,\n                        const
      std::vector<Rate>& strikes, \n                        Real multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 86
    functionName: QuantLib::MarketModelPathwiseSwap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseSwap::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:91,1
    - Dst: MarketModelPathwiseSwap::MarketModelPathwiseSwap
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::MarketModelPathwiseSwap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseSwap::MarketModelPathwiseSwap
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseSwap::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 101
    functionName: QuantLib::MarketModelPathwiseSwap::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseSwap::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: '& MarketModelPathwiseSwap::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseSwap::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::MarketModelPathwiseSwap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseSwap::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::MarketModelPathwiseSwap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseSwap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::MarketModelPathwiseSwap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseSwap::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::MarketModelPathwiseSwap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseSwap::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::MarketModelPathwiseSwap::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseSwap::alreadyDeflated() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:43,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:50,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:53,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:59,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' strikes'
    - multiplier
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Rate>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 64
    functionName: QuantLib::MarketModelPathwiseSwap::MarketModelPathwiseSwap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseSwap::MarketModelPathwiseSwap(const std::vector<Time>&
      rateTimes,\n                         const std::vector<Real>& accruals,\n                        const
      std::vector<Rate>& strikes, \n                        Real multiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 86
    functionName: QuantLib::MarketModelPathwiseSwap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseSwap::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:91,1
    - Dst: MarketModelPathwiseSwap::MarketModelPathwiseSwap
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::MarketModelPathwiseSwap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseSwap::MarketModelPathwiseSwap
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseSwap::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 101
    functionName: QuantLib::MarketModelPathwiseSwap::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseSwap::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: '& MarketModelPathwiseSwap::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseSwap::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::MarketModelPathwiseSwap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseSwap::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::MarketModelPathwiseSwap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseSwap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::MarketModelPathwiseSwap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseSwap::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::MarketModelPathwiseSwap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseSwap::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCoterminalSwaptionsDeflated::alreadyDeflated()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:36,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:38,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:42,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:45,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated(const
      std::vector<Time>& rateTimes,\n                        const std::vector<Rate>&
      strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:58,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:61,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:65,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:66,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:76,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:78,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:81,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 87
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - coterminalSwapRate
    - begin
    - discountRatio
    - size
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCoterminalSwaptionsDeflated::nextTimeStep(\n
      \           const CurveState& currentState,\n            std::vector<Size>&
      numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:92,1
    - Dst: MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCoterminalSwaptionsDeflated::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCoterminalSwaptionsDeflated::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: '& MarketModelPathwiseCoterminalSwaptionsDeflated::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCoterminalSwaptionsDeflated::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCoterminalSwaptionsDeflated::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsDeflated::numberOfProducts()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsDeflated::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCoterminalSwaptionsDeflated::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::alreadyDeflated()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:144,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:146,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:150,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:153,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:153,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' strikes'
    - bumpSize
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 159
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated(const
      std::vector<Time>& rateTimes,\n                                                                const
      std::vector<Rate>& strikes, \n                                                                Real
      bumpSize)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:166,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:169,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:173,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:173,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:174,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:184,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:186,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:190,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:192,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:193,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:196,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:207,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 208
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRates
    - coterminalSwapRate
    - setOnForwardRates
    - begin
    - size
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::nextTimeStep(\n
      \           const CurveState& currentState,\n            std::vector<Size>&
      numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:213,1
    - Dst: MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: '& MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::evolution()
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::numberOfProducts()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCoterminalSwaptionsDeflated::alreadyDeflated()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:36,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:38,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:42,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:45,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' rateTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated(const
      std::vector<Time>& rateTimes,\n                        const std::vector<Rate>&
      strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:58,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:61,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:65,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:65,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:66,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:76,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:78,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:81,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 87
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - coterminalSwapRate
    - begin
    - discountRatio
    - size
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCoterminalSwaptionsDeflated::nextTimeStep(\n
      \           const CurveState& currentState,\n            std::vector<Size>&
      numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:92,1
    - Dst: MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseCoterminalSwaptionsDeflated::MarketModelPathwiseCoterminalSwaptionsDeflated
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCoterminalSwaptionsDeflated::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCoterminalSwaptionsDeflated::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: '& MarketModelPathwiseCoterminalSwaptionsDeflated::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCoterminalSwaptionsDeflated::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCoterminalSwaptionsDeflated::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsDeflated::numberOfProducts()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsDeflated::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsDeflated::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCoterminalSwaptionsDeflated::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::alreadyDeflated()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:144,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:146,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:150,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:153,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:153,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' strikes'
    - bumpSize
    argTypes:
    - std::vector<Time>
    - std::vector<Rate>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 159
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated(const
      std::vector<Time>& rateTimes,\n                                                                const
      std::vector<Rate>& strikes, \n                                                                Real
      bumpSize)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:166,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:169,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:173,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:173,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:174,1
    - Dst: forwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:184,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:186,1
    - Dst: setOnForwardRates
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:190,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:192,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:193,1
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:196,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:207,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 208
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRates
    - coterminalSwapRate
    - setOnForwardRates
    - begin
    - size
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::nextTimeStep(\n
      \           const CurveState& currentState,\n            std::vector<Size>&
      numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:213,1
    - Dst: MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: '& MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::evolution()
      const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::numberOfProducts()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseCoterminalSwaptionsNumericalDeflated::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~MarketModelPathwiseCoterminalSwaptionsDeflated() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseCoterminalSwaptionsDeflated() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: ~MarketModelPathwiseCoterminalSwaptionsNumericalDeflated() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseCoterminalSwaptionsNumericalDeflated() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~MarketModelPathwiseCoterminalSwaptionsDeflated() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseCoterminalSwaptionsDeflated() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: ~MarketModelPathwiseCoterminalSwaptionsNumericalDeflated() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseCoterminalSwaptionsNumericalDeflated() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiCaplet::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:42,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:44,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:45,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:58,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 64
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        const std::vector<Rate>&
      strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:74,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:79,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiCaplet::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:97,1
    - Dst: MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiCaplet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiCaplet::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: '& MarketModelPathwiseMultiCaplet::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiCaplet::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiCaplet::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiCaplet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiCaplet::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiCaplet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiDeflatedCaplet::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:152,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:154,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:155,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:159,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:162,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:168,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:168,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 174
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        const std::vector<Rate>&
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:184,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:186,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:187,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:191,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:197,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - strike
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 206
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - checkIncreasingTimes
    - EvolutionDescription
    - begin
    - std::vector::pop_back
    - end
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        Rate strike)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:214,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:217,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:219,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:219,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:220,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:228,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 239
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - discountRatio
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiDeflatedCaplet::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:244,1
    - Dst: MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiDeflatedCaplet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 254
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiDeflatedCaplet::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionName: '& MarketModelPathwiseMultiDeflatedCaplet::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiDeflatedCaplet::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiDeflatedCaplet::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCaplet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCaplet::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiDeflatedCaplet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:288,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:289,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:290,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:292,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:293,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:297,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:298,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:300,1
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:300,1
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:301,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - strike
    - startsAndEnds
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Rate
    - std::vector<std::pair<Size, Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 304
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - size
    - amount::resize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Real>&
      accruals,\n        const std::vector<Time>& paymentTimes,\n        Rate strike,\n
      \       std::vector<std::pair<Size, Size> > startsAndEnds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: '& MarketModelPathwiseMultiDeflatedCap::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiDeflatedCap::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiDeflatedCap::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiDeflatedCap::reset()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:361,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 373
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiDeflatedCap::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:378,1
    - Dst: MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 379
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiDeflatedCap::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiCaplet::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:42,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:44,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:45,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:58,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 64
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        const std::vector<Rate>&
      strikes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:74,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:79,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiCaplet::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:97,1
    - Dst: MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseMultiCaplet::MarketModelPathwiseMultiCaplet
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiCaplet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiCaplet::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: '& MarketModelPathwiseMultiCaplet::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiCaplet::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiCaplet::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiCaplet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiCaplet::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::MarketModelPathwiseMultiCaplet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiCaplet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiDeflatedCaplet::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:152,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:154,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:155,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:159,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:162,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:168,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:168,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - ' strikes'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 174
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - EvolutionDescription
    - std::vector::pop_back
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        const std::vector<Rate>&
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:184,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:186,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:187,1
    - Dst: std::vector::pop_back
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:191,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:197,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:197,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:201,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - strike
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 206
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - checkIncreasingTimes
    - EvolutionDescription
    - begin
    - std::vector::pop_back
    - end
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet(const
      std::vector<Time>& rateTimes,\n        const std::vector<Real>& accruals,\n
      \       const std::vector<Time>& paymentTimes,\n        Rate strike)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:214,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:217,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:219,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:219,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:220,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:228,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 239
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - discountRatio
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiDeflatedCaplet::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:244,1
    - Dst: MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    - MarketModelPathwiseMultiDeflatedCaplet::MarketModelPathwiseMultiDeflatedCaplet
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiDeflatedCaplet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 254
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiDeflatedCaplet::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionName: '& MarketModelPathwiseMultiDeflatedCaplet::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiDeflatedCaplet::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiDeflatedCaplet::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCaplet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCaplet::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCaplet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiDeflatedCaplet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:288,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:289,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:290,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:292,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:293,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:297,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:298,1
    - Dst: resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:300,1
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:300,1
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:301,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' paymentTimes'
    - strike
    - startsAndEnds
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Rate
    - std::vector<std::pair<Size, Size> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 304
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    - resize
    - std::move
    - size
    - amount::resize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Real>&
      accruals,\n        const std::vector<Time>& paymentTimes,\n        Rate strike,\n
      \       std::vector<std::pair<Size, Size> > startsAndEnds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelPathwiseMultiDeflatedCap::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: '& MarketModelPathwiseMultiDeflatedCap::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelPathwiseMultiDeflatedCap::evolution()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelPathwiseMultiDeflatedCap::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MarketModelPathwiseMultiDeflatedCap::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::alreadyDeflated
    linkageType: ''
    returnType: bool
    signature: bool MarketModelPathwiseMultiDeflatedCap::alreadyDeflated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::reset
    linkageType: ''
    returnType: void
    signature: void MarketModelPathwiseMultiDeflatedCap::reset()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:361,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 373
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::MarketModelPathwiseMultiDeflatedCap::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelPathwiseMultiDeflatedCap::nextTimeStep(\n        const
      CurveState& currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n
      \       std::vector<std::vector<MarketModelPathwiseMultiProduct::CashFlow> >&
      cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelPathwiseMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:378,1
    - Dst: MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
      Src: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 379
    functionName: QuantLib::MarketModelPathwiseMultiDeflatedCap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.cpp
    functionUses: 0
    functionsReached:
    - MarketModelPathwiseMultiDeflatedCap::MarketModelPathwiseMultiDeflatedCap
    - std::unique_ptr<MarketModelPathwiseMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelPathwiseMultiProduct>
    signature: std::unique_ptr<MarketModelPathwiseMultiProduct> MarketModelPathwiseMultiDeflatedCap::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~MarketModelPathwiseMultiCaplet() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiCaplet() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: ~MarketModelPathwiseMultiDeflatedCaplet() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiDeflatedCaplet() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: ~MarketModelPathwiseMultiDeflatedCap() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiDeflatedCap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: ~MarketModelPathwiseMultiCaplet() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiCaplet() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: ~MarketModelPathwiseMultiDeflatedCaplet() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiDeflatedCaplet() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: ~MarketModelPathwiseMultiDeflatedCap() override
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/pathwise/pathwiseproductcaplet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MarketModelPathwiseMultiDeflatedCap() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:30,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:35,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - evolution
    - ' paymentTimes'
    - amounts
    - numberOfProducts
    argTypes:
    - EvolutionDescription
    - std::vector<Time>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 44
    functionName: QuantLib::MarketModelCashRebate::MarketModelCashRebate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - evolutionTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelCashRebate::MarketModelCashRebate(EvolutionDescription
      evolution,\n                                                 const std::vector<Time>&
      paymentTimes,\n                                                 Matrix amounts,\n
      \                                                Size numberOfProducts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::MarketModelCashRebate::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelCashRebate::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::MarketModelCashRebate::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelCashRebate::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::MarketModelCashRebate::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelCashRebate::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::MarketModelCashRebate::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelCashRebate::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MarketModelCashRebate::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelCashRebate::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: '& MarketModelCashRebate::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelCashRebate::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: QuantLib::MarketModelCashRebate::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelCashRebate::nextTimeStep(\n            const CurveState&,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:99,1
    - Dst: MarketModelCashRebate::MarketModelCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::MarketModelCashRebate::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MarketModelCashRebate::MarketModelCashRebate
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MarketModelCashRebate::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:30,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:35,1
    - Dst: rows
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: columns
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - evolution
    - ' paymentTimes'
    - amounts
    - numberOfProducts
    argTypes:
    - EvolutionDescription
    - std::vector<Time>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 44
    functionName: QuantLib::MarketModelCashRebate::MarketModelCashRebate
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - rows
    - std::move
    - columns
    - size
    - evolutionTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MarketModelCashRebate::MarketModelCashRebate(EvolutionDescription
      evolution,\n                                                 const std::vector<Time>&
      paymentTimes,\n                                                 Matrix amounts,\n
      \                                                Size numberOfProducts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::MarketModelCashRebate::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MarketModelCashRebate::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::MarketModelCashRebate::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelCashRebate::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::MarketModelCashRebate::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MarketModelCashRebate::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::MarketModelCashRebate::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MarketModelCashRebate::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MarketModelCashRebate::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MarketModelCashRebate::suggestedNumeraires() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: '& MarketModelCashRebate::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MarketModelCashRebate::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: QuantLib::MarketModelCashRebate::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool MarketModelCashRebate::nextTimeStep(\n            const CurveState&,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:99,1
    - Dst: MarketModelCashRebate::MarketModelCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::MarketModelCashRebate::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/cashrebate.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MarketModelCashRebate::MarketModelCashRebate
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MarketModelCashRebate::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepNothing::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepNothing::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::MultiStepNothing::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepNothing::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepNothing::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepNothing::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepNothing::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepNothing::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepNothing::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Time>
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepNothing::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::MultiStepNothing::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepNothing::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepNothing::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepNothing::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepNothing::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepNothing::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:37,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' rateTimes'
    - startIndex
    - endIndex
    - ' payOff'
    argTypes:
    - std::vector<Time>
    - Size
    - Size
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiStepSwaption::MultiStepSwaption
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - size
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepSwaption::MultiStepSwaption(const std::vector<Time>&
      rateTimes,\n                                     Size startIndex,\n                                     Size
      endIndex,\n                                     ext::shared_ptr<StrikedTypePayoff>
      & payOff)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:53,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepSwaption::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - cmSwapAnnuity
    - cmSwapRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepSwaption::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:73,1
    - Dst: MultiStepSwaption::MultiStepSwaption
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepSwaption::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepSwaption::MultiStepSwaption
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepSwaption::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:37,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' rateTimes'
    - startIndex
    - endIndex
    - ' payOff'
    argTypes:
    - std::vector<Time>
    - Size
    - Size
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiStepSwaption::MultiStepSwaption
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - size
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepSwaption::MultiStepSwaption(const std::vector<Time>&
      rateTimes,\n                                     Size startIndex,\n                                     Size
      endIndex,\n                                     ext::shared_ptr<StrikedTypePayoff>
      & payOff)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cmSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:53,1
    - Dst: cmSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepSwaption::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - cmSwapAnnuity
    - cmSwapRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepSwaption::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:73,1
    - Dst: MultiStepSwaption::MultiStepSwaption
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepSwaption::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepSwaption::MultiStepSwaption
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepSwaption::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepRatchet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepRatchet::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiStepRatchet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepRatchet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiStepRatchet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepRatchet::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::MultiStepRatchet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepRatchet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepRatchet::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepRatchet::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiStepRatchet::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepRatchet::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiStepRatchet::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepRatchet::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::MultiStepRatchet::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepRatchet::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiStepSwaption::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepSwaption::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepSwaption::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwaption::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiStepSwaption::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwaption::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiStepSwaption::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepSwaption::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiStepSwaption::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepSwaption::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepSwaption::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwaption::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiStepSwaption::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwaption::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiStepSwaption::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepSwaption::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::MultiStepForwards::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepForwards::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepForwards::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MultiStepForwards::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiStepForwards::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepForwards::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepForwards::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepForwards::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::MultiStepForwards::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepForwards::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepForwards::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MultiStepForwards::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiStepForwards::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepForwards::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepForwards::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepForwards::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:29,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:34,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' innerProduct'
    argTypes:
    - MarketModelPathwiseMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - std::vector<MarketModelPathwiseMultiProduct::CashFlow>
    - QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    - QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    - amount::resize
    linkageType: ''
    returnType: void
    signature: void MultiProductPathwiseWrapper::MultiProductPathwiseWrapper(const
      MarketModelPathwiseMultiProduct& innerProduct)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiProductPathwiseWrapper::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size MultiProductPathwiseWrapper::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiProductPathwiseWrapper::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::reset
    linkageType: ''
    returnType: void
    signature: void MultiProductPathwiseWrapper::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiProductPathwiseWrapper::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool MultiProductPathwiseWrapper::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductPathwiseWrapper::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: '& MultiProductPathwiseWrapper::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductPathwiseWrapper::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:89,1
    - Dst: MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::MultiProductPathwiseWrapper::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiProductPathwiseWrapper::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: std::vector<MarketModelPathwiseMultiProduct::CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:28,1
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:29,1
    - Dst: amount::resize
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:34,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' innerProduct'
    argTypes:
    - MarketModelPathwiseMultiProduct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - std::vector<MarketModelPathwiseMultiProduct::CashFlow>
    - QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    - QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    - amount::resize
    linkageType: ''
    returnType: void
    signature: void MultiProductPathwiseWrapper::MultiProductPathwiseWrapper(const
      MarketModelPathwiseMultiProduct& innerProduct)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiProductPathwiseWrapper::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size MultiProductPathwiseWrapper::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size MultiProductPathwiseWrapper::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiProductPathwiseWrapper::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::reset
    linkageType: ''
    returnType: void
    signature: void MultiProductPathwiseWrapper::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiProductPathwiseWrapper::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::nextTimeStep
    linkageType: ''
    returnType: bool
    signature: "bool MultiProductPathwiseWrapper::nextTimeStep(\n                     const
      CurveState& currentState,\n                     std::vector<Size>& numberCashFlowsThisStep,\n
      \                    std::vector<std::vector<CashFlow> >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiProductPathwiseWrapper::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> MultiProductPathwiseWrapper::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: '& MultiProductPathwiseWrapper::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & MultiProductPathwiseWrapper::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:89,1
    - Dst: MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::MultiProductPathwiseWrapper::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteppathwisewrapper.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiProductPathwiseWrapper::MultiProductPathwiseWrapper
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiProductPathwiseWrapper::clone()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:31,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:32,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:33,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:34,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:35,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:36,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:40,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:50,1
    - Dst: MarketModelCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:60,1
    - Dst: relevantTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:61,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:63,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:68,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:71,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:72,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:73,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:74,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:76,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:77,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:79,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - ' underlying'
    - ' strategy'
    - rebate
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Clone<ExerciseStrategy<CurveState> >
    - Clone<MarketModelMultiProduct>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 81
    functionName: QuantLib::CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached:
    - exerciseTimes
    - evolution
    - empty
    - begin
    - relevantTimes
    - QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
    - std::vector<Size>
    - size
    - QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    - std::vector<std::vector<CashFlow> >
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - EvolutionDescription::evolutionTimes
    - std::equal
    - std::vector<CashFlow>
    - end
    - insert
    - QL_REQUIRE
    - QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    - MarketModelCashRebate
    - std::vector::begin
    - std::move
    - std::vector::end
    linkageType: ''
    returnType: void
    signature: "void CallSpecifiedMultiProduct::CallSpecifiedMultiProduct(\n        const
      Clone<MarketModelMultiProduct>& underlying,\n        const Clone<ExerciseStrategy<CurveState>
      >& strategy,\n        Clone<MarketModelMultiProduct> rebate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> CallSpecifiedMultiProduct::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: '& CallSpecifiedMultiProduct::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & CallSpecifiedMultiProduct::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> CallSpecifiedMultiProduct::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedMultiProduct::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:108,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:108,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:114,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:115,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionName: QuantLib::CallSpecifiedMultiProduct::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::reset()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:136,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:140,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:149,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:157,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:161,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:167,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 168
    functionName: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 9
    functionsReached:
    - exercise
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - nextStep
    - size
    - evolutionTimes
    linkageType: ''
    returnType: bool
    signature: "bool CallSpecifiedMultiProduct::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:173,1
    - Dst: CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::CallSpecifiedMultiProduct::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> CallSpecifiedMultiProduct::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "&\n    CallSpecifiedMultiProduct::underlying() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: "MarketModelMultiProduct &\n    CallSpecifiedMultiProduct::underlying()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "&\n    CallSpecifiedMultiProduct::strategy() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExerciseStrategy<CurveState>
    signature: "ExerciseStrategy<CurveState> &\n    CallSpecifiedMultiProduct::strategy()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "&\n    CallSpecifiedMultiProduct::rebate() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: "MarketModelMultiProduct &\n    CallSpecifiedMultiProduct::rebate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::CallSpecifiedMultiProduct::enableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::enableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: QuantLib::CallSpecifiedMultiProduct::disableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::disableCallability()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:31,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:32,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:33,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:34,1
    - Dst: EvolutionDescription::evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:35,1
    - Dst: exerciseTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:36,1
    - Dst: empty
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:38,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:40,1
    - Dst: EvolutionDescription::rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:42,1
    - Dst: std::equal
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:50,1
    - Dst: MarketModelCashRebate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:52,1
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:60,1
    - Dst: relevantTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:61,1
    - Dst: mergeTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:63,1
    - Dst: EvolutionDescription
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:68,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:71,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:72,1
    - Dst: insert
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:73,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:73,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:74,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:74,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:76,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:77,1
    - Dst: std::vector<std::vector<CashFlow> >
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:79,1
    - Dst: std::vector<CashFlow>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - ' underlying'
    - ' strategy'
    - rebate
    argTypes:
    - Clone<MarketModelMultiProduct>
    - Clone<ExerciseStrategy<CurveState> >
    - Clone<MarketModelMultiProduct>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 81
    functionName: QuantLib::CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached:
    - exerciseTimes
    - evolution
    - empty
    - begin
    - relevantTimes
    - QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
    - std::vector<Size>
    - size
    - QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    - std::vector<std::vector<CashFlow> >
    - EvolutionDescription::rateTimes
    - mergeTimes
    - EvolutionDescription
    - EvolutionDescription::evolutionTimes
    - std::equal
    - std::vector<CashFlow>
    - end
    - insert
    - QL_REQUIRE
    - QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    - MarketModelCashRebate
    - std::vector::begin
    - std::move
    - std::vector::end
    linkageType: ''
    returnType: void
    signature: "void CallSpecifiedMultiProduct::CallSpecifiedMultiProduct(\n        const
      Clone<MarketModelMultiProduct>& underlying,\n        const Clone<ExerciseStrategy<CurveState>
      >& strategy,\n        Clone<MarketModelMultiProduct> rebate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::suggestedNumeraires
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> CallSpecifiedMultiProduct::suggestedNumeraires()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: '& CallSpecifiedMultiProduct::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & CallSpecifiedMultiProduct::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::CallSpecifiedMultiProduct::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> CallSpecifiedMultiProduct::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::numberOfProducts
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedMultiProduct::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:108,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:108,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 4
    functionsReached:
    - std::max
    - QuantLib::CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep
    linkageType: ''
    returnType: Size
    signature: Size CallSpecifiedMultiProduct::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:114,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:115,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionName: QuantLib::CallSpecifiedMultiProduct::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::CallSpecifiedMultiProduct::reset
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::reset()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:136,1
    - Dst: exercise
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:140,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:149,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:157,1
    - Dst: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:161,1
    - Dst: evolutionTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:167,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - ' cashFlowsGenerated'
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 168
    functionName: QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 10
    functionsReached:
    - exercise
    - QuantLib::CallSpecifiedMultiProduct::nextTimeStep
    - nextStep
    - size
    - evolutionTimes
    linkageType: ''
    returnType: bool
    signature: "bool CallSpecifiedMultiProduct::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<CashFlow>
      >& cashFlowsGenerated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:173,1
    - Dst: CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::CallSpecifiedMultiProduct::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - CallSpecifiedMultiProduct::CallSpecifiedMultiProduct
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> CallSpecifiedMultiProduct::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "&\n    CallSpecifiedMultiProduct::underlying() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: "MarketModelMultiProduct &\n    CallSpecifiedMultiProduct::underlying()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "&\n    CallSpecifiedMultiProduct::strategy() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ExerciseStrategy<CurveState>
    signature: "ExerciseStrategy<CurveState> &\n    CallSpecifiedMultiProduct::strategy()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "&\n    CallSpecifiedMultiProduct::rebate() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelMultiProduct
    signature: "MarketModelMultiProduct &\n    CallSpecifiedMultiProduct::rebate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::CallSpecifiedMultiProduct::enableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::enableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: QuantLib::CallSpecifiedMultiProduct::disableCallability
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/callspecifiedmultiproduct.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CallSpecifiedMultiProduct::disableCallability()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:35,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 37
    functionName: QuantLib::MultiStepSwap::MultiStepSwap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepSwap::MultiStepSwap(const std::vector<Time>& rateTimes,\n
      \                                std::vector<Real> fixedAccruals,\n                                 std::vector<Real>
      floatingAccruals,\n                                 const std::vector<Time>&
      paymentTimes,\n                                 Real fixedRate,\n                                 bool
      payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepSwap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepSwap::nextTimeStep(\n            const CurveState& currentState,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:64,1
    - Dst: MultiStepSwap::MultiStepSwap
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::MultiStepSwap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - MultiStepSwap::MultiStepSwap
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepSwap::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:35,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 37
    functionName: QuantLib::MultiStepSwap::MultiStepSwap
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepSwap::MultiStepSwap(const std::vector<Time>& rateTimes,\n
      \                                std::vector<Real> fixedAccruals,\n                                 std::vector<Real>
      floatingAccruals,\n                                 const std::vector<Time>&
      paymentTimes,\n                                 Real fixedRate,\n                                 bool
      payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepSwap::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepSwap::nextTimeStep(\n            const CurveState& currentState,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:64,1
    - Dst: MultiStepSwap::MultiStepSwap
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::MultiStepSwap::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.cpp
    functionUses: 0
    functionsReached:
    - MultiStepSwap::MultiStepSwap
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepSwap::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:34,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiStepOptionlets::MultiStepOptionlets
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepOptionlets::MultiStepOptionlets(const std::vector<Time>&
      rateTimes,\n                                             std::vector<Real> accruals,\n
      \                                            const std::vector<Time>& paymentTimes,\n
      \                                            std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:43,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: QuantLib::MultiStepOptionlets::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepOptionlets::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:57,1
    - Dst: MultiStepOptionlets::MultiStepOptionlets
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::MultiStepOptionlets::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepOptionlets::MultiStepOptionlets
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepOptionlets::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:34,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiStepOptionlets::MultiStepOptionlets
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepOptionlets::MultiStepOptionlets(const std::vector<Time>&
      rateTimes,\n                                             std::vector<Real> accruals,\n
      \                                            const std::vector<Time>& paymentTimes,\n
      \                                            std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:43,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: QuantLib::MultiStepOptionlets::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepOptionlets::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:57,1
    - Dst: MultiStepOptionlets::MultiStepOptionlets
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::MultiStepOptionlets::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepOptionlets::MultiStepOptionlets
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepOptionlets::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Time>&
      paymentTimes,\n        std::vector<ext::shared_ptr<StrikedTypePayoff> > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:46,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:47,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepCoterminalSwaptions::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - coterminalSwapRate
    - begin
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoterminalSwaptions::nextTimeStep(\n            const
      CurveState& currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n
      \           std::vector<std::vector<MarketModelMultiProduct::CashFlow> >&\n
      \                                                              genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:59,1
    - Dst: MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoterminalSwaptions::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoterminalSwaptions::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' rateTimes'
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Time>&
      paymentTimes,\n        std::vector<ext::shared_ptr<StrikedTypePayoff> > payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coterminalSwapRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:46,1
    - Dst: coterminalSwapAnnuity
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:47,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepCoterminalSwaptions::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - coterminalSwapRate
    - begin
    - end
    - coterminalSwapAnnuity
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoterminalSwaptions::nextTimeStep(\n            const
      CurveState& currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n
      \           std::vector<std::vector<MarketModelMultiProduct::CashFlow> >&\n
      \                                                              genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:59,1
    - Dst: MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoterminalSwaptions::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepCoterminalSwaptions::MultiStepCoterminalSwaptions
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoterminalSwaptions::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExerciseAdapter::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::ExerciseAdapter::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExerciseAdapter::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ExerciseAdapter::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::ExerciseAdapter::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExerciseAdapter::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& ExerciseAdapter::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & ExerciseAdapter::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::ExerciseAdapter::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExerciseAdapter::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExerciseAdapter::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::ExerciseAdapter::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExerciseAdapter::reset
    linkageType: ''
    returnType: void
    signature: void ExerciseAdapter::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: "&\n    ExerciseAdapter::exerciseValue() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelExerciseValue
    signature: "MarketModelExerciseValue &\n    ExerciseAdapter::exerciseValue() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExerciseAdapter::possibleCashFlowTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::ExerciseAdapter::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExerciseAdapter::possibleCashFlowTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> ExerciseAdapter::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::ExerciseAdapter::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExerciseAdapter::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: '& ExerciseAdapter::evolution() const'
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached:
    - evolution
    linkageType: ''
    returnType: EvolutionDescription
    signature: EvolutionDescription & ExerciseAdapter::evolution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::ExerciseAdapter::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExerciseAdapter::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExerciseAdapter::reset
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::ExerciseAdapter::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExerciseAdapter::reset
    linkageType: ''
    returnType: void
    signature: void ExerciseAdapter::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: "&\n    ExerciseAdapter::exerciseValue() const"
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MarketModelExerciseValue
    signature: "MarketModelExerciseValue &\n    ExerciseAdapter::exerciseValue() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoinitialSwaps::MultiStepCoinitialSwaps(const std::vector<Time>&
      rateTimes,\n                                                     std::vector<Real>
      fixedAccruals,\n                                                     std::vector<Real>
      floatingAccruals,\n                                                     const
      std::vector<Time>& paymentTimes,\n                                                     Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: QuantLib::MultiStepCoinitialSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoinitialSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:67,1
    - Dst: MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepCoinitialSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoinitialSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoinitialSwaps::MultiStepCoinitialSwaps(const std::vector<Time>&
      rateTimes,\n                                                     std::vector<Real>
      fixedAccruals,\n                                                     std::vector<Real>
      floatingAccruals,\n                                                     const
      std::vector<Time>& paymentTimes,\n                                                     Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: QuantLib::MultiStepCoinitialSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoinitialSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:67,1
    - Dst: MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepCoinitialSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - MultiStepCoinitialSwaps::MultiStepCoinitialSwaps
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoinitialSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::MultiStepForwards::MultiStepForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepForwards::MultiStepForwards(const std::vector<Time>&
      rateTimes,\n                                         std::vector<Real> accruals,\n
      \                                        const std::vector<Time>& paymentTimes,\n
      \                                        std::vector<Rate> strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:41,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: QuantLib::MultiStepForwards::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepForwards::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:54,1
    - Dst: MultiStepForwards::MultiStepForwards
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepForwards::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - MultiStepForwards::MultiStepForwards
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepForwards::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::MultiStepForwards::MultiStepForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepForwards::MultiStepForwards(const std::vector<Time>&
      rateTimes,\n                                         std::vector<Real> accruals,\n
      \                                        const std::vector<Time>& paymentTimes,\n
      \                                        std::vector<Rate> strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:41,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: QuantLib::MultiStepForwards::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepForwards::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:54,1
    - Dst: MultiStepForwards::MultiStepForwards
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::MultiStepForwards::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepforwards.cpp
    functionUses: 0
    functionsReached:
    - MultiStepForwards::MultiStepForwards
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepForwards::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoterminalSwaps::MultiStepCoterminalSwaps(const std::vector<Time>&
      rateTimes,\n                                                       std::vector<Real>
      fixedAccruals,\n                                                       std::vector<Real>
      floatingAccruals,\n                                                       const
      std::vector<Time>& paymentTimes,\n                                                       Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepCoterminalSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoterminalSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:66,1
    - Dst: MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiStepCoterminalSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoterminalSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepCoterminalSwaps::MultiStepCoterminalSwaps(const std::vector<Time>&
      rateTimes,\n                                                       std::vector<Real>
      fixedAccruals,\n                                                       std::vector<Real>
      floatingAccruals,\n                                                       const
      std::vector<Time>& paymentTimes,\n                                                       Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepCoterminalSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepCoterminalSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:66,1
    - Dst: MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::MultiStepCoterminalSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - MultiStepCoterminalSwaps::MultiStepCoterminalSwaps
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepCoterminalSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepSwap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepSwap::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepSwap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepSwap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwap::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiStepSwap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepSwap::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepSwap::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepSwap::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepSwap::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwap::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepSwap::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepSwap::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::MultiStepSwap::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepSwap::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:27,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' exercise'
    - numberOfProducts
    argTypes:
    - Clone<MarketModelExerciseValue>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::ExerciseAdapter::ExerciseAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void ExerciseAdapter::ExerciseAdapter(\n                              const
      Clone<MarketModelExerciseValue>& exercise,\n                              Size
      numberOfProducts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:36,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:36,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:37,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:40,1
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                         generatedCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::ExerciseAdapter::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - value
    - begin
    - nextStep
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool ExerciseAdapter::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                         generatedCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:54,1
    - Dst: ExerciseAdapter::ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::ExerciseAdapter::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - ExerciseAdapter::ExerciseAdapter
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> ExerciseAdapter::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evolution
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:27,1
    - Dst: isExerciseTime
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' exercise'
    - numberOfProducts
    argTypes:
    - Clone<MarketModelExerciseValue>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::ExerciseAdapter::ExerciseAdapter
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - evolution
    - isExerciseTime
    linkageType: ''
    returnType: void
    signature: "void ExerciseAdapter::ExerciseAdapter(\n                              const
      Clone<MarketModelExerciseValue>& exercise,\n                              Size
      numberOfProducts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:36,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:36,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:37,1
    - Dst: nextStep
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:40,1
    - Dst: value
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                         generatedCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::ExerciseAdapter::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - value
    - begin
    - nextStep
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool ExerciseAdapter::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                         generatedCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:54,1
    - Dst: ExerciseAdapter::ExerciseAdapter
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::ExerciseAdapter::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/exerciseadapter.cpp
    functionUses: 0
    functionsReached:
    - ExerciseAdapter::ExerciseAdapter
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> ExerciseAdapter::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepOptionlets::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepOptionlets::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepOptionlets::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MultiStepOptionlets::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepOptionlets::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepOptionlets::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::MultiStepOptionlets::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepOptionlets::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::MultiStepOptionlets::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepOptionlets::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepOptionlets::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size MultiStepOptionlets::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepOptionlets::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepOptionlets::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::MultiStepOptionlets::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepOptionlets::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoinitialSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoinitialSwaps::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepCoinitialSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoinitialSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepCoinitialSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoinitialSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoinitialSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoinitialSwaps::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepCoinitialSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoinitialSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepCoinitialSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoinitialSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoterminalSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoterminalSwaps::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepCoterminalSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepCoterminalSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoterminalSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::MultiStepCoterminalSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoterminalSwaps::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::MultiStepCoterminalSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepCoterminalSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoterminalSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepInverseFloater::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepInverseFloater::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepInverseFloater::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepInverseFloater::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::MultiStepInverseFloater::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepInverseFloater::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::MultiStepInverseFloater::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepInverseFloater::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::MultiStepInverseFloater::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepInverseFloater::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::MultiStepInverseFloater::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepInverseFloater::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::MultiStepInverseFloater::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepInverseFloater::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::MultiStepInverseFloater::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepInverseFloater::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:43,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 7
    argNames:
    - ' rateTimes'
    - ' forwardOptionPaymentTimes'
    - ' swaptionPaymentTimes'
    - forwardPayOffs
    - swapPayOffs
    - period
    - offset
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    - push_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Time>&
      forwardOptionPaymentTimes,\n        const std::vector<Time>& swaptionPaymentTimes,\n
      \       std::vector<ext::shared_ptr<StrikedTypePayoff> > forwardPayOffs,\n        std::vector<ext::shared_ptr<StrikedTypePayoff>
      > swapPayOffs,\n        Size period,\n        Size offset)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:82,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:86,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:100,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:105,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 131
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepPeriodCapletSwaptions::nextTimeStep(\n            const
      CurveState& currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n
      \           std::vector<std::vector<MarketModelMultiProduct::CashFlow> >&\n
      \                                                              genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:135,1
    - Dst: MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepPeriodCapletSwaptions::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:43,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 7
    argNames:
    - ' rateTimes'
    - ' forwardOptionPaymentTimes'
    - ' swaptionPaymentTimes'
    - forwardPayOffs
    - swapPayOffs
    - period
    - offset
    argTypes:
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    - std::vector<ext::shared_ptr<StrikedTypePayoff> >
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 68
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    - push_back
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions(\n
      \       const std::vector<Time>& rateTimes,\n        const std::vector<Time>&
      forwardOptionPaymentTimes,\n        const std::vector<Time>& swaptionPaymentTimes,\n
      \       std::vector<ext::shared_ptr<StrikedTypePayoff> > forwardPayOffs,\n        std::vector<ext::shared_ptr<StrikedTypePayoff>
      > swapPayOffs,\n        Size period,\n        Size offset)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:82,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:86,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:100,1
    - Dst: discountRatio
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:105,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 131
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - discountRatio
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepPeriodCapletSwaptions::nextTimeStep(\n            const
      CurveState& currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n
      \           std::vector<std::vector<MarketModelMultiProduct::CashFlow> >&\n
      \                                                              genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:135,1
    - Dst: MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepPeriodCapletSwaptions::MultiStepPeriodCapletSwaptions
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepPeriodCapletSwaptions::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::MultiStepCoterminalSwaptions::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoterminalSwaptions::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::MultiStepCoterminalSwaptions::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaptions::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiStepCoterminalSwaptions::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaptions::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepCoterminalSwaptions::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoterminalSwaptions::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::MultiStepCoterminalSwaptions::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepCoterminalSwaptions::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::MultiStepCoterminalSwaptions::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaptions::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::MultiStepCoterminalSwaptions::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepCoterminalSwaptions::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::MultiStepCoterminalSwaptions::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepcoterminalswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepCoterminalSwaptions::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' evolution'
    - numberOfProducts
    - doneIndex
    argTypes:
    - EvolutionDescription
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::MultiStepNothing::MultiStepNothing
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - rateTimes
    linkageType: ''
    returnType: void
    signature: "void MultiStepNothing::MultiStepNothing(const EvolutionDescription&
      evolution,\n                                       Size numberOfProducts,\n
      \                                      Size doneIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' numberCashFlowsThisStep'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: QuantLib::MultiStepNothing::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepNothing::nextTimeStep(\n        const CurveState&,\n
      \       std::vector<Size>& numberCashFlowsThisStep,\n        std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:43,1
    - Dst: MultiStepNothing::MultiStepNothing
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::MultiStepNothing::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepNothing::MultiStepNothing
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepNothing::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rateTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' evolution'
    - numberOfProducts
    - doneIndex
    argTypes:
    - EvolutionDescription
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::MultiStepNothing::MultiStepNothing
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - rateTimes
    linkageType: ''
    returnType: void
    signature: "void MultiStepNothing::MultiStepNothing(const EvolutionDescription&
      evolution,\n                                       Size numberOfProducts,\n
      \                                      Size doneIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' numberCashFlowsThisStep'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: QuantLib::MultiStepNothing::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepNothing::nextTimeStep(\n        const CurveState&,\n
      \       std::vector<Size>& numberCashFlowsThisStep,\n        std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:43,1
    - Dst: MultiStepNothing::MultiStepNothing
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::MultiStepNothing::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepnothing.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - MultiStepNothing::MultiStepNothing
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepNothing::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - gearingOfFloor
    - gearingOfFixing
    - spreadOfFloor
    - spreadOfFixing
    - initialFloor
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    - Real
    - Rate
    - Rate
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 43
    functionName: QuantLib::MultiStepRatchet::MultiStepRatchet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepRatchet::MultiStepRatchet(const std::vector<Time>& rateTimes,\n
      \                                      std::vector<Real> accruals,\n                                       const
      std::vector<Time>& paymentTimes,\n                                       Real
      gearingOfFloor,\n                                       Real gearingOfFixing,\n
      \                                      Rate spreadOfFloor,\n                                       Rate
      spreadOfFixing,\n                                       Real initialFloor,\n
      \                                      bool payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:51,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepRatchet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepRatchet::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:70,1
    - Dst: MultiStepRatchet::MultiStepRatchet
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepRatchet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - MultiStepRatchet::MultiStepRatchet
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepRatchet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:40,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - gearingOfFloor
    - gearingOfFixing
    - spreadOfFloor
    - spreadOfFixing
    - initialFloor
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    - Real
    - Rate
    - Rate
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 43
    functionName: QuantLib::MultiStepRatchet::MultiStepRatchet
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MultiStepRatchet::MultiStepRatchet(const std::vector<Time>& rateTimes,\n
      \                                      std::vector<Real> accruals,\n                                       const
      std::vector<Time>& paymentTimes,\n                                       Real
      gearingOfFloor,\n                                       Real gearingOfFixing,\n
      \                                      Rate spreadOfFloor,\n                                       Rate
      spreadOfFixing,\n                                       Real initialFloor,\n
      \                                      bool payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:51,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepRatchet::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepRatchet::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:70,1
    - Dst: MultiStepRatchet::MultiStepRatchet
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::MultiStepRatchet::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepratchet.cpp
    functionUses: 0
    functionsReached:
    - MultiStepRatchet::MultiStepRatchet
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepRatchet::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:39,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 8
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - ' floatingAccruals'
    - ' fixedStrikes'
    - ' fixedMultipliers'
    - ' floatingSpreads'
    - ' paymentTimes'
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiStepInverseFloater::MultiStepInverseFloater
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepInverseFloater::MultiStepInverseFloater(const std::vector<Time>&
      rateTimes,\n                                                     std::vector<Real>
      fixedAccruals,\n                                                     const std::vector<Real>&
      floatingAccruals,\n                                                     const
      std::vector<Real>& fixedStrikes,\n                                                     const
      std::vector<Real>& fixedMultipliers,\n                                                     const
      std::vector<Real>& floatingSpreads,\n                                                     const
      std::vector<Time>& paymentTimes,\n                                                     bool
      payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:55,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n        genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepInverseFloater::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepInverseFloater::nextTimeStep(\n        const CurveState&
      currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n        std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n        genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:71,1
    - Dst: MultiStepInverseFloater::MultiStepInverseFloater
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiStepInverseFloater::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - MultiStepInverseFloater::MultiStepInverseFloater
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepInverseFloater::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:39,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 8
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - ' floatingAccruals'
    - ' fixedStrikes'
    - ' fixedMultipliers'
    - ' floatingSpreads'
    - ' paymentTimes'
    - payer
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 47
    functionName: QuantLib::MultiStepInverseFloater::MultiStepInverseFloater
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepInverseFloater::MultiStepInverseFloater(const std::vector<Time>&
      rateTimes,\n                                                     std::vector<Real>
      fixedAccruals,\n                                                     const std::vector<Real>&
      floatingAccruals,\n                                                     const
      std::vector<Real>& fixedStrikes,\n                                                     const
      std::vector<Real>& fixedMultipliers,\n                                                     const
      std::vector<Real>& floatingSpreads,\n                                                     const
      std::vector<Time>& paymentTimes,\n                                                     bool
      payer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:55,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n        genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 66
    functionName: QuantLib::MultiStepInverseFloater::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepInverseFloater::nextTimeStep(\n        const CurveState&
      currentState,\n        std::vector<Size>& numberCashFlowsThisStep,\n        std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n        genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:71,1
    - Dst: MultiStepInverseFloater::MultiStepInverseFloater
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::MultiStepInverseFloater::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepinversefloater.cpp
    functionUses: 0
    functionsReached:
    - MultiStepInverseFloater::MultiStepInverseFloater
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepInverseFloater::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepPeriodCapletSwaptions::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepPeriodCapletSwaptions::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepPeriodCapletSwaptions::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepPeriodCapletSwaptions::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepPeriodCapletSwaptions::possibleCashFlowTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepPeriodCapletSwaptions::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepPeriodCapletSwaptions::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::MultiStepPeriodCapletSwaptions::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multistepperiodcapletswaptions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepPeriodCapletSwaptions::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:49,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 9
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' accrualsFloating'
    - ' paymentTimes'
    - ' paymentTimesFloating'
    - totalCoupon
    - ' strikes'
    - multipliers
    - ' floatingSpreads'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Time>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 51
    functionName: QuantLib::MultiStepTarn::MultiStepTarn
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepTarn::MultiStepTarn(const std::vector<Time>& rateTimes,\n
      \                                const std::vector<Real>& accruals,\n                                 const
      std::vector<Real>& accrualsFloating,\n                                 const
      std::vector<Time>& paymentTimes,\n                                 const std::vector<Time>&
      paymentTimesFloating,\n                                 Real totalCoupon,\n
      \                                const std::vector<Real>& strikes,\n                                 std::vector<Real>
      multipliers,\n                                 const std::vector<Real>& floatingSpreads)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:59,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiStepTarn::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepTarn::nextTimeStep(\n            const CurveState& currentState,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:88,1
    - Dst: MultiStepTarn::MultiStepTarn
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::MultiStepTarn::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - MultiStepTarn::MultiStepTarn
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepTarn::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::MultiStepTarn::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepTarn::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::MultiStepTarn::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepTarn::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::MultiStepTarn::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepTarn::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: QuantLib::MultiStepTarn::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepTarn::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:49,1
    - Dst: push_back
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 9
    argNames:
    - ' rateTimes'
    - ' accruals'
    - ' accrualsFloating'
    - ' paymentTimes'
    - ' paymentTimesFloating'
    - totalCoupon
    - ' strikes'
    - multipliers
    - ' floatingSpreads'
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Time>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 51
    functionName: QuantLib::MultiStepTarn::MultiStepTarn
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiStepTarn::MultiStepTarn(const std::vector<Time>& rateTimes,\n
      \                                const std::vector<Real>& accruals,\n                                 const
      std::vector<Real>& accrualsFloating,\n                                 const
      std::vector<Time>& paymentTimes,\n                                 const std::vector<Time>&
      paymentTimesFloating,\n                                 Real totalCoupon,\n
      \                                const std::vector<Real>& strikes,\n                                 std::vector<Real>
      multipliers,\n                                 const std::vector<Real>& floatingSpreads)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:59,1
    - Dst: std::max
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                                 genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 84
    functionName: QuantLib::MultiStepTarn::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - forwardRate
    linkageType: ''
    returnType: bool
    signature: "bool MultiStepTarn::nextTimeStep(\n            const CurveState& currentState,\n
      \           std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                                 genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:88,1
    - Dst: MultiStepTarn::MultiStepTarn
      Src: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::MultiStepTarn::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached:
    - MultiStepTarn::MultiStepTarn
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> MultiStepTarn::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::MultiStepTarn::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> MultiStepTarn::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::MultiStepTarn::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepTarn::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::MultiStepTarn::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size MultiStepTarn::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: QuantLib::MultiStepTarn::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/multistep/multisteptarn.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiStepTarn::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::OneStepCoinitialSwaps::OneStepCoinitialSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepCoinitialSwaps::OneStepCoinitialSwaps(const std::vector<Time>&
      rateTimes,\n                                                 std::vector<Real>
      fixedAccruals,\n                                                 std::vector<Real>
      floatingAccruals,\n                                                 const std::vector<Time>&
      paymentTimes,\n                                                 Real fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:47,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepCoinitialSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool OneStepCoinitialSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:68,1
    - Dst: OneStepCoinitialSwaps::OneStepCoinitialSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepCoinitialSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepCoinitialSwaps::OneStepCoinitialSwaps
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepCoinitialSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::OneStepCoinitialSwaps::OneStepCoinitialSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepCoinitialSwaps::OneStepCoinitialSwaps(const std::vector<Time>&
      rateTimes,\n                                                 std::vector<Real>
      fixedAccruals,\n                                                 std::vector<Real>
      floatingAccruals,\n                                                 const std::vector<Time>&
      paymentTimes,\n                                                 Real fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:46,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:46,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:47,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepCoinitialSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool OneStepCoinitialSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:68,1
    - Dst: OneStepCoinitialSwaps::OneStepCoinitialSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepCoinitialSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepCoinitialSwaps::OneStepCoinitialSwaps
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepCoinitialSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::OneStepCoterminalSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepCoterminalSwaps::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::OneStepCoterminalSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoterminalSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::OneStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepCoterminalSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepCoterminalSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::OneStepCoterminalSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepCoterminalSwaps::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::OneStepCoterminalSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoterminalSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::OneStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoterminalSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepCoterminalSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepCoterminalSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::OneStepOptionlets::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepOptionlets::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepOptionlets::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OneStepOptionlets::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepOptionlets::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepOptionlets::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::OneStepOptionlets::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepOptionlets::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::OneStepOptionlets::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepOptionlets::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepOptionlets::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OneStepOptionlets::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepOptionlets::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepOptionlets::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::OneStepOptionlets::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepOptionlets::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::OneStepCoinitialSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepCoinitialSwaps::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::OneStepCoinitialSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoinitialSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::OneStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepCoinitialSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepCoinitialSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::OneStepCoinitialSwaps::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepCoinitialSwaps::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::OneStepCoinitialSwaps::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoinitialSwaps::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::OneStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepCoinitialSwaps::maxNumberOfCashFlowsPerProductPerStep()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepCoinitialSwaps::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoinitialswaps.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepCoinitialSwaps::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:34,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::OneStepOptionlets::OneStepOptionlets
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepOptionlets::OneStepOptionlets(const std::vector<Time>&
      rateTimes,\n                                         std::vector<Real> accruals,\n
      \                                        const std::vector<Time>& paymentTimes,\n
      \                                        std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:45,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepOptionlets::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool OneStepOptionlets::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:60,1
    - Dst: OneStepOptionlets::OneStepOptionlets
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::OneStepOptionlets::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - OneStepOptionlets::OneStepOptionlets
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepOptionlets::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:34,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - payoffs
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<ext::shared_ptr<Payoff> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::OneStepOptionlets::OneStepOptionlets
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepOptionlets::OneStepOptionlets(const std::vector<Time>&
      rateTimes,\n                                         std::vector<Real> accruals,\n
      \                                        const std::vector<Time>& paymentTimes,\n
      \                                        std::vector<ext::shared_ptr<Payoff>
      > payoffs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:45,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepOptionlets::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool OneStepOptionlets::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:60,1
    - Dst: OneStepOptionlets::OneStepOptionlets
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::OneStepOptionlets::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepoptionlets.cpp
    functionUses: 0
    functionsReached:
    - OneStepOptionlets::OneStepOptionlets
    - std::unique_ptr<MarketModelMultiProduct>
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepOptionlets::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepForwards::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepForwards::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::OneStepForwards::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OneStepForwards::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::OneStepForwards::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepForwards::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepForwards::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepForwards::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepForwards::possibleCashFlowTimes
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> OneStepForwards::possibleCashFlowTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: QuantLib::OneStepForwards::numberOfProducts
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OneStepForwards::numberOfProducts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::OneStepForwards::maxNumberOfCashFlowsPerProductPerStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneStepForwards::maxNumberOfCashFlowsPerProductPerStep() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::OneStepForwards::reset
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OneStepForwards::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::OneStepForwards::OneStepForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepForwards::OneStepForwards(const std::vector<Time>& rateTimes,\n
      \                                    std::vector<Real> accruals,\n                                     const
      std::vector<Time>& paymentTimes,\n                                     std::vector<Rate>
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:41,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:42,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 51
    functionName: QuantLib::OneStepForwards::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool OneStepForwards::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:55,1
    - Dst: OneStepForwards::OneStepForwards
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepForwards::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepForwards::OneStepForwards
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepForwards::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:31,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:32,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' rateTimes'
    - accruals
    - ' paymentTimes'
    - strikes
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Time>
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::OneStepForwards::OneStepForwards
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepForwards::OneStepForwards(const std::vector<Time>& rateTimes,\n
      \                                    std::vector<Real> accruals,\n                                     const
      std::vector<Time>& paymentTimes,\n                                     std::vector<Rate>
      strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:41,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:42,1
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 51
    functionName: QuantLib::OneStepForwards::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - begin
    - size
    - end
    linkageType: ''
    returnType: bool
    signature: "bool OneStepForwards::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:55,1
    - Dst: OneStepForwards::OneStepForwards
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::OneStepForwards::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepforwards.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepForwards::OneStepForwards
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepForwards::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::OneStepCoterminalSwaps::OneStepCoterminalSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepCoterminalSwaps::OneStepCoterminalSwaps(const std::vector<Time>&
      rateTimes,\n                                                   std::vector<Real>
      fixedAccruals,\n                                                   std::vector<Real>
      floatingAccruals,\n                                                   const
      std::vector<Time>& paymentTimes,\n                                                   Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:46,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepCoterminalSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool OneStepCoterminalSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:68,1
    - Dst: OneStepCoterminalSwaps::OneStepCoterminalSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepCoterminalSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepCoterminalSwaps::OneStepCoterminalSwaps
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepCoterminalSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:33,1
    - Dst: checkIncreasingTimes
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' rateTimes'
    - fixedAccruals
    - floatingAccruals
    - ' paymentTimes'
    - fixedRate
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Time>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 38
    functionName: QuantLib::OneStepCoterminalSwaps::OneStepCoterminalSwaps
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - size
    - checkIncreasingTimes
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneStepCoterminalSwaps::OneStepCoterminalSwaps(const std::vector<Time>&
      rateTimes,\n                                                   std::vector<Real>
      fixedAccruals,\n                                                   std::vector<Real>
      floatingAccruals,\n                                                   const
      std::vector<Time>& paymentTimes,\n                                                   Real
      fixedRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:46,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ' currentState'
    - ' numberCashFlowsThisStep'
    - "\n                                                               genCashFlows"
    argTypes:
    - CurveState
    - std::vector<Size>
    - std::vector<std::vector<MarketModelMultiProduct::CashFlow> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 64
    functionName: QuantLib::OneStepCoterminalSwaps::nextTimeStep
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - forwardRate
    - end
    - begin
    linkageType: ''
    returnType: bool
    signature: "bool OneStepCoterminalSwaps::nextTimeStep(\n            const CurveState&
      currentState,\n            std::vector<Size>& numberCashFlowsThisStep,\n            std::vector<std::vector<MarketModelMultiProduct::CashFlow>
      >&\n                                                               genCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_ptr<MarketModelMultiProduct>
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:68,1
    - Dst: OneStepCoterminalSwaps::OneStepCoterminalSwaps
      Src: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::OneStepCoterminalSwaps::clone
    functionSourceFile: /src/quantlib/ql/models/marketmodels/products/onestep/onestepcoterminalswaps.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr<MarketModelMultiProduct>
    - OneStepCoterminalSwaps::OneStepCoterminalSwaps
    linkageType: ''
    returnType: std::unique_ptr<MarketModelMultiProduct>
    signature: std::unique_ptr<MarketModelMultiProduct> OneStepCoterminalSwaps::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:47,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:51,1
    - Dst: lu_factorize
      Src: /src/quantlib/ql/math/matrix.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:58,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:58,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:60,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:62,1
    - Dst: boost::numeric::ublas::identity_matrix<Real>
      Src: /src/quantlib/ql/math/matrix.cpp:65,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:65,1
    - Dst: boost::numeric::ublas::lu_substitute
      Src: /src/quantlib/ql/math/matrix.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:71,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:71,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:74,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 79
    functionName: QuantLib::inverse
    functionSourceFile: /src/quantlib/ql/math/matrix.cpp
    functionUses: 0
    functionsReached:
    - lu_factorize
    - std::copy
    - boost::numeric::ublas::lu_substitute
    - rows
    - begin
    - QL_FAIL
    - what
    - columns
    - Matrix::begin
    - boost::numeric::ublas::matrix<Real>::data
    - end
    - boost::numeric::ublas::identity_matrix<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix inverse(const Matrix& m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:84,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:84,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:89,1
    - Dst: lu_factorize
      Src: /src/quantlib/ql/math/matrix.cpp:90,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:94,1
    - Dst: a
      Src: /src/quantlib/ql/math/matrix.cpp:96,1
    - Dst: a
      Src: /src/quantlib/ql/math/matrix.cpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: QuantLib::determinant
    functionSourceFile: /src/quantlib/ql/math/matrix.cpp
    functionUses: 0
    functionsReached:
    - lu_factorize
    - std::copy
    - a
    - rows
    - begin
    - columns
    - boost::numeric::ublas::matrix<Real>::data
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real determinant(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:45,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:47,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:47,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:49,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:51,1
    - Dst: lu_factorize
      Src: /src/quantlib/ql/math/matrix.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:58,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:58,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:60,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:62,1
    - Dst: boost::numeric::ublas::identity_matrix<Real>
      Src: /src/quantlib/ql/math/matrix.cpp:65,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:65,1
    - Dst: boost::numeric::ublas::lu_substitute
      Src: /src/quantlib/ql/math/matrix.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrix.cpp:71,1
    - Dst: what
      Src: /src/quantlib/ql/math/matrix.cpp:71,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:74,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:75,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 79
    functionName: QuantLib::inverse
    functionSourceFile: /src/quantlib/ql/math/matrix.cpp
    functionUses: 0
    functionsReached:
    - lu_factorize
    - std::copy
    - boost::numeric::ublas::lu_substitute
    - rows
    - begin
    - QL_FAIL
    - what
    - columns
    - Matrix::begin
    - boost::numeric::ublas::matrix<Real>::data
    - end
    - boost::numeric::ublas::identity_matrix<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix inverse(const Matrix& m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:82,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:84,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.cpp:84,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: boost::numeric::ublas::matrix<Real>::data
      Src: /src/quantlib/ql/math/matrix.cpp:85,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:89,1
    - Dst: lu_factorize
      Src: /src/quantlib/ql/math/matrix.cpp:90,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.cpp:94,1
    - Dst: a
      Src: /src/quantlib/ql/math/matrix.cpp:96,1
    - Dst: a
      Src: /src/quantlib/ql/math/matrix.cpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: QuantLib::determinant
    functionSourceFile: /src/quantlib/ql/math/matrix.cpp
    functionUses: 0
    functionsReached:
    - lu_factorize
    - std::copy
    - a
    - rows
    - begin
    - columns
    - boost::numeric::ublas::matrix<Real>::data
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real determinant(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~KernelFunction()
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~KernelFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::GaussianKernel::GaussianKernel
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussianKernel(Real average, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nd_
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: operator()(Real x) const override
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached:
    - nd_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianKernel::derivative
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::GaussianKernel::derivative
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GaussianKernel::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cnd_
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::GaussianKernel::primitive
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached:
    - cnd_
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~KernelFunction()
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~KernelFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::GaussianKernel::GaussianKernel
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussianKernel(Real average, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nd_
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: operator()(Real x) const override
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached:
    - nd_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianKernel::derivative
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::GaussianKernel::derivative
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GaussianKernel::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cnd_
      Src: /src/quantlib/ql/math/kernelfunctions.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::GaussianKernel::primitive
    functionSourceFile: /src/quantlib/ql/math/kernelfunctions.hpp
    functionUses: 0
    functionsReached:
    - cnd_
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:30,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:31,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:31,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:33,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - n
    - x
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::BernsteinPolynomial::get
    functionSourceFile: /src/quantlib/ql/math/bernsteinpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::pow
    linkageType: ''
    returnType: Real
    signature: "Real BernsteinPolynomial::get(Natural i,\n                                  Natural
      n,\n                                  Real x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:30,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:31,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:31,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:33,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/bernsteinpolynomial.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - n
    - x
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::BernsteinPolynomial::get
    functionSourceFile: /src/quantlib/ql/math/bernsteinpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::pow
    linkageType: ''
    returnType: Real
    signature: "Real BernsteinPolynomial::get(Natural i,\n                                  Natural
      n,\n                                  Real x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fh
    - ft
    - fs
    - t
    - s
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::RichardsonEqn::RichardsonEqn
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RichardsonEqn(Real fh, Real ft, Real fs, Real t, Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:37,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fh
    - ft
    - fs
    - t
    - s
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::RichardsonEqn::RichardsonEqn
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RichardsonEqn(Real fh, Real ft, Real fs, Real t, Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:37,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' f'
    - delta_h
    - n
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::RichardsonExtrapolation::RichardsonExtrapolation
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: void
    signature: "void RichardsonExtrapolation::RichardsonExtrapolation(\n        const
      std::function<Real (Real)>& f, Real delta_h, Real n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:58,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:60,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: RichardsonExtrapolation::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - f_
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real RichardsonExtrapolation::operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:68,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:70,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:71,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:77,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:77,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:84,1
    - Dst: Brent
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:88,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 91
    functionName: "RichardsonExtrapolation::operator()(Real t, Real s)\n    const"
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - Brent
    - std::pow
    - f_
    - eqn
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RichardsonExtrapolation::operator()(Real t, Real s)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fh
    - ft
    - fs
    - t
    - s
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::RichardsonEqn::RichardsonEqn
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RichardsonEqn(Real fh, Real ft, Real fs, Real t, Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:37,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fh
    - ft
    - fs
    - t
    - s
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::RichardsonEqn::RichardsonEqn
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RichardsonEqn(Real fh, Real ft, Real fs, Real t, Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:37,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' f'
    - delta_h
    - n
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::RichardsonExtrapolation::RichardsonExtrapolation
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: void
    signature: "void RichardsonExtrapolation::RichardsonExtrapolation(\n        const
      std::function<Real (Real)>& f, Real delta_h, Real n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:58,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:60,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: RichardsonExtrapolation::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - f_
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real RichardsonExtrapolation::operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:68,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:70,1
    - Dst: f_
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:71,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:77,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:77,1
    - Dst: eqn
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:84,1
    - Dst: Brent
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/richardsonextrapolation.cpp:88,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 91
    functionName: "RichardsonExtrapolation::operator()(Real t, Real s)\n    const"
    functionSourceFile: /src/quantlib/ql/math/richardsonextrapolation.cpp
    functionUses: 0
    functionsReached:
    - Brent
    - std::pow
    - f_
    - eqn
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RichardsonExtrapolation::operator()(Real t, Real s)\n    const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:48,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:57,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:61,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/beta.cpp:64,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 5
    argNames:
    - a
    - b
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 65
    functionName: QuantLib::betaContinuedFraction
    functionSourceFile: /src/quantlib/ql/math/beta.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real betaContinuedFraction(Real a, Real  b, Real  x,\n                               Real
      accuracy, Integer maxIteration)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/beta.cpp:82,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:82,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:83,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/beta.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/beta.cpp:84,1
    - Dst: QuantLib::betaContinuedFraction
      Src: /src/quantlib/ql/math/beta.cpp:88,1
    - Dst: QuantLib::betaContinuedFraction
      Src: /src/quantlib/ql/math/beta.cpp:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - a
    - b
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 92
    functionName: QuantLib::incompleteBetaFunction
    functionSourceFile: /src/quantlib/ql/math/beta.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::betaContinuedFraction
    - std::exp
    - std::log
    - GammaFunction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real incompleteBetaFunction(Real a, Real b,\n                                Real
      x, Real accuracy,\n                                Integer maxIteration)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:48,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:57,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/beta.cpp:61,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/beta.cpp:64,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 5
    argNames:
    - a
    - b
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 65
    functionName: QuantLib::betaContinuedFraction
    functionSourceFile: /src/quantlib/ql/math/beta.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real betaContinuedFraction(Real a, Real  b, Real  x,\n                               Real
      accuracy, Integer maxIteration)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/beta.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/beta.cpp:82,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:82,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:83,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/beta.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/beta.cpp:84,1
    - Dst: QuantLib::betaContinuedFraction
      Src: /src/quantlib/ql/math/beta.cpp:88,1
    - Dst: QuantLib::betaContinuedFraction
      Src: /src/quantlib/ql/math/beta.cpp:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - a
    - b
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 92
    functionName: QuantLib::incompleteBetaFunction
    functionSourceFile: /src/quantlib/ql/math/beta.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::betaContinuedFraction
    - std::exp
    - std::log
    - GammaFunction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real incompleteBetaFunction(Real a, Real b,\n                                Real
      x, Real accuracy,\n                                Integer maxIteration)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:27,1
    - Dst: real
      Src: /src/quantlib/ql/math/expm1.cpp:28,1
    - Dst: imag
      Src: /src/quantlib/ql/math/expm1.cpp:28,1
    - Dst: QuantLib::expm1
      Src: /src/quantlib/ql/math/expm1.cpp:29,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/math/expm1.cpp:30,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/expm1.cpp:30,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/expm1.cpp:32,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/expm1.cpp:34,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/expm1.cpp:34,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/expm1.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::expm1
    functionSourceFile: /src/quantlib/ql/math/expm1.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::expm1
    - real
    - std::exp
    - std::sin
    - std::complex<Real>
    - imag
    - QuantLib::squared
    - std::abs
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> expm1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/expm1.cpp:43,1
    - Dst: imag
      Src: /src/quantlib/ql/math/expm1.cpp:43,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:44,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:44,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/expm1.cpp:45,1
    - Dst: QuantLib::log1p
      Src: /src/quantlib/ql/math/expm1.cpp:46,1
    - Dst: std::arg
      Src: /src/quantlib/ql/math/expm1.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/expm1.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 53
    functionName: QuantLib::log1p
    functionSourceFile: /src/quantlib/ql/math/expm1.cpp
    functionUses: 1
    functionsReached:
    - real
    - std::arg
    - std::log
    - QuantLib::log1p
    - std::complex<Real>
    - imag
    - std::abs
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> log1p(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:27,1
    - Dst: real
      Src: /src/quantlib/ql/math/expm1.cpp:28,1
    - Dst: imag
      Src: /src/quantlib/ql/math/expm1.cpp:28,1
    - Dst: QuantLib::expm1
      Src: /src/quantlib/ql/math/expm1.cpp:29,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/math/expm1.cpp:30,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/expm1.cpp:30,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/expm1.cpp:32,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/expm1.cpp:34,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/expm1.cpp:34,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/expm1.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::expm1
    functionSourceFile: /src/quantlib/ql/math/expm1.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::expm1
    - real
    - std::exp
    - std::sin
    - std::complex<Real>
    - imag
    - QuantLib::squared
    - std::abs
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> expm1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/expm1.cpp:43,1
    - Dst: imag
      Src: /src/quantlib/ql/math/expm1.cpp:43,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:44,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/expm1.cpp:44,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/expm1.cpp:45,1
    - Dst: QuantLib::log1p
      Src: /src/quantlib/ql/math/expm1.cpp:46,1
    - Dst: std::arg
      Src: /src/quantlib/ql/math/expm1.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/expm1.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 53
    functionName: QuantLib::log1p
    functionSourceFile: /src/quantlib/ql/math/expm1.cpp
    functionUses: 2
    functionsReached:
    - real
    - std::arg
    - std::log
    - QuantLib::log1p
    - std::complex<Real>
    - imag
    - std::abs
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> log1p(const std::complex<Real>& z)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:43,1
    - Dst: QuantLib::FastFourierTransform::min_order
      Src: /src/quantlib/ql/math/autocovariance.hpp:44,1
    - Dst: FastFourierTransform::output_size
      Src: /src/quantlib/ql/math/autocovariance.hpp:46,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:48,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/autocovariance.hpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:50,1
    - Dst: norm
      Src: /src/quantlib/ql/math/autocovariance.hpp:51,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::double_ft
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - norm
    - std::vector::begin
    - Array::begin
    - Array::end
    - QuantLib::FastFourierTransform::min_order
    - std::complex<Real>
    - std::vector::size
    - FastFourierTransform::transform
    - FastFourierTransform::output_size
    linkageType: ''
    returnType: std::vector<std::complex<Real> >
    signature: "std::vector<std::complex<Real> > double_ft(ForwardIterator begin,\n
      \                                                  ForwardIterator end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/autocovariance.hpp:66,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - begin
    - end
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - OutputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::remove_mean
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real remove_mean(InputIterator begin, InputIterator end,\n                         OutputIterator
      out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:43,1
    - Dst: QuantLib::FastFourierTransform::min_order
      Src: /src/quantlib/ql/math/autocovariance.hpp:44,1
    - Dst: FastFourierTransform::output_size
      Src: /src/quantlib/ql/math/autocovariance.hpp:46,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:48,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/autocovariance.hpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:50,1
    - Dst: norm
      Src: /src/quantlib/ql/math/autocovariance.hpp:51,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::double_ft
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - norm
    - std::vector::begin
    - Array::begin
    - Array::end
    - QuantLib::FastFourierTransform::min_order
    - std::complex<Real>
    - std::vector::size
    - FastFourierTransform::transform
    - FastFourierTransform::output_size
    linkageType: ''
    returnType: std::vector<std::complex<Real> >
    signature: "std::vector<std::complex<Real> > double_ft(ForwardIterator begin,\n
      \                                                  ForwardIterator end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/autocovariance.hpp:66,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - begin
    - end
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - OutputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::remove_mean
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real remove_mean(InputIterator begin, InputIterator end,\n                         OutputIterator
      out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:85,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:86,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:87,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::convolutions
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void convolutions(ForwardIterator begin, ForwardIterator end,\n                      OutputIterator
      out, std::size_t maxLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:103,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:105,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:106,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 110
    functionName: QuantLib::autocovariances
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void autocovariances(ForwardIterator begin, ForwardIterator end,\n
      \                        OutputIterator out, std::size_t maxLag)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:128,1
    - Dst: QuantLib::autocovariances
      Src: /src/quantlib/ql/math/autocovariance.hpp:129,1
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:132,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:132,1
    - Dst: QuantLib::autocovariances
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - begin
    - end
    - out
    - maxLag
    - reuse
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 136
    functionName: QuantLib::autocovariances
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::autocovariances
    - Array::begin
    - remove_mean
    - Array::end
    linkageType: ''
    returnType: Real
    signature: "Real autocovariances(ForwardIterator begin, ForwardIterator end,\n
      \                        OutputIterator out,\n                         std::size_t
      maxLag, bool reuse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:151,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:153,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:154,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:155,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 160
    functionName: QuantLib::autocorrelations
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void autocorrelations(ForwardIterator begin, ForwardIterator end,\n
      \                         OutputIterator out, std::size_t maxLag)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:179,1
    - Dst: QuantLib::autocorrelations
      Src: /src/quantlib/ql/math/autocovariance.hpp:180,1
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:183,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:183,1
    - Dst: QuantLib::autocorrelations
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - begin
    - end
    - out
    - maxLag
    - reuse
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 187
    functionName: QuantLib::autocorrelations
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::autocorrelations
    - Array::begin
    - remove_mean
    - Array::end
    linkageType: ''
    returnType: Real
    signature: "Real autocorrelations(ForwardIterator begin, ForwardIterator end,\n
      \                         OutputIterator out,\n                          std::size_t
      maxLag, bool reuse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:43,1
    - Dst: QuantLib::FastFourierTransform::min_order
      Src: /src/quantlib/ql/math/autocovariance.hpp:44,1
    - Dst: FastFourierTransform::output_size
      Src: /src/quantlib/ql/math/autocovariance.hpp:46,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:48,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/autocovariance.hpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:50,1
    - Dst: norm
      Src: /src/quantlib/ql/math/autocovariance.hpp:51,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::double_ft
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - norm
    - std::vector::begin
    - Array::begin
    - Array::end
    - QuantLib::FastFourierTransform::min_order
    - std::complex<Real>
    - std::vector::size
    - FastFourierTransform::transform
    - FastFourierTransform::output_size
    linkageType: ''
    returnType: std::vector<std::complex<Real> >
    signature: "std::vector<std::complex<Real> > double_ft(ForwardIterator begin,\n
      \                                                  ForwardIterator end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/autocovariance.hpp:66,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - begin
    - end
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - OutputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::remove_mean
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real remove_mean(InputIterator begin, InputIterator end,\n                         OutputIterator
      out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:43,1
    - Dst: QuantLib::FastFourierTransform::min_order
      Src: /src/quantlib/ql/math/autocovariance.hpp:44,1
    - Dst: FastFourierTransform::output_size
      Src: /src/quantlib/ql/math/autocovariance.hpp:46,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:47,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:48,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/autocovariance.hpp:49,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:50,1
    - Dst: norm
      Src: /src/quantlib/ql/math/autocovariance.hpp:51,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::double_ft
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - norm
    - std::vector::begin
    - Array::begin
    - Array::end
    - QuantLib::FastFourierTransform::min_order
    - std::complex<Real>
    - std::vector::size
    - FastFourierTransform::transform
    - FastFourierTransform::output_size
    linkageType: ''
    returnType: std::vector<std::complex<Real> >
    signature: "std::vector<std::complex<Real> > double_ft(ForwardIterator begin,\n
      \                                                  ForwardIterator end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/autocovariance.hpp:66,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/autocovariance.hpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - begin
    - end
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - OutputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::remove_mean
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real remove_mean(InputIterator begin, InputIterator end,\n                         OutputIterator
      out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:85,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:86,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:87,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::convolutions
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 0
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void convolutions(ForwardIterator begin, ForwardIterator end,\n                      OutputIterator
      out, std::size_t maxLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:103,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:105,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:106,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 110
    functionName: QuantLib::autocovariances
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 1
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void autocovariances(ForwardIterator begin, ForwardIterator end,\n
      \                        OutputIterator out, std::size_t maxLag)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:128,1
    - Dst: QuantLib::autocovariances
      Src: /src/quantlib/ql/math/autocovariance.hpp:129,1
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:132,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:132,1
    - Dst: QuantLib::autocovariances
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - begin
    - end
    - out
    - maxLag
    - reuse
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 136
    functionName: QuantLib::autocovariances
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::autocovariances
    - Array::begin
    - remove_mean
    - Array::end
    linkageType: ''
    returnType: Real
    signature: "Real autocovariances(ForwardIterator begin, ForwardIterator end,\n
      \                        OutputIterator out,\n                         std::size_t
      maxLag, bool reuse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/autocovariance.hpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/autocovariance.hpp:151,1
    - Dst: double_ft
      Src: /src/quantlib/ql/math/autocovariance.hpp:153,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/autocovariance.hpp:154,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:155,1
    - Dst: real
      Src: /src/quantlib/ql/math/autocovariance.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - begin
    - end
    - out
    - maxLag
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 160
    functionName: QuantLib::autocorrelations
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 1
    functionsReached:
    - real
    - double_ft
    - std::distance
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void autocorrelations(ForwardIterator begin, ForwardIterator end,\n
      \                         OutputIterator out, std::size_t maxLag)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:179,1
    - Dst: QuantLib::autocorrelations
      Src: /src/quantlib/ql/math/autocovariance.hpp:180,1
    - Dst: remove_mean
      Src: /src/quantlib/ql/math/autocovariance.hpp:183,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:183,1
    - Dst: QuantLib::autocorrelations
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/autocovariance.hpp:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - begin
    - end
    - out
    - maxLag
    - reuse
    argTypes:
    - ForwardIterator
    - ForwardIterator
    - OutputIterator
    - std::size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 187
    functionName: QuantLib::autocorrelations
    functionSourceFile: /src/quantlib/ql/math/autocovariance.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::autocorrelations
    - Array::begin
    - remove_mean
    - Array::end
    linkageType: ''
    returnType: Real
    signature: "Real autocorrelations(ForwardIterator begin, ForwardIterator end,\n
      \                         OutputIterator out,\n                          std::size_t
      maxLag, bool reuse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::quadratic::quadratic
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void quadratic::quadratic(Real a, Real b, Real c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::quadratic::turningPoint
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::turningPoint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quadratic::turningPoint
      Src: /src/quantlib/ql/math/quadratic.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::quadratic::valueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quadratic::turningPoint
    linkageType: ''
    returnType: Real
    signature: Real quadratic::valueAtTurningPoint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: quadratic::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::quadratic::discriminant
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::discriminant() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quadratic::discriminant
      Src: /src/quantlib/ql/math/quadratic.cpp:45,1
    - Dst: QuantLib::quadratic::turningPoint
      Src: /src/quantlib/ql/math/quadratic.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/quadratic.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::quadratic::roots
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quadratic::turningPoint
    - QuantLib::quadratic::discriminant
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: bool quadratic::roots(Real& x, Real& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::quadratic::quadratic
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void quadratic::quadratic(Real a, Real b, Real c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::quadratic::turningPoint
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::turningPoint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quadratic::turningPoint
      Src: /src/quantlib/ql/math/quadratic.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::quadratic::valueAtTurningPoint
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quadratic::turningPoint
    linkageType: ''
    returnType: Real
    signature: Real quadratic::valueAtTurningPoint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: quadratic::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::quadratic::discriminant
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real quadratic::discriminant() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quadratic::discriminant
      Src: /src/quantlib/ql/math/quadratic.cpp:45,1
    - Dst: QuantLib::quadratic::turningPoint
      Src: /src/quantlib/ql/math/quadratic.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/quadratic.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::quadratic::roots
    functionSourceFile: /src/quantlib/ql/math/quadratic.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quadratic::turningPoint
    - QuantLib::quadratic::discriminant
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: bool quadratic::roots(Real& x, Real& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& coefficients()   const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & coefficients()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& residuals()      const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & residuals()      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& standardErrors() const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & standardErrors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& error()          const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & error()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::GeneralLinearLeastSquares::size
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::GeneralLinearLeastSquares::dim
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    linkageType: ''
    returnType: Size
    signature: Size dim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:82,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:83,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:84,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:85,1
    - Dst: QuantLib::GeneralLinearLeastSquares::calculate
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - ' v'
    argTypes:
    - xContainer
    - yContainer
    - vContainer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: QuantLib::GeneralLinearLeastSquares::GeneralLinearLeastSquares
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    - QuantLib::GeneralLinearLeastSquares::calculate
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::GeneralLinearLeastSquares(const xContainer
      & x,\n                                                         const yContainer
      & y,\n                                                         const vContainer
      & v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:94,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:95,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:96,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:97,1
    - Dst: QuantLib::GeneralLinearLeastSquares::calculate
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - yEnd
    - vBegin
    - vEnd
    argTypes:
    - xIterator
    - xIterator
    - yIterator
    - yIterator
    - vIterator
    - vIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: QuantLib::GeneralLinearLeastSquares::GeneralLinearLeastSquares
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    - QuantLib::GeneralLinearLeastSquares::calculate
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::GeneralLinearLeastSquares(\n                                            xIterator
      xBegin, xIterator xEnd,\n                                            yIterator
      yBegin, yIterator yEnd,\n                                            vIterator
      vBegin, vIterator vEnd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:107,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: Size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:112,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:118,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:118,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:121,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:122,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:123,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:124,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:128,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:128,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:130,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:138,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: Real
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:144,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - yEnd
    - vBegin
    argTypes:
    - xIterator
    - xIterator
    - yIterator
    - yIterator
    - vIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 147
    functionName: QuantLib::GeneralLinearLeastSquares::calculate
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 2
    functionsReached:
    - Real
    - std::minus<>
    - Matrix::column_begin
    - std::transform
    - Array::begin
    - begin
    - QuantLib::GeneralLinearLeastSquares::size
    - Size
    - Array::end
    - column_end
    - Sqrt
    - end
    - SVD::V
    - QL_REQUIRE
    - std::distance
    - SVD::singularValues
    - std::inner_product
    - SVD::U
    - std::sqrt
    - column_begin
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::calculate(xIterator xBegin, xIterator
      xEnd,\n                                              yIterator yBegin, yIterator
      yEnd,\n                                              vIterator vBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& coefficients()   const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & coefficients()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& residuals()      const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & residuals()      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& standardErrors() const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & standardErrors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& error()          const'
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & error()          const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::GeneralLinearLeastSquares::size
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::GeneralLinearLeastSquares::dim
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    linkageType: ''
    returnType: Size
    signature: Size dim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:82,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:83,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:84,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:85,1
    - Dst: QuantLib::GeneralLinearLeastSquares::calculate
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - ' v'
    argTypes:
    - xContainer
    - yContainer
    - vContainer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 3
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: QuantLib::GeneralLinearLeastSquares::GeneralLinearLeastSquares
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    - QuantLib::GeneralLinearLeastSquares::calculate
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::GeneralLinearLeastSquares(const xContainer
      & x,\n                                                         const yContainer
      & y,\n                                                         const vContainer
      & v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:94,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:95,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:96,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:97,1
    - Dst: QuantLib::GeneralLinearLeastSquares::calculate
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - yEnd
    - vBegin
    - vEnd
    argTypes:
    - xIterator
    - xIterator
    - yIterator
    - yIterator
    - vIterator
    - vIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 3
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: QuantLib::GeneralLinearLeastSquares::GeneralLinearLeastSquares
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralLinearLeastSquares::size
    - QuantLib::GeneralLinearLeastSquares::calculate
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::GeneralLinearLeastSquares(\n                                            xIterator
      xBegin, xIterator xEnd,\n                                            yIterator
      yBegin, yIterator yEnd,\n                                            vIterator
      vBegin, vIterator vEnd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:107,1
    - Dst: QuantLib::GeneralLinearLeastSquares::size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: Size
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:112,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:118,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:118,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:121,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:122,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:123,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:124,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:128,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:128,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:130,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:138,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:140,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: Real
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:144,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: end
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/generallinearleastsquares.hpp:145,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - yEnd
    - vBegin
    argTypes:
    - xIterator
    - xIterator
    - yIterator
    - yIterator
    - vIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 147
    functionName: QuantLib::GeneralLinearLeastSquares::calculate
    functionSourceFile: /src/quantlib/ql/math/generallinearleastsquares.hpp
    functionUses: 4
    functionsReached:
    - Real
    - std::minus<>
    - Matrix::column_begin
    - std::transform
    - Array::begin
    - begin
    - QuantLib::GeneralLinearLeastSquares::size
    - Size
    - Array::end
    - column_end
    - Sqrt
    - end
    - SVD::V
    - QL_REQUIRE
    - std::distance
    - SVD::singularValues
    - std::inner_product
    - SVD::U
    - std::sqrt
    - column_begin
    linkageType: ''
    returnType: void
    signature: "void GeneralLinearLeastSquares::calculate(xIterator xBegin, xIterator
      xEnd,\n                                              yIterator yBegin, yIterator
      yEnd,\n                                              vIterator vBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::AbcdMathFunction::longTermValue
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real longTermValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::AbcdMathFunction::a
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::AbcdMathFunction::b
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::AbcdMathFunction::c
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::AbcdMathFunction::d
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& coefficients()'
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & coefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& derivativeCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & derivativeCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:106,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: AbcdMathFunction::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:111,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::AbcdMathFunction::derivative
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::derivative(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:116,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::AbcdMathFunction::primitive
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::primitive(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::maximumLocation
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::AbcdMathFunction::maximumValue
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::maximumLocation
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::maximumValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::AbcdMathFunction::longTermValue
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real longTermValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::AbcdMathFunction::a
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::AbcdMathFunction::b
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::AbcdMathFunction::c
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::AbcdMathFunction::d
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& coefficients()'
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & coefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& derivativeCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & derivativeCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:106,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: AbcdMathFunction::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:111,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: QuantLib::AbcdMathFunction::derivative
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::derivative(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:116,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::AbcdMathFunction::primitive
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::primitive(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::maximumLocation
      Src: /src/quantlib/ql/math/abcdmathfunction.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::AbcdMathFunction::maximumValue
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::maximumLocation
    linkageType: ''
    returnType: Real
    signature: Real AbcdMathFunction::maximumValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/factorial.cpp:54,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/factorial.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - i
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::Factorial::get
    functionSourceFile: /src/quantlib/ql/math/factorial.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real Factorial::get(Natural i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/factorial.cpp:60,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/factorial.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - i
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Factorial::ln
    functionSourceFile: /src/quantlib/ql/math/factorial.cpp
    functionUses: 0
    functionsReached:
    - GammaFunction
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Factorial::ln(Natural i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/factorial.cpp:54,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/factorial.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - i
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::Factorial::get
    functionSourceFile: /src/quantlib/ql/math/factorial.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real Factorial::get(Natural i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/factorial.cpp:60,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/factorial.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - i
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::Factorial::ln
    functionSourceFile: /src/quantlib/ql/math/factorial.cpp
    functionUses: 0
    functionsReached:
    - GammaFunction
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Factorial::ln(Natural i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:29,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:31,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:32,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' coeff'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 42
    functionName: QuantLib::PolynomialFunction::PolynomialFunction
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector<Real>
    - Matrix
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolynomialFunction::PolynomialFunction(const std::vector<Real>&
      coeff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: PolynomialFunction::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::PolynomialFunction::derivative
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::derivative(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: QuantLib::PolynomialFunction::primitive
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::primitive(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PolynomialFunction::primitive
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:73,1
    - Dst: QuantLib::PolynomialFunction::primitive
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::PolynomialFunction::definiteIntegral
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PolynomialFunction::primitive
    linkageType: ''
    returnType: Real
    signature: "Real PolynomialFunction::definiteIntegral(Time t1,\n                                              Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonGreensFct::get
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::PolynomialFunction::initializeEqs_
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmHestonGreensFct::get
    linkageType: ''
    returnType: void
    signature: "void PolynomialFunction::initializeEqs_(Time t,\n                                            Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:92,1
    - Dst: QuantLib::PolynomialFunction::initializeEqs_
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:95,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 89
    functionDepth: 3
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionName: QuantLib::PolynomialFunction::definiteIntegralCoefficients
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - begin
    - QuantLib::PolynomialFunction::initializeEqs_
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> PolynomialFunction::definiteIntegralCoefficients(Time
      t,\n                                                          Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:102,1
    - Dst: QuantLib::PolynomialFunction::initializeEqs_
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:103,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:104,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:105,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::PolynomialFunction::definiteDerivativeCoefficients
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - begin
    - inverse
    - QuantLib::PolynomialFunction::initializeEqs_
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> PolynomialFunction::definiteDerivativeCoefficients(Time
      t,\n                                                           Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:29,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:31,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:32,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' coeff'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 42
    functionName: QuantLib::PolynomialFunction::PolynomialFunction
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector<Real>
    - Matrix
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolynomialFunction::PolynomialFunction(const std::vector<Real>&
      coeff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: PolynomialFunction::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::PolynomialFunction::derivative
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::derivative(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: QuantLib::PolynomialFunction::primitive
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real PolynomialFunction::primitive(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PolynomialFunction::primitive
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:73,1
    - Dst: QuantLib::PolynomialFunction::primitive
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::PolynomialFunction::definiteIntegral
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PolynomialFunction::primitive
    linkageType: ''
    returnType: Real
    signature: "Real PolynomialFunction::definiteIntegral(Time t1,\n                                              Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmHestonGreensFct::get
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::PolynomialFunction::initializeEqs_
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmHestonGreensFct::get
    linkageType: ''
    returnType: void
    signature: "void PolynomialFunction::initializeEqs_(Time t,\n                                            Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:92,1
    - Dst: QuantLib::PolynomialFunction::initializeEqs_
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:95,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 89
    functionDepth: 3
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionName: QuantLib::PolynomialFunction::definiteIntegralCoefficients
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - begin
    - QuantLib::PolynomialFunction::initializeEqs_
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> PolynomialFunction::definiteIntegralCoefficients(Time
      t,\n                                                          Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:102,1
    - Dst: QuantLib::PolynomialFunction::initializeEqs_
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:103,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:104,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:105,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/polynomialmathfunction.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionName: QuantLib::PolynomialFunction::definiteDerivativeCoefficients
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - begin
    - inverse
    - QuantLib::PolynomialFunction::initializeEqs_
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> PolynomialFunction::definiteDerivativeCoefficients(Time
      t,\n                                                           Time t2) const"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/rounding.cpp:34,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/rounding.cpp:36,1
    - Dst: std::modf
      Src: /src/quantlib/ql/math/rounding.cpp:38,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/rounding.cpp:64,1
    - Dst: Real
      Src: /src/quantlib/ql/math/rounding.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/math/rounding.cpp:66,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 1
    argNames:
    - value
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 67
    functionName: Rounding::operator()(Decimal value) const
    functionSourceFile: /src/quantlib/ql/math/rounding.cpp
    functionUses: 0
    functionsReached:
    - std::modf
    - Real
    - QL_FAIL
    - std::pow
    - std::fabs
    linkageType: ''
    returnType: Decimal
    signature: Decimal Rounding::operator()(Decimal value) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/rounding.cpp:34,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/rounding.cpp:36,1
    - Dst: std::modf
      Src: /src/quantlib/ql/math/rounding.cpp:38,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/rounding.cpp:64,1
    - Dst: Real
      Src: /src/quantlib/ql/math/rounding.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/math/rounding.cpp:66,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 1
    argNames:
    - value
    argTypes:
    - Decimal
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 67
    functionName: Rounding::operator()(Decimal value) const
    functionSourceFile: /src/quantlib/ql/math/rounding.cpp
    functionUses: 0
    functionsReached:
    - std::modf
    - Real
    - QL_FAIL
    - std::pow
    - std::fabs
    linkageType: ''
    returnType: Decimal
    signature: Decimal Rounding::operator()(Decimal value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/incompletegamma.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/incompletegamma.cpp:37,1
    - Dst: QuantLib::incompleteGammaFunctionSeriesRepr
      Src: /src/quantlib/ql/math/incompletegamma.cpp:41,1
    - Dst: QuantLib::incompleteGammaFunctionContinuedFractionRepr
      Src: /src/quantlib/ql/math/incompletegamma.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: QuantLib::incompleteGammaFunction
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::incompleteGammaFunctionContinuedFractionRepr
    - QuantLib::incompleteGammaFunctionSeriesRepr
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunction(Real a, Real x, Real accuracy,\n                                 Integer
      maxIteration)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/incompletegamma.cpp:57,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:65,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/incompletegamma.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/incompletegamma.cpp:66,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/incompletegamma.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::incompleteGammaFunctionSeriesRepr
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunctionSeriesRepr(Real a, Real x, Real accuracy,\n
      \                                          Integer maxIteration)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/incompletegamma.cpp:78,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:87,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/incompletegamma.cpp:94,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/incompletegamma.cpp:94,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/incompletegamma.cpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 99
    functionName: QuantLib::incompleteGammaFunctionContinuedFractionRepr
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunctionContinuedFractionRepr(Real a, Real x,\n
      \                                                     Real accuracy,\n                                                      Integer
      maxIteration)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/incompletegamma.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/incompletegamma.cpp:37,1
    - Dst: QuantLib::incompleteGammaFunctionSeriesRepr
      Src: /src/quantlib/ql/math/incompletegamma.cpp:41,1
    - Dst: QuantLib::incompleteGammaFunctionContinuedFractionRepr
      Src: /src/quantlib/ql/math/incompletegamma.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: QuantLib::incompleteGammaFunction
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::incompleteGammaFunctionContinuedFractionRepr
    - QuantLib::incompleteGammaFunctionSeriesRepr
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunction(Real a, Real x, Real accuracy,\n                                 Integer
      maxIteration)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/incompletegamma.cpp:57,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:65,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/incompletegamma.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/incompletegamma.cpp:66,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/incompletegamma.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: QuantLib::incompleteGammaFunctionSeriesRepr
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunctionSeriesRepr(Real a, Real x, Real accuracy,\n
      \                                          Integer maxIteration)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/incompletegamma.cpp:78,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:87,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/incompletegamma.cpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/incompletegamma.cpp:94,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/incompletegamma.cpp:94,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/incompletegamma.cpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - a
    - x
    - accuracy
    - maxIteration
    argTypes:
    - Real
    - Real
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 99
    functionName: QuantLib::incompleteGammaFunctionContinuedFractionRepr
    functionSourceFile: /src/quantlib/ql/math/incompletegamma.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real incompleteGammaFunctionContinuedFractionRepr(Real a, Real x,\n
      \                                                     Real accuracy,\n                                                      Integer
      maxIteration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::ErrorFunction::ErrorFunction
    functionSourceFile: /src/quantlib/ql/math/errorfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ErrorFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::ErrorFunction::ErrorFunction
    functionSourceFile: /src/quantlib/ql/math/errorfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ErrorFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/math/bspline.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/math/bspline.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - p
    - n
    - ' knots'
    argTypes:
    - Natural
    - Natural
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: QuantLib::BSpline::BSpline
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BSpline::BSpline(Natural p,\n                     Natural n,\n
      \                    const std::vector<Real>& knots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:44,1
    - Dst: N
      Src: /src/quantlib/ql/math/bspline.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - i
    - x
    argTypes:
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BSpline::operator()(Natural i, Real x) const
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 0
    functionsReached:
    - N
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BSpline::operator()(Natural i, Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSpline::N
      Src: /src/quantlib/ql/math/bspline.cpp:54,1
    - Dst: QuantLib::BSpline::N
      Src: /src/quantlib/ql/math/bspline.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - p
    - x
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionName: QuantLib::BSpline::N
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BSpline::N
    linkageType: ''
    returnType: Real
    signature: Real BSpline::N(Natural i, Natural p, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/math/bspline.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/math/bspline.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - p
    - n
    - ' knots'
    argTypes:
    - Natural
    - Natural
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: QuantLib::BSpline::BSpline
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BSpline::BSpline(Natural p,\n                     Natural n,\n
      \                    const std::vector<Real>& knots)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/bspline.cpp:44,1
    - Dst: N
      Src: /src/quantlib/ql/math/bspline.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - i
    - x
    argTypes:
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BSpline::operator()(Natural i, Real x) const
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 0
    functionsReached:
    - N
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BSpline::operator()(Natural i, Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSpline::N
      Src: /src/quantlib/ql/math/bspline.cpp:54,1
    - Dst: QuantLib::BSpline::N
      Src: /src/quantlib/ql/math/bspline.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - p
    - x
    argTypes:
    - Natural
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionName: QuantLib::BSpline::N
    functionSourceFile: /src/quantlib/ql/math/bspline.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BSpline::N
    linkageType: ''
    returnType: Real
    signature: Real BSpline::N(Natural i, Natural p, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::PascalTriangle::PascalTriangle
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PascalTriangle()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::PascalTriangle::PascalTriangle
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PascalTriangle()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::details::LinearFct::LinearFct
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LinearFct(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator()(const Container& x) const
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Container& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:59,1
    - Dst: xContainer::begin
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:61,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    - Dst: LinearFct<ArgumentType>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - x
    - intercept
    argTypes:
    - xContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::details::LinearFcts::LinearFcts
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - xContainer::begin
    - LinearFct<ArgumentType>
    - push_back
    linkageType: ''
    returnType: void
    signature: void LinearFcts(const xContainer &x, Real intercept)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& fcts()'
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector< std::function<Real(ArgumentType)> >
    signature: std::vector< std::function<Real(ArgumentType)> > & fcts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::details::LinearFct::LinearFct
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LinearFct(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator()(const Container& x) const
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Container& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:59,1
    - Dst: xContainer::begin
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:61,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    - Dst: LinearFct<ArgumentType>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - x
    - intercept
    argTypes:
    - xContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::details::LinearFcts::LinearFcts
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - xContainer::begin
    - LinearFct<ArgumentType>
    - push_back
    linkageType: ''
    returnType: void
    signature: void LinearFcts(const xContainer &x, Real intercept)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& fcts()'
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector< std::function<Real(ArgumentType)> >
    signature: std::vector< std::function<Real(ArgumentType)> > & fcts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::LinearFcts<xContainer>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - intercept
    argTypes:
    - xContainer
    - yContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::LinearRegression::LinearRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - details::LinearFcts<xContainer>
    linkageType: ''
    returnType: void
    signature: "void LinearRegression::LinearRegression(const xContainer& x, \n                                           const
      yContainer& y, Real intercept)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - v
    argTypes:
    - xContainer
    - yContainer
    - vContainer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::LinearRegression::LinearRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearRegression::LinearRegression(const xContainer& x, \n                                           const
      yContainer& y, \n                                           const vContainer
      &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - '         y'
    - ' v'
    argTypes:
    - std::vector<ArgumentType>
    - std::vector<Real>
    - std::vector<std::function<Real(ArgumentType)> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::LinearLeastSquaresRegression::LinearLeastSquaresRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearLeastSquaresRegression(\n            const std::vector<ArgumentType>
      & x,\n            const std::vector<Real> &         y,\n            const std::vector<std::function<Real(ArgumentType)>
      > & v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::details::LinearFct::LinearFct
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LinearFct(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator()(const Container& x) const
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Container& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:59,1
    - Dst: xContainer::begin
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:61,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    - Dst: LinearFct<ArgumentType>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - x
    - intercept
    argTypes:
    - xContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::details::LinearFcts::LinearFcts
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - xContainer::begin
    - LinearFct<ArgumentType>
    - push_back
    linkageType: ''
    returnType: void
    signature: void LinearFcts(const xContainer &x, Real intercept)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& fcts()'
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector< std::function<Real(ArgumentType)> >
    signature: std::vector< std::function<Real(ArgumentType)> > & fcts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::details::LinearFct::LinearFct
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LinearFct(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Container
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator()(const Container& x) const
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Container& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:59,1
    - Dst: xContainer::begin
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:61,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    - Dst: LinearFct<ArgumentType>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - x
    - intercept
    argTypes:
    - xContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::details::LinearFcts::LinearFcts
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - xContainer::begin
    - LinearFct<ArgumentType>
    - push_back
    linkageType: ''
    returnType: void
    signature: void LinearFcts(const xContainer &x, Real intercept)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: '& fcts()'
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector< std::function<Real(ArgumentType)> >
    signature: std::vector< std::function<Real(ArgumentType)> > & fcts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::LinearFcts<xContainer>
      Src: /src/quantlib/ql/math/linearleastsquaresregression.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - intercept
    argTypes:
    - xContainer
    - yContainer
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: QuantLib::LinearRegression::LinearRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached:
    - details::LinearFcts<xContainer>
    linkageType: ''
    returnType: void
    signature: "void LinearRegression::LinearRegression(const xContainer& x, \n                                           const
      yContainer& y, Real intercept)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - ' y'
    - v
    argTypes:
    - xContainer
    - yContainer
    - vContainer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::LinearRegression::LinearRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearRegression::LinearRegression(const xContainer& x, \n                                           const
      yContainer& y, \n                                           const vContainer
      &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' x'
    - '         y'
    - ' v'
    argTypes:
    - std::vector<ArgumentType>
    - std::vector<Real>
    - std::vector<std::function<Real(ArgumentType)> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::LinearLeastSquaresRegression::LinearLeastSquaresRegression
    functionSourceFile: /src/quantlib/ql/math/linearleastsquaresregression.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearLeastSquaresRegression(\n            const std::vector<ArgumentType>
      & x,\n            const std::vector<Real> &         y,\n            const std::vector<std::function<Real(ArgumentType)>
      > & v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Solver1D::Solver1D
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:89,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/solver1d.hpp:92,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:101,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:104,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:105,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:110,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:111,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:117,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:119,1
    - Dst: QuantLib::Solver1D::impl
      Src: /src/quantlib/ql/math/solver1d.hpp:122,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:124,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:124,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:125,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:126,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:127,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:127,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:128,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:129,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:131,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:132,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:136,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:137,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solver1d.hpp:143,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 4
    argNames:
    - ' f'
    - accuracy
    - guess
    - step
    argTypes:
    - F
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 147
    functionName: QuantLib::Solver1D::solve
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached:
    - close
    - enforceBounds_
    - QuantLib::Solver1D::impl
    - f
    - std::max
    - QL_FAIL
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solve(const F& f,\n                   Real accuracy,\n                   Real
      guess,\n                   Real step) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/solver1d.hpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:183,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:187,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:188,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:191,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:205,1
    - Dst: QuantLib::Solver1D::impl
      Src: /src/quantlib/ql/math/solver1d.hpp:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - ' f'
    - accuracy
    - guess
    - xMin
    - xMax
    argTypes:
    - F
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 211
    functionName: QuantLib::Solver1D::solve
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached:
    - close
    - QuantLib::Solver1D::impl
    - f
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solve(const F& f,\n                   Real accuracy,\n                   Real
      guess,\n                   Real xMin,\n                   Real xMax) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionName: QuantLib::Solver1D<T>::setMaxEvaluations
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setMaxEvaluations(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lowerBound
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: QuantLib::Solver1D<T>::setLowerBound
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setLowerBound(Real lowerBound)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - upperBound
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: QuantLib::Solver1D<T>::setUpperBound
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setUpperBound(Real upperBound)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 261
    functionName: QuantLib::Solver1D<T>::enforceBounds_
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Solver1D<T>::enforceBounds_(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Solver1D::Solver1D
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:89,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/solver1d.hpp:92,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:101,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:104,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:105,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:110,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:111,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:117,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:119,1
    - Dst: QuantLib::Solver1D::impl
      Src: /src/quantlib/ql/math/solver1d.hpp:122,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:124,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:124,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:125,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:126,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:127,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solver1d.hpp:127,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:128,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:129,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:131,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:132,1
    - Dst: enforceBounds_
      Src: /src/quantlib/ql/math/solver1d.hpp:136,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:137,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solver1d.hpp:143,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 4
    argNames:
    - ' f'
    - accuracy
    - guess
    - step
    argTypes:
    - F
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 147
    functionName: QuantLib::Solver1D::solve
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached:
    - close
    - enforceBounds_
    - QuantLib::Solver1D::impl
    - f
    - std::max
    - QL_FAIL
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solve(const F& f,\n                   Real accuracy,\n                   Real
      guess,\n                   Real step) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/solver1d.hpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:183,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:187,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:188,1
    - Dst: f
      Src: /src/quantlib/ql/math/solver1d.hpp:191,1
    - Dst: close
      Src: /src/quantlib/ql/math/solver1d.hpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solver1d.hpp:205,1
    - Dst: QuantLib::Solver1D::impl
      Src: /src/quantlib/ql/math/solver1d.hpp:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - ' f'
    - accuracy
    - guess
    - xMin
    - xMax
    argTypes:
    - F
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 211
    functionName: QuantLib::Solver1D::solve
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached:
    - close
    - QuantLib::Solver1D::impl
    - f
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solve(const F& f,\n                   Real accuracy,\n                   Real
      guess,\n                   Real xMin,\n                   Real xMax) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionName: QuantLib::Solver1D<T>::setMaxEvaluations
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setMaxEvaluations(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lowerBound
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: QuantLib::Solver1D<T>::setLowerBound
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setLowerBound(Real lowerBound)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - upperBound
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: QuantLib::Solver1D<T>::setUpperBound
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Solver1D<T>::setUpperBound(Real upperBound)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 261
    functionName: QuantLib::Solver1D<T>::enforceBounds_
    functionSourceFile: /src/quantlib/ql/math/solver1d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Solver1D<T>::enforceBounds_(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/array.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    linkageType: ''
    returnType: void
    signature: void Array()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: ~Array()
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Array()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 268
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:271,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:272,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:272,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - size
    - value
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::fill
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:276,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:277,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - size
    - value
    - increment
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size, Real value, Real increment)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:282,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 285
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - std::copy
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(const Array& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 290
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::Array(Array&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - begin
    - end
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::fill
    - reset
    - begin
    - Real::Real
    - end
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 I
      begin, I end,\n                                 const std::true_type&)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/array.hpp:318,1
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:324,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - ' begin'
    - ' end'
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - reset
    - begin
    - Real::Real
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 const
      I& begin, const I& end,\n                                 const std::false_type&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - begin
    - end
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::fill
    - reset
    - begin
    - Real::Real
    - end
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 I
      begin, I end,\n                                 const std::true_type&)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/array.hpp:318,1
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:324,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - ' begin'
    - ' end'
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - reset
    - begin
    - Real::Real
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 const
      I& begin, const I& end,\n                                 const std::false_type&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::initializer_list<Real>::begin
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::initializer_list<Real>::end
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::false_type
      Src: /src/quantlib/ql/math/array.hpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::false_type
    - std::initializer_list<Real>::begin
    - std::initializer_list<Real>::end
    linkageType: ''
    returnType: void
    signature: void Array::Array(std::initializer_list<Real> init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:338,1
    - Dst: std::is_integral<ForwardIterator>
      Src: /src/quantlib/ql/math/array.hpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 340
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::is_integral<ForwardIterator>
    linkageType: ''
    returnType: void
    signature: void Array::Array(ForwardIterator begin, ForwardIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::initializer_list<T>::begin
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::initializer_list<T>::end
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::false_type
      Src: /src/quantlib/ql/math/array.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 345
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::initializer_list<T>::begin
    - std::false_type
    - std::initializer_list<T>::end
    linkageType: ''
    returnType: void
    signature: void Array::Array(std::initializer_list<T> init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/array.hpp:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 352
    functionName: '& Array::operator=(const Array& from)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator=(const Array& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/array.hpp:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: '& Array::operator=(Array&& from) noexcept'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator=(Array&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::equal
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionName: Array::operator==(const Array& to) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::equal
    linkageType: ''
    returnType: bool
    signature: bool Array::operator==(const Array& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: Array::operator!=(const Array& to) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Array::operator!=(const Array& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:368,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 373
    functionName: '& Array::operator+=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator+=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: '& Array::operator+=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator+=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:382,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: '& Array::operator-=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::minus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator-=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 392
    functionName: '& Array::operator-=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator-=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:395,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: '& Array::operator*=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::multiplies<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator*=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: '& Array::operator*=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator*=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:408,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 413
    functionName: '& Array::operator/=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::divides<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator/=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:417,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 421
    functionName: '& Array::operator/=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator/=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:425,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 430
    functionName: Array::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:433,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 437
    functionName: QuantLib::Array::at
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:441,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 444
    functionName: QuantLib::Array::front
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:448,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 451
    functionName: QuantLib::Array::back
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:455,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 460
    functionName: '& Array::operator[](Size i)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:463,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 467
    functionName: '& Array::at(Size i)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:471,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 474
    functionName: '& Array::front()'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:478,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 481
    functionName: '& Array::back()'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: QuantLib::Array::size
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Array::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: QuantLib::Array::empty
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Array::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: QuantLib::Array::begin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::const_iterator
    signature: Array::const_iterator Array::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionName: QuantLib::Array::begin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::iterator
    signature: Array::iterator Array::begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 501
    functionName: QuantLib::Array::end
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::const_iterator
    signature: Array::const_iterator Array::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: QuantLib::Array::end
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::iterator
    signature: Array::iterator Array::end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:508,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionName: QuantLib::Array::rbegin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_iterator
    - QuantLib::Array::end
    linkageType: ''
    returnType: Array::const_reverse_iterator
    signature: Array::const_reverse_iterator Array::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:512,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: QuantLib::Array::rbegin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - reverse_iterator
    - QuantLib::Array::end
    linkageType: ''
    returnType: Array::reverse_iterator
    signature: Array::reverse_iterator Array::rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:516,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: QuantLib::Array::rend
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - const_reverse_iterator
    linkageType: ''
    returnType: Array::const_reverse_iterator
    signature: Array::const_reverse_iterator Array::rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:520,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 519
    functionDepth: 1
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionName: QuantLib::Array::rend
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - reverse_iterator
    - QuantLib::Array::begin
    linkageType: ''
    returnType: Array::reverse_iterator
    signature: Array::reverse_iterator Array::rend()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 532
    functionName: QuantLib::Array::resize
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::resize(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:535,1
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 537
    functionName: QuantLib::Array::swap
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::swap(Array& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:543,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:544,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: Real
      Src: /src/quantlib/ql/math/array.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 1
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: QuantLib::DotProduct
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DotProduct(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:549,1
    - Dst: QuantLib::DotProduct
      Src: /src/quantlib/ql/math/array.hpp:549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 548
    functionDepth: 2
    functionLinenumber: 548
    functionLinenumberEnd: 550
    functionName: QuantLib::Norm2
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DotProduct
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Norm2(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 559
    functionName: operator+(const Array& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 563
    functionName: operator+(Array&& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:566,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/array.hpp:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 569
    functionName: operator-(const Array& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:572,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/array.hpp:573,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 575
    functionName: operator-(Array&& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:581,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:582,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:583,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 586
    functionName: operator+(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::plus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:590,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:591,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:592,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 588
    functionDepth: 1
    functionLinenumber: 588
    functionLinenumberEnd: 595
    functionName: operator+(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::plus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:599,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:600,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:601,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 604
    functionName: operator+(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::plus<>
    - std::transform
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:608,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:609,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:610,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 613
    functionName: operator+(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::plus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:616,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 619
    functionName: operator+(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:622,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionName: operator+(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:628,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 631
    functionName: operator+(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:634,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 633
    functionDepth: 0
    functionLinenumber: 633
    functionLinenumberEnd: 637
    functionName: operator+(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:641,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:642,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:643,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 646
    functionName: operator-(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::minus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:650,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:651,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:652,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 648
    functionDepth: 1
    functionLinenumber: 648
    functionLinenumberEnd: 655
    functionName: operator-(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::minus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:659,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:660,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:661,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:662,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 664
    functionName: operator-(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::minus<>
    - std::transform
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:668,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:669,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:670,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 673
    functionName: operator-(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::minus<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:676,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 675
    functionDepth: 1
    functionLinenumber: 675
    functionLinenumberEnd: 679
    functionName: operator-(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:682,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 685
    functionName: operator-(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:688,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 691
    functionName: operator-(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:694,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 697
    functionName: operator-(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:701,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:702,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:703,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 699
    functionDepth: 1
    functionLinenumber: 699
    functionLinenumberEnd: 706
    functionName: operator*(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::multiplies<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:710,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:711,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:712,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 715
    functionName: operator*(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::multiplies<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:719,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:720,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:721,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 724
    functionName: operator*(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::multiplies<>
    - std::transform
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:728,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:729,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:730,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:731,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 726
    functionDepth: 1
    functionLinenumber: 726
    functionLinenumberEnd: 733
    functionName: operator*(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::multiplies<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:736,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: operator*(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:742,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 745
    functionName: operator*(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:748,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 747
    functionDepth: 1
    functionLinenumber: 747
    functionLinenumberEnd: 751
    functionName: operator*(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:754,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 757
    functionName: operator*(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:761,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:762,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:763,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 766
    functionName: operator/(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::divides<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:770,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:771,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:772,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 768
    functionDepth: 1
    functionLinenumber: 768
    functionLinenumberEnd: 775
    functionName: operator/(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::divides<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:779,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:780,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:781,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 777
    functionDepth: 1
    functionLinenumber: 777
    functionLinenumberEnd: 784
    functionName: operator/(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::divides<>
    - std::transform
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:788,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:789,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:790,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:791,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 793
    functionName: operator/(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - std::move
    - begin
    - std::divides<>
    - std::transform
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:796,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 799
    functionName: operator/(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:802,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:803,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 801
    functionDepth: 0
    functionLinenumber: 801
    functionLinenumberEnd: 805
    functionName: operator/(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:808,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 807
    functionDepth: 1
    functionLinenumber: 807
    functionLinenumberEnd: 811
    functionName: operator/(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:814,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 817
    functionName: operator/(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:822,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/array.hpp:824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 826
    functionName: QuantLib::Abs
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::fabs
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Abs(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:829,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/array.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 833
    functionName: QuantLib::Abs
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::fabs
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Abs(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:836,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 835
    functionDepth: 1
    functionLinenumber: 835
    functionLinenumberEnd: 840
    functionName: QuantLib::Sqrt
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::sqrt
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Sqrt(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:843,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 842
    functionDepth: 0
    functionLinenumber: 842
    functionLinenumberEnd: 847
    functionName: QuantLib::Sqrt
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::sqrt
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Sqrt(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:850,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/array.hpp:852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 854
    functionName: QuantLib::Log
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Log(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:857,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/array.hpp:859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 861
    functionName: QuantLib::Log
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Log(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:864,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/array.hpp:866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 868
    functionName: QuantLib::Exp
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Exp(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:871,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/array.hpp:873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 875
    functionName: QuantLib::Exp
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Exp(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:878,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/array.hpp:880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - alpha
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 877
    functionDepth: 1
    functionLinenumber: 877
    functionLinenumberEnd: 882
    functionName: QuantLib::Pow
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::pow
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Pow(const Array& v, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:885,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/array.hpp:887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - alpha
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 889
    functionName: QuantLib::Pow
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::pow
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Pow(Array&& v, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/array.hpp:892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' w'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 893
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 9
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Array& v, Array& w) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: width
      Src: /src/quantlib/ql/math/array.hpp:896,1
    - Dst: empty
      Src: /src/quantlib/ql/math/array.hpp:898,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:899,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/array.hpp:900,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/array.hpp:901,1
    - Dst: back
      Src: /src/quantlib/ql/math/array.hpp:901,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' a'
    argTypes:
    - std::ostream
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 895
    functionDepth: 0
    functionLinenumber: 895
    functionLinenumberEnd: 905
    functionName: '& operator<<(std::ostream& out, const Array& a)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - empty
    - width
    - std::setw
    - size
    - back
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Array& a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/array.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    linkageType: ''
    returnType: void
    signature: void Array()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: ~Array()
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Array()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 268
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:271,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:272,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:272,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - size
    - value
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::fill
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:276,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:277,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - size
    - value
    - increment
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(Size size, Real value, Real increment)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:282,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:284,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 285
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - std::copy
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Array::Array(const Array& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 287
    functionDepth: 2
    functionLinenumber: 287
    functionLinenumberEnd: 290
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::Array(Array&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - begin
    - end
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - std::fill
    - reset
    - begin
    - Real::Real
    - end
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 I
      begin, I end,\n                                 const std::true_type&)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/array.hpp:318,1
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:324,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - ' begin'
    - ' end'
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - std::copy
    - reset
    - begin
    - Real::Real
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 const
      I& begin, const I& end,\n                                 const std::false_type&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:306,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:308,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - begin
    - end
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - std::fill
    - reset
    - begin
    - Real::Real
    - end
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 I
      begin, I end,\n                                 const std::true_type&)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/array.hpp:318,1
    - Dst: reset
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/array.hpp:319,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:324,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' a'
    - ' data_'
    - ' n_'
    - ' begin'
    - ' end'
    argTypes:
    - Array
    - std::unique_ptr<Real[]>
    - Size
    - I
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::_fill_array_
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 3
    functionsReached:
    - std::copy
    - reset
    - begin
    - Real::Real
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void _fill_array_(Array& a,\n                                 std::unique_ptr<Real[]>&
      data_,\n                                 Size& n_,\n                                 const
      I& begin, const I& end,\n                                 const std::false_type&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::initializer_list<Real>::begin
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::initializer_list<Real>::end
      Src: /src/quantlib/ql/math/array.hpp:330,1
    - Dst: std::false_type
      Src: /src/quantlib/ql/math/array.hpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::false_type
    - std::initializer_list<Real>::begin
    - std::initializer_list<Real>::end
    linkageType: ''
    returnType: void
    signature: void Array::Array(std::initializer_list<Real> init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:338,1
    - Dst: std::is_integral<ForwardIterator>
      Src: /src/quantlib/ql/math/array.hpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - ForwardIterator
    - ForwardIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 340
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::is_integral<ForwardIterator>
    linkageType: ''
    returnType: void
    signature: void Array::Array(ForwardIterator begin, ForwardIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::_fill_array_
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::initializer_list<T>::begin
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::initializer_list<T>::end
      Src: /src/quantlib/ql/math/array.hpp:344,1
    - Dst: std::false_type
      Src: /src/quantlib/ql/math/array.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 345
    functionName: QuantLib::Array::Array
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::_fill_array_
    - std::initializer_list<T>::begin
    - std::false_type
    - std::initializer_list<T>::end
    linkageType: ''
    returnType: void
    signature: void Array::Array(std::initializer_list<T> init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/array.hpp:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 352
    functionName: '& Array::operator=(const Array& from)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator=(const Array& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/array.hpp:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: '& Array::operator=(Array&& from) noexcept'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator=(Array&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::equal
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:360,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionName: Array::operator==(const Array& to) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::equal
    linkageType: ''
    returnType: bool
    signature: bool Array::operator==(const Array& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: Array::operator!=(const Array& to) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Array::operator!=(const Array& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:368,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:371,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 373
    functionName: '& Array::operator+=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator+=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:377,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: '& Array::operator+=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator+=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:382,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:385,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: '& Array::operator-=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::minus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator-=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:390,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 392
    functionName: '& Array::operator-=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator-=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:395,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:398,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: '& Array::operator*=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::multiplies<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator*=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:403,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: '& Array::operator*=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator*=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:408,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:411,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 413
    functionName: '& Array::operator/=(const Array& v)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::divides<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator/=(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:417,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:419,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 421
    functionName: '& Array::operator/=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array & Array::operator/=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:425,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 430
    functionName: Array::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:433,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 437
    functionName: QuantLib::Array::at
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:441,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 444
    functionName: QuantLib::Array::front
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:448,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 451
    functionName: QuantLib::Array::back
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Array::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:455,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 460
    functionName: '& Array::operator[](Size i)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:463,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 467
    functionName: '& Array::at(Size i)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:471,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 474
    functionName: '& Array::front()'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:478,1
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 481
    functionName: '& Array::back()'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real & Array::back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: QuantLib::Array::size
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Array::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: QuantLib::Array::empty
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Array::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: QuantLib::Array::begin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 9
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::const_iterator
    signature: Array::const_iterator Array::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionName: QuantLib::Array::begin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 9
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::iterator
    signature: Array::iterator Array::begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 501
    functionName: QuantLib::Array::end
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 9
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::const_iterator
    signature: Array::const_iterator Array::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/array.hpp:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: QuantLib::Array::end
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 9
    functionsReached:
    - get
    linkageType: ''
    returnType: Array::iterator
    signature: Array::iterator Array::end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:508,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionName: QuantLib::Array::rbegin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_iterator
    - QuantLib::Array::end
    linkageType: ''
    returnType: Array::const_reverse_iterator
    signature: Array::const_reverse_iterator Array::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:512,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: QuantLib::Array::rbegin
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - reverse_iterator
    - QuantLib::Array::end
    linkageType: ''
    returnType: Array::reverse_iterator
    signature: Array::reverse_iterator Array::rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:516,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: QuantLib::Array::rend
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Array::begin
    - const_reverse_iterator
    linkageType: ''
    returnType: Array::const_reverse_iterator
    signature: Array::const_reverse_iterator Array::rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/array.hpp:520,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 519
    functionDepth: 1
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionName: QuantLib::Array::rend
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - reverse_iterator
    - QuantLib::Array::begin
    linkageType: ''
    returnType: Array::reverse_iterator
    signature: Array::reverse_iterator Array::rend()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::begin
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::end
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:526,1
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 523
    functionDepth: 2
    functionLinenumber: 523
    functionLinenumberEnd: 532
    functionName: QuantLib::Array::resize
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - Array::begin
    - QuantLib::Array::begin
    - QuantLib::Array::end
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::resize(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:535,1
    - Dst: QuantLib::Array::swap
      Src: /src/quantlib/ql/math/array.hpp:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 537
    functionName: QuantLib::Array::swap
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::Array::swap
    linkageType: ''
    returnType: void
    signature: void Array::swap(Array& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:542,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:543,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:544,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:545,1
    - Dst: Real
      Src: /src/quantlib/ql/math/array.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 1
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: QuantLib::DotProduct
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 1
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DotProduct(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:549,1
    - Dst: QuantLib::DotProduct
      Src: /src/quantlib/ql/math/array.hpp:549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 548
    functionDepth: 2
    functionLinenumber: 548
    functionLinenumberEnd: 550
    functionName: QuantLib::Norm2
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DotProduct
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Norm2(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 559
    functionName: operator+(const Array& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 563
    functionName: operator+(Array&& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:566,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:567,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/array.hpp:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 569
    functionName: operator-(const Array& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::negate<>
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:572,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:573,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/array.hpp:573,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 575
    functionName: operator-(Array&& v)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:580,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:581,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:582,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:583,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:584,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 586
    functionName: operator+(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::plus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:589,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:590,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:591,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:592,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:593,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 588
    functionDepth: 1
    functionLinenumber: 588
    functionLinenumberEnd: 595
    functionName: operator+(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::plus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:598,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:599,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:600,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:601,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:602,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 604
    functionName: operator+(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::plus<>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:607,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:608,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:609,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:610,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:611,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/array.hpp:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 613
    functionName: operator+(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::plus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:616,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:617,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 619
    functionName: operator+(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator+(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:622,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:623,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionName: operator+(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:628,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:629,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 631
    functionName: operator+(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:634,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:635,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 633
    functionDepth: 0
    functionLinenumber: 633
    functionLinenumberEnd: 637
    functionName: operator+(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator+(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:640,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:641,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:642,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:643,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:644,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 646
    functionName: operator-(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::minus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:649,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:650,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:651,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:652,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:653,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 648
    functionDepth: 1
    functionLinenumber: 648
    functionLinenumberEnd: 655
    functionName: operator-(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::minus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:659,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:660,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:661,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:662,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:662,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 664
    functionName: operator-(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::minus<>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:667,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:668,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:669,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:670,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:671,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/array.hpp:671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 673
    functionName: operator-(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::minus<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:676,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:677,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 679
    functionName: operator-(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:682,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:683,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 685
    functionName: operator-(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:688,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:689,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 687
    functionDepth: 0
    functionLinenumber: 687
    functionLinenumberEnd: 691
    functionName: operator-(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:694,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:695,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 697
    functionName: operator-(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator-(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:700,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:701,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:702,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:703,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:704,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 699
    functionDepth: 1
    functionLinenumber: 699
    functionLinenumberEnd: 706
    functionName: operator*(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::multiplies<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:709,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:710,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:711,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:712,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:713,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 715
    functionName: operator*(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::multiplies<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:718,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:719,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:720,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:721,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:722,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 724
    functionName: operator*(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::multiplies<>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:727,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:728,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:729,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:730,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:731,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/array.hpp:731,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 726
    functionDepth: 1
    functionLinenumber: 726
    functionLinenumberEnd: 733
    functionName: operator*(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::multiplies<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:736,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:737,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: operator*(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:742,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:743,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 745
    functionName: operator*(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:748,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:749,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 751
    functionName: operator*(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:754,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:755,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 757
    functionName: operator*(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator*(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:760,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:761,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:762,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:763,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:764,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 766
    functionName: operator/(const Array& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::divides<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:769,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:770,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:771,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:772,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:773,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 768
    functionDepth: 1
    functionLinenumber: 768
    functionLinenumberEnd: 775
    functionName: operator/(const Array& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::divides<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:778,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:779,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:780,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:781,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:782,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 777
    functionDepth: 1
    functionLinenumber: 777
    functionLinenumberEnd: 784
    functionName: operator/(Array&& v1, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - std::move
    - begin
    - std::divides<>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:787,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:788,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:789,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:790,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:791,1
    - Dst: std::divides<>
      Src: /src/quantlib/ql/math/array.hpp:791,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 793
    functionName: operator/(Array&& v1, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - std::move
    - std::divides<>
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:796,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:797,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 799
    functionName: operator/(const Array& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator/(const Array& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:802,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:803,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:803,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v1'
    - a
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 801
    functionDepth: 0
    functionLinenumber: 801
    functionLinenumberEnd: 805
    functionName: operator/(Array&& v1, Real a)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Array&& v1, Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:808,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:809,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 811
    functionName: operator/(Real a, const Array& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Real a, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:814,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:815,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - ' v2'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 817
    functionName: operator/(Real a, Array&& v2)
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - std::move
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array operator/(Real a, Array&& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:822,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:823,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/array.hpp:824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 826
    functionName: QuantLib::Abs
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::fabs
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Abs(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:829,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:830,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/array.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 833
    functionName: QuantLib::Abs
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::fabs
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Abs(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:836,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:837,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 835
    functionDepth: 1
    functionLinenumber: 835
    functionLinenumberEnd: 840
    functionName: QuantLib::Sqrt
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::sqrt
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Sqrt(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:843,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:844,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/array.hpp:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 842
    functionDepth: 0
    functionLinenumber: 842
    functionLinenumberEnd: 847
    functionName: QuantLib::Sqrt
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::sqrt
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Sqrt(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:850,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:851,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/array.hpp:852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 854
    functionName: QuantLib::Log
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Log(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:857,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:858,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/array.hpp:859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 861
    functionName: QuantLib::Log
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Log(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:864,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:865,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/array.hpp:866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 868
    functionName: QuantLib::Exp
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Array::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Exp(const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:871,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:872,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/array.hpp:873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 875
    functionName: QuantLib::Exp
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Array::begin
    - Array::end
    - std::move
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Exp(Array&& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/array.hpp:878,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: begin
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: end
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:879,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/array.hpp:880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - alpha
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 877
    functionDepth: 1
    functionLinenumber: 877
    functionLinenumberEnd: 882
    functionName: QuantLib::Pow
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::pow
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: Array
    signature: Array Pow(const Array& v, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/array.hpp:885,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/array.hpp:886,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/array.hpp:887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - alpha
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 889
    functionName: QuantLib::Pow
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - std::move
    - std::pow
    - std::transform
    linkageType: ''
    returnType: Array
    signature: Array Pow(Array&& v, Real alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/array.hpp:892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' w'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 893
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Array& v, Array& w) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: width
      Src: /src/quantlib/ql/math/array.hpp:896,1
    - Dst: empty
      Src: /src/quantlib/ql/math/array.hpp:898,1
    - Dst: size
      Src: /src/quantlib/ql/math/array.hpp:899,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/array.hpp:900,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/array.hpp:901,1
    - Dst: back
      Src: /src/quantlib/ql/math/array.hpp:901,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' a'
    argTypes:
    - std::ostream
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 895
    functionDepth: 0
    functionLinenumber: 895
    functionLinenumberEnd: 905
    functionName: '& operator<<(std::ostream& out, const Array& a)'
    functionSourceFile: /src/quantlib/ql/math/array.hpp
    functionUses: 0
    functionsReached:
    - empty
    - width
    - std::setw
    - size
    - back
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Array& a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 52
    functionName: QuantLib::AbcdMathFunction::validate
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdMathFunction::validate(Real a,\n                                    Real
      b,\n                                    Real c,\n                                    Real
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::AbcdMathFunction::initialize_
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::initialize_()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::initialize_
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - aa
    - bb
    - cc
    - dd
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::AbcdMathFunction::AbcdMathFunction
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::initialize_
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::AbcdMathFunction(Real aa, Real bb, Real cc,
      Real dd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:80,1
    - Dst: QuantLib::AbcdMathFunction::initialize_
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - abcd
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 3
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdMathFunction::AbcdMathFunction
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::initialize_
    - std::move
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::AbcdMathFunction(std::vector<Real> abcd)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: QuantLib::AbcdMathFunction::maximumLocation
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time AbcdMathFunction::maximumLocation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::primitive
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:105,1
    - Dst: QuantLib::AbcdMathFunction::primitive
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::AbcdMathFunction::definiteIntegral
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::primitive
    linkageType: ''
    returnType: Real
    signature: "Real AbcdMathFunction::definiteIntegral(Time t1,\n                                            Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 119
    functionName: QuantLib::AbcdMathFunction::definiteIntegralCoefficients
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdMathFunction::definiteIntegralCoefficients(Time
      t,\n                                                   Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: QuantLib::AbcdMathFunction::definiteDerivativeCoefficients
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdMathFunction::definiteDerivativeCoefficients(Time
      t,\n                                                     Time t2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 52
    functionName: QuantLib::AbcdMathFunction::validate
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdMathFunction::validate(Real a,\n                                    Real
      b,\n                                    Real c,\n                                    Real
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::AbcdMathFunction::initialize_
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::initialize_()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::initialize_
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - aa
    - bb
    - cc
    - dd
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::AbcdMathFunction::AbcdMathFunction
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::initialize_
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::AbcdMathFunction(Real aa, Real bb, Real cc,
      Real dd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:80,1
    - Dst: QuantLib::AbcdMathFunction::initialize_
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - abcd
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 3
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdMathFunction::AbcdMathFunction
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::initialize_
    - std::move
    linkageType: ''
    returnType: void
    signature: void AbcdMathFunction::AbcdMathFunction(std::vector<Real> abcd)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: QuantLib::AbcdMathFunction::maximumLocation
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time AbcdMathFunction::maximumLocation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdMathFunction::primitive
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:105,1
    - Dst: QuantLib::AbcdMathFunction::primitive
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::AbcdMathFunction::definiteIntegral
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::primitive
    linkageType: ''
    returnType: Real
    signature: "Real AbcdMathFunction::definiteIntegral(Time t1,\n                                            Time
      t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 119
    functionName: QuantLib::AbcdMathFunction::definiteIntegralCoefficients
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdMathFunction::definiteIntegralCoefficients(Time
      t,\n                                                   Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/abcdmathfunction.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - t
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: QuantLib::AbcdMathFunction::definiteDerivativeCoefficients
    functionSourceFile: /src/quantlib/ql/math/abcdmathfunction.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdMathFunction::definiteDerivativeCoefficients(Time
      t,\n                                                     Time t2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/beta.hpp:32,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:32,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:33,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - z
    - w
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::betaFunction
    functionSourceFile: /src/quantlib/ql/math/beta.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real betaFunction(Real z, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/beta.hpp:32,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:32,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:33,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/beta.hpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - z
    - w
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::betaFunction
    functionSourceFile: /src/quantlib/ql/math/beta.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real betaFunction(Real z, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::Factorial::Factorial
    functionSourceFile: /src/quantlib/ql/math/factorial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Factorial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::Factorial::Factorial
    functionSourceFile: /src/quantlib/ql/math/factorial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Factorial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::PolynomialFunction::order
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& coefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & coefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& derivativeCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & derivativeCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& primitiveCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & primitiveCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::PolynomialFunction::order
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& coefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & coefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& derivativeCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & derivativeCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& primitiveCoefficients()'
    functionSourceFile: /src/quantlib/ql/math/polynomialmathfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & primitiveCoefficients()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::PrimeNumbers::PrimeNumbers
    functionSourceFile: /src/quantlib/ql/math/primenumbers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrimeNumbers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::PrimeNumbers::PrimeNumbers
    functionSourceFile: /src/quantlib/ql/math/primenumbers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrimeNumbers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::squared
    functionSourceFile: /src/quantlib/ql/math/functional.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T squared(T x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::squared
    functionSourceFile: /src/quantlib/ql/math/functional.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T squared(T x)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/errorfunction.cpp:200,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/errorfunction.cpp:201,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/errorfunction.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/errorfunction.cpp:241,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 244
    functionName: ErrorFunction::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/errorfunction.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::isfinite
    - std::isnan
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ErrorFunction::operator()(Real x) const
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/errorfunction.cpp:200,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/errorfunction.cpp:201,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/errorfunction.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/errorfunction.cpp:241,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 244
    functionName: ErrorFunction::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/errorfunction.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::isfinite
    - std::isnan
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ErrorFunction::operator()(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:68,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:74,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 76
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close(Real x, Real y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:83,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:89,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - n
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 90
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close(Real x, Real y, Size n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:99,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:105,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 107
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 6
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close_enough(Real x, Real y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:114,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - n
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 121
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 6
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close_enough(Real x, Real y, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: earlier_than<T>
      Src: /src/quantlib/ql/math/comparison.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - ext::shared_ptr<T>
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: "operator()(const ext::shared_ptr<T>& x,\n                        const
      ext::shared_ptr<T>& y) const"
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 0
    functionsReached:
    - earlier_than<T>
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<T>& x,\n                        const
      ext::shared_ptr<T>& y) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:68,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:74,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 76
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close(Real x, Real y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:83,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:89,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - n
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 90
    functionName: QuantLib::close
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close(Real x, Real y, Size n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:99,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:105,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 107
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 6
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close_enough(Real x, Real y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:114,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/comparison.hpp:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - x
    - y
    - n
    argTypes:
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 121
    functionName: QuantLib::close_enough
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 6
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool close_enough(Real x, Real y, Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: earlier_than<T>
      Src: /src/quantlib/ql/math/comparison.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - ext::shared_ptr<T>
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: "operator()(const ext::shared_ptr<T>& x,\n                        const
      ext::shared_ptr<T>& y) const"
    functionSourceFile: /src/quantlib/ql/math/comparison.hpp
    functionUses: 0
    functionsReached:
    - earlier_than<T>
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<T>& x,\n                        const
      ext::shared_ptr<T>& y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Rounding::Rounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Rounding()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::Rounding::Rounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Rounding(Integer precision,\n                          Type type
      = Closest,\n                          Integer digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::Rounding::precision
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer precision() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::Rounding::type
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::Rounding::roundingDigit
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer roundingDigit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::UpRounding::UpRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UpRounding(Integer precision,\n                            Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::DownRounding::DownRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DownRounding(Integer precision,\n                              Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::ClosestRounding::ClosestRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ClosestRounding(Integer precision,\n                                 Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::CeilingTruncation::CeilingTruncation
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CeilingTruncation(Integer precision,\n                                   Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::FloorTruncation::FloorTruncation
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FloorTruncation(Integer precision,\n                                 Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Rounding::Rounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Rounding()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::Rounding::Rounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Rounding(Integer precision,\n                          Type type
      = Closest,\n                          Integer digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::Rounding::precision
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer precision() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::Rounding::type
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::Rounding::roundingDigit
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer roundingDigit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::UpRounding::UpRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UpRounding(Integer precision,\n                            Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::DownRounding::DownRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DownRounding(Integer precision,\n                              Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::ClosestRounding::ClosestRounding
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ClosestRounding(Integer precision,\n                                 Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::CeilingTruncation::CeilingTruncation
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CeilingTruncation(Integer precision,\n                                   Integer
      digit = 5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - precision
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::FloorTruncation::FloorTruncation
    functionSourceFile: /src/quantlib/ql/math/rounding.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FloorTruncation(Integer precision,\n                                 Integer
      digit = 5)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/primenumbers.cpp:48,1
    - Dst: insert
      Src: /src/quantlib/ql/math/primenumbers.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/math/primenumbers.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/primenumbers.cpp:53,1
    - Dst: QuantLib::PrimeNumbers::nextPrimeNumber
      Src: /src/quantlib/ql/math/primenumbers.cpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - absoluteIndex
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::PrimeNumbers::get
    functionSourceFile: /src/quantlib/ql/math/primenumbers.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::PrimeNumbers::nextPrimeNumber
    - size
    - end
    - insert
    linkageType: ''
    returnType: BigNatural
    signature: BigNatural PrimeNumbers::get(Size absoluteIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/math/primenumbers.cpp:59,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: Real
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/primenumbers.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 73
    functionName: QuantLib::PrimeNumbers::nextPrimeNumber
    functionSourceFile: /src/quantlib/ql/math/primenumbers.cpp
    functionUses: 1
    functionsReached:
    - static_cast<BigNatural>
    - push_back
    - Real
    - std::sqrt
    - back
    linkageType: ''
    returnType: BigNatural
    signature: BigNatural PrimeNumbers::nextPrimeNumber()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/primenumbers.cpp:48,1
    - Dst: insert
      Src: /src/quantlib/ql/math/primenumbers.cpp:50,1
    - Dst: end
      Src: /src/quantlib/ql/math/primenumbers.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/primenumbers.cpp:53,1
    - Dst: QuantLib::PrimeNumbers::nextPrimeNumber
      Src: /src/quantlib/ql/math/primenumbers.cpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - absoluteIndex
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::PrimeNumbers::get
    functionSourceFile: /src/quantlib/ql/math/primenumbers.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::PrimeNumbers::nextPrimeNumber
    - size
    - end
    - insert
    linkageType: ''
    returnType: BigNatural
    signature: BigNatural PrimeNumbers::get(Size absoluteIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/math/primenumbers.cpp:59,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: Real
      Src: /src/quantlib/ql/math/primenumbers.cpp:63,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/primenumbers.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 73
    functionName: QuantLib::PrimeNumbers::nextPrimeNumber
    functionSourceFile: /src/quantlib/ql/math/primenumbers.cpp
    functionUses: 2
    functionsReached:
    - static_cast<BigNatural>
    - push_back
    - Real
    - std::sqrt
    - back
    linkageType: ''
    returnType: BigNatural
    signature: BigNatural PrimeNumbers::nextPrimeNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: ~Matrix()
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Matrix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rows
    - columns
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:229,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rows
    - columns
    - value
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - std::fill
    - QuantLib::Matrix::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:236,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:238,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - rows
    - columns
    - begin
    - end
    argTypes:
    - Size
    - Size
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - std::copy
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns, Iterator begin, Iterator
      end)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::empty
      Src: /src/quantlib/ql/math/matrix.hpp:242,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:242,1
    - Dst: QuantLib::Matrix::empty
      Src: /src/quantlib/ql/math/matrix.hpp:245,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 248
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - QuantLib::Matrix::begin
    - QuantLib::Matrix::end
    - QuantLib::Matrix::empty
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(const Matrix& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::swap
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Matrix&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:256,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:256,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:262,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:262,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::initializer_list<std::initializer_list<Real>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 268
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - std::initializer_list<std::initializer_list<Real>>::begin
    - std::copy
    - std::initializer_list<std::initializer_list<Real>>::size
    - QuantLib::Matrix::begin
    - QuantLib::Matrix::end
    - Real::Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(std::initializer_list<std::initializer_list<Real>>
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/matrix.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: '& Matrix::operator=(const Matrix& from)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator=(const Matrix& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/matrix.hpp:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: '& Matrix::operator=(Matrix&& from) noexcept'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator=(Matrix&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::equal
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionName: Matrix::operator==(const Matrix& to) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::equal
    linkageType: ''
    returnType: bool
    signature: bool Matrix::operator==(const Matrix& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionName: Matrix::operator!=(const Matrix& to) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Matrix::operator!=(const Matrix& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:292,1
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:293,1
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 295
    functionName: QuantLib::Matrix::swap
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Matrix::swap
    linkageType: ''
    returnType: void
    signature: void Matrix::swap(Matrix& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:298,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: '& Matrix::operator+=(const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator+=(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:308,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 315
    functionName: '& Matrix::operator-=(const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::minus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator-=(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& Matrix::operator*=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator*=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 325
    functionName: '& Matrix::operator/=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator/=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::Matrix::begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 4
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::const_iterator
    signature: Matrix::const_iterator Matrix::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 333
    functionName: QuantLib::Matrix::begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 4
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::iterator
    signature: Matrix::iterator Matrix::begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionName: QuantLib::Matrix::end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::const_iterator
    signature: Matrix::const_iterator Matrix::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 341
    functionName: QuantLib::Matrix::end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 3
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::iterator
    signature: Matrix::iterator Matrix::end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:344,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 345
    functionName: QuantLib::Matrix::rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::end
    - const_reverse_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_iterator
    signature: Matrix::const_reverse_iterator Matrix::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:348,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: QuantLib::Matrix::rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::end
    - reverse_iterator
    linkageType: ''
    returnType: Matrix::reverse_iterator
    signature: Matrix::reverse_iterator Matrix::rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:352,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionName: QuantLib::Matrix::rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - const_reverse_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_iterator
    signature: Matrix::const_reverse_iterator Matrix::rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:356,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionName: QuantLib::Matrix::rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - reverse_iterator
    linkageType: ''
    returnType: Matrix::reverse_iterator
    signature: Matrix::reverse_iterator Matrix::rend()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:362,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 367
    functionName: QuantLib::Matrix::row_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::row_begin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:371,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 376
    functionName: QuantLib::Matrix::row_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::row_begin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:380,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 385
    functionName: QuantLib::Matrix::row_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::row_end(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:389,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 394
    functionName: QuantLib::Matrix::row_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::row_end(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:398,1
    - Dst: QuantLib::Matrix::row_end
      Src: /src/quantlib/ql/math/matrix.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 2
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: QuantLib::Matrix::row_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_row_iterator
    - QuantLib::Matrix::row_end
    linkageType: ''
    returnType: Matrix::const_reverse_row_iterator
    signature: Matrix::const_reverse_row_iterator Matrix::row_rbegin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:402,1
    - Dst: QuantLib::Matrix::row_end
      Src: /src/quantlib/ql/math/matrix.hpp:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 401
    functionDepth: 2
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionName: QuantLib::Matrix::row_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_end
    - reverse_row_iterator
    linkageType: ''
    returnType: Matrix::reverse_row_iterator
    signature: Matrix::reverse_row_iterator Matrix::row_rbegin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:407,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 408
    functionName: QuantLib::Matrix::row_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - const_reverse_row_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_row_iterator
    signature: Matrix::const_reverse_row_iterator Matrix::row_rend(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:411,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 412
    functionName: QuantLib::Matrix::row_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - reverse_row_iterator
    linkageType: ''
    returnType: Matrix::reverse_row_iterator
    signature: Matrix::reverse_row_iterator Matrix::row_rend(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:417,1
    - Dst: const_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:421,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 414
    functionDepth: 1
    functionLinenumber: 414
    functionLinenumberEnd: 422
    functionName: QuantLib::Matrix::column_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - const_column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_column_iterator
    signature: Matrix::const_column_iterator Matrix::column_begin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:426,1
    - Dst: column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:430,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 431
    functionName: QuantLib::Matrix::column_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::column_iterator
    signature: Matrix::column_iterator Matrix::column_begin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:436,1
    - Dst: const_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:440,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 441
    functionName: QuantLib::Matrix::column_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - const_column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_column_iterator
    signature: Matrix::const_column_iterator Matrix::column_end(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:445,1
    - Dst: column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:449,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 450
    functionName: QuantLib::Matrix::column_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - get
    - column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::column_iterator
    signature: Matrix::column_iterator Matrix::column_end(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:454,1
    - Dst: QuantLib::Matrix::column_end
      Src: /src/quantlib/ql/math/matrix.hpp:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionName: QuantLib::Matrix::column_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::column_end
    - const_reverse_column_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_column_iterator
    signature: Matrix::const_reverse_column_iterator Matrix::column_rbegin(Size i)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:459,1
    - Dst: QuantLib::Matrix::column_end
      Src: /src/quantlib/ql/math/matrix.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 460
    functionName: QuantLib::Matrix::column_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - reverse_column_iterator
    - QuantLib::Matrix::column_end
    linkageType: ''
    returnType: Matrix::reverse_column_iterator
    signature: Matrix::reverse_column_iterator Matrix::column_rbegin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:464,1
    - Dst: QuantLib::Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 462
    functionDepth: 2
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionName: QuantLib::Matrix::column_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_column_iterator
    - QuantLib::Matrix::column_begin
    linkageType: ''
    returnType: Matrix::const_reverse_column_iterator
    signature: Matrix::const_reverse_column_iterator Matrix::column_rend(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:469,1
    - Dst: QuantLib::Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 470
    functionName: QuantLib::Matrix::column_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - reverse_column_iterator
    - QuantLib::Matrix::column_begin
    linkageType: ''
    returnType: Matrix::reverse_column_iterator
    signature: Matrix::reverse_column_iterator Matrix::column_rend(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionName: Matrix::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - row_begin
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:479,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 477
    functionDepth: 2
    functionLinenumber: 477
    functionLinenumberEnd: 481
    functionName: QuantLib::Matrix::at
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: Matrix::operator[](Size i)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - row_begin
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:488,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 490
    functionName: QuantLib::Matrix::at
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    - Dst: QuantLib::Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    - Dst: QuantLib::Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 498
    functionName: QuantLib::Matrix::diagonal
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::min<Size>
    - QuantLib::Matrix::columns
    - QuantLib::Matrix::rows
    linkageType: ''
    returnType: Array
    signature: Array Matrix::diagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 502
    functionName: '&Matrix::operator()(Size i, Size j) const'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real &Matrix::operator()(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionName: QuantLib::Matrix::rows
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Matrix::rows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: QuantLib::Matrix::columns
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Matrix::columns() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: QuantLib::Matrix::size1
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::rows
    linkageType: ''
    returnType: Size
    signature: Size Matrix::size1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 518
    functionName: QuantLib::Matrix::size2
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::columns
    linkageType: ''
    returnType: Size
    signature: Size Matrix::size2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionName: QuantLib::Matrix::empty
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Matrix::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:526,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:526,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:528,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:528,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:529,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:529,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:531,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:531,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 534
    functionName: operator+(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - Matrix::begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(const Matrix& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:538,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:538,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:540,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:540,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:541,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:541,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 545
    functionName: operator+(const Matrix& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(const Matrix& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:549,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:549,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:551,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:551,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:552,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:552,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 556
    functionName: operator+(Matrix&& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(Matrix&& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:560,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:560,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:562,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:562,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:563,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:563,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:566,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 567
    functionName: operator+(Matrix&& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(Matrix&& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:570,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:570,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m1'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 573
    functionName: operator-(const Matrix& m1)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m1'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 578
    functionName: operator-(Matrix&& m1)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - begin
    - std::move
    - std::transform
    - end
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:582,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:582,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:584,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:584,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:585,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:585,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:587,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:587,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 590
    functionName: operator-(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::minus<>
    - columns
    - Matrix::begin
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:594,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:594,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:596,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:596,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:597,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:597,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:600,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 601
    functionName: operator-(const Matrix& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:605,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:605,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:607,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:607,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:608,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:608,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 612
    functionName: operator-(Matrix&& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:616,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:616,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:618,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:618,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:619,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:619,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:622,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 623
    functionName: operator-(Matrix&& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:626,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:626,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 629
    functionName: operator*(const Matrix& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(const Matrix& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 634
    functionName: operator*(Matrix&& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Matrix&& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:637,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:637,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 640
    functionName: operator*(Real x, const Matrix& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Real x, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 642
    functionDepth: 0
    functionLinenumber: 642
    functionLinenumberEnd: 645
    functionName: operator*(Real x, Matrix&& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Real x, Matrix&& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:648,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:648,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 651
    functionName: operator/(const Matrix& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator/(const Matrix& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 653
    functionDepth: 0
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionName: operator/(Matrix&& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator/(Matrix&& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:663,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrix.hpp:664,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:667,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrix.hpp:667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - ' m'
    argTypes:
    - Array
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 669
    functionName: operator*(const Array& v, const Matrix& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - Real
    - columns
    - Array::size
    - QuantLib::size
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:676,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrix.hpp:677,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - ' v'
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 671
    functionDepth: 1
    functionLinenumber: 671
    functionLinenumberEnd: 681
    functionName: operator*(const Matrix& m, const Array& v)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - Real
    - columns
    - Array::size
    - row_begin
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Matrix& m, const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:686,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:686,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:687,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:687,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:689,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:689,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:690,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:691,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:692,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 698
    functionName: operator*(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - rows
    - columns
    - Matrix::columns
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(const Matrix& m1, const Matrix& m2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:701,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:701,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrix.hpp:703,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:705,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 708
    functionName: QuantLib::transpose
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 4
    functionsReached:
    - empty
    - std::copy
    - rows
    - columns
    - Matrix::column_begin
    - row_end
    - row_begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix transpose(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::outerProduct
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 710
    functionDepth: 1
    functionLinenumber: 710
    functionLinenumberEnd: 712
    functionName: QuantLib::outerProduct
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::outerProduct
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix outerProduct(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrix.hpp:717,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:718,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrix.hpp:720,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:721,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:726,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:726,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - v1begin
    - v1end
    - v2begin
    - v2end
    argTypes:
    - Iterator1
    - Iterator1
    - Iterator2
    - Iterator2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 730
    functionName: QuantLib::outerProduct
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 1
    functionsReached:
    - std::transform
    - Matrix::row_begin
    - QL_REQUIRE
    - std::distance
    linkageType: ''
    returnType: Matrix
    signature: Matrix outerProduct(Iterator1 v1begin, Iterator1 v1end, Iterator2 v2begin,
      Iterator2 v2end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/matrix.hpp:733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 11
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Matrix& m1, Matrix& m2) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: width
      Src: /src/quantlib/ql/math/matrix.hpp:737,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:738,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:740,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/matrix.hpp:741,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' m'
    argTypes:
    - std::ostream
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 745
    functionName: '& operator<<(std::ostream& out, const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - width
    - rows
    - std::setw
    - columns
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: ~Matrix()
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Matrix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rows
    - columns
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:229,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rows
    - columns
    - value
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - std::fill
    - QuantLib::Matrix::end
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:236,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:238,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - rows
    - columns
    - begin
    - end
    argTypes:
    - Size
    - Size
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - std::copy
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Size rows, Size columns, Iterator begin, Iterator
      end)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::empty
      Src: /src/quantlib/ql/math/matrix.hpp:242,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:242,1
    - Dst: QuantLib::Matrix::empty
      Src: /src/quantlib/ql/math/matrix.hpp:245,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 248
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::copy
    - QuantLib::Matrix::begin
    - QuantLib::Matrix::end
    - QuantLib::Matrix::empty
    - Real::Real
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(const Matrix& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::swap
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(Matrix&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:256,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:256,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrix.hpp:257,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::size
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: std::initializer_list<std::initializer_list<Real>>::begin
      Src: /src/quantlib/ql/math/matrix.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:262,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:262,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:265,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::initializer_list<std::initializer_list<Real>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 268
    functionName: QuantLib::Matrix::Matrix
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - std::initializer_list<std::initializer_list<Real>>::begin
    - std::copy
    - std::initializer_list<std::initializer_list<Real>>::size
    - QuantLib::Matrix::begin
    - QuantLib::Matrix::end
    - Real::Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Matrix::Matrix(std::initializer_list<std::initializer_list<Real>>
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/matrix.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: '& Matrix::operator=(const Matrix& from)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator=(const Matrix& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/quantlib/ql/math/matrix.hpp:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: '& Matrix::operator=(Matrix&& from) noexcept'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator=(Matrix&& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::equal
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionName: Matrix::operator==(const Matrix& to) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::equal
    linkageType: ''
    returnType: bool
    signature: bool Matrix::operator==(const Matrix& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' to'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionName: Matrix::operator!=(const Matrix& to) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Matrix::operator!=(const Matrix& to) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:292,1
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:293,1
    - Dst: QuantLib::Matrix::swap
      Src: /src/quantlib/ql/math/matrix.hpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 295
    functionName: QuantLib::Matrix::swap
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Matrix::swap
    linkageType: ''
    returnType: void
    signature: void Matrix::swap(Matrix& from) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:298,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: '& Matrix::operator+=(const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator+=(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:308,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 315
    functionName: '& Matrix::operator-=(const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::minus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator-=(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& Matrix::operator*=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator*=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 325
    functionName: '& Matrix::operator/=(Real x)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix & Matrix::operator/=(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::Matrix::begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 10
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::const_iterator
    signature: Matrix::const_iterator Matrix::begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 333
    functionName: QuantLib::Matrix::begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 10
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::iterator
    signature: Matrix::iterator Matrix::begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionName: QuantLib::Matrix::end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 8
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::const_iterator
    signature: Matrix::const_iterator Matrix::end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 341
    functionName: QuantLib::Matrix::end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 8
    functionsReached:
    - get
    linkageType: ''
    returnType: Matrix::iterator
    signature: Matrix::iterator Matrix::end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:344,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 345
    functionName: QuantLib::Matrix::rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::end
    - const_reverse_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_iterator
    signature: Matrix::const_reverse_iterator Matrix::rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:348,1
    - Dst: QuantLib::Matrix::end
      Src: /src/quantlib/ql/math/matrix.hpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: QuantLib::Matrix::rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::end
    - reverse_iterator
    linkageType: ''
    returnType: Matrix::reverse_iterator
    signature: Matrix::reverse_iterator Matrix::rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:352,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionName: QuantLib::Matrix::rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - const_reverse_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_iterator
    signature: Matrix::const_reverse_iterator Matrix::rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:356,1
    - Dst: QuantLib::Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionName: QuantLib::Matrix::rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::begin
    - reverse_iterator
    linkageType: ''
    returnType: Matrix::reverse_iterator
    signature: Matrix::reverse_iterator Matrix::rend()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:362,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 367
    functionName: QuantLib::Matrix::row_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 6
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::row_begin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:371,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 376
    functionName: QuantLib::Matrix::row_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 6
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::row_begin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:380,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 385
    functionName: QuantLib::Matrix::row_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::row_end(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:389,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 394
    functionName: QuantLib::Matrix::row_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::row_end(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:398,1
    - Dst: QuantLib::Matrix::row_end
      Src: /src/quantlib/ql/math/matrix.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 2
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: QuantLib::Matrix::row_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_row_iterator
    - QuantLib::Matrix::row_end
    linkageType: ''
    returnType: Matrix::const_reverse_row_iterator
    signature: Matrix::const_reverse_row_iterator Matrix::row_rbegin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:402,1
    - Dst: QuantLib::Matrix::row_end
      Src: /src/quantlib/ql/math/matrix.hpp:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 401
    functionDepth: 2
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionName: QuantLib::Matrix::row_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_end
    - reverse_row_iterator
    linkageType: ''
    returnType: Matrix::reverse_row_iterator
    signature: Matrix::reverse_row_iterator Matrix::row_rbegin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:407,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 408
    functionName: QuantLib::Matrix::row_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - const_reverse_row_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_row_iterator
    signature: Matrix::const_reverse_row_iterator Matrix::row_rend(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_row_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:411,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 412
    functionName: QuantLib::Matrix::row_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - reverse_row_iterator
    linkageType: ''
    returnType: Matrix::reverse_row_iterator
    signature: Matrix::reverse_row_iterator Matrix::row_rend(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:417,1
    - Dst: const_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:421,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 414
    functionDepth: 1
    functionLinenumber: 414
    functionLinenumberEnd: 422
    functionName: QuantLib::Matrix::column_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - const_column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_column_iterator
    signature: Matrix::const_column_iterator Matrix::column_begin(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:426,1
    - Dst: column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:430,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 431
    functionName: QuantLib::Matrix::column_begin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::column_iterator
    signature: Matrix::column_iterator Matrix::column_begin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:436,1
    - Dst: const_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:440,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 441
    functionName: QuantLib::Matrix::column_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - const_column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_column_iterator
    signature: Matrix::const_column_iterator Matrix::column_end(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:445,1
    - Dst: column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:449,1
    - Dst: get
      Src: /src/quantlib/ql/math/matrix.hpp:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 450
    functionName: QuantLib::Matrix::column_end
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - get
    - column_iterator
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::column_iterator
    signature: Matrix::column_iterator Matrix::column_end(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:454,1
    - Dst: QuantLib::Matrix::column_end
      Src: /src/quantlib/ql/math/matrix.hpp:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionName: QuantLib::Matrix::column_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::column_end
    - const_reverse_column_iterator
    linkageType: ''
    returnType: Matrix::const_reverse_column_iterator
    signature: Matrix::const_reverse_column_iterator Matrix::column_rbegin(Size i)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:459,1
    - Dst: QuantLib::Matrix::column_end
      Src: /src/quantlib/ql/math/matrix.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 460
    functionName: QuantLib::Matrix::column_rbegin
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - reverse_column_iterator
    - QuantLib::Matrix::column_end
    linkageType: ''
    returnType: Matrix::reverse_column_iterator
    signature: Matrix::reverse_column_iterator Matrix::column_rbegin(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:464,1
    - Dst: QuantLib::Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 462
    functionDepth: 2
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionName: QuantLib::Matrix::column_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - const_reverse_column_iterator
    - QuantLib::Matrix::column_begin
    linkageType: ''
    returnType: Matrix::const_reverse_column_iterator
    signature: Matrix::const_reverse_column_iterator Matrix::column_rend(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_column_iterator
      Src: /src/quantlib/ql/math/matrix.hpp:469,1
    - Dst: QuantLib::Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 470
    functionName: QuantLib::Matrix::column_rend
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - reverse_column_iterator
    - QuantLib::Matrix::column_begin
    linkageType: ''
    returnType: Matrix::reverse_column_iterator
    signature: Matrix::reverse_column_iterator Matrix::column_rend(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionName: Matrix::operator[](Size i) const
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - row_begin
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:479,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 477
    functionDepth: 2
    functionLinenumber: 477
    functionLinenumberEnd: 481
    functionName: QuantLib::Matrix::at
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::const_row_iterator
    signature: Matrix::const_row_iterator Matrix::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: Matrix::operator[](Size i)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - row_begin
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::operator[](Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:488,1
    - Dst: QuantLib::Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 490
    functionName: QuantLib::Matrix::at
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::row_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix::row_iterator
    signature: Matrix::row_iterator Matrix::at(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    - Dst: QuantLib::Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    - Dst: QuantLib::Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:493,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 498
    functionName: QuantLib::Matrix::diagonal
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::min<Size>
    - QuantLib::Matrix::columns
    - QuantLib::Matrix::rows
    linkageType: ''
    returnType: Array
    signature: Array Matrix::diagonal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 502
    functionName: '&Matrix::operator()(Size i, Size j) const'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real &Matrix::operator()(Size i, Size j) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionName: QuantLib::Matrix::rows
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Matrix::rows() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: QuantLib::Matrix::columns
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Matrix::columns() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: QuantLib::Matrix::size1
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::rows
    linkageType: ''
    returnType: Size
    signature: Size Matrix::size1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 518
    functionName: QuantLib::Matrix::size2
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Matrix::columns
    linkageType: ''
    returnType: Size
    signature: Size Matrix::size2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionName: QuantLib::Matrix::empty
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Matrix::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:525,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:526,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:526,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:528,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:528,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:529,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:529,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:531,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:531,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 534
    functionName: operator+(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - Matrix::begin
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(const Matrix& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:537,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:538,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:538,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:540,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:540,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:541,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:541,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:543,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 545
    functionName: operator+(const Matrix& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(const Matrix& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:548,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:549,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:549,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:551,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:551,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:552,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:552,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:554,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 556
    functionName: operator+(Matrix&& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(Matrix&& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:559,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:560,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:560,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:562,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:562,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:563,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:563,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/math/matrix.hpp:565,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:566,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 567
    functionName: operator+(Matrix&& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - columns
    - std::plus<>
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator+(Matrix&& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:570,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:570,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/matrix.hpp:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m1'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 573
    functionName: operator-(const Matrix& m1)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: std::negate<>
      Src: /src/quantlib/ql/math/matrix.hpp:576,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' m1'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 578
    functionName: operator-(Matrix&& m1)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::negate<>
    - begin
    - std::move
    - std::transform
    - end
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:581,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:582,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:582,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:584,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:584,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:585,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:585,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:587,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:587,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 590
    functionName: operator-(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::minus<>
    - columns
    - Matrix::begin
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:593,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:594,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:594,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:596,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:596,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:597,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:597,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:599,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:600,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 601
    functionName: operator-(const Matrix& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(const Matrix& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:604,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:605,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:605,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:607,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:607,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:608,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:608,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:610,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 612
    functionName: operator-(Matrix&& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1, const Matrix& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:615,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:616,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:616,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:618,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:618,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:619,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:619,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: std::minus<>
      Src: /src/quantlib/ql/math/matrix.hpp:621,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:622,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 623
    functionName: operator-(Matrix&& m1, Matrix&& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - std::move
    - std::minus<>
    - columns
    - std::transform
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator-(Matrix&& m1, Matrix&& m2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:626,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:626,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 629
    functionName: operator*(const Matrix& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(const Matrix& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:632,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 634
    functionName: operator*(Matrix&& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Matrix&& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:637,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:637,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 640
    functionName: operator*(Real x, const Matrix& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Real x, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:643,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - ' m'
    argTypes:
    - Real
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 642
    functionDepth: 0
    functionLinenumber: 642
    functionLinenumberEnd: 645
    functionName: operator*(Real x, Matrix&& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(Real x, Matrix&& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:648,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:648,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrix.hpp:649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 651
    functionName: operator/(const Matrix& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - columns
    - std::transform
    - end
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator/(const Matrix& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:654,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrix.hpp:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - x
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 653
    functionDepth: 0
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionName: operator/(Matrix&& m, Real x)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - end
    - begin
    - std::move
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator/(Matrix&& m, Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:659,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:661,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:663,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrix.hpp:664,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:666,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:667,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrix.hpp:667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' v'
    - ' m'
    argTypes:
    - Array
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 669
    functionName: operator*(const Array& v, const Matrix& m)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - Real
    - columns
    - Array::size
    - size
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Array& v, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:672,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:674,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:676,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrix.hpp:677,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrix.hpp:679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' m'
    - ' v'
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 671
    functionDepth: 1
    functionLinenumber: 671
    functionLinenumberEnd: 681
    functionName: operator*(const Matrix& m, const Array& v)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - Real
    - columns
    - Array::size
    - row_begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array operator*(const Matrix& m, const Array& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:684,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:686,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:686,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:687,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:687,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:689,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:689,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrix.hpp:690,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:691,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrix.hpp:692,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 698
    functionName: operator*(const Matrix& m1, const Matrix& m2)
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - rows
    - columns
    - Matrix::columns
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix operator*(const Matrix& m1, const Matrix& m2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:701,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:701,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrix.hpp:703,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:705,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrix.hpp:706,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 708
    functionName: QuantLib::transpose
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 4
    functionsReached:
    - empty
    - std::copy
    - rows
    - columns
    - Matrix::column_begin
    - row_end
    - row_begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix transpose(const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::outerProduct
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrix.hpp:711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 710
    functionDepth: 1
    functionLinenumber: 710
    functionLinenumberEnd: 712
    functionName: QuantLib::outerProduct
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::outerProduct
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix outerProduct(const Array& v1, const Array& v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrix.hpp:717,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:718,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrix.hpp:720,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrix.hpp:721,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrix.hpp:726,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrix.hpp:726,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - v1begin
    - v1end
    - v2begin
    - v2end
    argTypes:
    - Iterator1
    - Iterator1
    - Iterator2
    - Iterator2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 730
    functionName: QuantLib::outerProduct
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Matrix::row_begin
    - QL_REQUIRE
    - std::distance
    linkageType: ''
    returnType: Matrix
    signature: Matrix outerProduct(Iterator1 v1begin, Iterator1 v1end, Iterator2 v2begin,
      Iterator2 v2end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/matrix.hpp:733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' m1'
    - ' m2'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: QuantLib::swap
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::swap
    linkageType: ''
    returnType: void
    signature: void swap(Matrix& m1, Matrix& m2) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: width
      Src: /src/quantlib/ql/math/matrix.hpp:737,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrix.hpp:738,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrix.hpp:740,1
    - Dst: std::setw
      Src: /src/quantlib/ql/math/matrix.hpp:741,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' m'
    argTypes:
    - std::ostream
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 745
    functionName: '& operator<<(std::ostream& out, const Matrix& m)'
    functionSourceFile: /src/quantlib/ql/math/matrix.hpp
    functionUses: 0
    functionsReached:
    - width
    - rows
    - std::setw
    - columns
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Matrix& m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:41,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:41,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:42,1
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - grid
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionName: QuantLib::TransformedGrid::TransformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TransformedGrid::size
    - Array::size
    linkageType: ''
    returnType: void
    signature: void TransformedGrid (const Array &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:57,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:59,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/transformedgrid.hpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/math/transformedgrid.hpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/math/transformedgrid.hpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/math/transformedgrid.hpp:62,1
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - grid
    - func
    argTypes:
    - Array
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 69
    functionName: QuantLib::TransformedGrid::TransformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TransformedGrid::size
    - begin
    - Array::size
    - std::transform
    - end
    linkageType: ''
    returnType: void
    signature: void TransformedGrid (const Array &grid, T func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: '&gridArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &gridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '&transformedGridArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &transformedGridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '&dxmArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxmArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '&dxpArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxpArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '&dxArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::TransformedGrid::grid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real grid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::TransformedGrid::transformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformedGrid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::TransformedGrid::dxm
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dxm(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::TransformedGrid::dxp
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dxp(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::TransformedGrid::dx
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dx(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::TransformedGrid::size
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::TransformedGrid::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformedGridArray
      Src: /src/quantlib/ql/math/transformedgrid.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::logGridArray
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - transformedGridArray
    linkageType: ''
    returnType: Array
    signature: Array & logGridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformedGrid
      Src: /src/quantlib/ql/math/transformedgrid.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::logGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - transformedGrid
    linkageType: ''
    returnType: Real
    signature: Real logGrid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:41,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:41,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:42,1
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - grid
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionName: QuantLib::TransformedGrid::TransformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TransformedGrid::size
    - Array::size
    linkageType: ''
    returnType: void
    signature: void TransformedGrid (const Array &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:57,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:59,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/transformedgrid.hpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/math/transformedgrid.hpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/math/transformedgrid.hpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/math/transformedgrid.hpp:62,1
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - grid
    - func
    argTypes:
    - Array
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 69
    functionName: QuantLib::TransformedGrid::TransformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TransformedGrid::size
    - begin
    - Array::size
    - std::transform
    - end
    linkageType: ''
    returnType: void
    signature: void TransformedGrid (const Array &grid, T func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: '&gridArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &gridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '&transformedGridArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &transformedGridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '&dxmArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxmArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '&dxpArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxpArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '&dxArray() const'
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array &dxArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::TransformedGrid::grid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real grid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::TransformedGrid::transformedGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformedGrid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::TransformedGrid::dxm
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dxm(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::TransformedGrid::dxp
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dxp(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::TransformedGrid::dx
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dx(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TransformedGrid::size
      Src: /src/quantlib/ql/math/transformedgrid.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::TransformedGrid::size
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::TransformedGrid::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformedGridArray
      Src: /src/quantlib/ql/math/transformedgrid.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::logGridArray
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - transformedGridArray
    linkageType: ''
    returnType: Array
    signature: Array & logGridArray() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformedGrid
      Src: /src/quantlib/ql/math/transformedgrid.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::logGrid
    functionSourceFile: /src/quantlib/ql/math/transformedgrid.hpp
    functionUses: 0
    functionsReached:
    - transformedGrid
    linkageType: ''
    returnType: Real
    signature: Real logGrid(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:81,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/math/interpolation.hpp:81,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/math/interpolation.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::Interpolation::templateImpl::templateImpl
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void templateImpl(const I1& xBegin, const I1& xEnd, const I2& yBegin,\n
      \                        const int requiredPoints = 2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::Interpolation::templateImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Interpolation::templateImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolation.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Interpolation::templateImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolation.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::Interpolation::templateImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:95,1
    - Dst: QuantLib::Interpolation::templateImpl::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:97,1
    - Dst: QuantLib::Interpolation::templateImpl::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:97,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolation.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolation.hpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 99
    functionName: QuantLib::Interpolation::templateImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation::templateImpl::xMax
    - QuantLib::Interpolation::templateImpl::xMin
    - close
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:105,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolation.hpp:112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::Interpolation::templateImpl::locate
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locate(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::Interpolation::Interpolation
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Interpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: ~Interpolation() override
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Interpolation() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::Interpolation::empty
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:122,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/math/interpolation.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: operator()(Real x, bool allowExtrapolation = false) const
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - checkRange
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:126,1
    - Dst: QuantLib::Interpolation::primitive
      Src: /src/quantlib/ql/math/interpolation.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::Interpolation::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::checkRange
    - QuantLib::Interpolation::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:130,1
    - Dst: QuantLib::Interpolation::derivative
      Src: /src/quantlib/ql/math/interpolation.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: QuantLib::Interpolation::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::derivative
    - QuantLib::Interpolation::checkRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:134,1
    - Dst: QuantLib::Interpolation::secondDerivative
      Src: /src/quantlib/ql/math/interpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::Interpolation::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::checkRange
    - QuantLib::Interpolation::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::Interpolation::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::Interpolation::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::isInRange
      Src: /src/quantlib/ql/math/interpolation.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::Interpolation::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::update
      Src: /src/quantlib/ql/math/interpolation.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Interpolation::update
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:151,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/math/interpolation.hpp:151,1
    - Dst: QuantLib::Interpolation::isInRange
      Src: /src/quantlib/ql/math/interpolation.hpp:152,1
    - Dst: QuantLib::Interpolation::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:154,1
    - Dst: QuantLib::Interpolation::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - x
    - extrapolate
    argTypes:
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionName: QuantLib::Interpolation::checkRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation::xMax
    - allowsExtrapolation
    - QuantLib::Interpolation::xMin
    - QuantLib::Interpolation::isInRange
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkRange(Real x, bool extrapolate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:81,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/math/interpolation.hpp:81,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/math/interpolation.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::Interpolation::templateImpl::templateImpl
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void templateImpl(const I1& xBegin, const I1& xEnd, const I2& yBegin,\n
      \                        const int requiredPoints = 2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::Interpolation::templateImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Interpolation::templateImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolation.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Interpolation::templateImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolation.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::Interpolation::templateImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:95,1
    - Dst: QuantLib::Interpolation::templateImpl::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:97,1
    - Dst: QuantLib::Interpolation::templateImpl::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:97,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolation.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolation.hpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 99
    functionName: QuantLib::Interpolation::templateImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation::templateImpl::xMax
    - QuantLib::Interpolation::templateImpl::xMin
    - close
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:105,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolation.hpp:112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::Interpolation::templateImpl::locate
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locate(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::Interpolation::Interpolation
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Interpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: ~Interpolation() override
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Interpolation() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::Interpolation::empty
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:122,1
    - Dst: value
      Src: /src/quantlib/ql/math/interpolation.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: operator()(Real x, bool allowExtrapolation = false) const
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 0
    functionsReached:
    - value
    - checkRange
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:126,1
    - Dst: QuantLib::Interpolation::primitive
      Src: /src/quantlib/ql/math/interpolation.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::Interpolation::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation::checkRange
    - QuantLib::Interpolation::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:130,1
    - Dst: QuantLib::Interpolation::derivative
      Src: /src/quantlib/ql/math/interpolation.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 3
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: QuantLib::Interpolation::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation::derivative
    - QuantLib::Interpolation::checkRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::checkRange
      Src: /src/quantlib/ql/math/interpolation.hpp:134,1
    - Dst: QuantLib::Interpolation::secondDerivative
      Src: /src/quantlib/ql/math/interpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 3
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::Interpolation::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation::checkRange
    - QuantLib::Interpolation::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x, bool allowExtrapolation = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::Interpolation::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::Interpolation::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::isInRange
      Src: /src/quantlib/ql/math/interpolation.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::Interpolation::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation::update
      Src: /src/quantlib/ql/math/interpolation.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Interpolation::update
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolation.hpp:151,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/math/interpolation.hpp:151,1
    - Dst: QuantLib::Interpolation::isInRange
      Src: /src/quantlib/ql/math/interpolation.hpp:152,1
    - Dst: QuantLib::Interpolation::xMin
      Src: /src/quantlib/ql/math/interpolation.hpp:154,1
    - Dst: QuantLib::Interpolation::xMax
      Src: /src/quantlib/ql/math/interpolation.hpp:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - x
    - extrapolate
    argTypes:
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionName: QuantLib::Interpolation::checkRange
    functionSourceFile: /src/quantlib/ql/math/interpolation.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::Interpolation::xMax
    - allowsExtrapolation
    - QuantLib::Interpolation::xMin
    - QuantLib::Interpolation::isInRange
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkRange(Real x, bool extrapolate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:29,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:31,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:33,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:34,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:39,1
    - Dst: nextOrder
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: '& PascalTriangle::get(Size order)'
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.cpp
    functionUses: 0
    functionsReached:
    - size
    - nextOrder
    - emplace_back
    - empty
    linkageType: ''
    returnType: std::vector<BigNatural>
    signature: std::vector<BigNatural> & PascalTriangle::get(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:45,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::PascalTriangle::nextOrder
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.cpp
    functionUses: 0
    functionsReached:
    - size
    - emplace_back
    linkageType: ''
    returnType: void
    signature: void PascalTriangle::nextOrder()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:29,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:31,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:33,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:34,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:39,1
    - Dst: nextOrder
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: '& PascalTriangle::get(Size order)'
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.cpp
    functionUses: 0
    functionsReached:
    - size
    - nextOrder
    - emplace_back
    - empty
    linkageType: ''
    returnType: std::vector<BigNatural>
    signature: std::vector<BigNatural> & PascalTriangle::get(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:45,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/pascaltriangle.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::PascalTriangle::nextOrder
    functionSourceFile: /src/quantlib/ql/math/pascaltriangle.cpp
    functionUses: 0
    functionsReached:
    - size
    - emplace_back
    linkageType: ''
    returnType: void
    signature: void PascalTriangle::nextOrder()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:52,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:60,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:62,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:66,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:72,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:73,1
    - Dst: I<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:82,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 86
    functionName: QuantLib::modifiedBesselFunction_i_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - I<T>
    - W<T>
    - GammaFunction
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - T
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_i_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:90,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:91,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::modifiedBesselFunction_k_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - std::sin
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_k_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:52,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:60,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:62,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:66,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:72,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:73,1
    - Dst: I<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:82,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 86
    functionName: QuantLib::modifiedBesselFunction_i_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - I<T>
    - W<T>
    - GammaFunction
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - T
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_i_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:90,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:91,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::modifiedBesselFunction_k_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - std::sin
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_k_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:97,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::modifiedBesselFunction_i
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_i(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:104,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:104,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: QuantLib::modifiedBesselFunction_i
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::modifiedBesselFunction_i
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_i_impl
    - std::complex<Real>
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_i(Real nu,\n                                                const
      std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::modifiedBesselFunction_k
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_k_impl
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_k(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:117,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:117,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: QuantLib::modifiedBesselFunction_k
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 115
    functionDepth: 3
    functionLinenumber: 115
    functionLinenumberEnd: 122
    functionName: QuantLib::modifiedBesselFunction_k
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_k_impl
    - std::complex<Real>
    - QuantLib::modifiedBesselFunction_k
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_k(Real nu,\n                                                const
      std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:125,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_i_exponentiallyWeighted(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:134,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:134,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:135,1
    - Dst: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:136,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:136,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_i_impl
    - QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    - std::complex<Real>
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_i_exponentiallyWeighted(\n
      \       Real nu, const std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::modifiedBesselFunction_k_impl
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_k_exponentiallyWeighted(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:150,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:150,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:152,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:152,1
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_k_impl
    - std::complex<Real>
    - QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_k_exponentiallyWeighted(\n
      \       Real nu, const std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:52,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:60,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:62,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:66,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:72,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:73,1
    - Dst: I<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:82,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 86
    functionName: QuantLib::modifiedBesselFunction_i_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 6
    functionsReached:
    - std::exp
    - I<T>
    - W<T>
    - GammaFunction
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - T
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_i_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:90,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:91,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::modifiedBesselFunction_k_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - std::sin
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_k_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::value
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 10
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::weightSmallX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weightSmallX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::weight1LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T weight1LargeX(const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::weight2LargeX
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: T
    signature: T weight2LargeX(const T& x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:52,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:60,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:62,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:66,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: T
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:68,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:72,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:73,1
    - Dst: I<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:82,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    - Dst: W<T>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 86
    functionName: QuantLib::modifiedBesselFunction_i_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 7
    functionsReached:
    - std::exp
    - I<T>
    - W<T>
    - GammaFunction
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - T
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_i_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:90,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:91,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - ' x'
    argTypes:
    - Real
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::modifiedBesselFunction_k_impl
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - std::sin
    linkageType: ''
    returnType: T
    signature: T modifiedBesselFunction_k_impl(Real nu, const T& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:97,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::modifiedBesselFunction_i
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_i(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:104,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:104,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:105,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: QuantLib::modifiedBesselFunction_i
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::modifiedBesselFunction_i
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_i_impl
    - std::complex<Real>
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_i(Real nu,\n                                                const
      std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::modifiedBesselFunction_k
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::modifiedBesselFunction_k_impl
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_k(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:117,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:117,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: QuantLib::modifiedBesselFunction_k
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:118,1
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 115
    functionDepth: 3
    functionLinenumber: 115
    functionLinenumberEnd: 122
    functionName: QuantLib::modifiedBesselFunction_k
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_k_impl
    - std::complex<Real>
    - QuantLib::modifiedBesselFunction_k
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_k(Real nu,\n                                                const
      std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:125,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::modifiedBesselFunction_i_impl
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_i_exponentiallyWeighted(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:134,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:134,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:135,1
    - Dst: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:136,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:136,1
    - Dst: QuantLib::modifiedBesselFunction_i_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_i_impl
    - QuantLib::modifiedBesselFunction_i_exponentiallyWeighted
    - std::complex<Real>
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_i_exponentiallyWeighted(\n
      \       Real nu, const std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nu
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::modifiedBesselFunction_k_impl
    linkageType: ''
    returnType: Real
    signature: Real modifiedBesselFunction_k_exponentiallyWeighted(Real nu, Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>::imag
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:150,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:150,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:152,1
    - Dst: std::complex<Real>::real
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:152,1
    - Dst: QuantLib::modifiedBesselFunction_k_impl
      Src: /src/quantlib/ql/math/modifiedbessel.cpp:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - nu
    - z
    argTypes:
    - Real
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    functionSourceFile: /src/quantlib/ql/math/modifiedbessel.cpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>::imag
    - QuantLib::modifiedBesselFunction_k_impl
    - std::complex<Real>
    - QuantLib::modifiedBesselFunction_k_exponentiallyWeighted
    - std::complex<Real>::real
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> modifiedBesselFunction_k_exponentiallyWeighted(\n
      \       Real nu, const std::complex<Real> &z)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:43,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - inputSize
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::FastFourierTransform::min_order
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 4
    functionsReached:
    - std::ceil
    - static_cast<std::size_t>
    - static_cast<Real>
    - std::log
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t min_order(std::size_t inputSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:49,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:50,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - order
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::FastFourierTransform::FastFourierTransform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sin
    - static_cast<std::size_t>
    linkageType: ''
    returnType: void
    signature: void FastFourierTransform(std::size_t order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::FastFourierTransform::output_size
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t output_size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FastFourierTransform::transform_impl
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - inBegin
    - inEnd
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::FastFourierTransform::transform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FastFourierTransform::transform_impl
    linkageType: ''
    returnType: void
    signature: "void transform(InputIterator inBegin, InputIterator inEnd,\n                       RandomAccessIterator
      out) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FastFourierTransform::transform_impl
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - inBegin
    - inEnd
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::FastFourierTransform::inverse_transform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FastFourierTransform::transform_impl
    linkageType: ''
    returnType: void
    signature: "void inverse_transform(InputIterator inBegin, InputIterator inEnd,\n
      \                              RandomAccessIterator out) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:89,1
    - Dst: std::size_t
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:90,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:90,1
    - Dst: QuantLib::FastFourierTransform::bit_reverse
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:95,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - inBegin
    - inEnd
    - out
    - inverse
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 110
    functionName: QuantLib::FastFourierTransform::transform_impl
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 2
    functionsReached:
    - static_cast<std::size_t>
    - QuantLib::FastFourierTransform::bit_reverse
    - size
    - std::size_t
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void transform_impl(InputIterator inBegin, InputIterator inEnd,\n
      \                           RandomAccessIterator out,\n                            bool
      inverse) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - x
    - order
    argTypes:
    - std::size_t
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::FastFourierTransform::bit_reverse
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t bit_reverse(std::size_t x, std::size_t order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:43,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - inputSize
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::FastFourierTransform::min_order
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 4
    functionsReached:
    - std::ceil
    - static_cast<std::size_t>
    - static_cast<Real>
    - std::log
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t min_order(std::size_t inputSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:49,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:50,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - order
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::FastFourierTransform::FastFourierTransform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sin
    - static_cast<std::size_t>
    linkageType: ''
    returnType: void
    signature: void FastFourierTransform(std::size_t order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::FastFourierTransform::output_size
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t output_size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FastFourierTransform::transform_impl
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - inBegin
    - inEnd
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::FastFourierTransform::transform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FastFourierTransform::transform_impl
    linkageType: ''
    returnType: void
    signature: "void transform(InputIterator inBegin, InputIterator inEnd,\n                       RandomAccessIterator
      out) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FastFourierTransform::transform_impl
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - inBegin
    - inEnd
    - out
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::FastFourierTransform::inverse_transform
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FastFourierTransform::transform_impl
    linkageType: ''
    returnType: void
    signature: "void inverse_transform(InputIterator inBegin, InputIterator inEnd,\n
      \                              RandomAccessIterator out) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:89,1
    - Dst: std::size_t
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:90,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:90,1
    - Dst: QuantLib::FastFourierTransform::bit_reverse
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:95,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/math/fastfouriertransform.hpp:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - inBegin
    - inEnd
    - out
    - inverse
    argTypes:
    - InputIterator
    - InputIterator
    - RandomAccessIterator
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 110
    functionName: QuantLib::FastFourierTransform::transform_impl
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 4
    functionsReached:
    - static_cast<std::size_t>
    - QuantLib::FastFourierTransform::bit_reverse
    - size
    - std::size_t
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void transform_impl(InputIterator inBegin, InputIterator inEnd,\n
      \                           RandomAccessIterator out,\n                            bool
      inverse) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - x
    - order
    argTypes:
    - std::size_t
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::FastFourierTransform::bit_reverse
    functionSourceFile: /src/quantlib/ql/math/fastfouriertransform.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t bit_reverse(std::size_t x, std::size_t order)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:72,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:74,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:93,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:94,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:98,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:99,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:107,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 109
    functionName: QuantLib::NewtonSafe::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - f
    - QL_FAIL
    - std::fabs
    - derivative
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:72,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:74,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:93,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:94,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:98,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:99,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp:107,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 109
    functionName: QuantLib::NewtonSafe::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/newtonsafe.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - f
    - QL_FAIL
    - std::fabs
    - derivative
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:64,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:73,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:74,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:81,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:83,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:87,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:92,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:99,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:102,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:103,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:109,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 2
    argNames:
    - ' f'
    - xAcc
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 111
    functionName: QuantLib::Ridder::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/ridder.hpp
    functionUses: 0
    functionsReached:
    - close
    - f
    - QL_FAIL
    - std::fabs
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAcc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::Ridder::sign
    functionSourceFile: /src/quantlib/ql/math/solvers1d/ridder.hpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - Real
    linkageType: ''
    returnType: Real
    signature: Real sign(Real a, Real b) const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:64,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:73,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:74,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:81,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:83,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:87,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:92,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:99,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:102,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:103,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:109,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 2
    argNames:
    - ' f'
    - xAcc
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 111
    functionName: QuantLib::Ridder::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/ridder.hpp
    functionUses: 0
    functionsReached:
    - close
    - f
    - QL_FAIL
    - std::fabs
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAcc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/ridder.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::Ridder::sign
    functionSourceFile: /src/quantlib/ql/math/solvers1d/ridder.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    - Real
    linkageType: ''
    returnType: Real
    signature: Real sign(Real a, Real b) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:76,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:76,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:85,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:87,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:93,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:93,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:107,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:108,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:109,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:124,1
    - Dst: QuantLib::Brent::sign
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:127,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:131,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 133
    functionName: QuantLib::Brent::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/brent.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Brent::sign
    - close
    - f
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::Brent::sign
    functionSourceFile: /src/quantlib/ql/math/solvers1d/brent.hpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - Real
    linkageType: ''
    returnType: Real
    signature: Real sign(Real a, Real b) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:55,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:76,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:76,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:85,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:87,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:93,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:93,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:107,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:108,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:109,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:124,1
    - Dst: QuantLib::Brent::sign
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:127,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:131,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 133
    functionName: QuantLib::Brent::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/brent.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Brent::sign
    - close
    - f
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: Real
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/brent.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::Brent::sign
    functionSourceFile: /src/quantlib/ql/math/solvers1d/brent.hpp
    functionUses: 2
    functionsReached:
    - std::fabs
    - Real
    linkageType: ''
    returnType: Real
    signature: Real sign(Real a, Real b) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:79,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:83,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 85
    functionName: QuantLib::FalsePosition::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/falseposition.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:79,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/falseposition.hpp:83,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 85
    functionName: QuantLib::FalsePosition::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/falseposition.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:63,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:67,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:73,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 75
    functionName: QuantLib::Bisection::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/bisection.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:63,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:67,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/bisection.hpp:73,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 75
    functionName: QuantLib::Bisection::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/bisection.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:54,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:70,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:70,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:77,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:79,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:90,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:100,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 102
    functionName: QuantLib::FiniteDifferenceNewtonSafe::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:54,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:70,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:70,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:77,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:79,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:90,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp:100,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 102
    functionName: QuantLib::FiniteDifferenceNewtonSafe::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/finitedifferencenewtonsafe.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:53,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:71,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:71,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 76
    functionName: QuantLib::Secant::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/secant.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:53,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:71,1
    - Dst: close
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:71,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/secant.hpp:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 76
    functionName: QuantLib::Secant::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/secant.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - std::fabs
    - close
    - f
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:48,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:49,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:50,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:57,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 71
    functionName: QuantLib::Halley::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/halley.hpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - secondDerivative
    - f
    - QL_FAIL
    - derivative
    - NewtonSafe::solve
    - std::abs
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:48,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:49,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:50,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:57,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:58,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:62,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/halley.hpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 71
    functionName: QuantLib::Halley::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/halley.hpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - secondDerivative
    - f
    - QL_FAIL
    - derivative
    - NewtonSafe::solve
    - std::abs
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:54,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:56,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:66,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:69,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:74,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 81
    functionName: QuantLib::Newton::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/newton.hpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - Null<Real>
    - f
    - QL_FAIL
    - std::fabs
    - derivative
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:54,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:56,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:66,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:67,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:69,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:74,1
    - Dst: derivative
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/solvers1d/newton.hpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - ' f'
    - xAccuracy
    argTypes:
    - F
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 81
    functionName: QuantLib::Newton::solveImpl
    functionSourceFile: /src/quantlib/ql/math/solvers1d/newton.hpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - Null<Real>
    - f
    - QL_FAIL
    - std::fabs
    - derivative
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real solveImpl(const F& f,\n                       Real xAccuracy)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' costFunction'
    - ' parameterValues'
    - ' fixParameters'
    argTypes:
    - CostFunction
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::ProjectedCostFunction::ProjectedCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ProjectedCostFunction::ProjectedCostFunction(\n                const
      CostFunction& costFunction,\n                const Array& parameterValues,\n
      \               const std::vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' costFunction'
    - ' projection'
    argTypes:
    - CostFunction
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::ProjectedCostFunction::ProjectedCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ProjectedCostFunction::ProjectedCostFunction(\n                const
      CostFunction& costFunction,\n                const Projection& projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapFreeParameters
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:38,1
    - Dst: QuantLib::ProjectedCostFunction::value
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' freeParameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::ProjectedCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 1
    functionsReached:
    - mapFreeParameters
    - QuantLib::ProjectedCostFunction::value
    linkageType: ''
    returnType: Real
    signature: Real ProjectedCostFunction::value(const Array& freeParameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapFreeParameters
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:43,1
    - Dst: QuantLib::ProjectedCostFunction::values
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' freeParameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::ProjectedCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 1
    functionsReached:
    - mapFreeParameters
    - QuantLib::ProjectedCostFunction::values
    linkageType: ''
    returnType: Array
    signature: Array ProjectedCostFunction::values(const Array& freeParameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' costFunction'
    - ' parameterValues'
    - ' fixParameters'
    argTypes:
    - CostFunction
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::ProjectedCostFunction::ProjectedCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ProjectedCostFunction::ProjectedCostFunction(\n                const
      CostFunction& costFunction,\n                const Array& parameterValues,\n
      \               const std::vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' costFunction'
    - ' projection'
    argTypes:
    - CostFunction
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::ProjectedCostFunction::ProjectedCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ProjectedCostFunction::ProjectedCostFunction(\n                const
      CostFunction& costFunction,\n                const Projection& projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapFreeParameters
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:38,1
    - Dst: QuantLib::ProjectedCostFunction::value
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' freeParameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::ProjectedCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 2
    functionsReached:
    - mapFreeParameters
    - QuantLib::ProjectedCostFunction::value
    linkageType: ''
    returnType: Real
    signature: Real ProjectedCostFunction::value(const Array& freeParameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapFreeParameters
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:43,1
    - Dst: QuantLib::ProjectedCostFunction::values
      Src: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' freeParameters'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::ProjectedCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedcostfunction.cpp
    functionUses: 2
    functionsReached:
    - mapFreeParameters
    - QuantLib::ProjectedCostFunction::values
    linkageType: ''
    returnType: Array
    signature: Array ProjectedCostFunction::values(const Array& freeParameters) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::LineSearch::LineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LineSearch(Real = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~LineSearch()
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LineSearch()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& lastX()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lastX()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::LineSearch::lastFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastFunctionValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& lastGradient()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lastGradient()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::LineSearch::lastGradientNorm2
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastGradientNorm2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::LineSearch::succeed
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool succeed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& searchDirection() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & searchDirection() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& searchDirection()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & searchDirection()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::LineSearch::LineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LineSearch(Real = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~LineSearch()
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LineSearch()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& lastX()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lastX()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::LineSearch::lastFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastFunctionValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& lastGradient()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & lastGradient()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::LineSearch::lastGradientNorm2
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastGradientNorm2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::LineSearch::succeed
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool succeed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& searchDirection() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & searchDirection() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& searchDirection()'
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & searchDirection()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:37,1
    - Dst: test
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' params'
    - ' direction'
    - beta
    - ' constraint'
    argTypes:
    - Array
    - Array
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 45
    functionName: QuantLib::LineSearch::update
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - test
    linkageType: ''
    returnType: Real
    signature: "Real LineSearch::update(Array& params,\n                            const
      Array& direction,\n                            Real beta,\n                            const
      Constraint& constraint)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:37,1
    - Dst: test
      Src: /src/quantlib/ql/math/optimization/linesearch.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' params'
    - ' direction'
    - beta
    - ' constraint'
    argTypes:
    - Array
    - Array
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 45
    functionName: QuantLib::LineSearch::update
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearch.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - test
    linkageType: ''
    returnType: Real
    signature: "Real LineSearch::update(Array& params,\n                            const
      Array& direction,\n                            Real beta,\n                            const
      Constraint& constraint)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projection.cpp:29,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/projection.cpp:31,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/math/optimization/projection.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - ' parameterValues'
    - fixParameters
    argTypes:
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::Projection::Projection
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector<bool>
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Projection::Projection(const Array& parameterValues, std::vector<bool>
      fixParameters)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:45,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - parameterValues
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::Projection::mapFreeParameters
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Projection::mapFreeParameters(const Array &parameterValues) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - parameters
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::Projection::project
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Projection::project(const Array &parameters) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:69,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:69,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - projectedParameters
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 78
    functionName: QuantLib::Projection::include
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Projection::include(const Array &projectedParameters) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projection.cpp:29,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/projection.cpp:31,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/math/optimization/projection.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - ' parameterValues'
    - fixParameters
    argTypes:
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::Projection::Projection
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector<bool>
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Projection::Projection(const Array& parameterValues, std::vector<bool>
      fixParameters)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:45,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - parameterValues
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::Projection::mapFreeParameters
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Projection::mapFreeParameters(const Array &parameterValues) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - parameters
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::Projection::project
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Projection::project(const Array &parameters) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/projection.cpp:69,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:69,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/projection.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - projectedParameters
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 78
    functionName: QuantLib::Projection::include
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.cpp
    functionUses: 0
    functionsReached:
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Projection::include(const Array &projectedParameters) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:41,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:41,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - maxIterations
    - maxStationaryStateIterations
    - rootEpsilon
    - functionEpsilon
    - gradientNormEpsilon
    argTypes:
    - Size
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 54
    functionName: QuantLib::EndCriteria::EndCriteria
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - Null<Real>
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EndCriteria::EndCriteria(Size maxIterations,\n                             Size
      maxStationaryStateIterations,\n                             Real rootEpsilon,\n
      \                            Real functionEpsilon,\n                             Real
      gradientNormEpsilon)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - iteration
    - ' ecType'
    argTypes:
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: QuantLib::EndCriteria::checkMaxIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkMaxIterations(const Size iteration,\n                                         EndCriteria::Type&
      ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - xOld
    - xNew
    - ' statStateIterations'
    - ' ecType'
    argTypes:
    - Real
    - Real
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: QuantLib::EndCriteria::checkStationaryPoint
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryPoint(const Real xOld,\n                                           const
      Real xNew,\n                                           Size& statStateIterations,\n
      \                                          EndCriteria::Type& ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - fxOld
    - fxNew
    - ' statStateIterations'
    - ' ecType'
    argTypes:
    - Real
    - Real
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 93
    functionName: QuantLib::EndCriteria::checkStationaryFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryFunctionValue(\n                                            const
      Real fxOld,\n                                            const Real fxNew,\n
      \                                           Size& statStateIterations,\n                                            EndCriteria::Type&
      ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - f
    - positiveOptimization
    - ' ecType'
    argTypes:
    - Real
    - bool
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 105
    functionName: QuantLib::EndCriteria::checkStationaryFunctionAccuracy
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryFunctionAccuracy(\n                                            const
      Real f,\n                                            const bool positiveOptimization,\n
      \                                           EndCriteria::Type& ecType) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - gradientNorm
    - ' ecType'
    argTypes:
    - Real
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::EndCriteria::checkZeroGradientNorm
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkZeroGradientNorm(const Real gradientNorm,\n
      \                                           EndCriteria::Type& ecType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:134,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:135,1
    - Dst: checkStationaryFunctionAccuracy
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:136,1
    - Dst: checkZeroGradientNorm
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 7
    argNames:
    - iteration
    - ' statStateIterations'
    - positiveOptimization
    - fold
    - fnew
    - normgnew
    - ' ecType'
    argTypes:
    - Size
    - Size
    - bool
    - Real
    - Real
    - Real
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 138
    functionName: "EndCriteria::operator()(const Size iteration,\n                                 Size&
      statStateIterations,\n                                 const bool positiveOptimization,\n
      \                                const Real fold,\n                                 const
      Real, //normgold,\n                                 const Real fnew,\n                                 const
      Real normgnew,\n                                 EndCriteria::Type& ecType)
      const"
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - checkStationaryFunctionValue
    - checkStationaryFunctionAccuracy
    - checkZeroGradientNorm
    - checkMaxIterations
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::operator()(const Size iteration,\n                                 Size&
      statStateIterations,\n                                 const bool positiveOptimization,\n
      \                                const Real fold,\n                                 const
      Real, //normgold,\n                                 const Real fnew,\n                                 const
      Real normgnew,\n                                 EndCriteria::Type& ecType)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: QuantLib::EndCriteria::maxIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EndCriteria::maxIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::EndCriteria::maxStationaryStateIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EndCriteria::maxStationaryStateIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::EndCriteria::rootEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::rootEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::EndCriteria::functionEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::functionEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::EndCriteria::gradientNormEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::gradientNormEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ecType
    argTypes:
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::EndCriteria::succeeded
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool EndCriteria::succeeded(EndCriteria::Type ecType)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:186,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 2
    argNames:
    - ' out'
    - ec
    argTypes:
    - std::ostream
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 188
    functionName: '& operator<<(std::ostream& out, EndCriteria::Type ec)'
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, EndCriteria::Type ec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:41,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:41,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - maxIterations
    - maxStationaryStateIterations
    - rootEpsilon
    - functionEpsilon
    - gradientNormEpsilon
    argTypes:
    - Size
    - Size
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 54
    functionName: QuantLib::EndCriteria::EndCriteria
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - Null<Real>
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EndCriteria::EndCriteria(Size maxIterations,\n                             Size
      maxStationaryStateIterations,\n                             Real rootEpsilon,\n
      \                            Real functionEpsilon,\n                             Real
      gradientNormEpsilon)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - iteration
    - ' ecType'
    argTypes:
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: QuantLib::EndCriteria::checkMaxIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkMaxIterations(const Size iteration,\n                                         EndCriteria::Type&
      ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - xOld
    - xNew
    - ' statStateIterations'
    - ' ecType'
    argTypes:
    - Real
    - Real
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: QuantLib::EndCriteria::checkStationaryPoint
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryPoint(const Real xOld,\n                                           const
      Real xNew,\n                                           Size& statStateIterations,\n
      \                                          EndCriteria::Type& ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - fxOld
    - fxNew
    - ' statStateIterations'
    - ' ecType'
    argTypes:
    - Real
    - Real
    - Size
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 93
    functionName: QuantLib::EndCriteria::checkStationaryFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryFunctionValue(\n                                            const
      Real fxOld,\n                                            const Real fxNew,\n
      \                                           Size& statStateIterations,\n                                            EndCriteria::Type&
      ecType) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - f
    - positiveOptimization
    - ' ecType'
    argTypes:
    - Real
    - bool
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 105
    functionName: QuantLib::EndCriteria::checkStationaryFunctionAccuracy
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkStationaryFunctionAccuracy(\n                                            const
      Real f,\n                                            const bool positiveOptimization,\n
      \                                           EndCriteria::Type& ecType) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - gradientNorm
    - ' ecType'
    argTypes:
    - Real
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::EndCriteria::checkZeroGradientNorm
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::checkZeroGradientNorm(const Real gradientNorm,\n
      \                                           EndCriteria::Type& ecType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:134,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:135,1
    - Dst: checkStationaryFunctionAccuracy
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:136,1
    - Dst: checkZeroGradientNorm
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 7
    argNames:
    - iteration
    - ' statStateIterations'
    - positiveOptimization
    - fold
    - fnew
    - normgnew
    - ' ecType'
    argTypes:
    - Size
    - Size
    - bool
    - Real
    - Real
    - Real
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 138
    functionName: "EndCriteria::operator()(const Size iteration,\n                                 Size&
      statStateIterations,\n                                 const bool positiveOptimization,\n
      \                                const Real fold,\n                                 const
      Real, //normgold,\n                                 const Real fnew,\n                                 const
      Real normgnew,\n                                 EndCriteria::Type& ecType)
      const"
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - checkStationaryFunctionValue
    - checkStationaryFunctionAccuracy
    - checkZeroGradientNorm
    - checkMaxIterations
    linkageType: ''
    returnType: bool
    signature: "bool EndCriteria::operator()(const Size iteration,\n                                 Size&
      statStateIterations,\n                                 const bool positiveOptimization,\n
      \                                const Real fold,\n                                 const
      Real, //normgold,\n                                 const Real fnew,\n                                 const
      Real normgnew,\n                                 EndCriteria::Type& ecType)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: QuantLib::EndCriteria::maxIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EndCriteria::maxIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::EndCriteria::maxStationaryStateIterations
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size EndCriteria::maxStationaryStateIterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::EndCriteria::rootEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::rootEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::EndCriteria::functionEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::functionEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::EndCriteria::gradientNormEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real EndCriteria::gradientNormEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ecType
    argTypes:
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::EndCriteria::succeeded
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool EndCriteria::succeeded(EndCriteria::Type ecType)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:186,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/endcriteria.cpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 2
    argNames:
    - ' out'
    - ec
    argTypes:
    - std::ostream
    - EndCriteria::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 188
    functionName: '& operator<<(std::ostream& out, EndCriteria::Type ec)'
    functionSourceFile: /src/quantlib/ql/math/optimization/endcriteria.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, EndCriteria::Type ec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:45,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::Constraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:50,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::Constraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Constraint::empty
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Constraint::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Constraint::test
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionName: QuantLib::Constraint::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Constraint::upperBound
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: QuantLib::Constraint::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - size
    - Array::size
    - QuantLib::Constraint::lowerBound
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::NoConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:87,1
    - Dst: NoConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::NoConstraint::NoConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - NoConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NoConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::all_of
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::PositiveConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::all_of
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:100,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::PositiveConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::PositiveConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:109,1
    - Dst: PositiveConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::PositiveConstraint::PositiveConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - PositiveConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void PositiveConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: QuantLib::BoundaryConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real low, Real high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::all_of
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::BoundaryConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::all_of
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::BoundaryConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::BoundaryConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:135,1
    - Dst: BoundaryConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::BoundaryConstraint::BoundaryConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - BoundaryConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void BoundaryConstraint(Real low, Real high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:144,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c1
    - c2
    argTypes:
    - Constraint
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::CompositeConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Constraint c1, Constraint c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:146,1
    - Dst: QuantLib::CompositeConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::CompositeConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::test
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:149,1
    - Dst: QuantLib::CompositeConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:150,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:151,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:152,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::CompositeConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::upperBound
    - std::min
    - Array::size
    - Array::at
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:158,1
    - Dst: QuantLib::CompositeConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:160,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:161,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: QuantLib::CompositeConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::lowerBound
    - Array::size
    - std::max
    - Array::at
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:172,1
    - Dst: CompositeConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Constraint
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::CompositeConstraint::CompositeConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - CompositeConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void CompositeConstraint(const Constraint& c1, const Constraint& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:181,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void Impl(Array low, Array high)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 193
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_ENSURE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 195
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:202,1
    - Dst: NonhomogeneousBoundaryConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' low'
    - ' high'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::NonhomogeneousBoundaryConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - NonhomogeneousBoundaryConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NonhomogeneousBoundaryConstraint(const Array& low, const Array&
      high)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:45,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::Constraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:50,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::Constraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Constraint::empty
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Constraint::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Constraint::test
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:60,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionName: QuantLib::Constraint::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Constraint::upperBound
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:68,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: QuantLib::Constraint::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - size
    - Array::size
    - QuantLib::Constraint::lowerBound
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::NoConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:87,1
    - Dst: NoConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::NoConstraint::NoConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - NoConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NoConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::all_of
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::PositiveConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::all_of
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:100,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::PositiveConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::PositiveConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:109,1
    - Dst: PositiveConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::PositiveConstraint::PositiveConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - PositiveConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void PositiveConstraint()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: QuantLib::BoundaryConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(Real low, Real high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::all_of
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::BoundaryConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - std::all_of
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::BoundaryConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::BoundaryConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:135,1
    - Dst: BoundaryConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::BoundaryConstraint::BoundaryConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - BoundaryConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void BoundaryConstraint(Real low, Real high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:144,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c1
    - c2
    argTypes:
    - Constraint
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::CompositeConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Constraint c1, Constraint c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:146,1
    - Dst: QuantLib::CompositeConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::CompositeConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::test
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:149,1
    - Dst: QuantLib::CompositeConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:150,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:151,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:152,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::CompositeConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::upperBound
    - std::min
    - Array::size
    - Array::at
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:158,1
    - Dst: QuantLib::CompositeConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:160,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:161,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    - Dst: Array::at
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: QuantLib::CompositeConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeConstraint::Impl::lowerBound
    - Array::size
    - std::max
    - Array::at
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:172,1
    - Dst: CompositeConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Constraint
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::CompositeConstraint::CompositeConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - CompositeConstraint::Impl::Impl
    - ext::shared_ptr<Constraint::Impl>
    linkageType: ''
    returnType: void
    signature: void CompositeConstraint(const Constraint& c1, const Constraint& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:181,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - low
    - high
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void Impl(Array low, Array high)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 193
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_ENSURE
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 195
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:202,1
    - Dst: NonhomogeneousBoundaryConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/constraint.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' low'
    - ' high'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::NonhomogeneousBoundaryConstraint::NonhomogeneousBoundaryConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - NonhomogeneousBoundaryConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NonhomogeneousBoundaryConstraint(const Array& low, const Array&
      high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:33,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:34,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' P'
    - gold2
    argTypes:
    - Problem
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::ConjugateGradient::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/conjugategradient.cpp
    functionUses: 0
    functionsReached:
    - lastGradient
    - searchDirection
    - gradientNormValue
    linkageType: ''
    returnType: Array
    signature: "Array ConjugateGradient::getUpdatedDirection(const Problem& P,\n                                                 Real
      gold2,\n                                                 const Array&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:33,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:34,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/conjugategradient.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' P'
    - gold2
    argTypes:
    - Problem
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::ConjugateGradient::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/conjugategradient.cpp
    functionUses: 0
    functionsReached:
    - lastGradient
    - searchDirection
    - gradientNormValue
    linkageType: ''
    returnType: Array
    signature: "Array ConjugateGradient::getUpdatedDirection(const Problem& P,\n                                                 Real
      gold2,\n                                                 const Array&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/steepestdescent.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::SteepestDescent::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/steepestdescent.cpp
    functionUses: 0
    functionsReached:
    - lastGradient
    linkageType: ''
    returnType: Array
    signature: "Array SteepestDescent::getUpdatedDirection(const Problem&,\n                                               Real,\n
      \                                              const Array&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/steepestdescent.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::SteepestDescent::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/steepestdescent.cpp
    functionUses: 0
    functionsReached:
    - lastGradient
    linkageType: ''
    returnType: Array
    signature: "Array SteepestDescent::getUpdatedDirection(const Problem&,\n                                               Real,\n
      \                                              const Array&)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Simplex::Simplex
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Simplex(Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::Simplex::lambda
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Simplex::Simplex
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Simplex(Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::Simplex::lambda
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - constraint
    - ' parameterValues'
    - ' fixParameters'
    argTypes:
    - Constraint
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::ProjectedConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Impl(Constraint constraint,\n                 const Array& parameterValues,\n
      \                const std::vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - constraint
    - ' projection'
    argTypes:
    - Constraint
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::ProjectedConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Constraint constraint, const Projection& projection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ProjectedConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:46,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::ProjectedConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ProjectedConstraint::Impl::test
    - include
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: project
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    - Dst: QuantLib::ProjectedConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::ProjectedConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 1
    functionsReached:
    - include
    - QuantLib::ProjectedConstraint::Impl::upperBound
    - project
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: project
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    - Dst: QuantLib::ProjectedConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::ProjectedConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 1
    functionsReached:
    - include
    - QuantLib::ProjectedConstraint::Impl::lowerBound
    - project
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:65,1
    - Dst: ProjectedConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - constraint
    - parameterValues
    - fixParameters
    argTypes:
    - Constraint
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::ProjectedConstraint::ProjectedConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - ProjectedConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void ProjectedConstraint(const Constraint &constraint,\n                            const
      Array &parameterValues,\n                            const std::vector<bool>
      &fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:71,1
    - Dst: ProjectedConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - constraint
    - projection
    argTypes:
    - Constraint
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::ProjectedConstraint::ProjectedConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - ProjectedConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void ProjectedConstraint(const Constraint &constraint,\n                            const
      Projection &projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - constraint
    - ' parameterValues'
    - ' fixParameters'
    argTypes:
    - Constraint
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::ProjectedConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Impl(Constraint constraint,\n                 const Array& parameterValues,\n
      \                const std::vector<bool>& fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - constraint
    - ' projection'
    argTypes:
    - Constraint
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::ProjectedConstraint::Impl::Impl
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Constraint constraint, const Projection& projection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ProjectedConstraint::Impl::test
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:46,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::ProjectedConstraint::Impl::test
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ProjectedConstraint::Impl::test
    - include
    linkageType: ''
    returnType: bool
    signature: bool test(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: project
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    - Dst: QuantLib::ProjectedConstraint::Impl::upperBound
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::ProjectedConstraint::Impl::upperBound
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 2
    functionsReached:
    - include
    - QuantLib::ProjectedConstraint::Impl::upperBound
    - project
    linkageType: ''
    returnType: Array
    signature: Array upperBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: project
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    - Dst: QuantLib::ProjectedConstraint::Impl::lowerBound
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    - Dst: include
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::ProjectedConstraint::Impl::lowerBound
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 2
    functionsReached:
    - include
    - QuantLib::ProjectedConstraint::Impl::lowerBound
    - project
    linkageType: ''
    returnType: Array
    signature: Array lowerBound(const Array& params) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:65,1
    - Dst: ProjectedConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - constraint
    - parameterValues
    - fixParameters
    argTypes:
    - Constraint
    - Array
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::ProjectedConstraint::ProjectedConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - ProjectedConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void ProjectedConstraint(const Constraint &constraint,\n                            const
      Array &parameterValues,\n                            const std::vector<bool>
      &fixParameters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Constraint::Impl>
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:71,1
    - Dst: ProjectedConstraint::Impl::Impl
      Src: /src/quantlib/ql/math/optimization/projectedconstraint.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - constraint
    - projection
    argTypes:
    - Constraint
    - Projection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::ProjectedConstraint::ProjectedConstraint
    functionSourceFile: /src/quantlib/ql/math/optimization/projectedconstraint.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Constraint::Impl>
    - ProjectedConstraint::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void ProjectedConstraint(const Constraint &constraint,\n                            const
      Projection &projection)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - epsfcn
    - xtol
    - gtol
    - useCostFunctionsJacobian
    argTypes:
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::LevenbergMarquardt::LevenbergMarquardt
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LevenbergMarquardt::LevenbergMarquardt(Real epsfcn,\n                                           Real
      xtol,\n                                           Real gtol,\n                                           bool
      useCostFunctionsJacobian)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:38,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:39,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:43,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:45,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:46,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:49,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:50,1
    - Dst: maxIterations
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:56,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:60,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:62,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:63,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:64,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:65,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:66,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:73,1
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:77,1
    - Dst: QuantLib::LevenbergMarquardt::fcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:83,1
    - Dst: QuantLib::LevenbergMarquardt::jacFcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:88,1
    - Dst: MINPACK::LmdifCostFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:90,1
    - Dst: QuantLib::MINPACK::lmdif
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:92,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:97,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:98,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:99,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:99,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:110,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:131,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:134,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 138
    functionName: QuantLib::LevenbergMarquardt::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - currentValue
    - std::unique_ptr::get
    - Array::begin
    - maxIterations
    - size
    - costFunction
    - MINPACK::LmdifCostFunction
    - Matrix
    - QL_FAIL
    - setFunctionValue
    - Real::Real
    - QuantLib::LevenbergMarquardt::fcn
    - QL_REQUIRE
    - QuantLib::MINPACK::lmdif
    - functionEpsilon
    - reset
    - int::int
    - std::move
    - QuantLib::LevenbergMarquardt::jacFcn
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type LevenbergMarquardt::minimize(Problem& P,\n                                                   const
      EndCriteria& endCriteria)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:142,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:142,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:145,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:146,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - n
    - x
    - fvec
    argTypes:
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: QuantLib::LevenbergMarquardt::fcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 1
    functionsReached:
    - std::copy
    - Array::begin
    - begin
    - values
    - constraint
    - end
    linkageType: ''
    returnType: void
    signature: void LevenbergMarquardt::fcn(int, int n, Real* x, Real* fvec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:155,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:158,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:160,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:161,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:164,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fjac
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 167
    functionName: QuantLib::LevenbergMarquardt::jacFcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 1
    functionsReached:
    - std::copy
    - costFunction
    - Array::begin
    - Matrix::end
    - transpose
    - constraint
    - Matrix::begin
    linkageType: ''
    returnType: void
    signature: void LevenbergMarquardt::jacFcn(int m, int n, Real* x, Real* fjac)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - epsfcn
    - xtol
    - gtol
    - useCostFunctionsJacobian
    argTypes:
    - Real
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::LevenbergMarquardt::LevenbergMarquardt
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LevenbergMarquardt::LevenbergMarquardt(Real epsfcn,\n                                           Real
      xtol,\n                                           Real gtol,\n                                           bool
      useCostFunctionsJacobian)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:38,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:39,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:43,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:45,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:46,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:49,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:50,1
    - Dst: maxIterations
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:56,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:60,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:62,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:63,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:64,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:65,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:66,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:73,1
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:77,1
    - Dst: QuantLib::LevenbergMarquardt::fcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:83,1
    - Dst: QuantLib::LevenbergMarquardt::jacFcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:88,1
    - Dst: MINPACK::LmdifCostFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:90,1
    - Dst: QuantLib::MINPACK::lmdif
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:91,1
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:92,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:97,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:98,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:99,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:99,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:110,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:131,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:134,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 138
    functionName: QuantLib::LevenbergMarquardt::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - currentValue
    - std::unique_ptr::get
    - Array::begin
    - maxIterations
    - size
    - costFunction
    - MINPACK::LmdifCostFunction
    - Matrix
    - QL_FAIL
    - setFunctionValue
    - Real::Real
    - QuantLib::LevenbergMarquardt::fcn
    - QL_REQUIRE
    - QuantLib::MINPACK::lmdif
    - functionEpsilon
    - reset
    - int::int
    - std::move
    - QuantLib::LevenbergMarquardt::jacFcn
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type LevenbergMarquardt::minimize(Problem& P,\n                                                   const
      EndCriteria& endCriteria)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:142,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:142,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:145,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:146,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - n
    - x
    - fvec
    argTypes:
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: QuantLib::LevenbergMarquardt::fcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 2
    functionsReached:
    - std::copy
    - Array::begin
    - begin
    - values
    - constraint
    - end
    linkageType: ''
    returnType: void
    signature: void LevenbergMarquardt::fcn(int, int n, Real* x, Real* fvec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:155,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:158,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:160,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:161,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:162,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:164,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fjac
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 167
    functionName: QuantLib::LevenbergMarquardt::jacFcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.cpp
    functionUses: 2
    functionsReached:
    - std::copy
    - costFunction
    - Array::begin
    - Matrix::end
    - transpose
    - constraint
    - Matrix::begin
    linkageType: ''
    returnType: void
    signature: void LevenbergMarquardt::jacFcn(int m, int n, Real* x, Real* fjac)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~OptimizationMethod()
    functionSourceFile: /src/quantlib/ql/math/optimization/method.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OptimizationMethod()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~OptimizationMethod()
    functionSourceFile: /src/quantlib/ql/math/optimization/method.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OptimizationMethod()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:30,1
    - Dst: targetAndValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:32,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::LeastSquareFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - DotProduct
    - targetAndValue
    linkageType: ''
    returnType: Real
    signature: Real LeastSquareFunction::value(const Array & x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:41,1
    - Dst: targetAndValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: QuantLib::LeastSquareFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - targetAndValue
    linkageType: ''
    returnType: Array
    signature: Array LeastSquareFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:54,1
    - Dst: targetValueAndGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:56,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: QuantLib::LeastSquareFunction::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - targetValueAndGradient
    - transpose
    linkageType: ''
    returnType: void
    signature: "void LeastSquareFunction::gradient(Array& grad_f,\n                                       const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:68,1
    - Dst: targetValueAndGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:70,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:74,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 77
    functionName: QuantLib::LeastSquareFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - DotProduct
    - targetValueAndGradient
    - transpose
    linkageType: ''
    returnType: Real
    signature: "Real LeastSquareFunction::valueAndGradient(Array& grad_f,\n                                               const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:83,1
    - Dst: ConjugateGradient::ConjugateGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' c'
    - accuracy
    - maxiter
    argTypes:
    - Constraint
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::NonLinearLeastSquare::NonLinearLeastSquare
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - ConjugateGradient::ConjugateGradient
    - ext::shared_ptr<OptimizationMethod>
    linkageType: ''
    returnType: void
    signature: "void NonLinearLeastSquare::NonLinearLeastSquare(Constraint& c,\n                                               Real
      accuracy,\n                                               Size maxiter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' c'
    - accuracy
    - maxiter
    - om
    argTypes:
    - Constraint
    - Real
    - Size
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: QuantLib::NonLinearLeastSquare::NonLinearLeastSquare
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NonLinearLeastSquare::NonLinearLeastSquare(Constraint& c,\n                                               Real
      accuracy,\n                                               Size maxiter,\n                                               ext::shared_ptr<OptimizationMethod>
      om)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: minimize
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:106,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:111,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:112,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' lsProblem'
    argTypes:
    - LeastSquareProblem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 116
    functionName: '& NonLinearLeastSquare::perform(LeastSquareProblem& lsProblem)'
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Problem::functionValue
    - minimize
    - Problem::currentValue
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array & NonLinearLeastSquare::perform(LeastSquareProblem& lsProblem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:30,1
    - Dst: targetAndValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:32,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: QuantLib::LeastSquareFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - DotProduct
    - targetAndValue
    linkageType: ''
    returnType: Real
    signature: Real LeastSquareFunction::value(const Array & x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:41,1
    - Dst: targetAndValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: QuantLib::LeastSquareFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - targetAndValue
    linkageType: ''
    returnType: Array
    signature: Array LeastSquareFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:54,1
    - Dst: targetValueAndGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:56,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: QuantLib::LeastSquareFunction::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - targetValueAndGradient
    - transpose
    linkageType: ''
    returnType: void
    signature: "void LeastSquareFunction::gradient(Array& grad_f,\n                                       const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:68,1
    - Dst: targetValueAndGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:70,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:74,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 77
    functionName: QuantLib::LeastSquareFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - size
    - DotProduct
    - targetValueAndGradient
    - transpose
    linkageType: ''
    returnType: Real
    signature: "Real LeastSquareFunction::valueAndGradient(Array& grad_f,\n                                               const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:83,1
    - Dst: ConjugateGradient::ConjugateGradient
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' c'
    - accuracy
    - maxiter
    argTypes:
    - Constraint
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::NonLinearLeastSquare::NonLinearLeastSquare
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - ConjugateGradient::ConjugateGradient
    - ext::shared_ptr<OptimizationMethod>
    linkageType: ''
    returnType: void
    signature: "void NonLinearLeastSquare::NonLinearLeastSquare(Constraint& c,\n                                               Real
      accuracy,\n                                               Size maxiter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' c'
    - accuracy
    - maxiter
    - om
    argTypes:
    - Constraint
    - Real
    - Size
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: QuantLib::NonLinearLeastSquare::NonLinearLeastSquare
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NonLinearLeastSquare::NonLinearLeastSquare(Constraint& c,\n                                               Real
      accuracy,\n                                               Size maxiter,\n                                               ext::shared_ptr<OptimizationMethod>
      om)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:104,1
    - Dst: minimize
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:106,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:111,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:112,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/math/optimization/leastsquare.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' lsProblem'
    argTypes:
    - LeastSquareProblem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 116
    functionName: '& NonLinearLeastSquare::perform(LeastSquareProblem& lsProblem)'
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Problem::functionValue
    - minimize
    - Problem::currentValue
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array & NonLinearLeastSquare::perform(LeastSquareProblem& lsProblem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::DifferentialEvolution::Candidate
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Candidate(Size size = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::DifferentialEvolution::Configuration::Configuration
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Configuration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '& withBounds(bool b = true)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withBounds(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 108
    functionName: '& withCrossoverProbability(Real p)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withCrossoverProbability(Real p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:111,1
    - Dst: clear
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: '& withPopulationMembers(Size n)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withPopulationMembers(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: '& withInitialPopulation(const std::vector<Array>& c)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withInitialPopulation(const std::vector<Array>& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& withUpperBound(const Array& u)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withUpperBound(const Array& u)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' l'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: '& withLowerBound(const Array& l)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withLowerBound(const Array& l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: '& withSeed(unsigned long s)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withSeed(unsigned long s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: '& withAdaptiveCrossover(bool b = true)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withAdaptiveCrossover(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - w
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionName: '& withStepsizeWeight(Real w)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withStepsizeWeight(Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - CrossoverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: '& withCrossoverType(CrossoverType t)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withCrossoverType(CrossoverType t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& withStrategy(Strategy s)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withStrategy(Strategy s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: QuantLib::DifferentialEvolution::DifferentialEvolution
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - Configuration
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution(const Configuration& configuration = Configuration())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: '& configuration() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & configuration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::DifferentialEvolution::Candidate
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Candidate(Size size = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::DifferentialEvolution::Configuration::Configuration
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Configuration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '& withBounds(bool b = true)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withBounds(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 108
    functionName: '& withCrossoverProbability(Real p)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withCrossoverProbability(Real p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:111,1
    - Dst: clear
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: '& withPopulationMembers(Size n)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withPopulationMembers(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: '& withInitialPopulation(const std::vector<Array>& c)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withInitialPopulation(const std::vector<Array>& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' u'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& withUpperBound(const Array& u)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withUpperBound(const Array& u)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' l'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: '& withLowerBound(const Array& l)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withLowerBound(const Array& l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: '& withSeed(unsigned long s)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withSeed(unsigned long s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: '& withAdaptiveCrossover(bool b = true)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withAdaptiveCrossover(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - w
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionName: '& withStepsizeWeight(Real w)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withStepsizeWeight(Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - CrossoverType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: '& withCrossoverType(CrossoverType t)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withCrossoverType(CrossoverType t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& withStrategy(Strategy s)'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & withStrategy(Strategy s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: QuantLib::DifferentialEvolution::DifferentialEvolution
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached:
    - Configuration
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution(const Configuration& configuration = Configuration())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: '& configuration() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Configuration
    signature: Configuration & configuration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - impl
    argTypes:
    - ext::shared_ptr<Constraint::Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::Constraint::Constraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Constraint::Constraint(ext::shared_ptr<Constraint::Impl> impl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:35,1
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' params'
    - ' direction'
    - beta
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Constraint::update
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::Constraint::test
    linkageType: ''
    returnType: Real
    signature: Real Constraint::update(Array& params, const Array& direction, Real
      beta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - impl
    argTypes:
    - ext::shared_ptr<Constraint::Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: QuantLib::Constraint::Constraint
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Constraint::Constraint(ext::shared_ptr<Constraint::Impl> impl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:35,1
    - Dst: QuantLib::Constraint::test
      Src: /src/quantlib/ql/math/optimization/constraint.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ' params'
    - ' direction'
    - beta
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Constraint::update
    functionSourceFile: /src/quantlib/ql/math/optimization/constraint.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::Constraint::test
    linkageType: ''
    returnType: Real
    signature: Real Constraint::update(Array& params, const Array& direction, Real
      beta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RNG
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - lambda
    - T0
    - epsilon
    - m
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::SimulatedAnnealing::SimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - RNG
    linkageType: ''
    returnType: void
    signature: "void SimulatedAnnealing(const Real lambda, const Real T0,\n                           const
      Real epsilon, const Size m,\n                           const RNG &rng = RNG())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RNG
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - lambda
    - T0
    - K
    - alpha
    argTypes:
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::SimulatedAnnealing::SimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - RNG
    linkageType: ''
    returnType: void
    signature: "void SimulatedAnnealing(const Real lambda, const Real T0, const Size
      K,\n                           const Real alpha, const RNG &rng = RNG())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:101,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::SimulatedAnnealing<RNG>::simplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - size
    - Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real SimulatedAnnealing<RNG>::simplexSize()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:117,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:120,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:128,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:128,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - P
    - fac
    argTypes:
    - Problem
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::SimulatedAnnealing<RNG>::amotsa
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - next
    - std::log
    - std::isnan
    - Problem::constraint
    - Problem::value
    linkageType: ''
    returnType: void
    signature: void SimulatedAnnealing<RNG>::amotsa(Problem &P, Real fac)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Problem::reset
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:146,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:147,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:149,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:150,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:154,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:158,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:160,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:162,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:165,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:166,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:175,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:185,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:185,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:187,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:187,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:196,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:196,1
    - Dst: EndCriteria::checkStationaryPoint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:217,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::simplexSize
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:217,1
    - Dst: EndCriteria::checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:220,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:222,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:223,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:228,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:230,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:234,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:266,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 102
    argCount: 2
    argNames:
    - P
    - ec
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 273
    functionName: QuantLib::SimulatedAnnealing<RNG>::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - next
    - QuantLib::SimulatedAnnealing<RNG>::amotsa
    - Problem::reset
    - std::vector<Array>
    - std::log
    - EndCriteria::checkStationaryPoint
    - Array
    - Problem::setFunctionValue
    - std::isnan
    - Problem::constraint
    - Array::size
    - std::pow
    - Problem::value
    - QuantLib::SimulatedAnnealing<RNG>::simplexSize
    - Problem::setCurrentValue
    - Problem::currentValue
    - EndCriteria::checkMaxIterations
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type SimulatedAnnealing<RNG>::minimize(Problem &P,\n
      \                                                       const EndCriteria &ec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RNG
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - lambda
    - T0
    - epsilon
    - m
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::SimulatedAnnealing::SimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - RNG
    linkageType: ''
    returnType: void
    signature: "void SimulatedAnnealing(const Real lambda, const Real T0,\n                           const
      Real epsilon, const Size m,\n                           const RNG &rng = RNG())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RNG
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - lambda
    - T0
    - K
    - alpha
    argTypes:
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::SimulatedAnnealing::SimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - RNG
    linkageType: ''
    returnType: void
    signature: "void SimulatedAnnealing(const Real lambda, const Real T0, const Size
      K,\n                           const Real alpha, const RNG &rng = RNG())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:98,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:101,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::SimulatedAnnealing<RNG>::simplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 1
    functionsReached:
    - size
    - Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real SimulatedAnnealing<RNG>::simplexSize()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:117,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:120,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:128,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:128,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - P
    - fac
    argTypes:
    - Problem
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::SimulatedAnnealing<RNG>::amotsa
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 1
    functionsReached:
    - next
    - std::log
    - std::isnan
    - Problem::constraint
    - Problem::value
    linkageType: ''
    returnType: void
    signature: void SimulatedAnnealing<RNG>::amotsa(Problem &P, Real fac)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Problem::reset
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:146,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:147,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:149,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:150,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:154,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:158,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:160,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:162,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:165,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:166,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:175,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:185,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:185,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:187,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:187,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:196,1
    - Dst: next
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:196,1
    - Dst: EndCriteria::checkStationaryPoint
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:217,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::simplexSize
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:217,1
    - Dst: EndCriteria::checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:220,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:222,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:223,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:228,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:230,1
    - Dst: QuantLib::SimulatedAnnealing<RNG>::amotsa
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:234,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/simulatedannealing.hpp:266,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 102
    argCount: 2
    argNames:
    - P
    - ec
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 273
    functionName: QuantLib::SimulatedAnnealing<RNG>::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/simulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - next
    - QuantLib::SimulatedAnnealing<RNG>::amotsa
    - Problem::reset
    - std::vector<Array>
    - std::log
    - EndCriteria::checkStationaryPoint
    - Array
    - Problem::setFunctionValue
    - std::isnan
    - Problem::constraint
    - Array::size
    - std::pow
    - Problem::value
    - QuantLib::SimulatedAnnealing<RNG>::simplexSize
    - Problem::setCurrentValue
    - Problem::currentValue
    - EndCriteria::checkMaxIterations
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type SimulatedAnnealing<RNG>::minimize(Problem &P,\n
      \                                                       const EndCriteria &ec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~LeastSquareProblem()
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeastSquareProblem()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' lsp'
    argTypes:
    - LeastSquareProblem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::LeastSquareFunction::LeastSquareFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeastSquareFunction(LeastSquareProblem& lsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~LeastSquareFunction() override
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeastSquareFunction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: ~NonLinearLeastSquare()
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NonLinearLeastSquare()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' initialValue'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::NonLinearLeastSquare::setInitialValue
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInitialValue(const Array& initialValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: '& results()'
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & results()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::NonLinearLeastSquare::residualNorm
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real residualNorm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::NonLinearLeastSquare::lastValue
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::NonLinearLeastSquare::exitFlag
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer exitFlag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::NonLinearLeastSquare::iterationsNumber
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer iterationsNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~LeastSquareProblem()
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeastSquareProblem()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' lsp'
    argTypes:
    - LeastSquareProblem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::LeastSquareFunction::LeastSquareFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeastSquareFunction(LeastSquareProblem& lsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~LeastSquareFunction() override
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeastSquareFunction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: ~NonLinearLeastSquare()
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NonLinearLeastSquare()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' initialValue'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::NonLinearLeastSquare::setInitialValue
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInitialValue(const Array& initialValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: '& results()'
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & results()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::NonLinearLeastSquare::residualNorm
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real residualNorm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::NonLinearLeastSquare::lastValue
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lastValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::NonLinearLeastSquare::exitFlag
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer exitFlag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::NonLinearLeastSquare::iterationsNumber
    functionSourceFile: /src/quantlib/ql/math/optimization/leastsquare.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer iterationsNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~CostFunction()
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CostFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:39,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:42,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::CostFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - Real
    - static_cast<Real>
    - Array::size
    - std::accumulate
    - std::sqrt
    - values
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::finiteDifferenceEpsilon
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:52,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:54,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 60
    functionName: QuantLib::CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::CostFunction::value
    - QuantLib::CostFunction::finiteDifferenceEpsilon
    linkageType: ''
    returnType: void
    signature: void gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::gradient
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:66,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CostFunction::gradient
    - QuantLib::CostFunction::value
    linkageType: ''
    returnType: Real
    signature: "Real valueAndGradient(Array& grad,\n                                      const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::finiteDifferenceEpsilon
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:73,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:75,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:77,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - jac
    - x
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: QuantLib::CostFunction::jacobian
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - values
    - size
    - Array::size
    - QuantLib::CostFunction::finiteDifferenceEpsilon
    linkageType: ''
    returnType: void
    signature: void jacobian(Matrix &jac, const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::jacobian
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:91,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - jac
    - x
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::CostFunction::valuesAndJacobian
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - values
    - QuantLib::CostFunction::jacobian
    linkageType: ''
    returnType: Array
    signature: "Array valuesAndJacobian(Matrix &jac,\n                                        const
      Array &x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::CostFunction::finiteDifferenceEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real finiteDifferenceEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - values
    argTypes:
    - ValuesFn
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::SimpleCostFunction::SimpleCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void SimpleCostFunction(ValuesFn values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values_
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::SimpleCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - values_
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: ~ParametersTransformation()
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParametersTransformation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~CostFunction()
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CostFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:39,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:41,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:42,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::CostFunction::value
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 2
    functionsReached:
    - std::transform
    - Array::begin
    - Array::end
    - Real
    - static_cast<Real>
    - Array::size
    - std::accumulate
    - std::sqrt
    - values
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::finiteDifferenceEpsilon
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:52,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:54,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 60
    functionName: QuantLib::CostFunction::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::CostFunction::value
    - QuantLib::CostFunction::finiteDifferenceEpsilon
    linkageType: ''
    returnType: void
    signature: void gradient(Array& grad, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::gradient
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:66,1
    - Dst: QuantLib::CostFunction::value
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::CostFunction::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CostFunction::gradient
    - QuantLib::CostFunction::value
    linkageType: ''
    returnType: Real
    signature: "Real valueAndGradient(Array& grad,\n                                      const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::finiteDifferenceEpsilon
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:73,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:75,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:77,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:79,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - jac
    - x
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: QuantLib::CostFunction::jacobian
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 1
    functionsReached:
    - values
    - size
    - Array::size
    - QuantLib::CostFunction::finiteDifferenceEpsilon
    linkageType: ''
    returnType: void
    signature: void jacobian(Matrix &jac, const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CostFunction::jacobian
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:91,1
    - Dst: values
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - jac
    - x
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::CostFunction::valuesAndJacobian
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - values
    - QuantLib::CostFunction::jacobian
    linkageType: ''
    returnType: Array
    signature: "Array valuesAndJacobian(Matrix &jac,\n                                        const
      Array &x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::CostFunction::finiteDifferenceEpsilon
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real finiteDifferenceEpsilon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - values
    argTypes:
    - ValuesFn
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::SimpleCostFunction::SimpleCostFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void SimpleCostFunction(ValuesFn values)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values_
      Src: /src/quantlib/ql/math/optimization/costfunction.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::SimpleCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached:
    - values_
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: ~ParametersTransformation()
    functionSourceFile: /src/quantlib/ql/math/optimization/costfunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParametersTransformation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~LineSearchBasedMethod() override
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LineSearchBasedMethod() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: ~LineSearchBasedMethod() override
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LineSearchBasedMethod() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/steepestdescent.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::SteepestDescent::SteepestDescent
    functionSourceFile: /src/quantlib/ql/math/optimization/steepestdescent.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void SteepestDescent(const ext::shared_ptr<LineSearch>& lineSearch
      =\n                                            ext::shared_ptr<LineSearch>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/steepestdescent.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::SteepestDescent::SteepestDescent
    functionSourceFile: /src/quantlib/ql/math/optimization/steepestdescent.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void SteepestDescent(const ext::shared_ptr<LineSearch>& lineSearch
      =\n                                            ext::shared_ptr<LineSearch>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::Norm2
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' vertices'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::computeSimplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QuantLib::Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real computeSimplexSize (const std::vector<Array>& vertices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::Norm2
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' vertices'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::computeSimplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QuantLib::Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real computeSimplexSize (const std::vector<Array>& vertices)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:60,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:66,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:70,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ' P'
    - iHighest
    - factor
    argTypes:
    - Problem
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 78
    functionName: QuantLib::Simplex::extrapolate
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - size
    - constraint
    - std::fabs
    - value
    linkageType: ''
    returnType: Real
    signature: "Real Simplex::extrapolate(Problem& P,\n                              Size
      iHighest,\n                              Real &factor) const"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: rootEpsilon
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:85,1
    - Dst: maxStationaryStateIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:87,1
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:89,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:91,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:92,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:93,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:98,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:99,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:103,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:108,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:111,1
    - Dst: computeSimplexSize
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:147,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:150,1
    - Dst: checkStationaryPoint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:151,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:153,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:156,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:157,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:162,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:165,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:166,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:170,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:171,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:176,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:183,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:186,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:187,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:191,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 192
    functionName: QuantLib::Simplex::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - value
    - std::vector<Array>
    - currentValue
    - reset
    - Array
    - maxStationaryStateIterations
    - constraint
    - QL_FAIL
    - checkStationaryPoint
    - Array::size
    - computeSimplexSize
    - std::fabs
    - setFunctionValue
    - QuantLib::Simplex::extrapolate
    - rootEpsilon
    - checkMaxIterations
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type Simplex::minimize(Problem& P,\n                                        const
      EndCriteria& endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::Norm2
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' vertices'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::computeSimplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QuantLib::Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real computeSimplexSize (const std::vector<Array>& vertices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:44,1
    - Dst: QuantLib::Norm2
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' vertices'
    argTypes:
    - std::vector<Array>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: QuantLib::computeSimplexSize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - QuantLib::Norm2
    - Real
    - front
    linkageType: ''
    returnType: Real
    signature: Real computeSimplexSize (const std::vector<Array>& vertices)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:60,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:66,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:70,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ' P'
    - iHighest
    - factor
    argTypes:
    - Problem
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 78
    functionName: QuantLib::Simplex::extrapolate
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 1
    functionsReached:
    - size
    - constraint
    - std::fabs
    - value
    linkageType: ''
    returnType: Real
    signature: "Real Simplex::extrapolate(Problem& P,\n                              Size
      iHighest,\n                              Real &factor) const"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: rootEpsilon
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:85,1
    - Dst: maxStationaryStateIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:87,1
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:89,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:91,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:92,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:93,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:98,1
    - Dst: std::vector<Array>
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:99,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:103,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:108,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:111,1
    - Dst: computeSimplexSize
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:147,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:150,1
    - Dst: checkStationaryPoint
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:151,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:153,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:156,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:157,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:162,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:165,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:166,1
    - Dst: QuantLib::Simplex::extrapolate
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:170,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:171,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:176,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:183,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:186,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:187,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/simplex.cpp:191,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 192
    functionName: QuantLib::Simplex::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/simplex.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - value
    - std::vector<Array>
    - currentValue
    - reset
    - Array
    - maxStationaryStateIterations
    - constraint
    - QL_FAIL
    - checkStationaryPoint
    - Array::size
    - computeSimplexSize
    - std::fabs
    - setFunctionValue
    - QuantLib::Simplex::extrapolate
    - rootEpsilon
    - checkMaxIterations
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type Simplex::minimize(Problem& P,\n                                        const
      EndCriteria& endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::ArmijoLineSearch::ArmijoLineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/armijo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArmijoLineSearch(Real eps = 1e-8,\n                         Real
      alpha = 0.05,\n                         Real beta = 0.65)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::ArmijoLineSearch::ArmijoLineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/armijo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArmijoLineSearch(Real eps = 1e-8,\n                         Real
      alpha = 0.05,\n                         Real beta = 0.65)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:190,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:203,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - int
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 209
    functionName: QuantLib::MINPACK::enorm
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real enorm(int n,Real* x)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionName: QuantLib::MINPACK::dmax1
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dmax1(Real a,Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 226
    functionName: QuantLib::MINPACK::dmin1
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dmin1(Real a,Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: QuantLib::MINPACK::min0
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int min0(int a,int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - m
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: QuantLib::MINPACK::mod
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int mod( int k, int m )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:347,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:348,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:352,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:356,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 9
    argNames:
    - m
    - n
    - x
    - fvec
    - fjac
    - iflag
    - epsfcn
    - wa
    - ' fcn'
    argTypes:
    - int
    - int
    - Real*
    - Real*
    - Real*
    - int*
    - Real
    - Real*
    - QuantLib::MINPACK::LmdifCostFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 368
    functionName: QuantLib::MINPACK::fdjac2
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - fcn
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void fdjac2(int m,\n            int n,\n            Real* x,\n            const
      Real* fvec,\n            Real* fjac,\n            int,\n            int* iflag,\n
      \           Real epsfcn,\n            Real* wa,\n            const QuantLib::MINPACK::LmdifCostFunction&
      fcn)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:465,1
    - Dst: QuantLib::MINPACK::min0
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:475,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:514,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:556,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:557,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:561,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 87
    argCount: 8
    argNames:
    - m
    - n
    - a
    - pivot
    - ipvt
    - rdiag
    - acnorm
    - wa
    argTypes:
    - int
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 574
    functionName: QuantLib::MINPACK::qrfac
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::min0
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void qrfac(int m,int n,Real* a,int,int pivot,int* ipvt,\n      int,Real*
      rdiag,Real* acnorm,Real* wa)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:720,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:720,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:723,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:729,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 86
    argCount: 9
    argNames:
    - n
    - r
    - ldr
    - ipvt
    - diag
    - qtb
    - x
    - sdiag
    - wa
    argTypes:
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 808
    functionName: QuantLib::MINPACK::qrsolv
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void qrsolv(int n,\n            Real* r,\n            int ldr,\n            const
      int* ipvt,\n            const Real* diag,\n            const Real* qtb,\n            Real*
      x,\n            Real* sdiag,\n            Real* wa)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:975,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1011,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1031,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1034,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1039,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1040,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1052,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1053,1
    - Dst: QuantLib::MINPACK::qrsolv
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1056,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1059,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1067,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1096,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1102,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1104,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1108,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 130
    argCount: 12
    argNames:
    - n
    - r
    - ldr
    - ipvt
    - diag
    - qtb
    - delta
    - par
    - x
    - sdiag
    - wa1
    - wa2
    argTypes:
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 1123
    functionName: QuantLib::MINPACK::lmpar
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::dmin1
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::qrsolv
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void lmpar(int n,\n           Real* r,\n           int ldr,\n           int*
      ipvt,\n           const Real* diag,\n           Real* qtb,\n           Real
      delta,\n           Real* par,\n           Real* x,\n           Real* sdiag,\n
      \          Real* wa1,\n           Real* wa2)"
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1357,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1361,1
    - Dst: QuantLib::MINPACK::fdjac2
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1378,1
    - Dst: jacFcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1380,1
    - Dst: QuantLib::MINPACK::mod
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1390,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1392,1
    - Dst: QuantLib::MINPACK::qrfac
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1400,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1424,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1481,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1481,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1500,1
    - Dst: QuantLib::MINPACK::lmpar
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1510,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1520,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1525,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1530,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1534,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1562,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1563,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1585,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1611,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1618,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1624,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1636,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1664,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 206
    argCount: 25
    argNames:
    - m
    - n
    - x
    - fvec
    - ftol
    - xtol
    - gtol
    - maxfev
    - epsfcn
    - diag
    - mode
    - factor
    - nprint
    - info
    - nfev
    - fjac
    - ldfjac
    - ipvt
    - qtf
    - wa1
    - wa2
    - wa3
    - wa4
    - ' fcn'
    - ' jacFcn'
    argTypes:
    - int
    - int
    - Real*
    - Real*
    - Real
    - Real
    - Real
    - int
    - Real
    - Real*
    - int
    - Real
    - int
    - int*
    - int*
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    - QuantLib::MINPACK::LmdifCostFunction
    - QuantLib::MINPACK::LmdifCostFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1130
    functionDepth: 2
    functionLinenumber: 1130
    functionLinenumberEnd: 1668
    functionName: QuantLib::MINPACK::lmdif
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::dmin1
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::mod
    - jacFcn
    - QuantLib::MINPACK::fdjac2
    - std::fabs
    - fcn
    - QuantLib::MINPACK::lmpar
    - std::sqrt
    - QuantLib::MINPACK::qrfac
    linkageType: ''
    returnType: void
    signature: "void lmdif(int m,int n,Real* x,Real* fvec,Real ftol,\n      Real xtol,Real
      gtol,int maxfev,Real epsfcn,\n      Real* diag, int mode, Real factor,\n      int
      nprint, int* info,int* nfev,Real* fjac,\n      int ldfjac,int* ipvt,Real* qtf,\n
      \     Real* wa1,Real* wa2,Real* wa3,Real* wa4,\n      const QuantLib::MINPACK::LmdifCostFunction&
      fcn,\n      const QuantLib::MINPACK::LmdifCostFunction& jacFcn)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:190,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:203,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - int
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 209
    functionName: QuantLib::MINPACK::enorm
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 3
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real enorm(int n,Real* x)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionName: QuantLib::MINPACK::dmax1
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dmax1(Real a,Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 226
    functionName: QuantLib::MINPACK::dmin1
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dmin1(Real a,Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: QuantLib::MINPACK::min0
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int min0(int a,int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - m
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: QuantLib::MINPACK::mod
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int mod( int k, int m )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:347,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:348,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:352,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:356,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 9
    argNames:
    - m
    - n
    - x
    - fvec
    - fjac
    - iflag
    - epsfcn
    - wa
    - ' fcn'
    argTypes:
    - int
    - int
    - Real*
    - Real*
    - Real*
    - int*
    - Real
    - Real*
    - QuantLib::MINPACK::LmdifCostFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 368
    functionName: QuantLib::MINPACK::fdjac2
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - fcn
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void fdjac2(int m,\n            int n,\n            Real* x,\n            const
      Real* fvec,\n            Real* fjac,\n            int,\n            int* iflag,\n
      \           Real epsfcn,\n            Real* wa,\n            const QuantLib::MINPACK::LmdifCostFunction&
      fcn)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:465,1
    - Dst: QuantLib::MINPACK::min0
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:475,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:514,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:556,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:557,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:561,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 87
    argCount: 8
    argNames:
    - m
    - n
    - a
    - pivot
    - ipvt
    - rdiag
    - acnorm
    - wa
    argTypes:
    - int
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 574
    functionName: QuantLib::MINPACK::qrfac
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::min0
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void qrfac(int m,int n,Real* a,int,int pivot,int* ipvt,\n      int,Real*
      rdiag,Real* acnorm,Real* wa)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:720,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:720,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:723,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:729,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 86
    argCount: 9
    argNames:
    - n
    - r
    - ldr
    - ipvt
    - diag
    - qtb
    - x
    - sdiag
    - wa
    argTypes:
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 808
    functionName: QuantLib::MINPACK::qrsolv
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void qrsolv(int n,\n            Real* r,\n            int ldr,\n            const
      int* ipvt,\n            const Real* diag,\n            const Real* qtb,\n            Real*
      x,\n            Real* sdiag,\n            Real* wa)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:975,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1011,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1031,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1034,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1039,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1040,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1052,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1053,1
    - Dst: QuantLib::MINPACK::qrsolv
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1056,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1059,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1067,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1096,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1102,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1104,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1108,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 130
    argCount: 12
    argNames:
    - n
    - r
    - ldr
    - ipvt
    - diag
    - qtb
    - delta
    - par
    - x
    - sdiag
    - wa1
    - wa2
    argTypes:
    - int
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 1123
    functionName: QuantLib::MINPACK::lmpar
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::dmin1
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::qrsolv
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void lmpar(int n,\n           Real* r,\n           int ldr,\n           int*
      ipvt,\n           const Real* diag,\n           Real* qtb,\n           Real
      delta,\n           Real* par,\n           Real* x,\n           Real* sdiag,\n
      \          Real* wa1,\n           Real* wa2)"
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1357,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1361,1
    - Dst: QuantLib::MINPACK::fdjac2
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1378,1
    - Dst: jacFcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1380,1
    - Dst: QuantLib::MINPACK::mod
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1390,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1392,1
    - Dst: QuantLib::MINPACK::qrfac
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1400,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1424,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1481,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1481,1
    - Dst: QuantLib::MINPACK::dmax1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1500,1
    - Dst: QuantLib::MINPACK::lmpar
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1510,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1520,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1525,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1530,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1534,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1562,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1563,1
    - Dst: QuantLib::MINPACK::dmin1
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1585,1
    - Dst: QuantLib::MINPACK::enorm
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1611,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1618,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1624,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1636,1
    - Dst: fcn
      Src: /src/quantlib/ql/math/optimization/lmdif.cpp:1664,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 206
    argCount: 25
    argNames:
    - m
    - n
    - x
    - fvec
    - ftol
    - xtol
    - gtol
    - maxfev
    - epsfcn
    - diag
    - mode
    - factor
    - nprint
    - info
    - nfev
    - fjac
    - ldfjac
    - ipvt
    - qtf
    - wa1
    - wa2
    - wa3
    - wa4
    - ' fcn'
    - ' jacFcn'
    argTypes:
    - int
    - int
    - Real*
    - Real*
    - Real
    - Real
    - Real
    - int
    - Real
    - Real*
    - int
    - Real
    - int
    - int*
    - int*
    - Real*
    - int
    - int*
    - Real*
    - Real*
    - Real*
    - Real*
    - Real*
    - QuantLib::MINPACK::LmdifCostFunction
    - QuantLib::MINPACK::LmdifCostFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1130
    functionDepth: 2
    functionLinenumber: 1130
    functionLinenumberEnd: 1668
    functionName: QuantLib::MINPACK::lmdif
    functionSourceFile: /src/quantlib/ql/math/optimization/lmdif.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MINPACK::dmax1
    - QuantLib::MINPACK::dmin1
    - QuantLib::MINPACK::enorm
    - QuantLib::MINPACK::mod
    - jacFcn
    - QuantLib::MINPACK::fdjac2
    - std::fabs
    - fcn
    - QuantLib::MINPACK::lmpar
    - std::sqrt
    - QuantLib::MINPACK::qrfac
    linkageType: ''
    returnType: void
    signature: "void lmdif(int m,int n,Real* x,Real* fvec,Real ftol,\n      Real xtol,Real
      gtol,int maxfev,Real epsfcn,\n      Real* diag, int mode, Real factor,\n      int
      nprint, int* info,int* nfev,Real* fjac,\n      int ldfjac,int* ipvt,Real* qtf,\n
      \     Real* wa1,Real* wa2,Real* wa3,Real* wa4,\n      const QuantLib::MINPACK::LmdifCostFunction&
      fcn,\n      const QuantLib::MINPACK::LmdifCostFunction& jacFcn)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~Projection()
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Projection()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~Projection()
    functionSourceFile: /src/quantlib/ql/math/optimization/projection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Projection()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:30,1
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:32,1
    - Dst: ArmijoLineSearch::ArmijoLineSearch
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - lineSearch
    argTypes:
    - ext::shared_ptr<LineSearch>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::LineSearchBasedMethod::LineSearchBasedMethod
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    - ArmijoLineSearch::ArmijoLineSearch
    - std::move
    linkageType: ''
    returnType: void
    signature: void LineSearchBasedMethod::LineSearchBasedMethod(ext::shared_ptr<LineSearch>
      lineSearch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:39,1
    - Dst: maxStationaryStateIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:41,1
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:43,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:44,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:57,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:60,1
    - Dst: valueAndGradient
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:60,1
    - Dst: setGradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:61,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:61,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:62,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:69,1
    - Dst: succeed
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:73,1
    - Dst: lastX
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:78,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:80,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:81,1
    - Dst: lastFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:81,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:85,1
    - Dst: setGradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:86,1
    - Dst: lastGradientNorm2
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:86,1
    - Dst: getUpdatedDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:89,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:91,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:92,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:95,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:96,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:97,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:99,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:100,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:102,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:105,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 114
    functionName: QuantLib::LineSearchBasedMethod::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp
    functionUses: 0
    functionsReached:
    - lastFunctionValue
    - setCurrentValue
    - searchDirection
    - currentValue
    - lastGradientNorm2
    - gradientNormValue
    - succeed
    - Array
    - std::fabs
    - valueAndGradient
    - getUpdatedDirection
    - setFunctionValue
    - lastGradient
    - checkMaxIterations
    - lastX
    - functionEpsilon
    - reset
    - maxStationaryStateIterations
    - functionValue
    - Array::size
    - DotProduct
    - checkStationaryFunctionValue
    - setGradientNormValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type LineSearchBasedMethod::minimize(Problem& P,\n                                    const
      EndCriteria& endCriteria)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:30,1
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:32,1
    - Dst: ArmijoLineSearch::ArmijoLineSearch
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - lineSearch
    argTypes:
    - ext::shared_ptr<LineSearch>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::LineSearchBasedMethod::LineSearchBasedMethod
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    - ArmijoLineSearch::ArmijoLineSearch
    - std::move
    linkageType: ''
    returnType: void
    signature: void LineSearchBasedMethod::LineSearchBasedMethod(ext::shared_ptr<LineSearch>
      lineSearch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: functionEpsilon
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:39,1
    - Dst: maxStationaryStateIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:41,1
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:43,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:44,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:47,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:57,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:60,1
    - Dst: valueAndGradient
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:60,1
    - Dst: setGradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:61,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:61,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:62,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:69,1
    - Dst: succeed
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:73,1
    - Dst: lastX
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:78,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:80,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:81,1
    - Dst: lastFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:81,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:85,1
    - Dst: setGradientNormValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:86,1
    - Dst: lastGradientNorm2
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:86,1
    - Dst: getUpdatedDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:89,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:91,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:92,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:95,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:96,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:97,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:99,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:100,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:102,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:105,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 2
    argNames:
    - ' P'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 114
    functionName: QuantLib::LineSearchBasedMethod::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/linesearchbasedmethod.cpp
    functionUses: 0
    functionsReached:
    - lastFunctionValue
    - setCurrentValue
    - searchDirection
    - currentValue
    - lastGradientNorm2
    - gradientNormValue
    - succeed
    - Array
    - std::fabs
    - valueAndGradient
    - getUpdatedDirection
    - setFunctionValue
    - lastGradient
    - checkMaxIterations
    - lastX
    - functionEpsilon
    - reset
    - maxStationaryStateIterations
    - functionValue
    - Array::size
    - DotProduct
    - checkStationaryFunctionValue
    - setGradientNormValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: "EndCriteria::Type LineSearchBasedMethod::minimize(Problem& P,\n                                    const
      EndCriteria& endCriteria)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:29,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:32,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:32,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:33,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:34,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:39,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:41,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:42,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:43,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:50,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:52,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:54,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:55,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:58,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:63,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:64,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:66,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:67,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:69,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:69,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:78,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:79,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:82,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:83,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - ' P'
    - ' oldGradient'
    argTypes:
    - Problem
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 87
    functionName: QuantLib::BFGS::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/bfgs.cpp
    functionUses: 0
    functionsReached:
    - searchDirection
    - currentValue
    - rows
    - Matrix
    - std::pow
    - std::sqrt
    - lastGradient
    linkageType: ''
    returnType: Array
    signature: "Array BFGS::getUpdatedDirection(const Problem& P,\n                                    Real,\n
      \                                   const Array& oldGradient)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:29,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:32,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:32,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:33,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:34,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:39,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:41,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:42,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:43,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:50,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:52,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:54,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:55,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:58,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:63,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:64,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:66,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:67,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:69,1
    - Dst: searchDirection
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:69,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:78,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:79,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:82,1
    - Dst: lastGradient
      Src: /src/quantlib/ql/math/optimization/bfgs.cpp:83,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - ' P'
    - ' oldGradient'
    argTypes:
    - Problem
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 87
    functionName: QuantLib::BFGS::getUpdatedDirection
    functionSourceFile: /src/quantlib/ql/math/optimization/bfgs.cpp
    functionUses: 0
    functionsReached:
    - searchDirection
    - currentValue
    - rows
    - Matrix
    - std::pow
    - std::sqrt
    - lastGradient
    linkageType: ''
    returnType: Array
    signature: "Array BFGS::getUpdatedDirection(const Problem& P,\n                                    Real,\n
      \                                   const Array& oldGradient)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:35,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:40,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:47,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 6
    argNames:
    - low
    - mid
    - high
    - tolerance
    - maxIt
    - ' objectiveFunction'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::BrentMinimize
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - objectiveFunction
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real BrentMinimize(Real low,\n                           Real mid,\n
      \                          Real high,\n                           Real tolerance,\n
      \                          Size maxIt,\n                           const F&
      objectiveFunction)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:35,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:40,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:47,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 6
    argNames:
    - low
    - mid
    - high
    - tolerance
    - maxIt
    - ' objectiveFunction'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::BrentMinimize
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - objectiveFunction
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real BrentMinimize(Real low,\n                           Real mid,\n
      \                          Real high,\n                           Real tolerance,\n
      \                          Size maxIt,\n                           const F&
      objectiveFunction)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:103,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 7
    argNames:
    - r
    - s
    - alpha
    - z1
    - z2
    - z3
    - zweight
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 108
    functionName: QuantLib::SphereCylinderOptimizer::SphereCylinderOptimizer
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SphereCylinderOptimizer::SphereCylinderOptimizer(Real r,\n                                                     Real
      s,\n                                                     Real alpha,\n                                                     Real
      z1,\n                                                     Real z2,\n                                                     Real
      z3,\n                                                     Real zweight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SphereCylinderOptimizer::isIntersectionNonEmpty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:121,1
    - Dst: BrentMinimize
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:123,1
    - Dst: QuantLib::SphereCylinderOptimizer::objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - maxIterations
    - tolerance
    - ' y1'
    - ' y2'
    - ' y3'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: QuantLib::SphereCylinderOptimizer::findClosest
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SphereCylinderOptimizer::objectiveFunction
    - std::sqrt
    - QuantLib::SphereCylinderOptimizer::findByProjection
    - BrentMinimize
    linkageType: ''
    returnType: void
    signature: "void SphereCylinderOptimizer::findClosest(Size maxIterations,\n                                              Real
      tolerance,\n                                              Real& y1,\n                                              Real&
      y2,\n                                              Real& y3) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x1
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 145
    functionName: QuantLib::SphereCylinderOptimizer::objectiveFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real SphereCylinderOptimizer::objectiveFunction(Real x1) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:151,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:158,1
    - Dst: QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - ' y1'
    - ' y2'
    - ' y3'
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 174
    functionName: QuantLib::SphereCylinderOptimizer::findByProjection
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: "bool SphereCylinderOptimizer::findByProjection(Real& y1,\n                                                   Real&
      y2,\n                                                   Real& y3) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:190,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:190,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:194,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 9
    argNames:
    - r
    - s
    - alpha
    - z1
    - z2
    - z3
    - maxIterations
    - tolerance
    - zweight
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 199
    functionName: QuantLib::sphereCylinderOptimizerClosest
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - SphereCylinderOptimizer::findByProjection
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> sphereCylinderOptimizerClosest(Real r,\n                                                     Real
      s,\n                                                     Real alpha,\n                                                     Real
      z1,\n                                                     Real z2,\n                                                     Real
      z3,\n                                                     Natural maxIterations,\n
      \                                                    Real tolerance,\n                                                     Real
      zweight)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:35,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:40,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:47,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 6
    argNames:
    - low
    - mid
    - high
    - tolerance
    - maxIt
    - ' objectiveFunction'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::BrentMinimize
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - objectiveFunction
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real BrentMinimize(Real low,\n                           Real mid,\n
      \                          Real high,\n                           Real tolerance,\n
      \                          Size maxIt,\n                           const F&
      objectiveFunction)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:35,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:40,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:47,1
    - Dst: objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 6
    argNames:
    - low
    - mid
    - high
    - tolerance
    - maxIt
    - ' objectiveFunction'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Size
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: QuantLib::BrentMinimize
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - objectiveFunction
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real BrentMinimize(Real low,\n                           Real mid,\n
      \                          Real high,\n                           Real tolerance,\n
      \                          Size maxIt,\n                           const F&
      objectiveFunction)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:103,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 7
    argNames:
    - r
    - s
    - alpha
    - z1
    - z2
    - z3
    - zweight
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 108
    functionName: QuantLib::SphereCylinderOptimizer::SphereCylinderOptimizer
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SphereCylinderOptimizer::SphereCylinderOptimizer(Real r,\n                                                     Real
      s,\n                                                     Real alpha,\n                                                     Real
      z1,\n                                                     Real z2,\n                                                     Real
      z3,\n                                                     Real zweight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SphereCylinderOptimizer::isIntersectionNonEmpty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:121,1
    - Dst: BrentMinimize
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:123,1
    - Dst: QuantLib::SphereCylinderOptimizer::objectiveFunction
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:125,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - maxIterations
    - tolerance
    - ' y1'
    - ' y2'
    - ' y3'
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: QuantLib::SphereCylinderOptimizer::findClosest
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SphereCylinderOptimizer::objectiveFunction
    - std::sqrt
    - QuantLib::SphereCylinderOptimizer::findByProjection
    - BrentMinimize
    linkageType: ''
    returnType: void
    signature: "void SphereCylinderOptimizer::findClosest(Size maxIterations,\n                                              Real
      tolerance,\n                                              Real& y1,\n                                              Real&
      y2,\n                                              Real& y3) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x1
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 145
    functionName: QuantLib::SphereCylinderOptimizer::objectiveFunction
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real SphereCylinderOptimizer::objectiveFunction(Real x1) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:151,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:158,1
    - Dst: QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - ' y1'
    - ' y2'
    - ' y3'
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 174
    functionName: QuantLib::SphereCylinderOptimizer::findByProjection
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SphereCylinderOptimizer::isIntersectionNonEmpty
    - std::sqrt
    linkageType: ''
    returnType: bool
    signature: "bool SphereCylinderOptimizer::findByProjection(Real& y1,\n                                                   Real&
      y2,\n                                                   Real& y3) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:190,1
    - Dst: SphereCylinderOptimizer::isIntersectionNonEmpty
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:190,1
    - Dst: SphereCylinderOptimizer::findByProjection
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:194,1
    - Dst: SphereCylinderOptimizer::findClosest
      Src: /src/quantlib/ql/math/optimization/spherecylinder.cpp:196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 9
    argNames:
    - r
    - s
    - alpha
    - z1
    - z2
    - z3
    - maxIterations
    - tolerance
    - zweight
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 199
    functionName: QuantLib::sphereCylinderOptimizerClosest
    functionSourceFile: /src/quantlib/ql/math/optimization/spherecylinder.cpp
    functionUses: 0
    functionsReached:
    - SphereCylinderOptimizer::findClosest
    - SphereCylinderOptimizer::isIntersectionNonEmpty
    - SphereCylinderOptimizer::findByProjection
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> sphereCylinderOptimizerClosest(Real r,\n                                                     Real
      s,\n                                                     Real alpha,\n                                                     Real
      z1,\n                                                     Real z2,\n                                                     Real
      z3,\n                                                     Natural maxIterations,\n
      \                                                    Real tolerance,\n                                                     Real
      zweight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::GoldsteinLineSearch::GoldsteinLineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/goldstein.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GoldsteinLineSearch(Real eps = 1e-8,\n                            Real
      alpha = 0.05,\n                            Real beta = 0.65,\n                            Real
      extrapolation = 1.5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::GoldsteinLineSearch::GoldsteinLineSearch
    functionSourceFile: /src/quantlib/ql/math/optimization/goldstein.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GoldsteinLineSearch(Real eps = 1e-8,\n                            Real
      alpha = 0.05,\n                            Real beta = 0.65,\n                            Real
      extrapolation = 1.5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::LevenbergMarquardt::getInfo
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer getInfo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevenbergMarquardt::fcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fvec
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::LevenbergMarquardt::fcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::LevenbergMarquardt::fcn
    linkageType: ''
    returnType: void
    signature: void fcn(int m, int n, Real* x, Real* fvec, int*)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevenbergMarquardt::jacFcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fjac
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::LevenbergMarquardt::jacFcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::LevenbergMarquardt::jacFcn
    linkageType: ''
    returnType: void
    signature: void jacFcn(int m, int n, Real* x, Real* fjac, int*)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::LevenbergMarquardt::getInfo
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer getInfo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevenbergMarquardt::fcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fvec
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::LevenbergMarquardt::fcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LevenbergMarquardt::fcn
    linkageType: ''
    returnType: void
    signature: void fcn(int m, int n, Real* x, Real* fvec, int*)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevenbergMarquardt::jacFcn
      Src: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - m
    - n
    - x
    - fjac
    argTypes:
    - int
    - int
    - Real*
    - Real*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::LevenbergMarquardt::jacFcn
    functionSourceFile: /src/quantlib/ql/math/optimization/levenbergmarquardt.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LevenbergMarquardt::jacFcn
    linkageType: ''
    returnType: void
    signature: void jacFcn(int m, int n, Real* x, Real* fjac, int*)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/conjugategradient.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::ConjugateGradient::ConjugateGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/conjugategradient.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void ConjugateGradient(const ext::shared_ptr<LineSearch>& lineSearch
      =\n                                            ext::shared_ptr<LineSearch>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/conjugategradient.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::ConjugateGradient::ConjugateGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/conjugategradient.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void ConjugateGradient(const ext::shared_ptr<LineSearch>& lineSearch
      =\n                                            ext::shared_ptr<LineSearch>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/problem.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/problem.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/problem.hpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/problem.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' costFunction'
    - ' constraint'
    argTypes:
    - CostFunction
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Problem::Problem
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - Array
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Problem(CostFunction& costFunction, Constraint& constraint, Array
      initialValue = Array())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& constraint() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & constraint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& costFunction() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CostFunction
    signature: CostFunction & costFunction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/problem.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - currentValue
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::Problem::setCurrentValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void setCurrentValue(Array currentValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& currentValue() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & currentValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - functionValue
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::Problem::setFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setFunctionValue(Real functionValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Problem::functionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real functionValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - squaredNorm
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Problem::setGradientNormValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setGradientNormValue(Real squaredNorm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::Problem::gradientNormValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gradientNormValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::Problem::functionEvaluation
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer functionEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::Problem::gradientEvaluation
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer gradientEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::value
      Src: /src/quantlib/ql/math/optimization/problem.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::Problem::value
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Problem::value
    linkageType: ''
    returnType: Real
    signature: Real Problem::value(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::values
      Src: /src/quantlib/ql/math/optimization/problem.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::Problem::values
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Problem::values
    linkageType: ''
    returnType: Array
    signature: Array Problem::values(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::gradient
      Src: /src/quantlib/ql/math/optimization/problem.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::Problem::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Problem::gradient
    linkageType: ''
    returnType: void
    signature: "void Problem::gradient(Array& grad_f,\n                                  const
      Array& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::valueAndGradient
      Src: /src/quantlib/ql/math/optimization/problem.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: QuantLib::Problem::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Problem::valueAndGradient
    linkageType: ''
    returnType: Real
    signature: "Real Problem::valueAndGradient(Array& grad_f,\n                                          const
      Array& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/optimization/problem.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::Problem::reset
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void Problem::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/problem.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/problem.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/problem.hpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/problem.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' costFunction'
    - ' constraint'
    argTypes:
    - CostFunction
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Problem::Problem
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - Array
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Problem(CostFunction& costFunction, Constraint& constraint, Array
      initialValue = Array())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& constraint() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & constraint() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: '& costFunction() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CostFunction
    signature: CostFunction & costFunction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/optimization/problem.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - currentValue
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::Problem::setCurrentValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void setCurrentValue(Array currentValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& currentValue() const'
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & currentValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - functionValue
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::Problem::setFunctionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setFunctionValue(Real functionValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Problem::functionValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real functionValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - squaredNorm
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Problem::setGradientNormValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setGradientNormValue(Real squaredNorm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::Problem::gradientNormValue
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gradientNormValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::Problem::functionEvaluation
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer functionEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::Problem::gradientEvaluation
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer gradientEvaluation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::value
      Src: /src/quantlib/ql/math/optimization/problem.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::Problem::value
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Problem::value
    linkageType: ''
    returnType: Real
    signature: Real Problem::value(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::values
      Src: /src/quantlib/ql/math/optimization/problem.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::Problem::values
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Problem::values
    linkageType: ''
    returnType: Array
    signature: Array Problem::values(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::gradient
      Src: /src/quantlib/ql/math/optimization/problem.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::Problem::gradient
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Problem::gradient
    linkageType: ''
    returnType: void
    signature: "void Problem::gradient(Array& grad_f,\n                                  const
      Array& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Problem::valueAndGradient
      Src: /src/quantlib/ql/math/optimization/problem.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' grad_f'
    - ' x'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: QuantLib::Problem::valueAndGradient
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Problem::valueAndGradient
    linkageType: ''
    returnType: Real
    signature: "Real Problem::valueAndGradient(Array& grad_f,\n                                          const
      Array& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/optimization/problem.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::Problem::reset
    functionSourceFile: /src/quantlib/ql/math/optimization/problem.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void Problem::reset()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:31,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:37,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:44,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:47,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:47,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:49,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:50,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:52,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:62,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:68,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:69,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:72,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:73,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:75,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:85,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:87,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - ' P'
    - ' ecType'
    - ' endCriteria'
    - t_ini
    argTypes:
    - Problem
    - EndCriteria::Type
    - EndCriteria
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 91
    functionName: "GoldsteinLineSearch::operator()(Problem& P, \n                                         EndCriteria::Type&
      ecType, \n                                         const EndCriteria& endCriteria,
      \n                                         const Real t_ini)"
    functionSourceFile: /src/quantlib/ql/math/optimization/goldstein.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - currentValue
    - gradientNormValue
    - Array
    - functionValue
    - update
    - DotProduct
    - gradient
    - constraint
    - checkMaxIterations
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real GoldsteinLineSearch::operator()(Problem& P, \n                                         EndCriteria::Type&
      ecType, \n                                         const EndCriteria& endCriteria,
      \n                                         const Real t_ini)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:31,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:37,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:44,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:47,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:47,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:49,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:50,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:52,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:62,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:68,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:69,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:72,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:73,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:75,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:85,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/goldstein.cpp:87,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - ' P'
    - ' ecType'
    - ' endCriteria'
    - t_ini
    argTypes:
    - Problem
    - EndCriteria::Type
    - EndCriteria
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 91
    functionName: "GoldsteinLineSearch::operator()(Problem& P, \n                                         EndCriteria::Type&
      ecType, \n                                         const EndCriteria& endCriteria,
      \n                                         const Real t_ini)"
    functionSourceFile: /src/quantlib/ql/math/optimization/goldstein.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - currentValue
    - gradientNormValue
    - Array
    - functionValue
    - update
    - DotProduct
    - gradient
    - constraint
    - checkMaxIterations
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real GoldsteinLineSearch::operator()(Problem& P, \n                                         EndCriteria::Type&
      ecType, \n                                         const EndCriteria& endCriteria,
      \n                                         const Real t_ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/bfgs.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::BFGS::BFGS
    functionSourceFile: /src/quantlib/ql/math/optimization/bfgs.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void BFGS(const ext::shared_ptr<LineSearch>& lineSearch =\n                                              ext::shared_ptr<LineSearch>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<LineSearch>
      Src: /src/quantlib/ql/math/optimization/bfgs.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::BFGS::BFGS
    functionSourceFile: /src/quantlib/ql/math/optimization/bfgs.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<LineSearch>
    linkageType: ''
    returnType: void
    signature: "void BFGS(const ext::shared_ptr<LineSearch>& lineSearch =\n                                              ext::shared_ptr<LineSearch>())"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:32,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:38,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:42,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:42,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:45,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:45,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:48,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:50,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:61,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:62,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:65,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:66,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:68,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:79,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ' P'
    - ' ecType'
    - ' endCriteria'
    - t_ini
    argTypes:
    - Problem
    - EndCriteria::Type
    - EndCriteria
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 85
    functionName: "ArmijoLineSearch::operator()(Problem& P,\n                                      EndCriteria::Type&
      ecType,\n                                      const EndCriteria& endCriteria,\n
      \                                     const Real t_ini)"
    functionSourceFile: /src/quantlib/ql/math/optimization/armijo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - currentValue
    - gradientNormValue
    - Array
    - functionValue
    - update
    - DotProduct
    - gradient
    - constraint
    - checkMaxIterations
    linkageType: ''
    returnType: Real
    signature: "Real ArmijoLineSearch::operator()(Problem& P,\n                                      EndCriteria::Type&
      ecType,\n                                      const EndCriteria& endCriteria,\n
      \                                     const Real t_ini)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:32,1
    - Dst: functionValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:38,1
    - Dst: gradientNormValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:42,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:42,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:45,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:45,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:48,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:50,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:61,1
    - Dst: update
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:62,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:65,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:66,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:68,1
    - Dst: gradient
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:79,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/optimization/armijo.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ' P'
    - ' ecType'
    - ' endCriteria'
    - t_ini
    argTypes:
    - Problem
    - EndCriteria::Type
    - EndCriteria
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 85
    functionName: "ArmijoLineSearch::operator()(Problem& P,\n                                      EndCriteria::Type&
      ecType,\n                                      const EndCriteria& endCriteria,\n
      \                                     const Real t_ini)"
    functionSourceFile: /src/quantlib/ql/math/optimization/armijo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - currentValue
    - gradientNormValue
    - Array
    - functionValue
    - update
    - DotProduct
    - gradient
    - constraint
    - checkMaxIterations
    linkageType: ''
    returnType: Real
    signature: "Real ArmijoLineSearch::operator()(Problem& P,\n                                      EndCriteria::Type&
      ecType,\n                                      const EndCriteria& endCriteria,\n
      \                                     const Real t_ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' left'
    - ' right'
    argTypes:
    - DifferentialEvolution::Candidate
    - DifferentialEvolution::Candidate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: "operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:39,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - begin
    - end
    - ' rng'
    argTypes:
    - I
    - I
    - MersenneTwisterUniformRng
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::randomize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::swap
    - nextInt32
    linkageType: ''
    returnType: void
    signature: "void randomize(I begin, I end,\n                       const MersenneTwisterUniformRng&
      rng)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' left'
    - ' right'
    argTypes:
    - DifferentialEvolution::Candidate
    - DifferentialEvolution::Candidate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: "operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:39,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - begin
    - end
    - ' rng'
    argTypes:
    - I
    - I
    - MersenneTwisterUniformRng
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::randomize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::swap
    - nextInt32
    linkageType: ''
    returnType: void
    signature: "void randomize(I begin, I end,\n                       const MersenneTwisterUniformRng&
      rng)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:49,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:51,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:52,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:56,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:58,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:59,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:67,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:67,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:68,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:71,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:71,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:73,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:77,1
    - Dst: std::vector<Candidate>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:80,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:80,1
    - Dst: QuantLib::DifferentialEvolution::Candidate
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:81,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:81,1
    - Dst: QuantLib::DifferentialEvolution::fillInitialPopulation
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:82,1
    - Dst: std::partial_sort
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: sort_by_cost
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:86,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:87,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:88,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:92,1
    - Dst: QuantLib::DifferentialEvolution::calculateNextGeneration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:93,1
    - Dst: std::partial_sort
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: sort_by_cost
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:95,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:96,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:97,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:98,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:99,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:104,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:105,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - ' p'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 107
    functionName: QuantLib::DifferentialEvolution::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - sort_by_cost
    - currentValue
    - QuantLib::DifferentialEvolution::Candidate
    - std::partial_sort
    - std::vector::resize
    - configuration
    - empty
    - Array
    - values::size
    - size
    - std::vector::front
    - QuantLib::DifferentialEvolution::fillInitialPopulation
    - costFunction
    - QuantLib::DifferentialEvolution::calculateNextGeneration
    - setFunctionValue
    - constraint
    - std::vector::size
    - checkMaxIterations
    - QL_REQUIRE
    - std::vector::begin
    - reset
    - std::vector::end
    - std::vector<Candidate>
    - checkStationaryFunctionValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type DifferentialEvolution::minimize(Problem& p, const
      EndCriteria& endCriteria)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:116,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:126,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:128,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:140,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:142,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:146,1
    - Dst: std::vector<Candidate>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:148,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:158,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:160,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:162,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:178,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:178,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:180,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:194,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:194,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:196,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:212,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:214,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:219,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: QuantLib::DifferentialEvolution::adaptSizeWeights
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:239,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:240,1
    - Dst: QuantLib::DifferentialEvolution::rotateArray
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:241,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:252,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:253,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:253,1
    - Dst: QuantLib::DifferentialEvolution::crossover
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:256,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 88
    argCount: 2
    argNames:
    - ' population'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 257
    functionName: QuantLib::DifferentialEvolution::calculateNextGeneration
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::DifferentialEvolution::rotateArray
    - configuration
    - QuantLib::DifferentialEvolution::adaptSizeWeights
    - Array
    - Integer
    - begin
    - std::vector<Candidate>
    - values::size
    - nextReal
    - QL_FAIL
    - randomize
    - size
    - QuantLib::DifferentialEvolution::crossover
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::calculateNextGeneration(\n                                     std::vector<Candidate>&
      population,\n                                     Problem& p) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:266,1
    - Dst: QuantLib::DifferentialEvolution::adaptCrossover
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:267,1
    - Dst: QuantLib::DifferentialEvolution::getMutationProbabilities
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:270,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:272,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: QuantLib::DifferentialEvolution::getCrossoverMask
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:275,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:278,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:282,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:283,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:286,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:291,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:298,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:302,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 5
    argNames:
    - ' oldPopulation'
    - ' population'
    - ' mutantPopulation'
    - ' mirrorPopulation'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - std::vector<Candidate>
    - std::vector<Candidate>
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 306
    functionName: QuantLib::DifferentialEvolution::crossover
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::DifferentialEvolution::getMutationProbabilities
    - configuration
    - QuantLib::DifferentialEvolution::getCrossoverMask
    - value
    - QuantLib::DifferentialEvolution::adaptCrossover
    - Array
    - values::size
    - nextReal
    - std::isfinite
    - size
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::crossover(\n                               const
      std::vector<Candidate>& oldPopulation,\n                               std::vector<Candidate>&
      population,\n                               const std::vector<Candidate>& mutantPopulation,\n
      \                              const std::vector<Candidate>& mirrorPopulation,\n
      \                              Problem& p) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:312,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:313,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ' crossoverMask'
    - ' invCrossoverMask'
    - ' mutationProbabilities'
    argTypes:
    - std::vector<Array>
    - std::vector<Array>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 321
    functionName: QuantLib::DifferentialEvolution::getCrossoverMask
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - size
    - nextReal
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::getCrossoverMask(\n                                  std::vector<Array>
      & crossoverMask,\n                                  std::vector<Array> & invCrossoverMask,\n
      \                                 const Array & mutationProbabilities) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:326,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:331,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:331,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:332,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:332,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:335,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:337,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:338,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:339,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:339,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:344,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:345,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:345,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' population'
    argTypes:
    - std::vector<Candidate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 349
    functionName: QuantLib::DifferentialEvolution::getMutationProbabilities
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - configuration
    - Integer
    - QL_FAIL
    - std::pow
    - size
    - front
    linkageType: ''
    returnType: Array
    signature: "Array DifferentialEvolution::getMutationProbabilities(\n                            const
      std::vector<Candidate> & population) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: QuantLib::DifferentialEvolution::rotateArray
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - randomize
    - Array::begin
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array DifferentialEvolution::rotateArray(Array a) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:365,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 368
    functionName: QuantLib::DifferentialEvolution::adaptSizeWeights
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution::adaptSizeWeights() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:373,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 376
    functionName: QuantLib::DifferentialEvolution::adaptCrossover
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution::adaptCrossover() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:383,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:383,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:386,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:387,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:389,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:391,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:392,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' population'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 395
    functionName: QuantLib::DifferentialEvolution::fillInitialPopulation
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 1
    functionsReached:
    - currentValue
    - costFunction
    - nextReal
    - std::isfinite
    - size
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::fillInitialPopulation(\n                                          std::vector<Candidate>
      & population,\n                                          const Problem& p) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' left'
    - ' right'
    argTypes:
    - DifferentialEvolution::Candidate
    - DifferentialEvolution::Candidate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: "operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:39,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - begin
    - end
    - ' rng'
    argTypes:
    - I
    - I
    - MersenneTwisterUniformRng
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::randomize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::swap
    - nextInt32
    linkageType: ''
    returnType: void
    signature: "void randomize(I begin, I end,\n                       const MersenneTwisterUniformRng&
      rng)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' left'
    - ' right'
    argTypes:
    - DifferentialEvolution::Candidate
    - DifferentialEvolution::Candidate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: "operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DifferentialEvolution::Candidate& left,\n                            const
      DifferentialEvolution::Candidate& right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:39,1
    - Dst: QuantLib::swap
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - begin
    - end
    - ' rng'
    argTypes:
    - I
    - I
    - MersenneTwisterUniformRng
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::randomize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::swap
    - nextInt32
    linkageType: ''
    returnType: void
    signature: "void randomize(I begin, I end,\n                       const MersenneTwisterUniformRng&
      rng)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:49,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:51,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:52,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:54,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:56,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:58,1
    - Dst: constraint
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:59,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:61,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:63,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:66,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:67,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:67,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:68,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:71,1
    - Dst: empty
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:71,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:72,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:73,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:75,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:77,1
    - Dst: std::vector<Candidate>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:80,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:80,1
    - Dst: QuantLib::DifferentialEvolution::Candidate
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:81,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:81,1
    - Dst: QuantLib::DifferentialEvolution::fillInitialPopulation
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:82,1
    - Dst: std::partial_sort
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:85,1
    - Dst: sort_by_cost
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:86,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:87,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:88,1
    - Dst: checkMaxIterations
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:92,1
    - Dst: QuantLib::DifferentialEvolution::calculateNextGeneration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:93,1
    - Dst: std::partial_sort
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:94,1
    - Dst: sort_by_cost
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:95,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:96,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:97,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:98,1
    - Dst: checkStationaryFunctionValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:99,1
    - Dst: setCurrentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:104,1
    - Dst: setFunctionValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:105,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - ' p'
    - ' endCriteria'
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 107
    functionName: QuantLib::DifferentialEvolution::minimize
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 0
    functionsReached:
    - setCurrentValue
    - sort_by_cost
    - currentValue
    - QuantLib::DifferentialEvolution::Candidate
    - std::partial_sort
    - std::vector::resize
    - configuration
    - empty
    - Array
    - values::size
    - size
    - std::vector::front
    - QuantLib::DifferentialEvolution::fillInitialPopulation
    - costFunction
    - QuantLib::DifferentialEvolution::calculateNextGeneration
    - setFunctionValue
    - constraint
    - std::vector::size
    - checkMaxIterations
    - QL_REQUIRE
    - std::vector::begin
    - reset
    - std::vector::end
    - std::vector<Candidate>
    - checkStationaryFunctionValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type DifferentialEvolution::minimize(Problem& p, const
      EndCriteria& endCriteria)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:116,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:119,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:121,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:123,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:126,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:128,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:135,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:137,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:140,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:142,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:146,1
    - Dst: std::vector<Candidate>
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:148,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:148,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:154,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:158,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:160,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:162,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:170,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:172,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:174,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:176,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:178,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:178,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:180,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:188,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:190,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:192,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:194,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:194,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:196,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:204,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:206,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:208,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:212,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:214,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:219,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:230,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:232,1
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:234,1
    - Dst: QuantLib::DifferentialEvolution::adaptSizeWeights
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:239,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:240,1
    - Dst: QuantLib::DifferentialEvolution::rotateArray
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:241,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:252,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:253,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:253,1
    - Dst: QuantLib::DifferentialEvolution::crossover
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:256,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 88
    argCount: 2
    argNames:
    - ' population'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 257
    functionName: QuantLib::DifferentialEvolution::calculateNextGeneration
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::DifferentialEvolution::rotateArray
    - configuration
    - QuantLib::DifferentialEvolution::adaptSizeWeights
    - Array
    - Integer
    - begin
    - std::vector<Candidate>
    - values::size
    - nextReal
    - QL_FAIL
    - randomize
    - size
    - QuantLib::DifferentialEvolution::crossover
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::calculateNextGeneration(\n                                     std::vector<Candidate>&
      population,\n                                     Problem& p) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:266,1
    - Dst: QuantLib::DifferentialEvolution::adaptCrossover
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:267,1
    - Dst: QuantLib::DifferentialEvolution::getMutationProbabilities
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:270,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:272,1
    - Dst: Array
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:273,1
    - Dst: QuantLib::DifferentialEvolution::getCrossoverMask
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:275,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:278,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:282,1
    - Dst: values::size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:283,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:286,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:291,1
    - Dst: value
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:298,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:302,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 5
    argNames:
    - ' oldPopulation'
    - ' population'
    - ' mutantPopulation'
    - ' mirrorPopulation'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - std::vector<Candidate>
    - std::vector<Candidate>
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 306
    functionName: QuantLib::DifferentialEvolution::crossover
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::DifferentialEvolution::getMutationProbabilities
    - configuration
    - QuantLib::DifferentialEvolution::getCrossoverMask
    - value
    - QuantLib::DifferentialEvolution::adaptCrossover
    - Array
    - values::size
    - nextReal
    - std::isfinite
    - size
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::crossover(\n                               const
      std::vector<Candidate>& oldPopulation,\n                               std::vector<Candidate>&
      population,\n                               const std::vector<Candidate>& mutantPopulation,\n
      \                              const std::vector<Candidate>& mirrorPopulation,\n
      \                              Problem& p) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:312,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:313,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ' crossoverMask'
    - ' invCrossoverMask'
    - ' mutationProbabilities'
    argTypes:
    - std::vector<Array>
    - std::vector<Array>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 321
    functionName: QuantLib::DifferentialEvolution::getCrossoverMask
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - size
    - nextReal
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::getCrossoverMask(\n                                  std::vector<Array>
      & crossoverMask,\n                                  std::vector<Array> & invCrossoverMask,\n
      \                                 const Array & mutationProbabilities) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:326,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:331,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:331,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:332,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:332,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:335,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:337,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:338,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:338,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:339,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:339,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:344,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:345,1
    - Dst: configuration
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:345,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' population'
    argTypes:
    - std::vector<Candidate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 349
    functionName: QuantLib::DifferentialEvolution::getMutationProbabilities
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - configuration
    - Integer
    - QL_FAIL
    - std::pow
    - size
    - front
    linkageType: ''
    returnType: Array
    signature: "Array DifferentialEvolution::getMutationProbabilities(\n                            const
      std::vector<Candidate> & population) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: randomize
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: QuantLib::DifferentialEvolution::rotateArray
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - randomize
    - Array::begin
    - Array::end
    linkageType: ''
    returnType: Array
    signature: Array DifferentialEvolution::rotateArray(Array a) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:365,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 368
    functionName: QuantLib::DifferentialEvolution::adaptSizeWeights
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution::adaptSizeWeights() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:373,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 376
    functionName: QuantLib::DifferentialEvolution::adaptCrossover
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void DifferentialEvolution::adaptCrossover() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:383,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:383,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: front
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:384,1
    - Dst: size
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:386,1
    - Dst: currentValue
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:387,1
    - Dst: nextReal
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:389,1
    - Dst: costFunction
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:391,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/math/optimization/differentialevolution.cpp:392,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' population'
    - ' p'
    argTypes:
    - std::vector<Candidate>
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 395
    functionName: QuantLib::DifferentialEvolution::fillInitialPopulation
    functionSourceFile: /src/quantlib/ql/math/optimization/differentialevolution.cpp
    functionUses: 2
    functionsReached:
    - currentValue
    - costFunction
    - nextReal
    - std::isfinite
    - size
    - front
    linkageType: ''
    returnType: void
    signature: "void DifferentialEvolution::fillInitialPopulation(\n                                          std::vector<Candidate>
      & population,\n                                          const Problem& p) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::add
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: QuantLib::IncrementalStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::add
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::IncrementalStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::add
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: QuantLib::IncrementalStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::add
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::IncrementalStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::DoublingConvergenceSteps::initialSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size initialSamples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - current
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::DoublingConvergenceSteps::nextSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nextSamples(Size current)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::ConvergenceStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: QuantLib::ConvergenceStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConvergenceStatistics<T,U>::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' stats'
    - ' rule'
    argTypes:
    - T
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::ConvergenceStatistics<T,U>::ConvergenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConvergenceStatistics<T,U>::reset
    linkageType: ''
    returnType: void
    signature: "void ConvergenceStatistics<T,U>::ConvergenceStatistics(const T& stats,\n
      \                                                     const U& rule)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConvergenceStatistics<T,U>::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rule'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::ConvergenceStatistics<T,U>::ConvergenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConvergenceStatistics<T,U>::reset
    linkageType: ''
    returnType: void
    signature: void ConvergenceStatistics<T,U>::ConvergenceStatistics(const U& rule)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeInstrument::add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:107,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::samples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::samples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::mean
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: nextSamples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' value'
    - weight
    argTypes:
    - typename ConvergenceStatistics<T,U>::value_type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 112
    functionName: QuantLib::ConvergenceStatistics<T,U>::add
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - nextSamples
    - std::make_pair
    - push_back
    - QuantLib::CompositeInstrument::add
    - QuantLib::ConvergenceStatistics<T,U>::samples
    - QuantLib::ConvergenceStatistics<T,U>::mean
    linkageType: ''
    returnType: void
    signature: "void ConvergenceStatistics<T,U>::add(\n                 const typename
      ConvergenceStatistics<T,U>::value_type& value,\n                 Real weight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:117,1
    - Dst: initialSamples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:118,1
    - Dst: clear
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::ConvergenceStatistics<T,U>::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 2
    functionsReached:
    - initialSamples
    - QuantLib::GenericEngine::reset
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvergenceStatistics<T,U>::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    ConvergenceStatistics<T,U>::convergenceTable() const"
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: typename ConvergenceStatistics<T,U>::table_type
    signature: "typename ConvergenceStatistics<T,U>::table_type &\n    ConvergenceStatistics<T,U>::convergenceTable()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::DoublingConvergenceSteps::initialSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size initialSamples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - current
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::DoublingConvergenceSteps::nextSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nextSamples(Size current)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::ConvergenceStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: QuantLib::ConvergenceStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConvergenceStatistics<T,U>::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' stats'
    - ' rule'
    argTypes:
    - T
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::ConvergenceStatistics<T,U>::ConvergenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConvergenceStatistics<T,U>::reset
    linkageType: ''
    returnType: void
    signature: "void ConvergenceStatistics<T,U>::ConvergenceStatistics(const T& stats,\n
      \                                                     const U& rule)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConvergenceStatistics<T,U>::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rule'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::ConvergenceStatistics<T,U>::ConvergenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConvergenceStatistics<T,U>::reset
    linkageType: ''
    returnType: void
    signature: void ConvergenceStatistics<T,U>::ConvergenceStatistics(const U& rule)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeInstrument::add
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:107,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::samples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::samples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: QuantLib::ConvergenceStatistics<T,U>::mean
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:109,1
    - Dst: nextSamples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' value'
    - weight
    argTypes:
    - typename ConvergenceStatistics<T,U>::value_type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 112
    functionName: QuantLib::ConvergenceStatistics<T,U>::add
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached:
    - nextSamples
    - std::make_pair
    - push_back
    - QuantLib::CompositeInstrument::add
    - QuantLib::ConvergenceStatistics<T,U>::samples
    - QuantLib::ConvergenceStatistics<T,U>::mean
    linkageType: ''
    returnType: void
    signature: "void ConvergenceStatistics<T,U>::add(\n                 const typename
      ConvergenceStatistics<T,U>::value_type& value,\n                 Real weight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:117,1
    - Dst: initialSamples
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:118,1
    - Dst: clear
      Src: /src/quantlib/ql/math/statistics/convergencestatistics.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::ConvergenceStatistics<T,U>::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 4
    functionsReached:
    - initialSamples
    - QuantLib::GenericEngine::reset
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvergenceStatistics<T,U>::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    ConvergenceStatistics<T,U>::convergenceTable() const"
    functionSourceFile: /src/quantlib/ql/math/statistics/convergencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: typename ConvergenceStatistics<T,U>::table_type
    signature: "typename ConvergenceStatistics<T,U>::table_type &\n    ConvergenceStatistics<T,U>::convergenceTable()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscrepancyStatistics::add
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sample'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::DiscrepancyStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscrepancyStatistics::add
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void add(const Sequence& sample,\n                 Real weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:53,1
    - Dst: samples
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:55,1
    - Dst: data
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:72,1
    - Dst: data
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:82,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:90,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 93
    functionName: QuantLib::DiscrepancyStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 1
    functionsReached:
    - std::max
    - data
    - samples
    - QuantLib::GenericSequenceStatistics::add
    linkageType: ''
    returnType: void
    signature: "void add(Iterator begin,\n                 Iterator end,\n                 Real
      weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscrepancyStatistics::reset
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::DiscrepancyStatistics::DiscrepancyStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscrepancyStatistics::reset
    linkageType: ''
    returnType: void
    signature: void DiscrepancyStatistics::DiscrepancyStatistics(Size dimension)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:111,1
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:114,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:117,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:117,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:119,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 120
    functionName: QuantLib::DiscrepancyStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 1
    functionsReached:
    - std::pow
    - QuantLib::GenericEngine::reset
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscrepancyStatistics::reset(Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscrepancyStatistics::add
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sample'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::DiscrepancyStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscrepancyStatistics::add
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void add(const Sequence& sample,\n                 Real weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:53,1
    - Dst: samples
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:55,1
    - Dst: data
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:69,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:72,1
    - Dst: data
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:82,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:90,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 93
    functionName: QuantLib::DiscrepancyStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 2
    functionsReached:
    - std::max
    - data
    - samples
    - QuantLib::GenericSequenceStatistics::add
    linkageType: ''
    returnType: void
    signature: "void add(Iterator begin,\n                 Iterator end,\n                 Real
      weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscrepancyStatistics::reset
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::DiscrepancyStatistics::DiscrepancyStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscrepancyStatistics::reset
    linkageType: ''
    returnType: void
    signature: void DiscrepancyStatistics::DiscrepancyStatistics(Size dimension)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:111,1
    - Dst: QuantLib::GenericEngine::reset
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:114,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:117,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:117,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:119,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 120
    functionName: QuantLib::DiscrepancyStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.hpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::GenericEngine::reset
    - Integer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscrepancyStatistics::reset(Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::regret
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:131,1
    - Dst: QuantLib::GenericRiskStatistics<S>::mean
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::GenericRiskStatistics<S>::semiVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::regret
    - QuantLib::GenericRiskStatistics<S>::mean
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::semiVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:136,1
    - Dst: QuantLib::GenericRiskStatistics<S>::semiVariance
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::GenericRiskStatistics<S>::semiDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::semiVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::semiDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::regret
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::GenericRiskStatistics<S>::downsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::regret
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::downsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:146,1
    - Dst: QuantLib::GenericRiskStatistics<S>::downsideVariance
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::GenericRiskStatistics<S>::downsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::downsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::downsideDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 165
    functionName: QuantLib::GenericRiskStatistics<S>::regret
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::regret(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:171,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:175,1
    - Dst: QuantLib::GenericRiskStatistics<S>::percentile
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 176
    functionName: QuantLib::GenericRiskStatistics<S>::potentialUpside
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::percentile
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericRiskStatistics<S>::potentialUpside(Real centile)\n        const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:182,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:186,1
    - Dst: QuantLib::GenericRiskStatistics<S>::percentile
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 187
    functionName: QuantLib::GenericRiskStatistics<S>::valueAtRisk
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - std::min<Real>
    - QuantLib::GenericRiskStatistics<S>::percentile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::valueAtRisk(Real centile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:192,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:195,1
    - Dst: QuantLib::GenericRiskStatistics<S>::samples
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:195,1
    - Dst: QuantLib::GenericRiskStatistics<S>::valueAtRisk
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:196,1
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:198,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:202,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 205
    functionName: QuantLib::GenericRiskStatistics<S>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::GenericRiskStatistics<S>::samples
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QuantLib::GenericRiskStatistics<S>::valueAtRisk
    - std::min<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::expectedShortfall(Real centile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:209,1
    - Dst: QuantLib::GenericRiskStatistics<S>::samples
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:209,1
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: QuantLib::GenericRiskStatistics<S>::shortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_ENSURE
    - QuantLib::GenericRiskStatistics<S>::samples
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::shortfall(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:216,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: QuantLib::GenericRiskStatistics<S>::averageShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_ENSURE
    linkageType: ''
    returnType: Real
    signature: "Real GenericRiskStatistics<S>::averageShortfall(Real target)\n        const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::regret
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:131,1
    - Dst: QuantLib::GenericRiskStatistics<S>::mean
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::GenericRiskStatistics<S>::semiVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::regret
    - QuantLib::GenericRiskStatistics<S>::mean
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::semiVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:136,1
    - Dst: QuantLib::GenericRiskStatistics<S>::semiVariance
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::GenericRiskStatistics<S>::semiDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::semiVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::semiDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::regret
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::GenericRiskStatistics<S>::downsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::regret
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::downsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:146,1
    - Dst: QuantLib::GenericRiskStatistics<S>::downsideVariance
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::GenericRiskStatistics<S>::downsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::downsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::downsideDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 165
    functionName: QuantLib::GenericRiskStatistics<S>::regret
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::regret(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:171,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:175,1
    - Dst: QuantLib::GenericRiskStatistics<S>::percentile
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 176
    functionName: QuantLib::GenericRiskStatistics<S>::potentialUpside
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::percentile
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericRiskStatistics<S>::potentialUpside(Real centile)\n        const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:182,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:186,1
    - Dst: QuantLib::GenericRiskStatistics<S>::percentile
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 187
    functionName: QuantLib::GenericRiskStatistics<S>::valueAtRisk
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 1
    functionsReached:
    - std::min<Real>
    - QuantLib::GenericRiskStatistics<S>::percentile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::valueAtRisk(Real centile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:192,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:195,1
    - Dst: QuantLib::GenericRiskStatistics<S>::samples
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:195,1
    - Dst: QuantLib::GenericRiskStatistics<S>::valueAtRisk
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:196,1
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:198,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:202,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - centile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 205
    functionName: QuantLib::GenericRiskStatistics<S>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::GenericRiskStatistics<S>::samples
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QuantLib::GenericRiskStatistics<S>::valueAtRisk
    - std::min<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::expectedShortfall(Real centile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:209,1
    - Dst: QuantLib::GenericRiskStatistics<S>::samples
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:209,1
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: QuantLib::GenericRiskStatistics<S>::shortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_ENSURE
    - QuantLib::GenericRiskStatistics<S>::samples
    linkageType: ''
    returnType: Real
    signature: Real GenericRiskStatistics<S>::shortfall(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericRiskStatistics<S>::expectationValue
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:216,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/statistics/riskstatistics.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: QuantLib::GenericRiskStatistics<S>::averageShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/riskstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericRiskStatistics<S>::expectationValue
    - QL_ENSURE
    linkageType: ''
    returnType: Real
    signature: "Real GenericRiskStatistics<S>::averageShortfall(Real target)\n        const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:28,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::GeneralStatistics::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:36,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::GeneralStatistics::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::expectationValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:42,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:46,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::GeneralStatistics::variance
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::mean
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:56,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:59,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:60,1
    - Dst: QuantLib::GeneralStatistics::standardDeviation
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 67
    functionName: QuantLib::GeneralStatistics::skewness
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::mean
    - QuantLib::GeneralStatistics::standardDeviation
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::skewness() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:71,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:74,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:75,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::GeneralStatistics::kurtosis
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::mean
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::variance
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::kurtosis() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:90,1
    - Dst: QuantLib::GeneralStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:94,1
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:100,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - percent
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 110
    functionName: QuantLib::GeneralStatistics::percentile
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - QuantLib::GeneralStatistics::sort
    - QuantLib::GeneralStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::percentile(Real percent) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:114,1
    - Dst: QuantLib::GeneralStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:118,1
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:121,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:124,1
    - Dst: rend
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - percent
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 134
    functionName: QuantLib::GeneralStatistics::topPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - rend
    - rbegin
    - QuantLib::GeneralStatistics::sort
    - QuantLib::GeneralStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::topPercentile(Real percent) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:28,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::GeneralStatistics::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 2
    functionsReached:
    - end
    - begin
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:36,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::GeneralStatistics::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::expectationValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:42,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:46,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::GeneralStatistics::variance
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::mean
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:56,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:59,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:60,1
    - Dst: QuantLib::GeneralStatistics::standardDeviation
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 67
    functionName: QuantLib::GeneralStatistics::skewness
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::mean
    - QuantLib::GeneralStatistics::standardDeviation
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::skewness() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:71,1
    - Dst: QuantLib::GeneralStatistics::mean
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:74,1
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:75,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::GeneralStatistics::kurtosis
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::mean
    - QuantLib::GeneralStatistics::expectationValue
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::variance
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::kurtosis() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:90,1
    - Dst: QuantLib::GeneralStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:94,1
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:100,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - percent
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 110
    functionName: QuantLib::GeneralStatistics::percentile
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - QuantLib::GeneralStatistics::sort
    - QuantLib::GeneralStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::percentile(Real percent) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:114,1
    - Dst: QuantLib::GeneralStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:118,1
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:121,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:124,1
    - Dst: rend
      Src: /src/quantlib/ql/math/statistics/generalstatistics.cpp:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - percent
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 134
    functionName: QuantLib::GeneralStatistics::topPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.cpp
    functionUses: 0
    functionsReached:
    - rend
    - rbegin
    - QuantLib::GeneralStatistics::sort
    - QuantLib::GeneralStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::topPercentile(Real percent) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: samples
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp:25,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 52
    functionName: QuantLib::DiscrepancyStatistics::discrepancy
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp
    functionUses: 0
    functionsReached:
    - samples
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real DiscrepancyStatistics::discrepancy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: samples
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp:25,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 52
    functionName: QuantLib::DiscrepancyStatistics::discrepancy
    functionSourceFile: /src/quantlib/ql/math/statistics/discrepancystatistics.cpp
    functionUses: 0
    functionsReached:
    - samples
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real DiscrepancyStatistics::discrepancy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::reset
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::IncrementalStatistics::IncrementalStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::reset
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::IncrementalStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::IncrementalStatistics::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
    linkageType: ''
    returnType: Size
    signature: Size IncrementalStatistics::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::IncrementalStatistics::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:42,1
    - Dst: QuantLib::IncrementalStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:42,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_mean>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: QuantLib::IncrementalStatistics::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_mean>"
    - QuantLib::IncrementalStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:48,1
    - Dst: QuantLib::IncrementalStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:49,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:49,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:50,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:50,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_variance>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::IncrementalStatistics::variance
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::weightSum
    - static_cast<Real>
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_variance>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:57,1
    - Dst: QuantLib::IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::IncrementalStatistics::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::IncrementalStatistics::variance
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    - Dst: QuantLib::IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::IncrementalStatistics::errorEstimate
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::IncrementalStatistics::samples
    - QuantLib::IncrementalStatistics::variance
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:65,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:65,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:66,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:69,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_skewness>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::IncrementalStatistics::skewness
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - std::sqrt
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_skewness>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::skewness() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:75,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:75,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_kurtosis>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:77,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:79,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:79,1
    - Dst: "boost::accumulators::extract_result<\n                           boost::accumulators::tag::weighted_kurtosis>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionName: QuantLib::IncrementalStatistics::kurtosis
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - "boost::accumulators::extract_result<\n                           boost::accumulators::tag::weighted_kurtosis>"
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_kurtosis>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::kurtosis() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:91,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:91,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::min>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::IncrementalStatistics::min
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::min>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::min() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:97,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:97,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::max>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::IncrementalStatistics::max
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::samples
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::max>"
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::max() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::IncrementalStatistics::downsideSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
    linkageType: ''
    returnType: Size
    signature: Size IncrementalStatistics::downsideSamples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::IncrementalStatistics::downsideWeightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideWeightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:113,1
    - Dst: QuantLib::IncrementalStatistics::downsideWeightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:114,1
    - Dst: QuantLib::IncrementalStatistics::downsideSamples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:114,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:115,1
    - Dst: QuantLib::IncrementalStatistics::downsideSamples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:115,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::moment<2>
        >"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::IncrementalStatistics::downsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::downsideSamples
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::moment<2>
      >"
    - static_cast<Real>
    - QuantLib::IncrementalStatistics::downsideWeightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:123,1
    - Dst: QuantLib::IncrementalStatistics::downsideVariance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::IncrementalStatistics::downsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::downsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideDeviation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:127,1
    - Dst: acc_
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:129,1
    - Dst: downsideAcc_
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - value
    - valueWeight
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::IncrementalStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 4
    functionsReached:
    - downsideAcc_
    - acc_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::add(Real value, Real valueWeight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accumulator_set
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:135,1
    - Dst: downside_accumulator_set
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::IncrementalStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 1
    functionsReached:
    - accumulator_set
    - downside_accumulator_set
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IncrementalStatistics::reset
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::IncrementalStatistics::IncrementalStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::reset
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::IncrementalStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::IncrementalStatistics::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 6
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
    linkageType: ''
    returnType: Size
    signature: Size IncrementalStatistics::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::IncrementalStatistics::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 2
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:42,1
    - Dst: QuantLib::IncrementalStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:42,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_mean>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: QuantLib::IncrementalStatistics::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_mean>"
    - QuantLib::IncrementalStatistics::weightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:48,1
    - Dst: QuantLib::IncrementalStatistics::weightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:49,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:49,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:50,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:50,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_variance>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::IncrementalStatistics::variance
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::IncrementalStatistics::weightSum
    - static_cast<Real>
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_variance>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::variance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:57,1
    - Dst: QuantLib::IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::IncrementalStatistics::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::IncrementalStatistics::variance
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    - Dst: QuantLib::IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::IncrementalStatistics::errorEstimate
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::IncrementalStatistics::samples
    - QuantLib::IncrementalStatistics::variance
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:65,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:65,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:66,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:69,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_skewness>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::IncrementalStatistics::skewness
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - std::sqrt
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::weighted_skewness>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::skewness() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:75,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:75,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_kurtosis>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:77,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:79,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:79,1
    - Dst: "boost::accumulators::extract_result<\n                           boost::accumulators::tag::weighted_kurtosis>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionName: QuantLib::IncrementalStatistics::kurtosis
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - "boost::accumulators::extract_result<\n                           boost::accumulators::tag::weighted_kurtosis>"
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::weighted_kurtosis>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::kurtosis() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:91,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:91,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::min>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::IncrementalStatistics::min
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::min>"
    - QuantLib::IncrementalStatistics::samples
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::min() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:97,1
    - Dst: QuantLib::IncrementalStatistics::samples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:97,1
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::max>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::IncrementalStatistics::max
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::samples
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::max>"
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::max() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::IncrementalStatistics::downsideSamples
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 1
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::count>"
    linkageType: ''
    returnType: Size
    signature: Size IncrementalStatistics::downsideSamples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::IncrementalStatistics::downsideWeightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 1
    functionsReached:
    - "boost::accumulators::extract_result<\n            boost::accumulators::tag::sum_of_weights>"
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideWeightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:113,1
    - Dst: QuantLib::IncrementalStatistics::downsideWeightSum
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:114,1
    - Dst: QuantLib::IncrementalStatistics::downsideSamples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:114,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:115,1
    - Dst: QuantLib::IncrementalStatistics::downsideSamples
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:115,1
    - Dst: "boost::accumulators::extract_result<\n                   boost::accumulators::tag::moment<2>
        >"
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::IncrementalStatistics::downsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::IncrementalStatistics::downsideSamples
    - "boost::accumulators::extract_result<\n                   boost::accumulators::tag::moment<2>
      >"
    - static_cast<Real>
    - QuantLib::IncrementalStatistics::downsideWeightSum
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:123,1
    - Dst: QuantLib::IncrementalStatistics::downsideVariance
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::IncrementalStatistics::downsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IncrementalStatistics::downsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real IncrementalStatistics::downsideDeviation() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:127,1
    - Dst: acc_
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:129,1
    - Dst: downsideAcc_
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - value
    - valueWeight
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::IncrementalStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 4
    functionsReached:
    - downsideAcc_
    - acc_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::add(Real value, Real valueWeight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accumulator_set
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:135,1
    - Dst: downside_accumulator_set
      Src: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::IncrementalStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/incrementalstatistics.cpp
    functionUses: 2
    functionsReached:
    - accumulator_set
    - downside_accumulator_set
    linkageType: ''
    returnType: void
    signature: void IncrementalStatistics::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::GenericGaussianStatistics::GenericGaussianStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GenericGaussianStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - Stat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::GenericGaussianStatistics::GenericGaussianStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GenericGaussianStatistics(const Stat& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gaussianRegret
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - gaussianRegret
    linkageType: ''
    returnType: Real
    signature: Real gaussianDownsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:61,1
    - Dst: QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::GenericGaussianStatistics::gaussianDownsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real gaussianDownsideDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mean
    - standardDeviation
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::StatsHolder::StatsHolder
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StatsHolder(Real mean,\n                    Real standardDeviation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: ~StatsHolder()
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StatsHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::StatsHolder::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::StatsHolder::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:133,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:134,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:139,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianRegret
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - gIntegral
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    linkageType: ''
    returnType: Real
    signature: Real GenericGaussianStatistics<Stat>::gaussianRegret(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:153,1
    - Dst: gInverse
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 159
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - gInverse
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianPercentile(\n                                                     Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianTopPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianTopPercentile(\n                                                     Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:174,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:177,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 180
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianPotentialUpside
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianPotentialUpside(\n                                                    Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:188,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:191,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianValueAtRisk
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    - std::min<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianValueAtRisk(\n                                                    Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:203,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:206,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:207,1
    - Dst: gInverse
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:209,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:211,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 216
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianExpectedShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - std::min<Real>
    - gInverse
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianExpectedShortfall(\n
      \                                                   Real percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:222,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:223,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 225
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - gIntegral
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianShortfall(\n                                                        Real
      target) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:231,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:232,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:235,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 236
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianAverageShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    - gIntegral
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianAverageShortfall(\n
      \                                                       Real target) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::GenericGaussianStatistics::GenericGaussianStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GenericGaussianStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - Stat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::GenericGaussianStatistics::GenericGaussianStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GenericGaussianStatistics(const Stat& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gaussianRegret
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 1
    functionsReached:
    - gaussianRegret
    linkageType: ''
    returnType: Real
    signature: Real gaussianDownsideVariance() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:61,1
    - Dst: QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::GenericGaussianStatistics::gaussianDownsideDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics::gaussianDownsideVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real gaussianDownsideDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mean
    - standardDeviation
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::StatsHolder::StatsHolder
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void StatsHolder(Real mean,\n                    Real standardDeviation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: ~StatsHolder()
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~StatsHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::StatsHolder::mean
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mean() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::StatsHolder::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:133,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:134,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:139,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianRegret
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - gIntegral
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    linkageType: ''
    returnType: Real
    signature: Real GenericGaussianStatistics<Stat>::gaussianRegret(Real target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:153,1
    - Dst: gInverse
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 159
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 3
    functionsReached:
    - gInverse
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianPercentile(\n                                                     Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianTopPercentile
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianTopPercentile(\n                                                     Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:174,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:177,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 180
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianPotentialUpside
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianPotentialUpside(\n                                                    Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:188,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:191,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianValueAtRisk
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericGaussianStatistics<Stat>::gaussianPercentile
    - std::min<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianValueAtRisk(\n                                                    Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:203,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:206,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:207,1
    - Dst: gInverse
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:209,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:211,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - percentile
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 216
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianExpectedShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - std::min<Real>
    - gInverse
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianExpectedShortfall(\n
      \                                                   Real percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:222,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:223,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 225
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - gIntegral
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianShortfall(\n                                                        Real
      target) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::mean
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:231,1
    - Dst: QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:232,1
    - Dst: g
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:235,1
    - Dst: gIntegral
      Src: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - target
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 236
    functionName: QuantLib::GenericGaussianStatistics<Stat>::gaussianAverageShortfall
    functionSourceFile: /src/quantlib/ql/math/statistics/gaussianstatistics.hpp
    functionUses: 0
    functionsReached:
    - g
    - QuantLib::GenericGaussianStatistics<Stat>::mean
    - QuantLib::GenericGaussianStatistics<Stat>::standardDeviation
    - gIntegral
    linkageType: ''
    returnType: Real
    signature: "Real GenericGaussianStatistics<Stat>::gaussianAverageShortfall(\n
      \                                                       Real target) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::partial_sort_copy
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - ' samples'
    - prob
    argTypes:
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: QuantLib::quantile
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 4
    functionsReached:
    - static_cast<Size>
    - std::partial_sort_copy
    - std::floor
    - std::vector::begin
    - begin
    - std::vector::end
    - std::max_element
    - QuantLib::size
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real quantile(const std::vector<Real>& samples, Real prob)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::partial_sort_copy
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - ' samples'
    - prob
    argTypes:
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: QuantLib::quantile
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 4
    functionsReached:
    - static_cast<Size>
    - std::partial_sort_copy
    - std::floor
    - std::vector::begin
    - begin
    - std::vector::end
    - std::max_element
    - QuantLib::size
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real quantile(const std::vector<Real>& samples, Real prob)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::Histogram::bins
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Histogram::bins() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: '& Histogram::breaks() const'
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Histogram::breaks() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::Histogram::algorithm
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Histogram::Algorithm
    signature: Histogram::Algorithm Histogram::algorithm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::Histogram::empty
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Histogram::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::Histogram::counts
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Size
    signature: Size Histogram::counts(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::Histogram::frequency
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real Histogram::frequency(Size i) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:100,1
    - Dst: QuantLib::Histogram::empty
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:100,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:106,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:109,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:111,1
    - Dst: quantile
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:115,1
    - Dst: quantile
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:116,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:118,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:118,1
    - Dst: IncrementalStatistics::addSequence
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:125,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:127,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:127,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:131,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:133,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:135,1
    - Dst: QuantLib::Histogram::empty
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:138,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:145,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: std::unique
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:152,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:153,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:153,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:157,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:162,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:173,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:175,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:177,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 178
    functionName: QuantLib::Histogram::calculate
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - std::fill
    - static_cast<Real>
    - static_cast<bool (*)(Real, Real)>
    - std::max<Size>
    - std::sort
    - begin
    - std::ceil
    - quantile
    - std::pow
    - size
    - IncrementalStatistics::addSequence
    - Null<Size>
    - QL_FAIL
    - end
    - QL_REQUIRE
    - std::log
    - resize
    - std::unique
    - std::min_element
    - std::max_element
    - std::sqrt
    - IncrementalStatistics::variance
    - QuantLib::Histogram::empty
    linkageType: ''
    returnType: void
    signature: void Histogram::calculate()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::partial_sort_copy
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - ' samples'
    - prob
    argTypes:
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: QuantLib::quantile
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 4
    functionsReached:
    - static_cast<Size>
    - std::partial_sort_copy
    - std::floor
    - std::vector::begin
    - begin
    - std::vector::end
    - std::max_element
    - QuantLib::size
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real quantile(const std::vector<Real>& samples, Real prob)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:49,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:54,1
    - Dst: std::partial_sort_copy
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:57,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - ' samples'
    - prob
    argTypes:
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: QuantLib::quantile
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 4
    functionsReached:
    - static_cast<Size>
    - std::partial_sort_copy
    - std::floor
    - std::vector::begin
    - begin
    - std::vector::end
    - std::max_element
    - QuantLib::size
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real quantile(const std::vector<Real>& samples, Real prob)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::Histogram::bins
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Histogram::bins() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: '& Histogram::breaks() const'
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Histogram::breaks() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::Histogram::algorithm
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Histogram::Algorithm
    signature: Histogram::Algorithm Histogram::algorithm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::Histogram::empty
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Histogram::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::Histogram::counts
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Size
    signature: Size Histogram::counts(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::Histogram::frequency
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real Histogram::frequency(Size i) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:100,1
    - Dst: QuantLib::Histogram::empty
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:100,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:102,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:103,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:106,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:109,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:111,1
    - Dst: quantile
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:115,1
    - Dst: quantile
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:116,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:117,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:118,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:118,1
    - Dst: IncrementalStatistics::addSequence
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:123,1
    - Dst: IncrementalStatistics::variance
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:125,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:126,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:127,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:127,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:131,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:133,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:135,1
    - Dst: QuantLib::Histogram::empty
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:138,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:145,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:150,1
    - Dst: std::unique
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:151,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:152,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:153,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:153,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:157,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:158,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:162,1
    - Dst: resize
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:173,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:175,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/histogram.cpp:177,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 178
    functionName: QuantLib::Histogram::calculate
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - std::fill
    - static_cast<Real>
    - static_cast<bool (*)(Real, Real)>
    - std::max<Size>
    - std::sort
    - begin
    - std::ceil
    - quantile
    - std::pow
    - size
    - IncrementalStatistics::addSequence
    - Null<Size>
    - QL_FAIL
    - end
    - QL_REQUIRE
    - std::log
    - resize
    - std::unique
    - std::min_element
    - std::max_element
    - std::sqrt
    - IncrementalStatistics::variance
    - QuantLib::Histogram::empty
    linkageType: ''
    returnType: void
    signature: void Histogram::calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::GenericSequenceStatistics::size
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sample'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::GenericSequenceStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 3
    functionsReached:
    - end
    - begin
    - QuantLib::GenericSequenceStatistics::add
    linkageType: ''
    returnType: void
    signature: "void add(const Sequence& sample,\n                 Real weight = 1.0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:125,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:126,1
    - Dst: reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:132,1
    - Dst: outerProduct
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:135,1
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 141
    functionName: QuantLib::GenericSequenceStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    - QuantLib::GenericSequenceStatistics::add
    - reset
    - Integer
    - outerProduct
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void add(Iterator begin,\n                 Iterator end,\n                 Real
      weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: QuantLib::GenericSequenceStatistics<Stat>::GenericSequenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::reset
    linkageType: ''
    returnType: void
    signature: void GenericSequenceStatistics<Stat>::GenericSequenceStatistics(Size
      dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:166,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::samples
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::GenericSequenceStatistics<Stat>::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::samples
    - empty
    linkageType: ''
    returnType: Size
    signature: Size GenericSequenceStatistics<Stat>::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:171,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::weightSum
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::GenericSequenceStatistics<Stat>::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::weightSum
    - empty
    linkageType: ''
    returnType: Real
    signature: Real GenericSequenceStatistics<Stat>::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - METHOD
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: DEFINE_SEQUENCE_STAT_CONST_METHOD_VOID
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_SEQUENCE_STAT_CONST_METHOD_VOID(METHOD)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - METHOD
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 210
    functionName: DEFINE_SEQUENCE_STAT_CONST_METHOD_DOUBLE
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_SEQUENCE_STAT_CONST_METHOD_DOUBLE(METHOD)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:234,1
    - Dst: std::vector<Stat>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:237,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:238,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 244
    functionName: QuantLib::GenericSequenceStatistics<Stat>::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 2
    functionsReached:
    - Matrix
    - std::vector<Real>
    - QuantLib::GenericSequenceStatistics<Stat>::reset
    - std::vector<Stat>
    linkageType: ''
    returnType: void
    signature: void GenericSequenceStatistics<Stat>::reset(Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::weightSum
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:249,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:252,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::samples
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:253,1
    - Dst: mean
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:256,1
    - Dst: outerProduct
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:261,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 265
    functionName: QuantLib::GenericSequenceStatistics<Stat>::covariance
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::weightSum
    - mean
    - std::vector::begin
    - std::vector::end
    - static_cast<Real>
    - QuantLib::GenericSequenceStatistics<Stat>::samples
    - outerProduct
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix GenericSequenceStatistics<Stat>::covariance() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::covariance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:270,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:271,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:279,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 269
    functionDepth: 3
    functionLinenumber: 269
    functionLinenumberEnd: 295
    functionName: QuantLib::GenericSequenceStatistics<Stat>::correlation
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached:
    - Matrix::diagonal
    - std::sqrt
    - QuantLib::GenericSequenceStatistics<Stat>::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix GenericSequenceStatistics<Stat>::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::GenericSequenceStatistics::size
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sample'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::GenericSequenceStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 5
    functionsReached:
    - end
    - begin
    - QuantLib::GenericSequenceStatistics::add
    linkageType: ''
    returnType: void
    signature: "void add(const Sequence& sample,\n                 Real weight = 1.0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:125,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:126,1
    - Dst: reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:132,1
    - Dst: outerProduct
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:135,1
    - Dst: QuantLib::GenericSequenceStatistics::add
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - Iterator
    - Iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 141
    functionName: QuantLib::GenericSequenceStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 6
    functionsReached:
    - QL_REQUIRE
    - QuantLib::GenericSequenceStatistics::add
    - reset
    - Integer
    - outerProduct
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void add(Iterator begin,\n                 Iterator end,\n                 Real
      weight = 1.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: QuantLib::GenericSequenceStatistics<Stat>::GenericSequenceStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::reset
    linkageType: ''
    returnType: void
    signature: void GenericSequenceStatistics<Stat>::GenericSequenceStatistics(Size
      dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:166,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::samples
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::GenericSequenceStatistics<Stat>::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::samples
    - empty
    linkageType: ''
    returnType: Size
    signature: Size GenericSequenceStatistics<Stat>::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:171,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::weightSum
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::GenericSequenceStatistics<Stat>::weightSum
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::weightSum
    - empty
    linkageType: ''
    returnType: Real
    signature: Real GenericSequenceStatistics<Stat>::weightSum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - METHOD
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: DEFINE_SEQUENCE_STAT_CONST_METHOD_VOID
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_SEQUENCE_STAT_CONST_METHOD_VOID(METHOD)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - METHOD
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 210
    functionName: DEFINE_SEQUENCE_STAT_CONST_METHOD_DOUBLE
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFINE_SEQUENCE_STAT_CONST_METHOD_DOUBLE(METHOD)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::reset
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:234,1
    - Dst: std::vector<Stat>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:237,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:238,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 244
    functionName: QuantLib::GenericSequenceStatistics<Stat>::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 4
    functionsReached:
    - Matrix
    - std::vector<Real>
    - QuantLib::GenericSequenceStatistics<Stat>::reset
    - std::vector<Stat>
    linkageType: ''
    returnType: void
    signature: void GenericSequenceStatistics<Stat>::reset(Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::weightSum
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:249,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:252,1
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::samples
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:253,1
    - Dst: mean
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:256,1
    - Dst: outerProduct
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:260,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:261,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 265
    functionName: QuantLib::GenericSequenceStatistics<Stat>::covariance
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GenericSequenceStatistics<Stat>::weightSum
    - mean
    - std::vector::begin
    - std::vector::end
    - static_cast<Real>
    - QuantLib::GenericSequenceStatistics<Stat>::samples
    - outerProduct
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix GenericSequenceStatistics<Stat>::covariance() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericSequenceStatistics<Stat>::covariance
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:270,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:271,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:279,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/sequencestatistics.hpp:288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 269
    functionDepth: 3
    functionLinenumber: 269
    functionLinenumberEnd: 295
    functionName: QuantLib::GenericSequenceStatistics<Stat>::correlation
    functionSourceFile: /src/quantlib/ql/math/statistics/sequencestatistics.hpp
    functionUses: 0
    functionsReached:
    - Matrix::diagonal
    - std::sqrt
    - QuantLib::GenericSequenceStatistics<Stat>::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix GenericSequenceStatistics<Stat>::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Algorithm
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - Algorithm
    linkageType: ''
    returnType: void
    signature: void Histogram()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data_begin
    - data_end
    - breaks
    argTypes:
    - T
    - T
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Histogram::calculate
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, Size breaks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:54,1
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data_begin
    - data_end
    - algorithm
    argTypes:
    - T
    - T
    - Algorithm
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Histogram::calculate
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, Algorithm algorithm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:62,1
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - data_begin
    - data_end
    - breaks_begin
    - breaks_end
    argTypes:
    - T
    - T
    - U
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Histogram::calculate
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, U breaks_begin, U breaks_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Algorithm
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - Algorithm
    linkageType: ''
    returnType: void
    signature: void Histogram()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data_begin
    - data_end
    - breaks
    argTypes:
    - T
    - T
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Histogram::calculate
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, Size breaks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:54,1
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data_begin
    - data_end
    - algorithm
    argTypes:
    - T
    - T
    - Algorithm
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Histogram::calculate
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, Algorithm algorithm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:62,1
    - Dst: QuantLib::Histogram::calculate
      Src: /src/quantlib/ql/math/statistics/histogram.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - data_begin
    - data_end
    - breaks_begin
    - breaks_end
    argTypes:
    - T
    - T
    - U
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::Histogram::Histogram
    functionSourceFile: /src/quantlib/ql/math/statistics/histogram.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Histogram::calculate
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void Histogram(T data_begin, T data_end, U breaks_begin, U breaks_end)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:121,1
    - Dst: inRange
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:124,1
    - Dst: std::make_pair<Real,Size>
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:130,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' f'
    - ' inRange'
    argTypes:
    - Func
    - Predicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 133
    functionName: QuantLib::GeneralStatistics::expectationValue
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 8
    functionsReached:
    - inRange
    - std::make_pair
    - Null<Real>
    - begin
    - f
    - std::make_pair<Real,Size>
    - end
    linkageType: ''
    returnType: std::pair<Real,Size>
    signature: "std::pair<Real,Size> expectationValue(const Func& f,\n                                              const
      Predicate& inRange) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - Func
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::GeneralStatistics::expectationValue
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 9
    functionsReached:
    - QuantLib::GeneralStatistics::expectationValue
    linkageType: ''
    returnType: std::pair<Real,Size>
    signature: std::pair<Real,Size> expectationValue(const Func& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::add
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::GeneralStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::add
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionName: QuantLib::GeneralStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::reset
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::GeneralStatistics::GeneralStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::reset
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::GeneralStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: QuantLib::GeneralStatistics::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 8
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size GeneralStatistics::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: "&\n    GeneralStatistics::data() const"
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Real,Real> >
    signature: "std::vector<std::pair<Real,Real> > &\n    GeneralStatistics::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:212,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionName: QuantLib::GeneralStatistics::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GeneralStatistics::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 3
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: QuantLib::GeneralStatistics::errorEstimate
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:220,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:220,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:221,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:221,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::GeneralStatistics::min
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::GeneralStatistics::samples
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::min() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:226,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:226,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:227,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:227,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: QuantLib::GeneralStatistics::max
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::GeneralStatistics::samples
    - std::max_element
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::max() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:233,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - value
    - weight
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: QuantLib::GeneralStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 2
    functionsReached:
    - emplace_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::add(Real value, Real weight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::pair<Real,Real> >
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: QuantLib::GeneralStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 1
    functionsReached:
    - std::vector<std::pair<Real,Real> >
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::reserve
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: QuantLib::GeneralStatistics::reserve
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GeneralStatistics::reserve
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::reserve(Size n) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 252
    functionName: QuantLib::GeneralStatistics::sort
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 5
    functionsReached:
    - begin
    - end
    - QuantLib::GeneralStatistics::sort
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::sort() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:121,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:121,1
    - Dst: inRange
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:124,1
    - Dst: std::make_pair<Real,Size>
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:130,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' f'
    - ' inRange'
    argTypes:
    - Func
    - Predicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 133
    functionName: QuantLib::GeneralStatistics::expectationValue
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 9
    functionsReached:
    - inRange
    - std::make_pair
    - Null<Real>
    - begin
    - f
    - std::make_pair<Real,Size>
    - end
    linkageType: ''
    returnType: std::pair<Real,Size>
    signature: "std::pair<Real,Size> expectationValue(const Func& f,\n                                              const
      Predicate& inRange) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::expectationValue
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - Func
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::GeneralStatistics::expectationValue
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::GeneralStatistics::expectationValue
    linkageType: ''
    returnType: std::pair<Real,Size>
    signature: std::pair<Real,Size> expectationValue(const Func& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::add
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - begin
    - end
    argTypes:
    - DataIterator
    - DataIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::GeneralStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::add
    linkageType: ''
    returnType: void
    signature: void addSequence(DataIterator begin, DataIterator end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::add
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - begin
    - end
    - wbegin
    argTypes:
    - DataIterator
    - DataIterator
    - WeightIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionName: QuantLib::GeneralStatistics::addSequence
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::add
    linkageType: ''
    returnType: void
    signature: "void addSequence(DataIterator begin, DataIterator end,\n                         WeightIterator
      wbegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::reset
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::GeneralStatistics::GeneralStatistics
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::reset
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::GeneralStatistics()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: QuantLib::GeneralStatistics::samples
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 11
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size GeneralStatistics::samples() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: "&\n    GeneralStatistics::data() const"
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Real,Real> >
    signature: "std::vector<std::pair<Real,Real> > &\n    GeneralStatistics::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:212,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionName: QuantLib::GeneralStatistics::standardDeviation
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GeneralStatistics::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::standardDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    - Dst: QuantLib::GeneralStatistics::variance
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 3
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: QuantLib::GeneralStatistics::errorEstimate
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralStatistics::samples
    - QuantLib::GeneralStatistics::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:220,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:220,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:221,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:221,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::GeneralStatistics::min
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::GeneralStatistics::samples
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::min() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:226,1
    - Dst: QuantLib::GeneralStatistics::samples
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:226,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:227,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:227,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: QuantLib::GeneralStatistics::max
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 0
    functionsReached:
    - begin
    - QuantLib::GeneralStatistics::samples
    - std::max_element
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeneralStatistics::max() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:233,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - value
    - weight
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: QuantLib::GeneralStatistics::add
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 4
    functionsReached:
    - emplace_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::add(Real value, Real weight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::pair<Real,Real> >
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: QuantLib::GeneralStatistics::reset
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 2
    functionsReached:
    - std::vector<std::pair<Real,Real> >
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::reserve
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: QuantLib::GeneralStatistics::reserve
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GeneralStatistics::reserve
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::reserve(Size n) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralStatistics::sort
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    - Dst: end
      Src: /src/quantlib/ql/math/statistics/generalstatistics.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 252
    functionName: QuantLib::GeneralStatistics::sort
    functionSourceFile: /src/quantlib/ql/math/statistics/generalstatistics.hpp
    functionUses: 6
    functionsReached:
    - begin
    - end
    - QuantLib::GeneralStatistics::sort
    linkageType: ''
    returnType: void
    signature: void GeneralStatistics::sort() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::AdaptiveRungeKutta::AdaptiveRungeKutta
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AdaptiveRungeKutta(const Real eps = 1.0e-6, const Real h1 = 1.0e-4,
      const Real hmin = 0.0)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:103,1
    - Dst: ode
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:111,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:113,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:113,1
    - Dst: rkqs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:116,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:121,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:122,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:126,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ' ode'
    - ' y1'
    - x1
    - x2
    argTypes:
    - OdeFct
    - std::vector<T>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 128
    functionName: "AdaptiveRungeKutta<T>::operator()(const OdeFct& ode,\n                                                     const
      std::vector<T>& y1,\n                                                     const
      Real x1,\n                                                     const Real x2)"
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - rkqs
    - ode
    - QL_FAIL
    - std::fabs
    - size
    - std::abs
    linkageType: ''
    returnType: std::vector<T>
    signature: "std::vector<T> AdaptiveRungeKutta<T>::operator()(const OdeFct& ode,\n
      \                                                    const std::vector<T>& y1,\n
      \                                                    const Real x1,\n                                                     const
      Real x2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ode1d'
    argTypes:
    - OdeFct1d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::OdeFctWrapper
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OdeFctWrapper(const OdeFct1d& ode1d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ode1d_
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' y'
    argTypes:
    - Real
    - std::vector<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: operator()(const Real x, const std::vector<T>& y)
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - ode1d_
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> operator()(const Real x, const std::vector<T>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ode1d'
    argTypes:
    - OdeFct1d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::OdeFctWrapper
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OdeFctWrapper(const OdeFct1d& ode1d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ode1d_
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' y'
    argTypes:
    - Real
    - std::vector<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: operator()(const Real x, const std::vector<T>& y)
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - ode1d_
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> operator()(const Real x, const std::vector<T>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:151,1
    - Dst: detail::OdeFctWrapper<T>
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:151,1
    - Dst: std::vector<T>
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' ode'
    - y1
    - x1
    - x2
    argTypes:
    - OdeFct1d
    - T
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: "AdaptiveRungeKutta<T>::operator()(const OdeFct1d& ode,\n                                        const
      T y1,\n                                        const Real x1,\n                                        const
      Real x2)"
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - std::vector<T>
    - detail::OdeFctWrapper<T>
    - operator
    linkageType: ''
    returnType: T
    signature: "T AdaptiveRungeKutta<T>::operator()(const OdeFct1d& ode,\n                                        const
      T y1,\n                                        const Real x1,\n                                        const
      Real x2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:165,1
    - Dst: QuantLib::AdaptiveRungeKutta<T>::rkck
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:172,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:175,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:190,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:195,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 9
    argNames:
    - ' y'
    - ' dydx'
    - ' x'
    - htry
    - eps
    - ' yScale'
    - ' hdid'
    - ' hnext'
    - ' derivs'
    argTypes:
    - std::vector<T>
    - std::vector<T>
    - Real
    - Real
    - Real
    - std::vector<Real>
    - Real
    - Real
    - OdeFct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 204
    functionName: QuantLib::AdaptiveRungeKutta<T>::rkqs
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AdaptiveRungeKutta<T>::rkck
    - std::max
    - QL_FAIL
    - std::pow
    - size
    - std::abs
    linkageType: ''
    returnType: void
    signature: "void AdaptiveRungeKutta<T>::rkqs(std::vector<T>& y,\n                                     const
      std::vector<T>& dydx,\n                                     Real& x,\n                                     const
      Real htry,\n                                     const Real eps,\n                                     const
      std::vector<Real>& yScale,\n                                     Real& hdid,\n
      \                                    Real& hnext,\n                                     const
      OdeFct& derivs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:215,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:223,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:228,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:233,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:238,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:243,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 7
    argNames:
    - ' y'
    - ' dydx'
    - x
    - h
    - ' yout'
    - yerr
    - ' derivs'
    argTypes:
    - std::vector<T>
    - std::vector<T>
    - Real
    - Real
    - std::vector<T>
    - std::vector<T>
    - OdeFct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 248
    functionName: QuantLib::AdaptiveRungeKutta<T>::rkck
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 1
    functionsReached:
    - size
    - derivs
    linkageType: ''
    returnType: void
    signature: "void AdaptiveRungeKutta<T>::rkck(const std::vector<T>& y,\n                                     const
      std::vector<T>& dydx,\n                                     Real x,\n                                     const
      Real h,\n                                     std::vector<T>& yout,\n                                     std::vector<T>
      &yerr,\n                                     const OdeFct& derivs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::AdaptiveRungeKutta::AdaptiveRungeKutta
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AdaptiveRungeKutta(const Real eps = 1.0e-6, const Real h1 = 1.0e-4,
      const Real hmin = 0.0)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:103,1
    - Dst: ode
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:111,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:113,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:113,1
    - Dst: rkqs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:116,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:121,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:122,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:126,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ' ode'
    - ' y1'
    - x1
    - x2
    argTypes:
    - OdeFct
    - std::vector<T>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 128
    functionName: "AdaptiveRungeKutta<T>::operator()(const OdeFct& ode,\n                                                     const
      std::vector<T>& y1,\n                                                     const
      Real x1,\n                                                     const Real x2)"
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - rkqs
    - ode
    - QL_FAIL
    - std::fabs
    - size
    - std::abs
    linkageType: ''
    returnType: std::vector<T>
    signature: "std::vector<T> AdaptiveRungeKutta<T>::operator()(const OdeFct& ode,\n
      \                                                    const std::vector<T>& y1,\n
      \                                                    const Real x1,\n                                                     const
      Real x2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ode1d'
    argTypes:
    - OdeFct1d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::OdeFctWrapper
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OdeFctWrapper(const OdeFct1d& ode1d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ode1d_
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' y'
    argTypes:
    - Real
    - std::vector<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: operator()(const Real x, const std::vector<T>& y)
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - ode1d_
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> operator()(const Real x, const std::vector<T>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ode1d'
    argTypes:
    - OdeFct1d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::OdeFctWrapper
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OdeFctWrapper(const OdeFct1d& ode1d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ode1d_
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - ' y'
    argTypes:
    - Real
    - std::vector<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: operator()(const Real x, const std::vector<T>& y)
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - ode1d_
    linkageType: ''
    returnType: std::vector<T>
    signature: std::vector<T> operator()(const Real x, const std::vector<T>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:151,1
    - Dst: detail::OdeFctWrapper<T>
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:151,1
    - Dst: std::vector<T>
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' ode'
    - y1
    - x1
    - x2
    argTypes:
    - OdeFct1d
    - T
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: "AdaptiveRungeKutta<T>::operator()(const OdeFct1d& ode,\n                                        const
      T y1,\n                                        const Real x1,\n                                        const
      Real x2)"
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - std::vector<T>
    - detail::OdeFctWrapper<T>
    - operator
    linkageType: ''
    returnType: T
    signature: "T AdaptiveRungeKutta<T>::operator()(const OdeFct1d& ode,\n                                        const
      T y1,\n                                        const Real x1,\n                                        const
      Real x2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:165,1
    - Dst: QuantLib::AdaptiveRungeKutta<T>::rkck
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:172,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:175,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:190,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:195,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 9
    argNames:
    - ' y'
    - ' dydx'
    - ' x'
    - htry
    - eps
    - ' yScale'
    - ' hdid'
    - ' hnext'
    - ' derivs'
    argTypes:
    - std::vector<T>
    - std::vector<T>
    - Real
    - Real
    - Real
    - std::vector<Real>
    - Real
    - Real
    - OdeFct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 204
    functionName: QuantLib::AdaptiveRungeKutta<T>::rkqs
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AdaptiveRungeKutta<T>::rkck
    - std::max
    - QL_FAIL
    - std::pow
    - size
    - std::abs
    linkageType: ''
    returnType: void
    signature: "void AdaptiveRungeKutta<T>::rkqs(std::vector<T>& y,\n                                     const
      std::vector<T>& dydx,\n                                     Real& x,\n                                     const
      Real htry,\n                                     const Real eps,\n                                     const
      std::vector<Real>& yScale,\n                                     Real& hdid,\n
      \                                    Real& hnext,\n                                     const
      OdeFct& derivs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:215,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:223,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:228,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:233,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:238,1
    - Dst: derivs
      Src: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp:243,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 7
    argNames:
    - ' y'
    - ' dydx'
    - x
    - h
    - ' yout'
    - yerr
    - ' derivs'
    argTypes:
    - std::vector<T>
    - std::vector<T>
    - Real
    - Real
    - std::vector<T>
    - std::vector<T>
    - OdeFct
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 248
    functionName: QuantLib::AdaptiveRungeKutta<T>::rkck
    functionSourceFile: /src/quantlib/ql/math/ode/adaptiverungekutta.hpp
    functionUses: 2
    functionsReached:
    - size
    - derivs
    linkageType: ''
    returnType: void
    signature: "void AdaptiveRungeKutta<T>::rkck(const std::vector<T>& y,\n                                     const
      std::vector<T>& dydx,\n                                     Real x,\n                                     const
      Real h,\n                                     std::vector<T>& yout,\n                                     std::vector<T>
      &yerr,\n                                     const OdeFct& derivs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached:
    - nextInt32Sequence
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::SobolRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached:
    - nextInt32Sequence
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::SobolRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimensionality
    - ' rng'
    argTypes:
    - Size
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::RandomSequenceGenerator::RandomSequenceGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RandomSequenceGenerator(Size dimensionality,\n                                const
      RNG& rng)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dimensionality
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::RandomSequenceGenerator::RandomSequenceGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void RandomSequenceGenerator(Size dimensionality,\n                                         BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::RandomSequenceGenerator::nextInt32Sequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - nextInt32
    linkageType: ''
    returnType: std::vector<BigNatural>
    signature: std::vector<BigNatural> nextInt32Sequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::RandomSequenceGenerator::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimensionality
    - ' rng'
    argTypes:
    - Size
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: QuantLib::RandomSequenceGenerator::RandomSequenceGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RandomSequenceGenerator(Size dimensionality,\n                                const
      RNG& rng)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dimensionality
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::RandomSequenceGenerator::RandomSequenceGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void RandomSequenceGenerator(Size dimensionality,\n                                         BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - next
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::RandomSequenceGenerator::nextInt32Sequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached:
    - nextInt32
    linkageType: ''
    returnType: std::vector<BigNatural>
    signature: std::vector<BigNatural> nextInt32Sequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::RandomSequenceGenerator::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomsequencegenerator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78481,1
    - Dst: std::vector<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78483,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78486,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78488,1
    - Dst: k<std::min<Size>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78515,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78573,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78586,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78599,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78612,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78625,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78638,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78654,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78667,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78681,1
    - Dst: MersenneTwisterUniformRng::next
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78703,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 166
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - directionIntegers
    - useGrayCode
    argTypes:
    - Size
    - unsigned long
    - DirectionIntegers
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78773
      start: 78477
    functionDepth: 1
    functionLinenumber: 78477
    functionLinenumberEnd: 78773
    functionName: QuantLib::SobolRsg::SobolRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::vector<std::uint32_t>
    - QL_REQUIRE
    - k<std::min<Size>
    - MersenneTwisterUniformRng::next
    - std::vector<Real>
    - std::min
    linkageType: ''
    returnType: void
    signature: "void SobolRsg::SobolRsg(Size dimensionality,\n                       unsigned
      long seed,\n                       DirectionIntegers directionIntegers,\n                       bool
      useGrayCode)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78779,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - skip
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78805
      start: 78775
    functionDepth: 0
    functionLinenumber: 78775
    functionLinenumberEnd: 78805
    functionName: '& SobolRsg::skipTo(std::uint32_t skip) const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - begin
    - std::log
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & SobolRsg::skipTo(std::uint32_t skip) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: skipTo
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78811,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78816,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78829,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78848
      start: 78807
    functionDepth: 1
    functionLinenumber: 78807
    functionLinenumberEnd: 78848
    functionName: '& SobolRsg::nextInt32Sequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - skipTo
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & SobolRsg::nextInt32Sequence() const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78481,1
    - Dst: std::vector<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78483,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78486,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78488,1
    - Dst: k<std::min<Size>
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78515,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78573,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78586,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78599,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78612,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78625,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78638,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78654,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78667,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78681,1
    - Dst: MersenneTwisterUniformRng::next
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78703,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 166
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - directionIntegers
    - useGrayCode
    argTypes:
    - Size
    - unsigned long
    - DirectionIntegers
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78773
      start: 78477
    functionDepth: 1
    functionLinenumber: 78477
    functionLinenumberEnd: 78773
    functionName: QuantLib::SobolRsg::SobolRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::vector<std::uint32_t>
    - QL_REQUIRE
    - k<std::min<Size>
    - MersenneTwisterUniformRng::next
    - std::vector<Real>
    - std::min
    linkageType: ''
    returnType: void
    signature: "void SobolRsg::SobolRsg(Size dimensionality,\n                       unsigned
      long seed,\n                       DirectionIntegers directionIntegers,\n                       bool
      useGrayCode)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78779,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78791,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - skip
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78805
      start: 78775
    functionDepth: 0
    functionLinenumber: 78775
    functionLinenumberEnd: 78805
    functionName: '& SobolRsg::skipTo(std::uint32_t skip) const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - end
    - begin
    - std::log
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & SobolRsg::skipTo(std::uint32_t skip) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: skipTo
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78811,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78816,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp:78829,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78848
      start: 78807
    functionDepth: 1
    functionLinenumber: 78807
    functionLinenumberEnd: 78848
    functionName: '& SobolRsg::nextInt32Sequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - skipTo
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & SobolRsg::nextInt32Sequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::seedInitialization
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::MersenneTwisterUniformRng::MersenneTwisterUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::seedInitialization
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::MersenneTwisterUniformRng(unsigned
      long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionName: QuantLib::MersenneTwisterUniformRng::seedInitialization
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::seedInitialization(unsigned long seed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::seedInitialization
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - ' seeds'
    argTypes:
    - std::vector<unsigned long>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 123
    functionName: QuantLib::MersenneTwisterUniformRng::MersenneTwisterUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::MersenneTwisterUniformRng::seedInitialization
    linkageType: ''
    returnType: void
    signature: "void MersenneTwisterUniformRng::MersenneTwisterUniformRng(\n                                      const
      std::vector<unsigned long>& seeds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 143
    functionName: QuantLib::MersenneTwisterUniformRng::twist
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::twist() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::seedInitialization
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::MersenneTwisterUniformRng::MersenneTwisterUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::seedInitialization
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::MersenneTwisterUniformRng(unsigned
      long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionName: QuantLib::MersenneTwisterUniformRng::seedInitialization
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::seedInitialization(unsigned long seed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::seedInitialization
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - ' seeds'
    argTypes:
    - std::vector<unsigned long>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 123
    functionName: QuantLib::MersenneTwisterUniformRng::MersenneTwisterUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::MersenneTwisterUniformRng::seedInitialization
    linkageType: ''
    returnType: void
    signature: "void MersenneTwisterUniformRng::MersenneTwisterUniformRng(\n                                      const
      std::vector<unsigned long>& seeds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 143
    functionName: QuantLib::MersenneTwisterUniformRng::twist
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MersenneTwisterUniformRng::twist() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14464,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14464,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14488,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14491,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14491,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - name
    - ' Z'
    - N
    argTypes:
    - type
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14493
      start: 14458
    functionDepth: 1
    functionLinenumber: 14458
    functionLinenumberEnd: 14493
    functionName: QuantLib::LatticeRule::getRule
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticerules.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - resize
    - begin
    - std::pow
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LatticeRule::getRule(type name, std::vector<Real>& Z, Integer
      N)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14462,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14464,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14464,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14488,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14491,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/latticerules.cpp:14491,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - name
    - ' Z'
    - N
    argTypes:
    - type
    - std::vector<Real>
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14493
      start: 14458
    functionDepth: 1
    functionLinenumber: 14458
    functionLinenumberEnd: 14493
    functionName: QuantLib::LatticeRule::getRule
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticerules.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - resize
    - begin
    - std::pow
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LatticeRule::getRule(type name, std::vector<Real>& Z, Integer
      N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextPath
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:31,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:32,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:33,1
    - Dst: nextStep
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:34,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' gen'
    - ' seq'
    argTypes:
    - SobolBrownianGeneratorBase
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::setNextSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - std::copy
    - std::vector::begin
    - std::vector::end
    - begin
    - nextStep
    - numberOfFactors
    - nextPath
    linkageType: ''
    returnType: void
    signature: void setNextSequence(SobolBrownianGeneratorBase& gen, std::vector<Real>&
      seq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextPath
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:31,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:32,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:33,1
    - Dst: nextStep
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:34,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' gen'
    - ' seq'
    argTypes:
    - SobolBrownianGeneratorBase
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::setNextSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - std::copy
    - std::vector::begin
    - std::vector::end
    - begin
    - nextStep
    - numberOfFactors
    - nextPath
    linkageType: ''
    returnType: void
    signature: void setNextSequence(SobolBrownianGeneratorBase& gen, std::vector<Real>&
      seq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sample_type::value_type
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - directionIntegers
    argTypes:
    - Size
    - Size
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::SobolBrownianBridgeRsg::SobolBrownianBridgeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - sample_type::value_type
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianBridgeRsg::SobolBrownianBridgeRsg(Size factors,\n
      \                                                  Size steps,\n                                                   SobolBrownianGenerator::Ordering
      ordering,\n                                                   unsigned long
      seed,\n                                                   SobolRsg::DirectionIntegers
      directionIntegers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNextSequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: "&\n    SobolBrownianBridgeRsg::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - setNextSequence
    linkageType: ''
    returnType: SobolBrownianBridgeRsg::sample_type
    signature: "SobolBrownianBridgeRsg::sample_type &\n    SobolBrownianBridgeRsg::nextSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: "&\n    SobolBrownianBridgeRsg::lastSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SobolBrownianBridgeRsg::sample_type
    signature: "SobolBrownianBridgeRsg::sample_type &\n    SobolBrownianBridgeRsg::lastSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:61,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::SobolBrownianBridgeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianBridgeRsg::dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sample_type::value_type
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - directionIntegers
    - scrambleSeed
    argTypes:
    - Size
    - Size
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::Burley2020SobolBrownianBridgeRsg::Burley2020SobolBrownianBridgeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - sample_type::value_type
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianBridgeRsg::Burley2020SobolBrownianBridgeRsg(\n
      \       Size factors,\n        Size steps,\n        SobolBrownianGenerator::Ordering
      ordering,\n        unsigned long seed,\n        SobolRsg::DirectionIntegers
      directionIntegers,\n        unsigned long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNextSequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "&\n    Burley2020SobolBrownianBridgeRsg::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - setNextSequence
    linkageType: ''
    returnType: Burley2020SobolBrownianBridgeRsg::sample_type
    signature: "Burley2020SobolBrownianBridgeRsg::sample_type &\n    Burley2020SobolBrownianBridgeRsg::nextSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: "&\n    Burley2020SobolBrownianBridgeRsg::lastSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Burley2020SobolBrownianBridgeRsg::sample_type
    signature: "Burley2020SobolBrownianBridgeRsg::sample_type &\n    Burley2020SobolBrownianBridgeRsg::lastSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:86,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::Burley2020SobolBrownianBridgeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size Burley2020SobolBrownianBridgeRsg::dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextPath
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:31,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:32,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:33,1
    - Dst: nextStep
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:34,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' gen'
    - ' seq'
    argTypes:
    - SobolBrownianGeneratorBase
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::setNextSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - std::copy
    - std::vector::begin
    - std::vector::end
    - begin
    - nextStep
    - numberOfFactors
    - nextPath
    linkageType: ''
    returnType: void
    signature: void setNextSequence(SobolBrownianGeneratorBase& gen, std::vector<Real>&
      seq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextPath
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:31,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:32,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:33,1
    - Dst: nextStep
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:34,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' gen'
    - ' seq'
    argTypes:
    - SobolBrownianGeneratorBase
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: QuantLib::setNextSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - std::copy
    - std::vector::begin
    - std::vector::end
    - begin
    - nextStep
    - numberOfFactors
    - nextPath
    linkageType: ''
    returnType: void
    signature: void setNextSequence(SobolBrownianGeneratorBase& gen, std::vector<Real>&
      seq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sample_type::value_type
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - directionIntegers
    argTypes:
    - Size
    - Size
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::SobolBrownianBridgeRsg::SobolBrownianBridgeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - sample_type::value_type
    linkageType: ''
    returnType: void
    signature: "void SobolBrownianBridgeRsg::SobolBrownianBridgeRsg(Size factors,\n
      \                                                  Size steps,\n                                                   SobolBrownianGenerator::Ordering
      ordering,\n                                                   unsigned long
      seed,\n                                                   SobolRsg::DirectionIntegers
      directionIntegers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNextSequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: "&\n    SobolBrownianBridgeRsg::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - setNextSequence
    linkageType: ''
    returnType: SobolBrownianBridgeRsg::sample_type
    signature: "SobolBrownianBridgeRsg::sample_type &\n    SobolBrownianBridgeRsg::nextSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: "&\n    SobolBrownianBridgeRsg::lastSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SobolBrownianBridgeRsg::sample_type
    signature: "SobolBrownianBridgeRsg::sample_type &\n    SobolBrownianBridgeRsg::lastSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:61,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::SobolBrownianBridgeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size SobolBrownianBridgeRsg::dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sample_type::value_type
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - factors
    - steps
    - ordering
    - seed
    - directionIntegers
    - scrambleSeed
    argTypes:
    - Size
    - Size
    - SobolBrownianGenerator::Ordering
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::Burley2020SobolBrownianBridgeRsg::Burley2020SobolBrownianBridgeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - sample_type::value_type
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolBrownianBridgeRsg::Burley2020SobolBrownianBridgeRsg(\n
      \       Size factors,\n        Size steps,\n        SobolBrownianGenerator::Ordering
      ordering,\n        unsigned long seed,\n        SobolRsg::DirectionIntegers
      directionIntegers,\n        unsigned long scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNextSequence
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "&\n    Burley2020SobolBrownianBridgeRsg::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - setNextSequence
    linkageType: ''
    returnType: Burley2020SobolBrownianBridgeRsg::sample_type
    signature: "Burley2020SobolBrownianBridgeRsg::sample_type &\n    Burley2020SobolBrownianBridgeRsg::nextSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: "&\n    Burley2020SobolBrownianBridgeRsg::lastSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Burley2020SobolBrownianBridgeRsg::sample_type
    signature: "Burley2020SobolBrownianBridgeRsg::sample_type &\n    Burley2020SobolBrownianBridgeRsg::lastSequence()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numberOfFactors
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:86,1
    - Dst: numberOfSteps
      Src: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::Burley2020SobolBrownianBridgeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/sobolbrownianbridgersg.cpp
    functionUses: 0
    functionsReached:
    - numberOfSteps
    - numberOfFactors
    linkageType: ''
    returnType: Size
    signature: Size Burley2020SobolBrownianBridgeRsg::dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::MersenneTwisterUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:57,1
    - Dst: QuantLib::MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MersenneTwisterUniformRng::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::nextInt32
    - Real
    linkageType: ''
    returnType: Real
    signature: Real nextReal() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::twist
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::MersenneTwisterUniformRng::nextInt32
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::twist
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long nextInt32() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::MersenneTwisterUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:57,1
    - Dst: QuantLib::MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MersenneTwisterUniformRng::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::nextInt32
    - Real
    linkageType: ''
    returnType: Real
    signature: Real nextReal() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MersenneTwisterUniformRng::twist
      Src: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::MersenneTwisterUniformRng::nextInt32
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/mt19937uniformrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::MersenneTwisterUniformRng::twist
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long nextInt32() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::RandomizedLDS::nextRandomizer
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: void
    signature: void nextRandomizer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::RandomizedLDS::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:88,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:88,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:89,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:91,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:91,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:94,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' ldsg'
    - prsg
    argTypes:
    - LDS
    - PRS
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nextSequence
    - dimension
    - std::vector<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void RandomizedLDS<LDS, PRS>::RandomizedLDS(const LDS& ldsg, PRS prsg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:102,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:102,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:103,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:103,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ldsg'
    argTypes:
    - LDS
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - nextSequence
    - dimension
    linkageType: ''
    returnType: void
    signature: void RandomizedLDS<LDS, PRS>::RandomizedLDS(const LDS& ldsg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:115,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:115,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dimensionality
    - ldsSeed
    - prsSeed
    argTypes:
    - Size
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 118
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - nextSequence
    linkageType: ''
    returnType: void
    signature: "void RandomizedLDS<LDS, PRS>::RandomizedLDS(Size dimensionality,\n
      \                                          BigNatural ldsSeed,\n                                           BigNatural
      prsSeed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 132
    functionName: "&\n    RandomizedLDS<LDS, PRS>::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: typename RandomizedLDS<LDS, PRS>::sample_type
    signature: "typename RandomizedLDS<LDS, PRS>::sample_type &\n    RandomizedLDS<LDS,
      PRS>::nextSequence() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::RandomizedLDS::nextRandomizer
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: void
    signature: void nextRandomizer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::RandomizedLDS::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:88,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:88,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:89,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:91,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:91,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:94,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' ldsg'
    - prsg
    argTypes:
    - LDS
    - PRS
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nextSequence
    - dimension
    - std::vector<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void RandomizedLDS<LDS, PRS>::RandomizedLDS(const LDS& ldsg, PRS prsg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:102,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:102,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:103,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:103,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ldsg'
    argTypes:
    - LDS
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - nextSequence
    - dimension
    linkageType: ''
    returnType: void
    signature: void RandomizedLDS<LDS, PRS>::RandomizedLDS(const LDS& ldsg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:115,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:115,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dimensionality
    - ldsSeed
    - prsSeed
    argTypes:
    - Size
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 118
    functionName: QuantLib::RandomizedLDS<LDS, PRS>::RandomizedLDS
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - nextSequence
    linkageType: ''
    returnType: void
    signature: "void RandomizedLDS<LDS, PRS>::RandomizedLDS(Size dimensionality,\n
      \                                          BigNatural ldsSeed,\n                                           BigNatural
      prsSeed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 132
    functionName: "&\n    RandomizedLDS<LDS, PRS>::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/randomizedlds.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: typename RandomizedLDS<LDS, PRS>::sample_type
    signature: "typename RandomizedLDS<LDS, PRS>::sample_type &\n    RandomizedLDS<LDS,
      PRS>::nextSequence() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:31,1
    - Dst: QuantLib::Burley2020SobolRsg::reset
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:32,1
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:33,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:36,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - directionIntegers
    - scrambleSeed
    argTypes:
    - Size
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::Burley2020SobolRsg::Burley2020SobolRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - resize
    - std::vector<Real>
    - QuantLib::Burley2020SobolRsg::reset
    - static_cast<std::uint32_t>
    - MersenneTwisterUniformRng::nextInt32
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolRsg::Burley2020SobolRsg(Size dimensionality,\n
      \                                          unsigned long seed,\n                                           SobolRsg::DirectionIntegers
      directionIntegers,\n                                           unsigned long
      scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SobolRsg>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::Burley2020SobolRsg::reset
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<SobolRsg>
    linkageType: ''
    returnType: void
    signature: void Burley2020SobolRsg::reset() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:46,1
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - n
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: '& Burley2020SobolRsg::skipTo(std::uint32_t n) const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - reset
    - nextInt32Sequence
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & Burley2020SobolRsg::skipTo(std::uint32_t
      n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::reverseBits
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t reverseBits(std::uint32_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::laine_karras_permutation
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t laine_karras_permutation(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:93,1
    - Dst: QuantLib::laine_karras_permutation
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:94,1
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::nested_uniform_scramble
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::laine_karras_permutation
    - QuantLib::reverseBits
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t nested_uniform_scramble(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::local_hash_mix
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_mix(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:117,1
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::local_hash
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::local_hash_mix
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash(const std::uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    - Dst: QuantLib::local_hash
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - std::uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::local_hash_combine
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::local_hash_mix
    - QuantLib::local_hash
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_combine(std::uint64_t x, const uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::reverseBits
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t reverseBits(std::uint32_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::laine_karras_permutation
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t laine_karras_permutation(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:93,1
    - Dst: QuantLib::laine_karras_permutation
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:94,1
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::nested_uniform_scramble
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::laine_karras_permutation
    - QuantLib::reverseBits
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t nested_uniform_scramble(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::local_hash_mix
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_mix(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:117,1
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::local_hash
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::local_hash_mix
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash(const std::uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    - Dst: QuantLib::local_hash
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - std::uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::local_hash_combine
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::local_hash_mix
    - QuantLib::local_hash
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_combine(std::uint64_t x, const uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nested_uniform_scramble
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:128,1
    - Dst: skipTo
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:129,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: local_hash_combine
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:135,1
    - Dst: nested_uniform_scramble
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:137,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:140,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 143
    functionName: '& Burley2020SobolRsg::nextInt32Sequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - skipTo
    - nested_uniform_scramble
    - static_cast<std::uint32_t>
    - end
    - local_hash_combine
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & Burley2020SobolRsg::nextInt32Sequence()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:146,1
    - Dst: static_cast<double>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionName: '& Burley2020SobolRsg::nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - nextInt32Sequence
    - static_cast<double>
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & Burley2020SobolRsg::nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:31,1
    - Dst: QuantLib::Burley2020SobolRsg::reset
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:32,1
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:33,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:36,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - directionIntegers
    - scrambleSeed
    argTypes:
    - Size
    - unsigned long
    - SobolRsg::DirectionIntegers
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::Burley2020SobolRsg::Burley2020SobolRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - resize
    - std::vector<Real>
    - QuantLib::Burley2020SobolRsg::reset
    - static_cast<std::uint32_t>
    - MersenneTwisterUniformRng::nextInt32
    linkageType: ''
    returnType: void
    signature: "void Burley2020SobolRsg::Burley2020SobolRsg(Size dimensionality,\n
      \                                          unsigned long seed,\n                                           SobolRsg::DirectionIntegers
      directionIntegers,\n                                           unsigned long
      scrambleSeed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SobolRsg>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::Burley2020SobolRsg::reset
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - ext::make_shared<SobolRsg>
    linkageType: ''
    returnType: void
    signature: void Burley2020SobolRsg::reset() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:46,1
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - n
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: '& Burley2020SobolRsg::skipTo(std::uint32_t n) const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - reset
    - nextInt32Sequence
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & Burley2020SobolRsg::skipTo(std::uint32_t
      n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::reverseBits
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t reverseBits(std::uint32_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::laine_karras_permutation
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t laine_karras_permutation(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:93,1
    - Dst: QuantLib::laine_karras_permutation
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:94,1
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::nested_uniform_scramble
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::laine_karras_permutation
    - QuantLib::reverseBits
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t nested_uniform_scramble(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::local_hash_mix
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_mix(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:117,1
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::local_hash
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::local_hash_mix
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash(const std::uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    - Dst: QuantLib::local_hash
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - std::uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::local_hash_combine
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::local_hash_mix
    - QuantLib::local_hash
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_combine(std::uint64_t x, const uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::reverseBits
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t reverseBits(std::uint32_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: QuantLib::laine_karras_permutation
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t laine_karras_permutation(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:93,1
    - Dst: QuantLib::laine_karras_permutation
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:94,1
    - Dst: QuantLib::reverseBits
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - x
    - seed
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::nested_uniform_scramble
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::laine_karras_permutation
    - QuantLib::reverseBits
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t nested_uniform_scramble(std::uint32_t x, std::uint32_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::local_hash_mix
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_mix(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:117,1
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::local_hash
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::local_hash_mix
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash(const std::uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_mix
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    - Dst: QuantLib::local_hash
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - std::uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::local_hash_combine
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::local_hash_mix
    - QuantLib::local_hash
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t local_hash_combine(std::uint64_t x, const uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nested_uniform_scramble
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:128,1
    - Dst: skipTo
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:129,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:130,1
    - Dst: local_hash_combine
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:135,1
    - Dst: nested_uniform_scramble
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:137,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:140,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 143
    functionName: '& Burley2020SobolRsg::nextInt32Sequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - skipTo
    - nested_uniform_scramble
    - static_cast<std::uint32_t>
    - end
    - local_hash_combine
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::uint32_t>
    signature: std::vector<std::uint32_t> & Burley2020SobolRsg::nextInt32Sequence()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:146,1
    - Dst: static_cast<double>
      Src: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionName: '& Burley2020SobolRsg::nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.cpp
    functionUses: 0
    functionsReached:
    - nextInt32Sequence
    - static_cast<double>
    linkageType: ''
    returnType: SobolRsg::sample_type
    signature: SobolRsg::sample_type & Burley2020SobolRsg::nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SeedGenerator::initialize
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::SeedGenerator::SeedGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SeedGenerator::initialize
    linkageType: ''
    returnType: void
    signature: void SeedGenerator::SeedGenerator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::time
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:36,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:41,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:46,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:48,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:49,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:50,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:51,1
    - Dst: MersenneTwisterUniformRng
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:53,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 57
    functionName: QuantLib::SeedGenerator::initialize
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 1
    functionsReached:
    - std::time
    - MersenneTwisterUniformRng
    - nextInt32
    - MersenneTwisterUniformRng::nextInt32
    linkageType: ''
    returnType: void
    signature: void SeedGenerator::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::SeedGenerator::get
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 0
    functionsReached:
    - nextInt32
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long SeedGenerator::get()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SeedGenerator::initialize
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::SeedGenerator::SeedGenerator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SeedGenerator::initialize
    linkageType: ''
    returnType: void
    signature: void SeedGenerator::SeedGenerator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::time
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:36,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:41,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:46,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:48,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:49,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:50,1
    - Dst: MersenneTwisterUniformRng::nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:51,1
    - Dst: MersenneTwisterUniformRng
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:53,1
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 57
    functionName: QuantLib::SeedGenerator::initialize
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 2
    functionsReached:
    - std::time
    - MersenneTwisterUniformRng
    - nextInt32
    - MersenneTwisterUniformRng::nextInt32
    linkageType: ''
    returnType: void
    signature: void SeedGenerator::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::SeedGenerator::get
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/seedgenerator.cpp
    functionUses: 0
    functionsReached:
    - nextInt32
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long SeedGenerator::get()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::HaltonRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::HaltonRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:32,1
    - Dst: QuantLib::PrimeNumbers::get
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:39,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:44,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:44,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:45,1
    - Dst: std::vector<std::vector<long int> >
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:46,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:47,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:48,1
    - Dst: std::vector<std::vector<long int> >
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:52,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:64,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:73,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 1
    argNames:
    - dimensionality
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 107
    functionName: QuantLib::FaureRsg::FaureRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - std::vector<std::vector<long int> >
    - std::log
    - std::vector<long int>
    - resize
    - std::vector<Real>
    - push_back
    - QuantLib::PrimeNumbers::get
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FaureRsg::FaureRsg(Size dimensionality)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:118,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 131
    functionName: QuantLib::FaureRsg::generateNextIntSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FaureRsg::generateNextIntSequence() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:32,1
    - Dst: QuantLib::PrimeNumbers::get
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:39,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:44,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:44,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:45,1
    - Dst: std::vector<std::vector<long int> >
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:46,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:47,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:48,1
    - Dst: std::vector<std::vector<long int> >
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:52,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:64,1
    - Dst: std::vector<long int>
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:72,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:73,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 1
    argNames:
    - dimensionality
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 107
    functionName: QuantLib::FaureRsg::FaureRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - std::vector<std::vector<long int> >
    - std::log
    - std::vector<long int>
    - resize
    - std::vector<Real>
    - push_back
    - QuantLib::PrimeNumbers::get
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FaureRsg::FaureRsg(Size dimensionality)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.cpp:118,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 131
    functionName: QuantLib::FaureRsg::generateNextIntSequence
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FaureRsg::generateNextIntSequence() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 56
    functionName: QuantLib::LecuyerUniformRng::LecuyerUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void LecuyerUniformRng::LecuyerUniformRng(long seed)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 84
    functionName: QuantLib::LecuyerUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LecuyerUniformRng::sample_type
    signature: LecuyerUniformRng::sample_type LecuyerUniformRng::next() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 56
    functionName: QuantLib::LecuyerUniformRng::LecuyerUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void LecuyerUniformRng::LecuyerUniformRng(long seed)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 84
    functionName: QuantLib::LecuyerUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/lecuyeruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LecuyerUniformRng::sample_type
    signature: LecuyerUniformRng::sample_type LecuyerUniformRng::next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:32,1
    - Dst: QuantLib::KnuthUniformRng::ranf_start
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:33,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::KnuthUniformRng::KnuthUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::detail::instance
    - QuantLib::KnuthUniformRng::ranf_start
    linkageType: ''
    returnType: void
    signature: void KnuthUniformRng::KnuthUniformRng(long seed)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:57,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:58,1
    - Dst: QuantLib::KnuthUniformRng::is_odd
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:60,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:64,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 73
    functionName: QuantLib::KnuthUniformRng::ranf_start
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::KnuthUniformRng::is_odd
    - QuantLib::KnuthUniformRng::mod_sum
    linkageType: ''
    returnType: void
    signature: void KnuthUniformRng::ranf_start(long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:79,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:80,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:81,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' aa'
    - n
    argTypes:
    - std::vector<double>
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::KnuthUniformRng::ranf_array
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KnuthUniformRng::mod_sum
    linkageType: ''
    returnType: void
    signature: "void KnuthUniformRng::ranf_array(std::vector<double>& aa,\n                                     int
      n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::ranf_array
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: QuantLib::KnuthUniformRng::ranf_arr_cycle
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KnuthUniformRng::ranf_array
    linkageType: ''
    returnType: double
    signature: double KnuthUniformRng::ranf_arr_cycle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:32,1
    - Dst: QuantLib::KnuthUniformRng::ranf_start
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:33,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::KnuthUniformRng::KnuthUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::detail::instance
    - QuantLib::KnuthUniformRng::ranf_start
    linkageType: ''
    returnType: void
    signature: void KnuthUniformRng::KnuthUniformRng(long seed)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:57,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:58,1
    - Dst: QuantLib::KnuthUniformRng::is_odd
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:60,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:64,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 1
    argNames:
    - seed
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 73
    functionName: QuantLib::KnuthUniformRng::ranf_start
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::KnuthUniformRng::is_odd
    - QuantLib::KnuthUniformRng::mod_sum
    linkageType: ''
    returnType: void
    signature: void KnuthUniformRng::ranf_start(long seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:79,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:80,1
    - Dst: QuantLib::KnuthUniformRng::mod_sum
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:81,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' aa'
    - n
    argTypes:
    - std::vector<double>
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::KnuthUniformRng::ranf_array
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::KnuthUniformRng::mod_sum
    linkageType: ''
    returnType: void
    signature: "void KnuthUniformRng::ranf_array(std::vector<double>& aa,\n                                     int
      n) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::ranf_array
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: QuantLib::KnuthUniformRng::ranf_arr_cycle
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KnuthUniformRng::ranf_array
    linkageType: ''
    returnType: double
    signature: double KnuthUniformRng::ranf_arr_cycle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uniformGenerator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: QuantLib::BoxMullerGaussianRng<RNG>::BoxMullerGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BoxMullerGaussianRng<RNG>::BoxMullerGaussianRng(const RNG& uniformGenerator)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoxMullerGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:69,1
    - Dst: QuantLib::BoxMullerGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 89
    functionName: QuantLib::BoxMullerGaussianRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BoxMullerGaussianRng<RNG>::next
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: typename BoxMullerGaussianRng<RNG>::sample_type
    signature: typename BoxMullerGaussianRng<RNG>::sample_type BoxMullerGaussianRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uniformGenerator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: QuantLib::BoxMullerGaussianRng<RNG>::BoxMullerGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BoxMullerGaussianRng<RNG>::BoxMullerGaussianRng(const RNG& uniformGenerator)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BoxMullerGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:69,1
    - Dst: QuantLib::BoxMullerGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 89
    functionName: QuantLib::BoxMullerGaussianRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/boxmullergaussianrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BoxMullerGaussianRng<RNG>::next
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: typename BoxMullerGaussianRng<RNG>::sample_type
    signature: typename BoxMullerGaussianRng<RNG>::sample_type BoxMullerGaussianRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uint64Generator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: QuantLib::ZigguratGaussianRng::ZigguratGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZigguratGaussianRng(const RNG& uint64Generator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::ZigguratGaussianRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nextInt64
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:93,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:94,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:94,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normX
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:97,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:99,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normX
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:99,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::zeroCase
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:104,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::pdf
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 110
    functionName: QuantLib::ZigguratGaussianRng<RNG>::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZigguratGaussianRng<RNG>::zeroCase
    - QuantLib::ZigguratGaussianRng<RNG>::nextReal
    - QuantLib::ZigguratGaussianRng<RNG>::normX
    - Real
    - nextInt64
    - QuantLib::ZigguratGaussianRng<RNG>::normF
    - QuantLib::ZigguratGaussianRng<RNG>::pdf
    - std::abs
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::nextReal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:118,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:118,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:121,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 122
    functionName: QuantLib::ZigguratGaussianRng<RNG>::zeroCase
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZigguratGaussianRng<RNG>::normR
    - QuantLib::ZigguratGaussianRng<RNG>::nextReal
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::zeroCase(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::ZigguratGaussianRng<RNG>::pdf
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::pdf(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normR
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normR() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 203
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normX
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normX(int i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 274
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normF
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normF(int i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uint64Generator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: QuantLib::ZigguratGaussianRng::ZigguratGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZigguratGaussianRng(const RNG& uint64Generator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::ZigguratGaussianRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nextInt64
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:93,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:94,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:94,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normX
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:97,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:99,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normX
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:99,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::zeroCase
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:104,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normF
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::pdf
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 110
    functionName: QuantLib::ZigguratGaussianRng<RNG>::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::ZigguratGaussianRng<RNG>::zeroCase
    - QuantLib::ZigguratGaussianRng<RNG>::nextReal
    - QuantLib::ZigguratGaussianRng<RNG>::normX
    - Real
    - nextInt64
    - QuantLib::ZigguratGaussianRng<RNG>::normF
    - QuantLib::ZigguratGaussianRng<RNG>::pdf
    - std::abs
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::nextReal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:117,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:118,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:118,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:121,1
    - Dst: QuantLib::ZigguratGaussianRng<RNG>::normR
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 122
    functionName: QuantLib::ZigguratGaussianRng<RNG>::zeroCase
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZigguratGaussianRng<RNG>::normR
    - QuantLib::ZigguratGaussianRng<RNG>::nextReal
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::zeroCase(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::ZigguratGaussianRng<RNG>::pdf
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::pdf(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normR
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normR() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 203
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normX
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normX(int i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 274
    functionName: QuantLib::ZigguratGaussianRng<RNG>::normF
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/zigguratgaussianrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ZigguratGaussianRng<RNG>::normF(int i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Xoshiro256StarStarUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::nextInt64
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Xoshiro256StarStarUniformRng::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::nextInt64
    - Real
    linkageType: ''
    returnType: Real
    signature: Real nextReal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::rotl
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:77,1
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::rotl
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::Xoshiro256StarStarUniformRng::nextInt64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::rotl
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t nextInt64() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - k
    argTypes:
    - std::uint64_t
    - std::int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::Xoshiro256StarStarUniformRng::rotl
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t rotl(std::uint64_t x, std::int32_t k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::nextReal
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::Xoshiro256StarStarUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::nextReal
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::nextInt64
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Xoshiro256StarStarUniformRng::nextReal
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::nextInt64
    - Real
    linkageType: ''
    returnType: Real
    signature: Real nextReal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::rotl
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:77,1
    - Dst: QuantLib::Xoshiro256StarStarUniformRng::rotl
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::Xoshiro256StarStarUniformRng::nextInt64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Xoshiro256StarStarUniformRng::rotl
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t nextInt64() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - k
    argTypes:
    - std::uint64_t
    - std::int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::Xoshiro256StarStarUniformRng::rotl
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t rotl(std::uint64_t x, std::int32_t k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ug'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::InverseCumulativeRng<RNG, IC>::InverseCumulativeRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRng<RNG, IC>::InverseCumulativeRng(const RNG&
      ug)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeRng<RNG, IC>::next
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:73,1
    - Dst: sample_type
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:74,1
    - Dst: ICND_
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::InverseCumulativeRng<RNG, IC>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp
    functionUses: 1
    functionsReached:
    - ICND_
    - QuantLib::InverseCumulativeRng<RNG, IC>::next
    - sample_type
    linkageType: ''
    returnType: typename InverseCumulativeRng<RNG, IC>::sample_type
    signature: typename InverseCumulativeRng<RNG, IC>::sample_type InverseCumulativeRng<RNG,
      IC>::next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ug'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::InverseCumulativeRng<RNG, IC>::InverseCumulativeRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRng<RNG, IC>::InverseCumulativeRng(const RNG&
      ug)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeRng<RNG, IC>::next
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:73,1
    - Dst: sample_type
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:74,1
    - Dst: ICND_
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::InverseCumulativeRng<RNG, IC>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativerng.hpp
    functionUses: 2
    functionsReached:
    - ICND_
    - QuantLib::InverseCumulativeRng<RNG, IC>::next
    - sample_type
    linkageType: ''
    returnType: typename InverseCumulativeRng<RNG, IC>::sample_type
    signature: typename InverseCumulativeRng<RNG, IC>::sample_type InverseCumulativeRng<RNG,
      IC>::next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateNextIntSequence
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: '& nextIntSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached:
    - generateNextIntSequence
    linkageType: ''
    returnType: std::vector<long int>
    signature: std::vector<long int> & nextIntSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: '& lastIntSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<long int>
    signature: std::vector<long int> & lastIntSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateNextIntSequence
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached:
    - generateNextIntSequence
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FaureRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateNextIntSequence
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: '& nextIntSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached:
    - generateNextIntSequence
    linkageType: ''
    returnType: std::vector<long int>
    signature: std::vector<long int> & nextIntSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: '& lastIntSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<long int>
    signature: std::vector<long int> & lastIntSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateNextIntSequence
      Src: /src/quantlib/ql/math/randomnumbers/faurersg.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached:
    - generateNextIntSequence
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FaureRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/faurersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Burley2020SobolRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Burley2020SobolRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/burley2020sobolrsg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:43,1
    - Dst: RandomSequenceGenerator::nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:50,1
    - Dst: RandomSequenceGenerator::nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - randomStart
    - randomShift
    argTypes:
    - Size
    - unsigned long
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 54
    functionName: QuantLib::HaltonRsg::HaltonRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp
    functionUses: 0
    functionsReached:
    - RandomSequenceGenerator::nextInt32Sequence
    - std::vector<Real>
    - RandomSequenceGenerator::nextSequence
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HaltonRsg::HaltonRsg(Size dimensionality,\n                         unsigned
      long seed,\n                         bool randomStart,\n                         bool
      randomShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PrimeNumbers::get
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:60,1
    - Dst: long
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionName: '& HaltonRsg::nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp
    functionUses: 0
    functionsReached:
    - long
    - QuantLib::PrimeNumbers::get
    linkageType: ''
    returnType: HaltonRsg::sample_type
    signature: HaltonRsg::sample_type & HaltonRsg::nextSequence() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:43,1
    - Dst: RandomSequenceGenerator::nextInt32Sequence
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:50,1
    - Dst: RandomSequenceGenerator::nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - dimensionality
    - seed
    - randomStart
    - randomShift
    argTypes:
    - Size
    - unsigned long
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 54
    functionName: QuantLib::HaltonRsg::HaltonRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp
    functionUses: 0
    functionsReached:
    - RandomSequenceGenerator::nextInt32Sequence
    - std::vector<Real>
    - RandomSequenceGenerator::nextSequence
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HaltonRsg::HaltonRsg(Size dimensionality,\n                         unsigned
      long seed,\n                         bool randomStart,\n                         bool
      randomShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PrimeNumbers::get
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:60,1
    - Dst: long
      Src: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionName: '& HaltonRsg::nextSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/haltonrsg.cpp
    functionUses: 0
    functionsReached:
    - long
    - QuantLib::PrimeNumbers::get
    linkageType: ''
    returnType: HaltonRsg::sample_type
    signature: HaltonRsg::sample_type & HaltonRsg::nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ranlux64_base_01
      Src: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: QuantLib::Ranlux64UniformRng::Ranlux64UniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp
    functionUses: 0
    functionsReached:
    - ranlux64_base_01
    linkageType: ''
    returnType: void
    signature: void Ranlux64UniformRng(std::uint_fast64_t seed = 19780503U)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ranlux_
      Src: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Ranlux64UniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp
    functionUses: 0
    functionsReached:
    - ranlux_
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ranlux64_base_01
      Src: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: QuantLib::Ranlux64UniformRng::Ranlux64UniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp
    functionUses: 0
    functionsReached:
    - ranlux64_base_01
    linkageType: ''
    returnType: void
    signature: void Ranlux64UniformRng(std::uint_fast64_t seed = 19780503U)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ranlux_
      Src: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Ranlux64UniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/ranluxuniformrng.hpp
    functionUses: 0
    functionsReached:
    - ranlux_
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:55,1
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp
    functionUses: 1
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:92,1
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp
    functionUses: 1
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:55,1
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp
    functionUses: 1
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:92,1
    - Dst: rsg_type
      Src: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/rngtraits.hpp
    functionUses: 1
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::InverseCumulativeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:75,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:75,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - usg
    argTypes:
    - USG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg(USG usg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:80,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:80,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - usg
    - ' inverseCum'
    argTypes:
    - USG
    - IC
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg(USG usg, const
      IC& inverseCum)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:87,1
    - Dst: ICD_
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionName: "&\n    InverseCumulativeRsg<USG, IC>::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    - ICD_
    linkageType: ''
    returnType: typename InverseCumulativeRsg<USG, IC>::sample_type
    signature: "typename InverseCumulativeRsg<USG, IC>::sample_type &\n    InverseCumulativeRsg<USG,
      IC>::nextSequence() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::InverseCumulativeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:75,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:75,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - usg
    argTypes:
    - USG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg(USG usg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:80,1
    - Dst: dimension
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:80,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - usg
    - ' inverseCum'
    argTypes:
    - USG
    - IC
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - dimension
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void InverseCumulativeRsg<USG, IC>::InverseCumulativeRsg(USG usg, const
      IC& inverseCum)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:87,1
    - Dst: ICD_
      Src: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionName: "&\n    InverseCumulativeRsg<USG, IC>::nextSequence() const"
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/inversecumulativersg.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    - ICD_
    linkageType: ''
    returnType: typename InverseCumulativeRsg<USG, IC>::sample_type
    signature: "typename InverseCumulativeRsg<USG, IC>::sample_type &\n    InverseCumulativeRsg<USG,
      IC>::nextSequence() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uniformGenerator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::CLGaussianRng<RNG>::CLGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CLGaussianRng<RNG>::CLGaussianRng(const RNG& uniformGenerator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CLGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionName: QuantLib::CLGaussianRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CLGaussianRng<RNG>::next
    linkageType: ''
    returnType: typename CLGaussianRng<RNG>::sample_type
    signature: typename CLGaussianRng<RNG>::sample_type CLGaussianRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' uniformGenerator'
    argTypes:
    - RNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::CLGaussianRng<RNG>::CLGaussianRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CLGaussianRng<RNG>::CLGaussianRng(const RNG& uniformGenerator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CLGaussianRng<RNG>::next
      Src: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionName: QuantLib::CLGaussianRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/centrallimitgaussianrng.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CLGaussianRng<RNG>::next
    linkageType: ''
    returnType: typename CLGaussianRng<RNG>::sample_type
    signature: typename CLGaussianRng<RNG>::sample_type CLGaussianRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::LatticeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::LatticeRsg::dimension
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& lastSequence() const'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: sample_type
    signature: sample_type & lastSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:34,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:37,1
    - Dst: invCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    - Dst: normalCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sigma
    - ' x'
    - ' invCDF'
    argTypes:
    - Real
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::g
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - normalCDF
    - QuantLib::size
    - invCDF
    linkageType: ''
    returnType: Array
    signature: "Array g(Real sigma, const Array& x,\n                const std::function<Real(Real)>&
      invCDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:34,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:37,1
    - Dst: invCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    - Dst: normalCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sigma
    - ' x'
    - ' invCDF'
    argTypes:
    - Real
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::g
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - normalCDF
    - QuantLib::size
    - invCDF
    linkageType: ''
    returnType: Array
    signature: "Array g(Real sigma, const Array& x,\n                const std::function<Real(Real)>&
      invCDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermiteIntegration
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:49,1
    - Dst: back
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:50,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:51,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: front
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: g
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' invCDF'
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::StochasticCollocationInvCDF::StochasticCollocationInvCDF
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - g
    - GaussHermiteIntegration
    - Null<Real>
    - begin
    - Real
    - back
    - end
    - InverseCumulativeNormal
    - front
    linkageType: ''
    returnType: void
    signature: "void StochasticCollocationInvCDF::StochasticCollocationInvCDF(\n        const
      std::function<Real(Real)>& invCDF,\n        Size lagrangeOrder, Real pMax, Real
      pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpl_
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::StochasticCollocationInvCDF::value
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - interpl_
    linkageType: ''
    returnType: Real
    signature: Real StochasticCollocationInvCDF::value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:62,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: StochasticCollocationInvCDF::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - InverseCumulativeNormal
    - value
    linkageType: ''
    returnType: Real
    signature: Real StochasticCollocationInvCDF::operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:34,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:37,1
    - Dst: invCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    - Dst: normalCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sigma
    - ' x'
    - ' invCDF'
    argTypes:
    - Real
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::g
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - normalCDF
    - QuantLib::size
    - invCDF
    linkageType: ''
    returnType: Array
    signature: "Array g(Real sigma, const Array& x,\n                const std::function<Real(Real)>&
      invCDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:34,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:37,1
    - Dst: invCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    - Dst: normalCDF
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sigma
    - ' x'
    - ' invCDF'
    argTypes:
    - Real
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::g
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - normalCDF
    - QuantLib::size
    - invCDF
    linkageType: ''
    returnType: Array
    signature: "Array g(Real sigma, const Array& x,\n                const std::function<Real(Real)>&
      invCDF)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermiteIntegration
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:49,1
    - Dst: back
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:50,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:51,1
    - Dst: Real
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: front
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:52,1
    - Dst: g
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:54,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    - Dst: end
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' invCDF'
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - std::function<Real(Real)>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::StochasticCollocationInvCDF::StochasticCollocationInvCDF
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - g
    - GaussHermiteIntegration
    - Null<Real>
    - begin
    - Real
    - back
    - end
    - InverseCumulativeNormal
    - front
    linkageType: ''
    returnType: void
    signature: "void StochasticCollocationInvCDF::StochasticCollocationInvCDF(\n        const
      std::function<Real(Real)>& invCDF,\n        Size lagrangeOrder, Real pMax, Real
      pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpl_
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::StochasticCollocationInvCDF::value
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - interpl_
    linkageType: ''
    returnType: Real
    signature: Real StochasticCollocationInvCDF::value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:62,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: StochasticCollocationInvCDF::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/stochasticcollocationinvcdf.cpp
    functionUses: 0
    functionsReached:
    - InverseCumulativeNormal
    - value
    linkageType: ''
    returnType: Real
    signature: Real StochasticCollocationInvCDF::operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::ranf_arr_cycle
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 3
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: QuantLib::KnuthUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KnuthUniformRng::ranf_arr_cycle
    linkageType: ''
    returnType: KnuthUniformRng::sample_type
    signature: KnuthUniformRng::sample_type KnuthUniformRng::next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::KnuthUniformRng::mod_sum
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double KnuthUniformRng::mod_sum(double x, double y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::KnuthUniformRng::is_odd
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool KnuthUniformRng::is_odd(int s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KnuthUniformRng::ranf_arr_cycle
      Src: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 3
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: QuantLib::KnuthUniformRng::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KnuthUniformRng::ranf_arr_cycle
    linkageType: ''
    returnType: KnuthUniformRng::sample_type
    signature: KnuthUniformRng::sample_type KnuthUniformRng::next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::KnuthUniformRng::mod_sum
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double KnuthUniformRng::mod_sum(double x, double y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::KnuthUniformRng::is_odd
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/knuthuniformrng.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool KnuthUniformRng::is_odd(int s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:29,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - dimensionality
    - z
    - N
    argTypes:
    - Size
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::LatticeRsg::LatticeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void LatticeRsg::LatticeRsg(Size dimensionality, std::vector<Real>
      z, Size N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::LatticeRsg::skipTo
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LatticeRsg::skipTo(unsigned long n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fmod
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: '& LatticeRsg::nextSequence()'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached:
    - std::fmod
    linkageType: ''
    returnType: LatticeRsg::sample_type
    signature: LatticeRsg::sample_type & LatticeRsg::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:29,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - dimensionality
    - z
    - N
    argTypes:
    - Size
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::LatticeRsg::LatticeRsg
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: void LatticeRsg::LatticeRsg(Size dimensionality, std::vector<Real>
      z, Size N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::LatticeRsg::skipTo
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LatticeRsg::skipTo(unsigned long n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fmod
      Src: /src/quantlib/ql/math/randomnumbers/latticersg.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: '& LatticeRsg::nextSequence()'
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/latticersg.cpp
    functionUses: 0
    functionsReached:
    - std::fmod
    linkageType: ''
    returnType: LatticeRsg::sample_type
    signature: LatticeRsg::sample_type & LatticeRsg::nextSequence()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SplitMix64::SplitMix64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SplitMix64(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::SplitMix64::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SplitMix64::SplitMix64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SplitMix64(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::SplitMix64::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:55,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:56,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:57,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:58,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - seed
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: QuantLib::Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - SplitMix64::next
    linkageType: ''
    returnType: void
    signature: void Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng(std::uint64_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - s0
    - s1
    - s2
    - s3
    argTypes:
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng(std::uint64_t
      s0,\n                                                               std::uint64_t
      s1,\n                                                               std::uint64_t
      s2,\n                                                               std::uint64_t
      s3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SplitMix64::SplitMix64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SplitMix64(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::SplitMix64::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SplitMix64::SplitMix64
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SplitMix64(std::uint64_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::SplitMix64::next
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint64_t
    signature: std::uint64_t next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:55,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:56,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:57,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:58,1
    - Dst: SplitMix64::next
      Src: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - seed
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: QuantLib::Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - SplitMix64::next
    linkageType: ''
    returnType: void
    signature: void Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng(std::uint64_t
      seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - s0
    - s1
    - s2
    - s3
    argTypes:
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng
    functionSourceFile: /src/quantlib/ql/math/randomnumbers/xoshiro256starstaruniformrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Xoshiro256StarStarUniformRng::Xoshiro256StarStarUniformRng(std::uint64_t
      s0,\n                                                               std::uint64_t
      s1,\n                                                               std::uint64_t
      s2,\n                                                               std::uint64_t
      s3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diagonal
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:32,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:40,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' cov'
    - tolerance
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 49
    functionName: QuantLib::CovarianceDecomposition::CovarianceDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp
    functionUses: 0
    functionsReached:
    - diagonal
    - Array
    - rows
    - Matrix
    - std::fabs
    - columns
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CovarianceDecomposition::CovarianceDecomposition(const Matrix&
      cov,\n                                                     Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diagonal
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:26,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:32,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:40,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' cov'
    - tolerance
    argTypes:
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 49
    functionName: QuantLib::CovarianceDecomposition::CovarianceDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.cpp
    functionUses: 0
    functionsReached:
    - diagonal
    - Array
    - rows
    - Matrix
    - std::fabs
    - columns
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CovarianceDecomposition::CovarianceDecomposition(const Matrix&
      cov,\n                                                     Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& eigenvalues()  const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & eigenvalues()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& eigenvectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & eigenvectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::TqrEigenDecomposition::iterations
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size iterations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& eigenvalues()  const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & eigenvalues()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& eigenvectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & eigenvectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::TqrEigenDecomposition::iterations
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size iterations() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:39,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:49,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:68,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:71,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:73,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:82,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:92,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:94,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:96,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:98,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:111,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:120,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:120,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:121,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:121,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:122,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:129,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 75
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 138
    functionName: QuantLib::SymmetricSchurDecomposition::SymmetricSchurDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - QL_ENSURE
    - std::copy
    - std::make_pair
    - std::sort
    - std::vector::begin
    - rows
    - begin
    - std::vector::end
    - column_end
    - std::fabs
    - columns
    - QuantLib::SymmetricSchurDecomposition::jacobiRotate_
    - std::sqrt
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SymmetricSchurDecomposition::SymmetricSchurDecomposition(const
      Matrix & s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:39,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:49,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:68,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:71,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:73,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:82,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:92,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:94,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:96,1
    - Dst: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:98,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:111,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:120,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:120,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:121,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:121,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:122,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:124,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp:129,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 75
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 138
    functionName: QuantLib::SymmetricSchurDecomposition::SymmetricSchurDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - QL_ENSURE
    - std::copy
    - std::make_pair
    - std::sort
    - std::vector::begin
    - rows
    - begin
    - std::vector::end
    - column_end
    - std::fabs
    - columns
    - QuantLib::SymmetricSchurDecomposition::jacobiRotate_
    - std::sqrt
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SymmetricSchurDecomposition::SymmetricSchurDecomposition(const
      Matrix & s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - A
    - maxIter
    - relTol
    - preConditioner
    argTypes:
    - GMRES::MatrixMult
    - Size
    - Real
    - GMRES::MatrixMult
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::GMRES::GMRES
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 4
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GMRES::GMRES(GMRES::MatrixMult A, Size maxIter, Real relTol, GMRES::MatrixMult
      preConditioner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:42,1
    - Dst: GMRESResult::errors::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::GMRES::solve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GMRES::solveImpl
    - GMRESResult::errors::back
    - QL_REQUIRE
    linkageType: ''
    returnType: GMRESResult
    signature: GMRESResult GMRES::solve(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:50,1
    - Dst: GMRESResult::errors::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:54,1
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:55,1
    - Dst: std::list::insert
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:56,1
    - Dst: std::list::end
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: GMRESResult::errors::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: GMRESResult::errors::end
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:60,1
    - Dst: std::list::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - restart
    - ' b'
    - ' x0'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 64
    functionName: QuantLib::GMRES::solveWithRestart
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 0
    functionsReached:
    - std::list::end
    - GMRESResult::errors::begin
    - std::list::back
    - GMRESResult::errors::end
    - GMRESResult::errors::back
    - std::list::insert
    - QuantLib::GMRES::solveImpl
    - QL_REQUIRE
    linkageType: ''
    returnType: GMRESResult
    signature: "GMRESResult GMRES::solveWithRestart(\n        Size restart, const
      Array& b, const Array& x0) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:67,1
    - Dst: std::list<Real>
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:69,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:74,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:76,1
    - Dst: std::list<Real>
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:78,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:83,1
    - Dst: std::list::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:90,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:91,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:92,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:92,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:95,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:99,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: squared
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: squared
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:125,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:128,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:141,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 145
    functionName: QuantLib::GMRES::solveImpl
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 2
    functionsReached:
    - Real
    - std::vector::push_back
    - std::vector::emplace_back
    - empty
    - squared
    - std::list<Real>
    - Array
    - std::list::push_back
    - begin
    - Array::begin
    - A_
    - std::fabs
    - size
    - std::list::back
    - Norm2
    - std::vector::size
    - std::inner_product
    - std::vector::begin
    - Array::size
    - DotProduct
    - std::sqrt
    - M_
    linkageType: ''
    returnType: GMRESResult
    signature: GMRESResult GMRES::solveImpl(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - A
    - maxIter
    - relTol
    - preConditioner
    argTypes:
    - GMRES::MatrixMult
    - Size
    - Real
    - GMRES::MatrixMult
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::GMRES::GMRES
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 4
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GMRES::GMRES(GMRES::MatrixMult A, Size maxIter, Real relTol, GMRES::MatrixMult
      preConditioner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:42,1
    - Dst: GMRESResult::errors::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::GMRES::solve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GMRES::solveImpl
    - GMRESResult::errors::back
    - QL_REQUIRE
    linkageType: ''
    returnType: GMRESResult
    signature: GMRESResult GMRES::solve(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:50,1
    - Dst: GMRESResult::errors::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:54,1
    - Dst: QuantLib::GMRES::solveImpl
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:55,1
    - Dst: std::list::insert
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:56,1
    - Dst: std::list::end
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: GMRESResult::errors::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: GMRESResult::errors::end
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:60,1
    - Dst: std::list::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - restart
    - ' b'
    - ' x0'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 64
    functionName: QuantLib::GMRES::solveWithRestart
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 0
    functionsReached:
    - std::list::end
    - GMRESResult::errors::begin
    - std::list::back
    - GMRESResult::errors::end
    - GMRESResult::errors::back
    - std::list::insert
    - QuantLib::GMRES::solveImpl
    - QL_REQUIRE
    linkageType: ''
    returnType: GMRESResult
    signature: "GMRESResult GMRES::solveWithRestart(\n        Size restart, const
      Array& b, const Array& x0) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:67,1
    - Dst: std::list<Real>
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:69,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:73,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:74,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:76,1
    - Dst: std::list<Real>
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:78,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:83,1
    - Dst: std::list::back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:90,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:91,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:92,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:92,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:95,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:99,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: squared
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: squared
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:114,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:125,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:128,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:135,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:139,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/gmres.cpp:141,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 145
    functionName: QuantLib::GMRES::solveImpl
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/gmres.cpp
    functionUses: 4
    functionsReached:
    - Real
    - std::vector::push_back
    - std::vector::emplace_back
    - empty
    - squared
    - std::list<Real>
    - Array
    - std::list::push_back
    - begin
    - Array::begin
    - A_
    - std::fabs
    - size
    - std::list::back
    - Norm2
    - std::vector::size
    - std::inner_product
    - std::vector::begin
    - Array::size
    - DotProduct
    - std::sqrt
    - M_
    linkageType: ''
    returnType: GMRESResult
    signature: GMRESResult GMRES::solveImpl(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - euclideanDimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::BasisIncompleteOrdered::BasisIncompleteOrdered
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BasisIncompleteOrdered::BasisIncompleteOrdered(Size euclideanDimension)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:36,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:49,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:49,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:57,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' newVector1'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 60
    functionName: QuantLib::BasisIncompleteOrdered::addVector
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - push_back
    - std::sqrt
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool BasisIncompleteOrdered::addVector(const Array& newVector1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::BasisIncompleteOrdered::basisSize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size BasisIncompleteOrdered::basisSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::BasisIncompleteOrdered::euclideanDimension
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size BasisIncompleteOrdered::euclideanDimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:72,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:73,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::BasisIncompleteOrdered::getBasisAsRowsInMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix::columns
    - Matrix::rows
    linkageType: ''
    returnType: Matrix
    signature: Matrix BasisIncompleteOrdered::getBasisAsRowsInMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::normSquared
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normSquared(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    - Dst: QuantLib::normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::norm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::normSquared
    linkageType: ''
    returnType: Real
    signature: Real norm(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' v'
    - row1
    - ' w'
    - row2
    argTypes:
    - Matrix
    - Size
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::innerProduct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real innerProduct(const Matrix& v, Size row1, const Matrix& w, Size
      row2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::normSquared
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 1
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normSquared(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    - Dst: QuantLib::normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::norm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::normSquared
    linkageType: ''
    returnType: Real
    signature: Real norm(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' v'
    - row1
    - ' w'
    - row2
    argTypes:
    - Matrix
    - Size
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::innerProduct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real innerProduct(const Matrix& v, Size row1, const Matrix& w, Size
      row2)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:116,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:117,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:118,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:119,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:120,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:141,1
    - Dst: norm
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:148,1
    - Dst: normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:168,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:174,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:181,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:184,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:196,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 37
    argCount: 3
    argNames:
    - ' originalVectors'
    - multiplierCutoff
    - tolerance
    argTypes:
    - Matrix
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 206
    functionName: QuantLib::OrthogonalProjections::OrthogonalProjections
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - norm
    - innerProduct
    - rows
    - push_back
    - normSquared
    - columns
    - std::fabs
    linkageType: ''
    returnType: void
    signature: "void OrthogonalProjections::OrthogonalProjections(const Matrix& originalVectors,\n
      \                                                Real multiplierCutoff,\n                                                 Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: '& OrthogonalProjections::validVectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> & OrthogonalProjections::validVectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& OrthogonalProjections::GetVector(Size index) const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & OrthogonalProjections::GetVector(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::OrthogonalProjections::numberValidVectors
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OrthogonalProjections::numberValidVectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - euclideanDimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::BasisIncompleteOrdered::BasisIncompleteOrdered
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BasisIncompleteOrdered::BasisIncompleteOrdered(Size euclideanDimension)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:36,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:49,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:49,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:57,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ' newVector1'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 60
    functionName: QuantLib::BasisIncompleteOrdered::addVector
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - push_back
    - std::sqrt
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool BasisIncompleteOrdered::addVector(const Array& newVector1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::BasisIncompleteOrdered::basisSize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size BasisIncompleteOrdered::basisSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::BasisIncompleteOrdered::euclideanDimension
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size BasisIncompleteOrdered::euclideanDimension() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:72,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:73,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::BasisIncompleteOrdered::getBasisAsRowsInMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix::columns
    - Matrix::rows
    linkageType: ''
    returnType: Matrix
    signature: Matrix BasisIncompleteOrdered::getBasisAsRowsInMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::normSquared
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 2
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normSquared(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    - Dst: QuantLib::normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::norm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::normSquared
    linkageType: ''
    returnType: Real
    signature: Real norm(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' v'
    - row1
    - ' w'
    - row2
    argTypes:
    - Matrix
    - Size
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::innerProduct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real innerProduct(const Matrix& v, Size row1, const Matrix& w, Size
      row2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: QuantLib::normSquared
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 3
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normSquared(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    - Dst: QuantLib::normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - row
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::norm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::normSquared
    linkageType: ''
    returnType: Real
    signature: Real norm(const Matrix& v, Size row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ' v'
    - row1
    - ' w'
    - row2
    argTypes:
    - Matrix
    - Size
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::innerProduct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - columns
    linkageType: ''
    returnType: Real
    signature: Real innerProduct(const Matrix& v, Size row1, const Matrix& w, Size
      row2)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:116,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:117,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:118,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:119,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:120,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:141,1
    - Dst: norm
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:148,1
    - Dst: normSquared
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:168,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:174,1
    - Dst: innerProduct
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:181,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:184,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp:196,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 37
    argCount: 3
    argNames:
    - ' originalVectors'
    - multiplierCutoff
    - tolerance
    argTypes:
    - Matrix
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 206
    functionName: QuantLib::OrthogonalProjections::OrthogonalProjections
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached:
    - norm
    - innerProduct
    - rows
    - push_back
    - normSquared
    - columns
    - std::fabs
    linkageType: ''
    returnType: void
    signature: "void OrthogonalProjections::OrthogonalProjections(const Matrix& originalVectors,\n
      \                                                Real multiplierCutoff,\n                                                 Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: '& OrthogonalProjections::validVectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::valarray<bool>
    signature: std::valarray<bool> & OrthogonalProjections::validVectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& OrthogonalProjections::GetVector(Size index) const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & OrthogonalProjections::GetVector(Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::OrthogonalProjections::numberValidVectors
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/basisincompleteordered.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OrthogonalProjections::numberValidVectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:33,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:53,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:67,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:72,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:76,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:79,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:80,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:95,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:96,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:96,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:97,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - mtrx
    - maxIters
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 102
    functionName: QuantLib::factorReduction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::distance
    - std::vector::begin
    - Matrix::rows
    - Matrix::end
    - SymmetricSchurDecomposition::eigenvalues
    - begin
    - push_back
    - std::vector::end
    - std::vector::push_back
    - std::max_element
    - std::sqrt
    - Matrix::columns
    - end
    - std::abs
    - std::min_element
    - Matrix::begin
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> factorReduction(Matrix mtrx,\n                                      Size
      maxIters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:30,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:33,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:41,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:53,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:67,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:69,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:72,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:76,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:79,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:80,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:94,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:95,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:96,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:96,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp:97,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - mtrx
    - maxIters
    argTypes:
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 102
    functionName: QuantLib::factorReduction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/factorreduction.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::distance
    - std::vector::begin
    - Matrix::rows
    - Matrix::end
    - SymmetricSchurDecomposition::eigenvalues
    - begin
    - push_back
    - std::vector::end
    - std::vector::push_back
    - std::max_element
    - std::sqrt
    - Matrix::columns
    - end
    - std::abs
    - std::min_element
    - Matrix::begin
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> factorReduction(Matrix mtrx,\n                                      Size
      maxIters)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - f
    - matrixSize
    - rank
    argTypes:
    - Matrix
    - std::function<Matrix(const Array&, Size, Size)>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::FrobeniusCostFunction::FrobeniusCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FrobeniusCostFunction(Matrix target,\n                              std::function<Matrix(const
      Array&, Size, Size)> f,\n                              Size matrixSize,\n                              Size
      rank)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - f
    - matrixSize
    - rank
    argTypes:
    - Matrix
    - std::function<Matrix(const Array&, Size, Size)>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::FrobeniusCostFunction::FrobeniusCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FrobeniusCostFunction(Matrix target,\n                              std::function<Matrix(const
      Array&, Size, Size)> f,\n                              Size matrixSize,\n                              Size
      rank)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:40,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:44,1
    - Dst: QuantLib::TqrEigenDecomposition::offDiagIsZero
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:49,1
    - Dst: QuantLib::TqrEigenDecomposition::offDiagIsZero
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:86,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:98,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:124,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:125,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:125,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:126,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:127,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:136,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 4
    argNames:
    - ' diag'
    - ' sub'
    - calc
    - strategy
    argTypes:
    - Array
    - Array
    - EigenVectorCalculation
    - ShiftStrategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 140
    functionName: QuantLib::TqrEigenDecomposition::TqrEigenDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - std::make_pair
    - std::copy
    - std::sort
    - std::vector::begin
    - Array::begin
    - rows
    - begin
    - std::vector::end
    - Real
    - column_end
    - std::fabs
    - std::sqrt
    - QuantLib::TqrEigenDecomposition::offDiagIsZero
    - size
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TqrEigenDecomposition::TqrEigenDecomposition(const Array& diag,\n
      \                                                const Array& sub,\n                                                 EigenVectorCalculation
      calc,\n                                                 ShiftStrategy strategy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' e'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::TqrEigenDecomposition::offDiagIsZero
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool TqrEigenDecomposition::offDiagIsZero(Size k, Array& e)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:40,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:43,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:44,1
    - Dst: QuantLib::TqrEigenDecomposition::offDiagIsZero
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:49,1
    - Dst: QuantLib::TqrEigenDecomposition::offDiagIsZero
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:86,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:98,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:124,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:125,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:125,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:126,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:127,1
    - Dst: std::sort
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:129,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:136,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 4
    argNames:
    - ' diag'
    - ' sub'
    - calc
    - strategy
    argTypes:
    - Array
    - Array
    - EigenVectorCalculation
    - ShiftStrategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 140
    functionName: QuantLib::TqrEigenDecomposition::TqrEigenDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - std::make_pair
    - std::copy
    - std::sort
    - std::vector::begin
    - Array::begin
    - rows
    - begin
    - std::vector::end
    - Real
    - column_end
    - std::fabs
    - std::sqrt
    - QuantLib::TqrEigenDecomposition::offDiagIsZero
    - size
    - end
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TqrEigenDecomposition::TqrEigenDecomposition(const Array& diag,\n
      \                                                const Array& sub,\n                                                 EigenVectorCalculation
      calc,\n                                                 ShiftStrategy strategy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' e'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::TqrEigenDecomposition::offDiagIsZero
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tqreigendecomposition.cpp
    functionUses: 2
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: bool
    signature: bool TqrEigenDecomposition::offDiagIsZero(Size k, Array& e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:35,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:52,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:52,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:57,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' S'
    - flexible
    argTypes:
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 64
    functionName: QuantLib::CholeskyDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - rows
    - QuantLib::close_enough
    - Real
    - columns
    - std::sqrt
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix CholeskyDecomposition(const Matrix& S, bool flexible)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:79,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' L'
    - ' b'
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 85
    functionName: QuantLib::CholeskySolveFor
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - Array::begin
    - rows
    - Real
    - column_end
    - columns
    - QuantLib::size
    - row_begin
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array CholeskySolveFor(const Matrix& L, const Array& b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:30,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:30,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:35,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:52,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:52,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:57,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' S'
    - flexible
    argTypes:
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 64
    functionName: QuantLib::CholeskyDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - rows
    - QuantLib::close_enough
    - Real
    - columns
    - std::sqrt
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix CholeskyDecomposition(const Matrix& S, bool flexible)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:69,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:74,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:79,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: column_end
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' L'
    - ' b'
    argTypes:
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 85
    functionName: QuantLib::CholeskySolveFor
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/choleskydecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - Array::begin
    - rows
    - Real
    - column_end
    - columns
    - QuantLib::size
    - row_begin
    - column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array CholeskySolveFor(const Matrix& L, const Array& b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: QuantLib::HouseholderTransformation::HouseholderTransformation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void HouseholderTransformation::HouseholderTransformation(Array v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: HouseholderTransformation::operator()(const Array& x) const
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - DotProduct
    linkageType: ''
    returnType: Array
    signature: Array HouseholderTransformation::operator()(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::HouseholderTransformation::getMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - Norm2
    - Array::size
    linkageType: ''
    returnType: Matrix
    signature: Matrix HouseholderTransformation::getMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - e
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::HouseholderReflection::HouseholderReflection
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void HouseholderReflection::HouseholderReflection(Array e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:49,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:51,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:65,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 72
    functionName: QuantLib::HouseholderReflection::reflectionVector
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - Array
    - DotProduct
    - std::sqrt
    - Norm2
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array HouseholderReflection::reflectionVector(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reflectionVector
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:75,1
    - Dst: HouseholderTransformation
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: HouseholderReflection::operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - reflectionVector
    - HouseholderTransformation
    linkageType: ''
    returnType: Array
    signature: Array HouseholderReflection::operator()(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: QuantLib::HouseholderTransformation::HouseholderTransformation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void HouseholderTransformation::HouseholderTransformation(Array v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: HouseholderTransformation::operator()(const Array& x) const
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - DotProduct
    linkageType: ''
    returnType: Array
    signature: Array HouseholderTransformation::operator()(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::HouseholderTransformation::getMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - Norm2
    - Array::size
    linkageType: ''
    returnType: Matrix
    signature: Matrix HouseholderTransformation::getMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - e
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::HouseholderReflection::HouseholderReflection
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void HouseholderReflection::HouseholderReflection(Array e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:49,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:51,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:55,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:65,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 72
    functionName: QuantLib::HouseholderReflection::reflectionVector
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - Array
    - DotProduct
    - std::sqrt
    - Norm2
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array HouseholderReflection::reflectionVector(const Array& a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reflectionVector
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:75,1
    - Dst: HouseholderTransformation
      Src: /src/quantlib/ql/math/matrixutilities/householder.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: HouseholderReflection::operator()(const Array& a) const
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/householder.cpp
    functionUses: 0
    functionsReached:
    - reflectionVector
    - HouseholderTransformation
    linkageType: ''
    returnType: Array
    signature: Array HouseholderReflection::operator()(const Array& a) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::hypot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real hypot(const Real &a, const Real &b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::hypot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real hypot(const Real &a, const Real &b)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:82,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:82,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:86,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:90,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:91,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:95,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:96,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:97,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:105,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:106,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:107,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:115,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:164,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:296,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:296,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:297,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:310,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:310,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:311,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:311,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:312,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:338,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:361,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:381,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:382,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:383,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:384,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:385,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:386,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:397,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:409,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:424,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:452,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:464,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:467,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:472,1
    CyclomaticComplexity: 87
    EdgeCount: 87
    ICount: 272
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 483
    functionName: QuantLib::SVD::SVD
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - rows
    - Array
    - Real
    - std::max
    - Matrix
    - std::pow
    - columns
    - std::fabs
    - std::sqrt
    - transpose
    - swap
    - Matrix::columns
    - hypot
    - std::min
    linkageType: ''
    returnType: void
    signature: void SVD::SVD(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: '& SVD::U() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SVD::U() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 491
    functionName: '& SVD::V() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SVD::V() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 495
    functionName: '& SVD::singularValues() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & SVD::singularValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:499,1
    - Dst: Size
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 506
    functionName: QuantLib::SVD::S
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Matrix
    signature: Matrix SVD::S() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: QuantLib::SVD::norm2
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SVD::norm2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: QuantLib::SVD::cond
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SVD::cond() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 526
    functionName: QuantLib::SVD::rank
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SVD::rank() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SVD::rank
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:530,1
    - Dst: V
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    - Dst: U
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 536
    functionName: QuantLib::SVD::solveFor
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SVD::rank
    - transpose
    - V
    - U
    linkageType: ''
    returnType: Array
    signature: Array SVD::solveFor(const Array& b) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::hypot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real hypot(const Real &a, const Real &b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::hypot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real hypot(const Real &a, const Real &b)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:82,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:82,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:86,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:90,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:91,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:95,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:96,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:97,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:105,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:106,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:107,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:115,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:164,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:296,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:296,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:297,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:310,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:310,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:311,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:311,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:312,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:338,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:361,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:381,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:382,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:383,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:384,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:385,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:386,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:397,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:409,1
    - Dst: hypot
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:424,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:452,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:464,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:467,1
    - Dst: swap
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:472,1
    CyclomaticComplexity: 87
    EdgeCount: 87
    ICount: 272
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 483
    functionName: QuantLib::SVD::SVD
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - rows
    - Array
    - Real
    - std::max
    - Matrix
    - std::pow
    - columns
    - std::fabs
    - std::sqrt
    - transpose
    - swap
    - Matrix::columns
    - hypot
    - std::min
    linkageType: ''
    returnType: void
    signature: void SVD::SVD(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: '& SVD::U() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SVD::U() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 491
    functionName: '& SVD::V() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & SVD::V() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 495
    functionName: '& SVD::singularValues() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & SVD::singularValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:499,1
    - Dst: Size
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 506
    functionName: QuantLib::SVD::S
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Matrix
    signature: Matrix SVD::S() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: QuantLib::SVD::norm2
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SVD::norm2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: QuantLib::SVD::cond
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SVD::cond() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 526
    functionName: QuantLib::SVD::rank
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SVD::rank() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SVD::rank
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:530,1
    - Dst: V
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    - Dst: U
      Src: /src/quantlib/ql/math/matrixutilities/svd.cpp:534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 536
    functionName: QuantLib::SVD::solveFor
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/svd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SVD::rank
    - transpose
    - V
    - U
    linkageType: ''
    returnType: Array
    signature: Array SVD::solveFor(const Array& b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:30,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:30,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:41,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:43,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:45,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:47,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:51,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' angles'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 55
    functionName: QuantLib::triangularAnglesParametrization
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - Matrix::rows
    - std::sin
    - std::cos
    - QuantLib::size
    - std::min
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrization(const Array& angles,\n                                           Size
      matrixSize,\n                                           Size rank)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:61,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:64,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:65,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:76,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - ' angles'
    - matrixSize
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 80
    functionName: QuantLib::lmmTriangularAnglesParametrization
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - Matrix::rows
    - std::sin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix lmmTriangularAnglesParametrization(const Array& angles,\n                                              Size
      matrixSize,\n                                              Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:87,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:88,1
    - Dst: QuantLib::triangularAnglesParametrization
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' x'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: QuantLib::triangularAnglesParametrizationUnconstrained
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::size
    - QuantLib::triangularAnglesParametrization
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationUnconstrained(const Array& x,\n
      \                                                       Size matrixSize,\n                                                        Size
      rank)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:95,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:97,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:98,1
    - Dst: QuantLib::lmmTriangularAnglesParametrization
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' x'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::lmmTriangularAnglesParametrizationUnconstrained
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::size
    - QuantLib::lmmTriangularAnglesParametrization
    linkageType: ''
    returnType: Matrix
    signature: "Matrix lmmTriangularAnglesParametrizationUnconstrained(const Array&
      x,\n                                                           Size matrixSize,\n
      \                                                          Size rank)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:105,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:106,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:108,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:108,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:109,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:109,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - alpha
    - t0
    - epsilon
    - matrixSize
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::triangularAnglesParametrizationRankThree
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::exp
    - Matrix::rows
    - std::sin
    - Real
    - std::cos
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationRankThree(Real alpha, Real t0,\n
      \                                                   Real epsilon, Size matrixSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:117,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:117,1
    - Dst: QuantLib::triangularAnglesParametrizationRankThree
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' parameters'
    - nbRows
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 124
    functionName: QuantLib::triangularAnglesParametrizationRankThreeVectorial
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::triangularAnglesParametrizationRankThree
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationRankThreeVectorial(const Array&
      parameters,\n                                                             Size
      nbRows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FrobeniusCostFunction::values
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:127,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::FrobeniusCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FrobeniusCostFunction::values
    - DotProduct
    linkageType: ''
    returnType: Real
    signature: Real FrobeniusCostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:132,1
    - Dst: f_
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:133,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionName: QuantLib::FrobeniusCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 1
    functionsReached:
    - f_
    - rows
    - transpose
    - columns
    linkageType: ''
    returnType: Array
    signature: Array FrobeniusCostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:30,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:30,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:41,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:43,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:45,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:47,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:51,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' angles'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 55
    functionName: QuantLib::triangularAnglesParametrization
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - Matrix::rows
    - std::sin
    - std::cos
    - QuantLib::size
    - std::min
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrization(const Array& angles,\n                                           Size
      matrixSize,\n                                           Size rank)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:61,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:64,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:65,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:76,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - ' angles'
    - matrixSize
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 80
    functionName: QuantLib::lmmTriangularAnglesParametrization
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 1
    functionsReached:
    - std::cos
    - Matrix::rows
    - std::sin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix lmmTriangularAnglesParametrization(const Array& angles,\n                                              Size
      matrixSize,\n                                              Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:87,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:88,1
    - Dst: QuantLib::triangularAnglesParametrization
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' x'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: QuantLib::triangularAnglesParametrizationUnconstrained
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::size
    - QuantLib::triangularAnglesParametrization
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationUnconstrained(const Array& x,\n
      \                                                       Size matrixSize,\n                                                        Size
      rank)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:95,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:97,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:98,1
    - Dst: QuantLib::lmmTriangularAnglesParametrization
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' x'
    - matrixSize
    - rank
    argTypes:
    - Array
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::lmmTriangularAnglesParametrizationUnconstrained
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::size
    - QuantLib::lmmTriangularAnglesParametrization
    linkageType: ''
    returnType: Matrix
    signature: "Matrix lmmTriangularAnglesParametrizationUnconstrained(const Array&
      x,\n                                                           Size matrixSize,\n
      \                                                          Size rank)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:105,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:106,1
    - Dst: std::atan
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:108,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:108,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:109,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:109,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - alpha
    - t0
    - epsilon
    - matrixSize
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::triangularAnglesParametrizationRankThree
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 1
    functionsReached:
    - std::atan
    - std::exp
    - Matrix::rows
    - std::sin
    - Real
    - std::cos
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationRankThree(Real alpha, Real t0,\n
      \                                                   Real epsilon, Size matrixSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:117,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:117,1
    - Dst: QuantLib::triangularAnglesParametrizationRankThree
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' parameters'
    - nbRows
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 124
    functionName: QuantLib::triangularAnglesParametrizationRankThreeVectorial
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::triangularAnglesParametrizationRankThree
    - QuantLib::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix triangularAnglesParametrizationRankThreeVectorial(const Array&
      parameters,\n                                                             Size
      nbRows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FrobeniusCostFunction::values
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:127,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::FrobeniusCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FrobeniusCostFunction::values
    - DotProduct
    linkageType: ''
    returnType: Real
    signature: Real FrobeniusCostFunction::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:132,1
    - Dst: f_
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:133,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionName: QuantLib::FrobeniusCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/tapcorrelations.cpp
    functionUses: 2
    functionsReached:
    - f_
    - rows
    - transpose
    - columns
    linkageType: ''
    returnType: Array
    signature: Array FrobeniusCostFunction::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - A
    - maxIter
    - relTol
    - preConditioner
    argTypes:
    - BiCGstab::MatrixMult
    - Size
    - Real
    - BiCGstab::MatrixMult
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::BiCGstab::BiCGstab
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BiCGstab::BiCGstab(BiCGstab::MatrixMult A,\n                       Size
      maxIter,\n                       Real relTol,\n                       BiCGstab::MatrixMult
      preConditioner)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:45,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:52,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:56,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:67,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:68,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:70,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:72,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:74,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:78,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:79,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:80,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:80,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:88,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 92
    functionName: QuantLib::BiCGstab::solve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Array
    - A_
    - DotProduct
    - Norm2
    - M_
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: BiCGStabResult
    signature: BiCGStabResult BiCGstab::solve(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - A
    - maxIter
    - relTol
    - preConditioner
    argTypes:
    - BiCGstab::MatrixMult
    - Size
    - Real
    - BiCGstab::MatrixMult
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::BiCGstab::BiCGstab
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BiCGstab::BiCGstab(BiCGstab::MatrixMult A,\n                       Size
      maxIter,\n                       Real relTol,\n                       BiCGstab::MatrixMult
      preConditioner)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:44,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:45,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:52,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:56,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:67,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:68,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:70,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:72,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:74,1
    - Dst: M_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:78,1
    - Dst: A_
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:79,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:80,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:80,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp:88,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - ' b'
    - ' x0'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 92
    functionName: QuantLib::BiCGstab::solve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/bicgstab.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Array
    - A_
    - DotProduct
    - Norm2
    - M_
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: BiCGStabResult
    signature: BiCGStabResult BiCGstab::solve(const Array& b, const Array& x0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& eigenvalues() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & eigenvalues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& eigenvectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & eigenvectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - m
    - rot
    - dil
    - j1
    - k1
    - j2
    - k2
    argTypes:
    - Matrix
    - Real
    - Real
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 75
    functionName: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SymmetricSchurDecomposition::jacobiRotate_(\n                                      Matrix
      &m, Real rot, Real dil, Size j1,\n                                      Size
      k1, Size j2, Size k2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& eigenvalues() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & eigenvalues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& eigenvectors() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & eigenvectors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - m
    - rot
    - dil
    - j1
    - k1
    - j2
    - k2
    argTypes:
    - Matrix
    - Real
    - Real
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 75
    functionName: QuantLib::SymmetricSchurDecomposition::jacobiRotate_
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/symmetricschurdecomposition.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SymmetricSchurDecomposition::jacobiRotate_(\n                                      Matrix
      &m, Real rot, Real dil, Size j1,\n                                      Size
      k1, Size j2, Size k2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:57,1
    - Dst: filled1
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:59,1
    - Dst: index1_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:60,1
    - Dst: index1_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:61,1
    - Dst: value_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:64,1
    - Dst: index2_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' A'
    - ' x'
    argTypes:
    - SparseMatrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 70
    functionName: QuantLib::prod
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp
    functionUses: 0
    functionsReached:
    - value_data
    - size1
    - index2_data
    - index1_data
    - size2
    - QuantLib::size
    - filled1
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array prod(const SparseMatrix& A, const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:52,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:54,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:57,1
    - Dst: filled1
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:59,1
    - Dst: index1_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:60,1
    - Dst: index1_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:61,1
    - Dst: value_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:64,1
    - Dst: index2_data
      Src: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' A'
    - ' x'
    argTypes:
    - SparseMatrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 70
    functionName: QuantLib::prod
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparsematrix.hpp
    functionUses: 0
    functionsReached:
    - value_data
    - size1
    - index2_data
    - index1_data
    - size2
    - QuantLib::size
    - filled1
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array prod(const SparseMatrix& A, const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:57,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:57,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:75,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - stdDevBegin
    - stdDevEnd
    - ' corr'
    argTypes:
    - DataIterator
    - DataIterator
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 82
    functionName: QuantLib::getCovariance
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - QuantLib::io::ordinal
    - rows
    - std::fabs
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix getCovariance(DataIterator stdDevBegin,\n                         DataIterator
      stdDevEnd,\n                         const Matrix& corr,\n                         Real
      tolerance = 1.0e-12)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& variances() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & variances() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: '& standardDeviations() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & standardDeviations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: '& correlationMatrix() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & correlationMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:57,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:57,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:75,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - stdDevBegin
    - stdDevEnd
    - ' corr'
    argTypes:
    - DataIterator
    - DataIterator
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 82
    functionName: QuantLib::getCovariance
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    - QuantLib::io::ordinal
    - rows
    - std::fabs
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix getCovariance(DataIterator stdDevBegin,\n                         DataIterator
      stdDevEnd,\n                         const Matrix& corr,\n                         Real
      tolerance = 1.0e-12)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& variances() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & variances() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: '& standardDeviations() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & standardDeviations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: '& correlationMatrix() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/getcovariance.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & correlationMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - m
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::MatrixVectorProductFct::MatrixVectorProductFct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MatrixVectorProductFct(Matrix m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:41,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:42,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: operator()(Real t, const std::vector<Real>& y)
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - std::vector::size
    - Real
    - row_begin
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real t, const std::vector<Real>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - m
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::MatrixVectorProductFct::MatrixVectorProductFct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MatrixVectorProductFct(Matrix m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:41,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:42,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: operator()(Real t, const std::vector<Real>& y)
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - std::vector::size
    - Real
    - row_begin
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real t, const std::vector<Real>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:55,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:55,1
    - Dst: MatrixVectorProductFct
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:58,1
    - Dst: rk
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:65,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' M'
    - t
    - tol
    argTypes:
    - Matrix
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 69
    functionName: QuantLib::Expm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - rk
    - std::vector::begin
    - MatrixVectorProductFct
    - rows
    - std::vector::end
    - columns
    - Matrix::column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix Expm(const Matrix& M, Real t, Real tol)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - m
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::MatrixVectorProductFct::MatrixVectorProductFct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MatrixVectorProductFct(Matrix m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:41,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:42,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: operator()(Real t, const std::vector<Real>& y)
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - std::vector::size
    - Real
    - row_begin
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real t, const std::vector<Real>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - m
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::MatrixVectorProductFct::MatrixVectorProductFct
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MatrixVectorProductFct(Matrix m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:41,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:42,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:43,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' y'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionName: operator()(Real t, const std::vector<Real>& y)
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - rows
    - begin
    - std::vector::size
    - Real
    - row_begin
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real t, const std::vector<Real>& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:55,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:55,1
    - Dst: MatrixVectorProductFct
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:58,1
    - Dst: rk
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:65,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/expm.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' M'
    - t
    - tol
    argTypes:
    - Matrix
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 69
    functionName: QuantLib::Expm
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/expm.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - rk
    - std::vector::begin
    - MatrixVectorProductFct
    - rows
    - std::vector::end
    - columns
    - Matrix::column_begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix Expm(const Matrix& M, Real t, Real tol)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:31,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:31,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:32,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:37,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:38,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:40,1
    - Dst: A
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:49,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:72,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:73,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:74,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:80,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:82,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:84,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:85,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:89,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:92,1
    - Dst: levs
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:94,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:103,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:111,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:113,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:116,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:117,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:121,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:121,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:124,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:127,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:130,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:131,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:134,1
    - Dst: levs
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:135,1
    - Dst: insert
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:137,1
    - Dst: resize
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:142,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:142,1
    - Dst: resize
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:143,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 82
    argCount: 2
    argNames:
    - ' A'
    - lfil
    argTypes:
    - SparseMatrix
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 146
    functionName: QuantLib::SparseILUPreconditioner::SparseILUPreconditioner
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached:
    - levs
    - std::set::size
    - std::vector::reserve
    - size2
    - std::vector::push_back
    - begin
    - size
    - L_
    - U_
    - std::min
    - std::set::begin
    - A
    - std::vector::size
    - end
    - insert
    - QL_REQUIRE
    - std::copy
    - size1
    - resize
    - Array::size
    - std::set::insert
    - std::vector::empty
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void SparseILUPreconditioner::SparseILUPreconditioner(const SparseMatrix&
      A,\n                                                     Integer lfil)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& SparseILUPreconditioner::L() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix & SparseILUPreconditioner::L() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: '& SparseILUPreconditioner::U() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix & SparseILUPreconditioner::U() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparseILUPreconditioner::backwardSolve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:157,1
    - Dst: QuantLib::SparseILUPreconditioner::forwardSolve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: QuantLib::SparseILUPreconditioner::apply
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparseILUPreconditioner::forwardSolve
    - QuantLib::SparseILUPreconditioner::backwardSolve
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::apply(const Array& b) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:161,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:163,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:167,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:168,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:170,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:170,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 174
    functionName: QuantLib::SparseILUPreconditioner::forwardSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 1
    functionsReached:
    - size
    - Integer
    - L_
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::forwardSolve(const Array& b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:177,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:179,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:181,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:182,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:183,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:183,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' y'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 187
    functionName: QuantLib::SparseILUPreconditioner::backwardSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 1
    functionsReached:
    - size
    - U_
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::backwardSolve(const Array& y) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:31,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:31,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:32,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size2
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:34,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:37,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:38,1
    - Dst: size1
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:40,1
    - Dst: A
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:49,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:72,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:73,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:74,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:80,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:82,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:84,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:85,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:89,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:92,1
    - Dst: levs
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:94,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:103,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:111,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:113,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:116,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:117,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:121,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:121,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:124,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:127,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:130,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:131,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:134,1
    - Dst: levs
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:135,1
    - Dst: insert
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:137,1
    - Dst: resize
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:142,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:142,1
    - Dst: resize
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:143,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:143,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:144,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:145,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 82
    argCount: 2
    argNames:
    - ' A'
    - lfil
    argTypes:
    - SparseMatrix
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 146
    functionName: QuantLib::SparseILUPreconditioner::SparseILUPreconditioner
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached:
    - levs
    - std::set::size
    - std::vector::reserve
    - size2
    - std::vector::push_back
    - begin
    - size
    - L_
    - U_
    - std::min
    - std::set::begin
    - A
    - std::vector::size
    - end
    - insert
    - QL_REQUIRE
    - std::copy
    - size1
    - resize
    - Array::size
    - std::set::insert
    - std::vector::empty
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void SparseILUPreconditioner::SparseILUPreconditioner(const SparseMatrix&
      A,\n                                                     Integer lfil)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& SparseILUPreconditioner::L() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix & SparseILUPreconditioner::L() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: '& SparseILUPreconditioner::U() const'
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SparseMatrix
    signature: SparseMatrix & SparseILUPreconditioner::U() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparseILUPreconditioner::backwardSolve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:157,1
    - Dst: QuantLib::SparseILUPreconditioner::forwardSolve
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: QuantLib::SparseILUPreconditioner::apply
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparseILUPreconditioner::forwardSolve
    - QuantLib::SparseILUPreconditioner::backwardSolve
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::apply(const Array& b) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:161,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:163,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:165,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:167,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:168,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:170,1
    - Dst: L_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:170,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' b'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 174
    functionName: QuantLib::SparseILUPreconditioner::forwardSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 2
    functionsReached:
    - size
    - Integer
    - L_
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::forwardSolve(const Array& b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:177,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:179,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:181,1
    - Dst: size
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:182,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:183,1
    - Dst: U_
      Src: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp:183,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' y'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 187
    functionName: QuantLib::SparseILUPreconditioner::backwardSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/sparseilupreconditioner.cpp
    functionUses: 2
    functionsReached:
    - size
    - U_
    linkageType: ''
    returnType: Array
    signature: Array SparseILUPreconditioner::backwardSolve(const Array& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' matrix'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::checkSymmetry
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - columns
    - rows
    - QuantLib::close
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkSymmetry(const Matrix& matrix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:56,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:65,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' matrix'
    - ' pseudo'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: QuantLib::normalizePseudoRoot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - columns
    - rows
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void normalizePseudoRoot(const Matrix& matrix,\n                                 Matrix&
      pseudo)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' targetMatrix'
    - targetVariance
    - lowerDiagonal
    argTypes:
    - Matrix
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::HypersphereCostFunction::HypersphereCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HypersphereCostFunction(const Matrix& targetMatrix,\n                                    Array
      targetVariance,\n                                    bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::HypersphereCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:104,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:118,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:127,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 137
    functionName: QuantLib::HypersphereCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - begin
    - transpose
    - std::cos
    - end
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:144,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:148,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:155,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:185,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:191,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:199,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:200,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:210,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:213,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:229,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:235,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:243,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:244,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:250,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:252,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 99
    argCount: 3
    argNames:
    - ' targetMatrix'
    - ' currentRoot'
    - lowerDiagonal
    argTypes:
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 264
    functionName: QuantLib::hypersphereOptimize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - rows
    - Matrix::end
    - std::acos
    - ConjugateGradient::minimize
    - QuantLib::CholeskyDecomposition
    - std::sqrt
    - std::cos
    - Problem::currentValue
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix hypersphereOptimize(const Matrix& targetMatrix,\n                                   const
      Matrix& currentRoot,\n                                   const bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:269,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:270,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 279
    functionName: QuantLib::normInf
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::fabs
    - rows
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normInf(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 292
    functionName: QuantLib::projectToUnitDiagonalMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToUnitDiagonalMatrix(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 308
    functionName: QuantLib::projectToPositiveSemidefiniteMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToPositiveSemidefiniteMatrix(Matrix& M)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:314,1
    - Dst: QuantLib::projectToPositiveSemidefiniteMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:322,1
    - Dst: QuantLib::projectToUnitDiagonalMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:324,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:327,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ' A'
    - maxIterations
    - ' tolerance'
    argTypes:
    - Matrix
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 346
    functionName: QuantLib::highamImplementation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::normInf
    - rows
    - std::max
    - QuantLib::projectToUnitDiagonalMatrix
    - QuantLib::projectToPositiveSemidefiniteMatrix
    linkageType: ''
    returnType: Matrix
    signature: Matrix highamImplementation(const Matrix& A, const Size maxIterations,
      const Real& tolerance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' matrix'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::checkSymmetry
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - columns
    - rows
    - QuantLib::close
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkSymmetry(const Matrix& matrix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:56,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:65,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' matrix'
    - ' pseudo'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: QuantLib::normalizePseudoRoot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - columns
    - rows
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void normalizePseudoRoot(const Matrix& matrix,\n                                 Matrix&
      pseudo)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' targetMatrix'
    - targetVariance
    - lowerDiagonal
    argTypes:
    - Matrix
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::HypersphereCostFunction::HypersphereCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HypersphereCostFunction(const Matrix& targetMatrix,\n                                    Array
      targetVariance,\n                                    bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::HypersphereCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:104,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:118,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:127,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 137
    functionName: QuantLib::HypersphereCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - begin
    - transpose
    - std::cos
    - end
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:144,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:148,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:155,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:185,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:191,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:199,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:200,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:210,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:213,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:229,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:235,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:243,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:244,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:250,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:252,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 99
    argCount: 3
    argNames:
    - ' targetMatrix'
    - ' currentRoot'
    - lowerDiagonal
    argTypes:
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 264
    functionName: QuantLib::hypersphereOptimize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - rows
    - Matrix::end
    - std::acos
    - ConjugateGradient::minimize
    - QuantLib::CholeskyDecomposition
    - std::sqrt
    - std::cos
    - Problem::currentValue
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix hypersphereOptimize(const Matrix& targetMatrix,\n                                   const
      Matrix& currentRoot,\n                                   const bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:269,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:270,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 279
    functionName: QuantLib::normInf
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - std::fabs
    - rows
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normInf(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 292
    functionName: QuantLib::projectToUnitDiagonalMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 1
    functionsReached:
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToUnitDiagonalMatrix(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 308
    functionName: QuantLib::projectToPositiveSemidefiniteMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 1
    functionsReached:
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToPositiveSemidefiniteMatrix(Matrix& M)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:314,1
    - Dst: QuantLib::projectToPositiveSemidefiniteMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:322,1
    - Dst: QuantLib::projectToUnitDiagonalMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:324,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:327,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ' A'
    - maxIterations
    - ' tolerance'
    argTypes:
    - Matrix
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 346
    functionName: QuantLib::highamImplementation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::normInf
    - rows
    - std::max
    - QuantLib::projectToUnitDiagonalMatrix
    - QuantLib::projectToPositiveSemidefiniteMatrix
    linkageType: ''
    returnType: Matrix
    signature: Matrix highamImplementation(const Matrix& A, const Size maxIterations,
      const Real& tolerance)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:351,1
    - Dst: QuantLib::checkSymmetry
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:354,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:356,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:356,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:358,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:371,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:371,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:373,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:375,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:383,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:392,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:394,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:395,1
    - Dst: QuantLib::hypersphereOptimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:398,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:406,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:408,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:410,1
    - Dst: QuantLib::hypersphereOptimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:413,1
    - Dst: QuantLib::highamImplementation
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:418,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:419,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:423,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:423,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:425,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:429,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:430,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:430,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:431,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:433,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:433,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:438,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:439,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:439,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:440,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:441,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:442,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:445,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:446,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:450,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 2
    argNames:
    - ' matrix'
    - sa
    argTypes:
    - Matrix
    - SalvagingAlgorithm::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 350
    functionDepth: 3
    functionLinenumber: 350
    functionLinenumberEnd: 454
    functionName: QuantLib::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - Matrix::column_begin
    - QuantLib::checkSymmetry
    - std::max<Real>
    - std::transform
    - QuantLib::highamImplementation
    - Array::begin
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - QuantLib::CholeskyDecomposition
    - Array::end
    - rows
    - QL_FAIL
    - QuantLib::normalizePseudoRoot
    - QL_REQUIRE
    - columns
    - std::multiplies<>
    - std::sqrt
    - QuantLib::hypersphereOptimize
    linkageType: ''
    returnType: Matrix
    signature: Matrix pseudoSqrt(const Matrix& matrix, SalvagingAlgorithm::Type sa)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:461,1
    - Dst: QuantLib::checkSymmetry
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:464,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:466,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:466,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:468,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:471,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:474,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:477,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:482,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:488,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:496,1
    - Dst: QuantLib::highamImplementation
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:502,1
    - Dst: SymmetricSchurDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:503,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:504,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:508,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:513,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:513,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:514,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:514,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:527,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:531,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:532,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:534,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 4
    argNames:
    - ' matrix'
    - maxRank
    - componentRetainedPercentage
    - sa
    argTypes:
    - Matrix
    - Size
    - Real
    - SalvagingAlgorithm::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 457
    functionDepth: 3
    functionLinenumber: 457
    functionLinenumberEnd: 536
    functionName: QuantLib::rankReducedSqrt
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - Array::end
    - Real
    - SymmetricSchurDecomposition
    - std::min
    - QL_FAIL
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - QuantLib::checkSymmetry
    - std::accumulate
    - std::max<Real>
    - std::sqrt
    - QuantLib::highamImplementation
    - QuantLib::normalizePseudoRoot
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix rankReducedSqrt(const Matrix& matrix,\n                           Size
      maxRank,\n                           Real componentRetainedPercentage,\n                           SalvagingAlgorithm::Type
      sa)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' matrix'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::checkSymmetry
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - columns
    - rows
    - QuantLib::close
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkSymmetry(const Matrix& matrix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:56,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:65,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' matrix'
    - ' pseudo'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: QuantLib::normalizePseudoRoot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - columns
    - rows
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void normalizePseudoRoot(const Matrix& matrix,\n                                 Matrix&
      pseudo)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' targetMatrix'
    - targetVariance
    - lowerDiagonal
    argTypes:
    - Matrix
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::HypersphereCostFunction::HypersphereCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HypersphereCostFunction(const Matrix& targetMatrix,\n                                    Array
      targetVariance,\n                                    bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::HypersphereCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:104,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:118,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:127,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 137
    functionName: QuantLib::HypersphereCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - begin
    - transpose
    - std::cos
    - end
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:144,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:148,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:155,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:185,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:191,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:199,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:200,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:210,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:213,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:229,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:235,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:243,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:244,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:250,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:252,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 99
    argCount: 3
    argNames:
    - ' targetMatrix'
    - ' currentRoot'
    - lowerDiagonal
    argTypes:
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 264
    functionName: QuantLib::hypersphereOptimize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 1
    functionsReached:
    - std::fill
    - std::sin
    - rows
    - Matrix::end
    - std::acos
    - ConjugateGradient::minimize
    - QuantLib::CholeskyDecomposition
    - std::sqrt
    - std::cos
    - Problem::currentValue
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix hypersphereOptimize(const Matrix& targetMatrix,\n                                   const
      Matrix& currentRoot,\n                                   const bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:269,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:270,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 279
    functionName: QuantLib::normInf
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - std::fabs
    - rows
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normInf(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 292
    functionName: QuantLib::projectToUnitDiagonalMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToUnitDiagonalMatrix(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 308
    functionName: QuantLib::projectToPositiveSemidefiniteMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToPositiveSemidefiniteMatrix(Matrix& M)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:314,1
    - Dst: QuantLib::projectToPositiveSemidefiniteMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:322,1
    - Dst: QuantLib::projectToUnitDiagonalMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:324,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:327,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ' A'
    - maxIterations
    - ' tolerance'
    argTypes:
    - Matrix
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 346
    functionName: QuantLib::highamImplementation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::normInf
    - rows
    - std::max
    - QuantLib::projectToUnitDiagonalMatrix
    - QuantLib::projectToPositiveSemidefiniteMatrix
    linkageType: ''
    returnType: Matrix
    signature: Matrix highamImplementation(const Matrix& A, const Size maxIterations,
      const Real& tolerance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' matrix'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::checkSymmetry
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - columns
    - rows
    - QuantLib::close
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkSymmetry(const Matrix& matrix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:56,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:65,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' matrix'
    - ' pseudo'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: QuantLib::normalizePseudoRoot
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - columns
    - rows
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void normalizePseudoRoot(const Matrix& matrix,\n                                 Matrix&
      pseudo)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' targetMatrix'
    - targetVariance
    - lowerDiagonal
    argTypes:
    - Matrix
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::HypersphereCostFunction::HypersphereCostFunction
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - rows
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HypersphereCostFunction(const Matrix& targetMatrix,\n                                    Array
      targetVariance,\n                                    bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::HypersphereCostFunction::values
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array values(const Array&) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:94,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:104,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:107,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:118,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:127,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 137
    functionName: QuantLib::HypersphereCostFunction::value
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::sin
    - begin
    - transpose
    - std::cos
    - end
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:144,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:148,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:155,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:185,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:191,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:199,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:200,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:201,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:210,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:213,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:229,1
    - Dst: std::acos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:235,1
    - Dst: ConjugateGradient::minimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:243,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:244,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: Matrix::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:245,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:250,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:252,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 99
    argCount: 3
    argNames:
    - ' targetMatrix'
    - ' currentRoot'
    - lowerDiagonal
    argTypes:
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 264
    functionName: QuantLib::hypersphereOptimize
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 1
    functionsReached:
    - std::fill
    - std::sin
    - rows
    - Matrix::end
    - std::acos
    - ConjugateGradient::minimize
    - QuantLib::CholeskyDecomposition
    - std::sqrt
    - std::cos
    - Problem::currentValue
    - Matrix::begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix hypersphereOptimize(const Matrix& targetMatrix,\n                                   const
      Matrix& currentRoot,\n                                   const bool lowerDiagonal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:269,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:270,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 279
    functionName: QuantLib::normInf
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 3
    functionsReached:
    - std::max
    - std::fabs
    - rows
    - columns
    linkageType: ''
    returnType: Real
    signature: Real normInf(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 292
    functionName: QuantLib::projectToUnitDiagonalMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 3
    functionsReached:
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToUnitDiagonalMatrix(const Matrix& M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:297,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:303,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' M'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 308
    functionName: QuantLib::projectToPositiveSemidefiniteMatrix
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 3
    functionsReached:
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix projectToPositiveSemidefiniteMatrix(Matrix& M)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:314,1
    - Dst: QuantLib::projectToPositiveSemidefiniteMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:322,1
    - Dst: QuantLib::projectToUnitDiagonalMatrix
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:324,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:327,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:328,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:329,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    - Dst: QuantLib::normInf
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ' A'
    - maxIterations
    - ' tolerance'
    argTypes:
    - Matrix
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 346
    functionName: QuantLib::highamImplementation
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::normInf
    - rows
    - std::max
    - QuantLib::projectToUnitDiagonalMatrix
    - QuantLib::projectToPositiveSemidefiniteMatrix
    linkageType: ''
    returnType: Matrix
    signature: Matrix highamImplementation(const Matrix& A, const Size maxIterations,
      const Real& tolerance)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:351,1
    - Dst: QuantLib::checkSymmetry
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:354,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:356,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:356,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:358,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:371,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:371,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:373,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:375,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:381,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:383,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:391,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:392,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:394,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:395,1
    - Dst: QuantLib::hypersphereOptimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:398,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:405,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:406,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:408,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:410,1
    - Dst: QuantLib::hypersphereOptimize
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:413,1
    - Dst: QuantLib::highamImplementation
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:418,1
    - Dst: QuantLib::CholeskyDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:419,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:423,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:423,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:425,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:429,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:430,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:430,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:431,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:433,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:433,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:438,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:439,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:439,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:440,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:441,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:442,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:445,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:446,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:450,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 2
    argNames:
    - ' matrix'
    - sa
    argTypes:
    - Matrix
    - SalvagingAlgorithm::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 350
    functionDepth: 3
    functionLinenumber: 350
    functionLinenumberEnd: 454
    functionName: QuantLib::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - Matrix::column_begin
    - QuantLib::checkSymmetry
    - std::max<Real>
    - std::transform
    - QuantLib::highamImplementation
    - Array::begin
    - SymmetricSchurDecomposition::eigenvalues
    - QuantLib::transpose
    - SymmetricSchurDecomposition::eigenvectors
    - QuantLib::CholeskyDecomposition
    - Array::end
    - rows
    - QL_FAIL
    - QuantLib::normalizePseudoRoot
    - QL_REQUIRE
    - columns
    - std::multiplies<>
    - std::sqrt
    - QuantLib::hypersphereOptimize
    linkageType: ''
    returnType: Matrix
    signature: Matrix pseudoSqrt(const Matrix& matrix, SalvagingAlgorithm::Type sa)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:461,1
    - Dst: QuantLib::checkSymmetry
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:464,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:466,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:466,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:468,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:471,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:474,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:477,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:482,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:488,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:496,1
    - Dst: QuantLib::highamImplementation
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:502,1
    - Dst: SymmetricSchurDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:503,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:504,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:508,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:513,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:513,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:514,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:514,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:527,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:531,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:532,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp:534,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 4
    argNames:
    - ' matrix'
    - maxRank
    - componentRetainedPercentage
    - sa
    argTypes:
    - Matrix
    - Size
    - Real
    - SalvagingAlgorithm::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 457
    functionDepth: 3
    functionLinenumber: 457
    functionLinenumberEnd: 536
    functionName: QuantLib::rankReducedSqrt
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/pseudosqrt.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - rows
    - SymmetricSchurDecomposition::eigenvalues
    - Array::end
    - Real
    - SymmetricSchurDecomposition
    - std::min
    - QL_FAIL
    - SymmetricSchurDecomposition::eigenvectors
    - columns
    - QuantLib::checkSymmetry
    - std::accumulate
    - std::max<Real>
    - std::sqrt
    - QuantLib::highamImplementation
    - QuantLib::normalizePseudoRoot
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: "Matrix rankReducedSqrt(const Matrix& matrix,\n                           Size
      maxRank,\n                           Real componentRetainedPercentage,\n                           SalvagingAlgorithm::Type
      sa)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:34,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:35,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:36,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:38,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:39,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:40,1
    - Dst: QuantLib::MINPACK::qrfac
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:42,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:42,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:44,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: Matrix::column_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:52,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:59,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:59,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:60,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:71,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:79,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:96,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:101,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:101,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 4
    argNames:
    - ' M'
    - ' q'
    - ' r'
    - pivot
    argTypes:
    - Matrix
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 123
    functionName: QuantLib::qrDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - Matrix::row_end
    - Real
    - std::unique_ptr::get
    - Matrix::row_begin
    - Matrix::column_begin
    - Matrix::column_end
    - Array::begin
    - begin
    - QuantLib::transpose
    - std::fabs
    - QuantLib::MINPACK::qrfac
    - std::min
    - Matrix::begin
    - Array::end
    - rows
    - Matrix
    - Real::Real
    - end
    - row_begin
    - std::copy
    - std::inner_product
    - std::vector::begin
    - int::int
    - columns
    - row_end
    - column_begin
    linkageType: ''
    returnType: std::vector<Size>
    signature: "std::vector<Size> qrDecomposition(const Matrix& M,\n                                      Matrix&
      q,\n                                      Matrix& r,\n                                      bool
      pivot)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:127,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: QuantLib::qrDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:136,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:138,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:141,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:143,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:144,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:152,1
    - Dst: QuantLib::MINPACK::qrsolv
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - pivot
    - ' d'
    argTypes:
    - Matrix
    - Array
    - bool
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 159
    functionName: QuantLib::qrSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::copy
    - QuantLib::MINPACK::qrsolv
    - std::vector::begin
    - Array::begin
    - rows
    - int::int
    - std::vector::end
    - begin
    - std::unique_ptr::get
    - QuantLib::transpose
    - QuantLib::qrDecomposition
    - columns
    - Matrix::begin
    - Real::Real
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array qrSolve(const Matrix& a, const Array& b,\n                  bool
      pivot, const Array& d)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:34,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:35,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:36,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:38,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:39,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:40,1
    - Dst: QuantLib::MINPACK::qrfac
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:42,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:42,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:43,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:44,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:44,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:45,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:48,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: Matrix::column_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:51,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:52,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:55,1
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:59,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:59,1
    - Dst: Matrix
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:60,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:63,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:65,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:71,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:74,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:75,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:79,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: column_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:80,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:93,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:96,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:100,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:101,1
    - Dst: Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:101,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: row_begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: row_end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:115,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 4
    argNames:
    - ' M'
    - ' q'
    - ' r'
    - pivot
    argTypes:
    - Matrix
    - Matrix
    - Matrix
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 123
    functionName: QuantLib::qrDecomposition
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp
    functionUses: 1
    functionsReached:
    - std::fill
    - Matrix::row_end
    - Real
    - std::unique_ptr::get
    - Matrix::row_begin
    - Matrix::column_begin
    - Matrix::column_end
    - Array::begin
    - begin
    - QuantLib::transpose
    - std::fabs
    - QuantLib::MINPACK::qrfac
    - std::min
    - Matrix::begin
    - Array::end
    - rows
    - Matrix
    - Real::Real
    - end
    - row_begin
    - std::copy
    - std::inner_product
    - std::vector::begin
    - int::int
    - columns
    - row_end
    - column_begin
    linkageType: ''
    returnType: std::vector<Size>
    signature: "std::vector<Size> qrDecomposition(const Matrix& M,\n                                      Matrix&
      q,\n                                      Matrix& r,\n                                      bool
      pivot)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:127,1
    - Dst: columns
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:130,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:131,1
    - Dst: QuantLib::qrDecomposition
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:136,1
    - Dst: int::int
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:138,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:139,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:141,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:143,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:144,1
    - Dst: empty
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: end
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:148,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:152,1
    - Dst: QuantLib::MINPACK::qrsolv
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: Matrix::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:154,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:155,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    - Dst: std::unique_ptr::get
      Src: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - pivot
    - ' d'
    argTypes:
    - Matrix
    - Array
    - bool
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 159
    functionName: QuantLib::qrSolve
    functionSourceFile: /src/quantlib/ql/math/matrixutilities/qrdecomposition.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::copy
    - QuantLib::MINPACK::qrsolv
    - std::vector::begin
    - Array::begin
    - rows
    - int::int
    - std::vector::end
    - begin
    - std::unique_ptr::get
    - QuantLib::transpose
    - QuantLib::qrDecomposition
    - columns
    - Matrix::begin
    - Real::Real
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array qrSolve(const Matrix& a, const Array& b,\n                  bool
      pivot, const Array& d)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: errorFunction_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:35,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:51,1
    - Dst: gaussian_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 55
    functionName: CumulativeNormalDistribution::operator()(Real z) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - errorFunction_
    - std::fabs
    - gaussian_
    linkageType: ''
    returnType: Real
    signature: Real CumulativeNormalDistribution::operator()(Real z) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:94,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:107,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 118
    functionName: QuantLib::InverseCumulativeNormal::tail_value
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_FAIL
    - std::fabs
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeNormal::tail_value(Real x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:141,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:160,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:160,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 169
    functionName: MoroInverseCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MoroInverseCumulativeNormal::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::MaddockInverseCumulativeNormal::MaddockInverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MaddockInverseCumulativeNormal::MaddockInverseCumulativeNormal(\n
      \       Real average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:176,1
    - Dst: boost::math::normal_distribution<Real>
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: MaddockInverseCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - boost::math::normal_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real MaddockInverseCumulativeNormal::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::MaddockCumulativeNormal::MaddockCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MaddockCumulativeNormal::MaddockCumulativeNormal(\n        Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:185,1
    - Dst: boost::math::normal_distribution<Real>
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: MaddockCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - boost::math::normal_distribution<Real>
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real MaddockCumulativeNormal::operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: errorFunction_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:35,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:50,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:51,1
    - Dst: gaussian_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 55
    functionName: CumulativeNormalDistribution::operator()(Real z) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - errorFunction_
    - std::fabs
    - gaussian_
    linkageType: ''
    returnType: Real
    signature: Real CumulativeNormalDistribution::operator()(Real z) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:94,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:96,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:107,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 118
    functionName: QuantLib::InverseCumulativeNormal::tail_value
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_FAIL
    - std::fabs
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeNormal::tail_value(Real x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:141,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:160,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:160,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 169
    functionName: MoroInverseCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MoroInverseCumulativeNormal::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::MaddockInverseCumulativeNormal::MaddockInverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MaddockInverseCumulativeNormal::MaddockInverseCumulativeNormal(\n
      \       Real average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:176,1
    - Dst: boost::math::normal_distribution<Real>
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: MaddockInverseCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - boost::math::normal_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real MaddockInverseCumulativeNormal::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::MaddockCumulativeNormal::MaddockCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MaddockCumulativeNormal::MaddockCumulativeNormal(\n        Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:185,1
    - Dst: boost::math::normal_distribution<Real>
      Src: /src/quantlib/ql/math/distributions/normaldistribution.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: MaddockCumulativeNormal::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.cpp
    functionUses: 0
    functionsReached:
    - boost::math::normal_distribution<Real>
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real MaddockCumulativeNormal::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeGammaDistribution
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: CumulativeChiSquareDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - CumulativeGammaDistribution
    linkageType: ''
    returnType: Real
    signature: Real CumulativeChiSquareDistribution::operator()(Real x) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:41,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:49,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:49,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:54,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:54,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:55,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:88,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 91
    functionName: NonCentralCumulativeChiSquareDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real NonCentralCumulativeChiSquareDistribution::operator()(Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:95,1
    - Dst: squared
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:96,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:100,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionName: NonCentralCumulativeChiSquareSankaranApprox::operator()(Real x)
      const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - CumulativeNormalDistribution
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real NonCentralCumulativeChiSquareSankaranApprox::operator()(Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - df
    - ncp
    - maxEvaluations
    - accuracy
    argTypes:
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::InverseNonCentralCumulativeChiSquareDistribution::InverseNonCentralCumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InverseNonCentralCumulativeChiSquareDistribution::\n      InverseNonCentralCumulativeChiSquareDistribution(Real
      df, Real ncp, \n                                             Size maxEvaluations,
      \n                                             Real accuracy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonCentralDist_
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:120,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:127,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:128,1
    - Dst: nonCentralDist_
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:128,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 132
    functionName: InverseNonCentralCumulativeChiSquareDistribution::operator()(Real
      x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - nonCentralDist_
    - Brent::solve
    - Real
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real InverseNonCentralCumulativeChiSquareDistribution::operator()(Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeGammaDistribution
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: CumulativeChiSquareDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - CumulativeGammaDistribution
    linkageType: ''
    returnType: Real
    signature: Real CumulativeChiSquareDistribution::operator()(Real x) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:41,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:49,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:49,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:51,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:54,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:54,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:55,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:88,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 91
    functionName: NonCentralCumulativeChiSquareDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real NonCentralCumulativeChiSquareDistribution::operator()(Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:95,1
    - Dst: squared
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:96,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:100,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionName: NonCentralCumulativeChiSquareSankaranApprox::operator()(Real x)
      const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - CumulativeNormalDistribution
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real NonCentralCumulativeChiSquareSankaranApprox::operator()(Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - df
    - ncp
    - maxEvaluations
    - accuracy
    argTypes:
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: QuantLib::InverseNonCentralCumulativeChiSquareDistribution::InverseNonCentralCumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InverseNonCentralCumulativeChiSquareDistribution::\n      InverseNonCentralCumulativeChiSquareDistribution(Real
      df, Real ncp, \n                                             Size maxEvaluations,
      \n                                             Real accuracy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonCentralDist_
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:120,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:127,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:128,1
    - Dst: nonCentralDist_
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:128,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 132
    functionName: InverseNonCentralCumulativeChiSquareDistribution::operator()(Real
      x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.cpp
    functionUses: 0
    functionsReached:
    - nonCentralDist_
    - Brent::solve
    - Real
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real InverseNonCentralCumulativeChiSquareDistribution::operator()(Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: standard_value
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - standard_value
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::tail_value
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:116,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:130,1
    - Dst: exp
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 136
    functionName: QuantLib::InverseCumulativeNormal::standard_value
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::tail_value
    - f_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real standard_value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 273
    functionName: QuantLib::NormalDistribution::NormalDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NormalDistribution::NormalDistribution(Real average,\n                                                  Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:280,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionName: NormalDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real NormalDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::NormalDistribution::derivative
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NormalDistribution::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 294
    functionName: QuantLib::CumulativeNormalDistribution::CumulativeNormalDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeNormalDistribution::CumulativeNormalDistribution(\n
      \                                                Real average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gaussian_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 299
    functionName: QuantLib::CumulativeNormalDistribution::derivative
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - gaussian_
    linkageType: ''
    returnType: Real
    signature: Real CumulativeNormalDistribution::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 308
    functionName: QuantLib::InverseCumulativeNormal::InverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeNormal::InverseCumulativeNormal(\n                                                 Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 317
    functionName: QuantLib::MoroInverseCumulativeNormal::MoroInverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MoroInverseCumulativeNormal::MoroInverseCumulativeNormal(\n                                                 Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: standard_value
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - standard_value
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::tail_value
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:116,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:130,1
    - Dst: exp
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 136
    functionName: QuantLib::InverseCumulativeNormal::standard_value
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::tail_value
    - f_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real standard_value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 273
    functionName: QuantLib::NormalDistribution::NormalDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NormalDistribution::NormalDistribution(Real average,\n                                                  Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:280,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionName: NormalDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real NormalDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::NormalDistribution::derivative
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NormalDistribution::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 294
    functionName: QuantLib::CumulativeNormalDistribution::CumulativeNormalDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeNormalDistribution::CumulativeNormalDistribution(\n
      \                                                Real average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gaussian_
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 299
    functionName: QuantLib::CumulativeNormalDistribution::derivative
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - gaussian_
    linkageType: ''
    returnType: Real
    signature: Real CumulativeNormalDistribution::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 308
    functionName: QuantLib::InverseCumulativeNormal::InverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeNormal::InverseCumulativeNormal(\n                                                 Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/normaldistribution.hpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - average
    - sigma
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 317
    functionName: QuantLib::MoroInverseCumulativeNormal::MoroInverseCumulativeNormal
    functionSourceFile: /src/quantlib/ql/math/distributions/normaldistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MoroInverseCumulativeNormal::MoroInverseCumulativeNormal(\n                                                 Real
      average, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - df
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::CumulativeChiSquareDistribution::CumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CumulativeChiSquareDistribution(Real df)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - df
    - ncp
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::NonCentralCumulativeChiSquareDistribution::NonCentralCumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NonCentralCumulativeChiSquareDistribution(Real df, Real ncp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - df
    - ncp
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: QuantLib::NonCentralCumulativeChiSquareSankaranApprox::NonCentralCumulativeChiSquareSankaranApprox
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NonCentralCumulativeChiSquareSankaranApprox(Real df, Real ncp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - df
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::CumulativeChiSquareDistribution::CumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CumulativeChiSquareDistribution(Real df)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - df
    - ncp
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::NonCentralCumulativeChiSquareDistribution::NonCentralCumulativeChiSquareDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NonCentralCumulativeChiSquareDistribution(Real df, Real ncp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - df
    - ncp
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: QuantLib::NonCentralCumulativeChiSquareSankaranApprox::NonCentralCumulativeChiSquareSankaranApprox
    functionSourceFile: /src/quantlib/ql/math/distributions/chisquaredistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NonCentralCumulativeChiSquareSankaranApprox(Real df, Real ncp)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:27,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:37,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:37,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:38,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:49,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:51,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:56,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:59,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 60
    functionName: CumulativeGammaDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real CumulativeGammaDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::GammaFunction::logValue
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GammaFunction::logValue(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:86,1
    - Dst: QuantLib::GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:86,1
    - Dst: QuantLib::GammaFunction::value
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:91,1
    - Dst: QuantLib::GammaFunction::value
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:95,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 98
    functionName: QuantLib::GammaFunction::value
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 1
    functionsReached:
    - std::sin
    - QuantLib::GammaFunction::logValue
    - std::exp
    - QuantLib::GammaFunction::value
    linkageType: ''
    returnType: Real
    signature: Real GammaFunction::value(Real x) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:27,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:37,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:37,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:38,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:49,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:51,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:56,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:59,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 60
    functionName: CumulativeGammaDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction
    - QL_FAIL
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real CumulativeGammaDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::GammaFunction::logValue
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 1
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GammaFunction::logValue(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:86,1
    - Dst: QuantLib::GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:86,1
    - Dst: QuantLib::GammaFunction::value
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:91,1
    - Dst: QuantLib::GammaFunction::value
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:95,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/gammadistribution.cpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 98
    functionName: QuantLib::GammaFunction::value
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.cpp
    functionUses: 2
    functionsReached:
    - std::sin
    - QuantLib::GammaFunction::logValue
    - std::exp
    - QuantLib::GammaFunction::value
    linkageType: ''
    returnType: Real
    signature: Real GammaFunction::value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:28,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:28,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:29,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:29,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:31,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: StudentDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - GammaFunction::logValue
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real StudentDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:40,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: CumulativeStudentDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - incompleteBetaFunction
    linkageType: ''
    returnType: Real
    signature: Real CumulativeStudentDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:45,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:52,1
    - Dst: d_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:52,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:55,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 63
    functionName: InverseCumulativeStudent::operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - d_
    - f_
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeStudent::operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:28,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:28,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:29,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:29,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:31,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: StudentDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - GammaFunction::logValue
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real StudentDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:40,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: CumulativeStudentDistribution::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - incompleteBetaFunction
    linkageType: ''
    returnType: Real
    signature: Real CumulativeStudentDistribution::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:45,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:52,1
    - Dst: d_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:52,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:55,1
    - Dst: f_
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 63
    functionName: InverseCumulativeStudent::operator()(Real y) const
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - d_
    - f_
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeStudent::operator()(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:34,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - k
    argTypes:
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::binomialCoefficientLn
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::ln
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real binomialCoefficientLn(BigNatural n, BigNatural k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::floor
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    - Dst: QuantLib::binomialCoefficientLn
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - k
    argTypes:
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::binomialCoefficient
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::floor
    - std::exp
    - QuantLib::binomialCoefficientLn
    linkageType: ''
    returnType: Real
    signature: Real binomialCoefficient(BigNatural n, BigNatural k)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::incompleteBetaFunction
    linkageType: ''
    returnType: Real
    signature: Real operator()(BigNatural k) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 100
    functionName: QuantLib::BinomialDistribution::BinomialDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialDistribution::BinomialDistribution(Real p,\n                                                      BigNatural
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::CumulativeBinomialDistribution::CumulativeBinomialDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeBinomialDistribution::CumulativeBinomialDistribution(\n
      \                                                      Real p, BigNatural n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:124,1
    - Dst: binomialCoefficientLn
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 126
    functionName: BinomialDistribution::operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - binomialCoefficientLn
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real BinomialDistribution::operator()(BigNatural k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - z
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionName: QuantLib::PeizerPrattMethod2Inversion
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PeizerPrattMethod2Inversion(Real z, BigNatural n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:34,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - k
    argTypes:
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::binomialCoefficientLn
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Factorial::ln
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real binomialCoefficientLn(BigNatural n, BigNatural k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::floor
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    - Dst: QuantLib::binomialCoefficientLn
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - k
    argTypes:
    - BigNatural
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::binomialCoefficient
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::floor
    - std::exp
    - QuantLib::binomialCoefficientLn
    linkageType: ''
    returnType: Real
    signature: Real binomialCoefficient(BigNatural n, BigNatural k)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - incompleteBetaFunction
    linkageType: ''
    returnType: Real
    signature: Real operator()(BigNatural k) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:97,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 100
    functionName: QuantLib::BinomialDistribution::BinomialDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialDistribution::BinomialDistribution(Real p,\n                                                      BigNatural
      n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::CumulativeBinomialDistribution::CumulativeBinomialDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeBinomialDistribution::CumulativeBinomialDistribution(\n
      \                                                      Real p, BigNatural n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:124,1
    - Dst: binomialCoefficientLn
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 126
    functionName: BinomialDistribution::operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - binomialCoefficientLn
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real BinomialDistribution::operator()(BigNatural k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/binomialdistribution.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - z
    - n
    argTypes:
    - Real
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionName: QuantLib::PeizerPrattMethod2Inversion
    functionSourceFile: /src/quantlib/ql/math/distributions/binomialdistribution.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PeizerPrattMethod2Inversion(Real z, BigNatural n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/gammadistribution.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::CumulativeGammaDistribution::CumulativeGammaDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CumulativeGammaDistribution(Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/gammadistribution.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::CumulativeGammaDistribution::CumulativeGammaDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/gammadistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CumulativeGammaDistribution(Real a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::BivariateCumulativeNormalDistributionDr78::BivariateCumulativeNormalDistributionDr78
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeNormalDistributionDr78::\n    BivariateCumulativeNormalDistributionDr78(Real
      rho)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:60,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:62,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:85,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:88,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:100,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:105,1
    - Dst: CBND2
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:105,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:107,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 28
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 111
    functionName: "BivariateCumulativeNormalDistributionDr78::operator()(Real a,\n
      \                                                              Real b) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - cumNormalDist
    - bivCumNormalDist
    - std::exp
    - CBND2
    - std::max
    - QL_FAIL
    - std::sqrt
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeNormalDistributionDr78::operator()(Real a,\n
      \                                                              Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - h
    - k
    - asr
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::eqn3::eqn3
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn3(Real h, Real k, Real asr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - c
    - d
    - bs
    - hk
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::eqn6::eqn6
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn6(Real a, Real c, Real d, Real bs, Real hk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 147
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - h
    - k
    - asr
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::eqn3::eqn3
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn3(Real h, Real k, Real asr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - c
    - d
    - bs
    - hk
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::eqn6::eqn6
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn6(Real a, Real c, Real d, Real bs, Real hk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 147
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: QuantLib::BivariateCumulativeNormalDistributionWe04DP::BivariateCumulativeNormalDistributionWe04DP
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeNormalDistributionWe04DP::\n    BivariateCumulativeNormalDistributionWe04DP(Real
      rho)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:184,1
    - Dst: TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:185,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:186,1
    - Dst: TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:187,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:195,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:197,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:199,1
    - Dst: gaussLegendreQuad
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:201,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:204,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:204,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:223,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:230,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:231,1
    - Dst: gaussLegendreQuad
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:236,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:241,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:241,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:249,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:249,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:251,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:251,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 257
    functionName: "BivariateCumulativeNormalDistributionWe04DP::operator()(\n                                                       Real
      x, Real y) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - cumnorm_
    - std::exp
    - std::max
    - std::fabs
    - std::sqrt
    - gaussLegendreQuad
    - std::asin
    - TabulatedGaussLegendre::order
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeNormalDistributionWe04DP::operator()(\n                                                       Real
      x, Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: QuantLib::BivariateCumulativeNormalDistributionDr78::BivariateCumulativeNormalDistributionDr78
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeNormalDistributionDr78::\n    BivariateCumulativeNormalDistributionDr78(Real
      rho)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:60,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:62,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:85,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:88,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:100,1
    - Dst: bivCumNormalDist
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:105,1
    - Dst: CBND2
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:105,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:107,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 28
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 111
    functionName: "BivariateCumulativeNormalDistributionDr78::operator()(Real a,\n
      \                                                              Real b) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - cumNormalDist
    - bivCumNormalDist
    - std::exp
    - CBND2
    - std::max
    - QL_FAIL
    - std::sqrt
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeNormalDistributionDr78::operator()(Real a,\n
      \                                                              Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - h
    - k
    - asr
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::eqn3::eqn3
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn3(Real h, Real k, Real asr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - c
    - d
    - bs
    - hk
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::eqn6::eqn6
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn6(Real a, Real c, Real d, Real bs, Real hk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 147
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - h
    - k
    - asr
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: QuantLib::eqn3::eqn3
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn3(Real h, Real k, Real asr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - c
    - d
    - bs
    - hk
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::eqn6::eqn6
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void eqn6(Real a, Real c, Real d, Real bs, Real hk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 147
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: QuantLib::BivariateCumulativeNormalDistributionWe04DP::BivariateCumulativeNormalDistributionWe04DP
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeNormalDistributionWe04DP::\n    BivariateCumulativeNormalDistributionWe04DP(Real
      rho)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:184,1
    - Dst: TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:185,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:186,1
    - Dst: TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:187,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:195,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:197,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:199,1
    - Dst: gaussLegendreQuad
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:201,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:204,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:204,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:223,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:230,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:231,1
    - Dst: gaussLegendreQuad
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:236,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:241,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:241,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:249,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:249,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:251,1
    - Dst: cumnorm_
      Src: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp:251,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 257
    functionName: "BivariateCumulativeNormalDistributionWe04DP::operator()(\n                                                       Real
      x, Real y) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatenormaldistribution.cpp
    functionUses: 0
    functionsReached:
    - cumnorm_
    - std::exp
    - std::max
    - std::fabs
    - std::sqrt
    - gaussLegendreQuad
    - std::asin
    - TabulatedGaussLegendre::order
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeNormalDistributionWe04DP::operator()(\n                                                       Real
      x, Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::StudentDistribution::StudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void StudentDistribution(Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::CumulativeStudentDistribution::CumulativeStudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CumulativeStudentDistribution(Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: QuantLib::InverseCumulativeStudent::InverseCumulativeStudent
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeStudent(Integer n,\n                                 Real
      accuracy = 1e-6,\n                                 Size maxIterations = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::StudentDistribution::StudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void StudentDistribution(Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/studenttdistribution.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::CumulativeStudentDistribution::CumulativeStudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CumulativeStudentDistribution(Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: QuantLib::InverseCumulativeStudent::InverseCumulativeStudent
    functionSourceFile: /src/quantlib/ql/math/distributions/studenttdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeStudent(Integer n,\n                                 Real
      accuracy = 1e-6,\n                                 Size maxIterations = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::CumulativePoissonDistribution::CumulativePoissonDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CumulativePoissonDistribution(Real mu)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::incompleteGammaFunction
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::incompleteGammaFunction
    linkageType: ''
    returnType: Real
    signature: Real operator()(BigNatural k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionName: QuantLib::PoissonDistribution::PoissonDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PoissonDistribution::PoissonDistribution(Real mu)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 105
    functionName: PoissonDistribution::operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::ln
    - std::exp
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real PoissonDistribution::operator()(BigNatural k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::InverseCumulativePoisson::InverseCumulativePoisson
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InverseCumulativePoisson::InverseCumulativePoisson(Real lambda)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:114,1
    - Dst: calcSummand
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: InverseCumulativePoisson::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - calcSummand
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativePoisson::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::InverseCumulativePoisson::calcSummand
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::pow
    - std::exp
    - Integer
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativePoisson::calcSummand(BigNatural index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::CumulativePoissonDistribution::CumulativePoissonDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CumulativePoissonDistribution(Real mu)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: incompleteGammaFunction
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - incompleteGammaFunction
    linkageType: ''
    returnType: Real
    signature: Real operator()(BigNatural k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionName: QuantLib::PoissonDistribution::PoissonDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PoissonDistribution::PoissonDistribution(Real mu)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Factorial::ln
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - k
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 105
    functionName: PoissonDistribution::operator()(BigNatural k) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::ln
    - std::exp
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real PoissonDistribution::operator()(BigNatural k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: QuantLib::InverseCumulativePoisson::InverseCumulativePoisson
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InverseCumulativePoisson::InverseCumulativePoisson(Real lambda)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:114,1
    - Dst: calcSummand
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: InverseCumulativePoisson::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - calcSummand
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativePoisson::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: Integer
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:132,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/math/distributions/poissondistribution.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::InverseCumulativePoisson::calcSummand
    functionSourceFile: /src/quantlib/ql/math/distributions/poissondistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::pow
    - std::exp
    - Integer
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativePoisson::calcSummand(BigNatural index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sign(Real val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan2
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::arctan
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - std::atan2
    linkageType: ''
    returnType: Real
    signature: Real arctan(Real x, Real y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - m
    - h
    - k
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::f_x
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real f_x(Real m, Real h, Real k, Real rho)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:55,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:56,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:57,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:60,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:61,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:71,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:94,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:118,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 4
    argNames:
    - h
    - k
    - n
    - rho
    argTypes:
    - Real
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 157
    functionName: QuantLib::P_n
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::f_x
    - QuantLib::sign
    - Real
    - QuantLib::arctan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real P_n(Real h, Real k, Natural n, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sign(Real val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan2
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::arctan
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 1
    functionsReached:
    - std::atan2
    linkageType: ''
    returnType: Real
    signature: Real arctan(Real x, Real y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - m
    - h
    - k
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::f_x
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real f_x(Real m, Real h, Real k, Real rho)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:55,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:56,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:57,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:60,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:61,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:71,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:94,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:118,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 4
    argNames:
    - h
    - k
    - n
    - rho
    argTypes:
    - Real
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 157
    functionName: QuantLib::P_n
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::f_x
    - QuantLib::sign
    - Real
    - QuantLib::arctan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real P_n(Real h, Real k, Natural n, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - rho
    argTypes:
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::BivariateCumulativeStudentDistribution::BivariateCumulativeStudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeStudentDistribution::\n    BivariateCumulativeStudentDistribution(Natural
      n,\n                                           Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: P_n
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: "BivariateCumulativeStudentDistribution::operator()(Real x,\n                                                            Real
      y) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - P_n
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeStudentDistribution::operator()(Real x,\n
      \                                                           Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sign(Real val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan2
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::arctan
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 2
    functionsReached:
    - std::atan2
    linkageType: ''
    returnType: Real
    signature: Real arctan(Real x, Real y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - m
    - h
    - k
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::f_x
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real f_x(Real m, Real h, Real k, Real rho)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:55,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:56,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:57,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:60,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:61,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:71,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:94,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:118,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 4
    argNames:
    - h
    - k
    - n
    - rho
    argTypes:
    - Real
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 157
    functionName: QuantLib::P_n
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::f_x
    - QuantLib::sign
    - Real
    - QuantLib::arctan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real P_n(Real h, Real k, Natural n, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sign(Real val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::atan2
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::arctan
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 3
    functionsReached:
    - std::atan2
    linkageType: ''
    returnType: Real
    signature: Real arctan(Real x, Real y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - m
    - h
    - k
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::f_x
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 3
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real f_x(Real m, Real h, Real k, Real rho)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:55,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:56,1
    - Dst: QuantLib::f_x
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:57,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:60,1
    - Dst: QuantLib::sign
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:61,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:71,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:94,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:118,1
    - Dst: QuantLib::arctan
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:142,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 4
    argNames:
    - h
    - k
    - n
    - rho
    argTypes:
    - Real
    - Real
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 157
    functionName: QuantLib::P_n
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::f_x
    - QuantLib::sign
    - Real
    - QuantLib::arctan
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real P_n(Real h, Real k, Natural n, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - rho
    argTypes:
    - Natural
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::BivariateCumulativeStudentDistribution::BivariateCumulativeStudentDistribution
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BivariateCumulativeStudentDistribution::\n    BivariateCumulativeStudentDistribution(Natural
      n,\n                                           Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: P_n
      Src: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: "BivariateCumulativeStudentDistribution::operator()(Real x,\n                                                            Real
      y) const"
    functionSourceFile: /src/quantlib/ql/math/distributions/bivariatestudenttdistribution.cpp
    functionUses: 0
    functionsReached:
    - P_n
    linkageType: ''
    returnType: Real
    signature: "Real BivariateCumulativeStudentDistribution::operator()(Real x,\n
      \                                                           Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - t
    - intervals
    argTypes:
    - Type
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::FilonIntegral::FilonIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/filonintegral.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FilonIntegral::FilonIntegral(Type type, Real t, Size intervals)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:51,1
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:52,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:52,1
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:53,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:53,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:54,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:55,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:55,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:57,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:63,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:64,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:67,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:71,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:75,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:76,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:76,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:79,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:80,1
    - Dst: f1
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:83,1
    - Dst: f1
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 86
    functionName: QuantLib::FilonIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/filonintegral.cpp
    functionUses: 0
    functionsReached:
    - f2
    - squared
    - Array::begin
    - std::sin
    - Array::end
    - f1
    - QL_FAIL
    - Array::size
    - std::transform
    - std::cos
    linkageType: ''
    returnType: Real
    signature: "Real FilonIntegral::integrate(const std::function<Real (Real)>& f,\n
      \                                 Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - t
    - intervals
    argTypes:
    - Type
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: QuantLib::FilonIntegral::FilonIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/filonintegral.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FilonIntegral::FilonIntegral(Type type, Real t, Size intervals)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:51,1
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:52,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:52,1
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:53,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:53,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:54,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:55,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:55,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:57,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::end
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:58,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:63,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:64,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:67,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:71,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:75,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:76,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:76,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:79,1
    - Dst: f2
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:80,1
    - Dst: f1
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:83,1
    - Dst: f1
      Src: /src/quantlib/ql/math/integrals/filonintegral.cpp:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 86
    functionName: QuantLib::FilonIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/filonintegral.cpp
    functionUses: 0
    functionsReached:
    - f2
    - squared
    - Array::begin
    - std::sin
    - Array::end
    - f1
    - QL_FAIL
    - Array::size
    - std::transform
    - std::cos
    linkageType: ''
    returnType: Real
    signature: "Real FilonIntegral::integrate(const std::function<Real (Real)>& f,\n
      \                                 Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::GaussLaguerreTrigonometricBase::GaussLaguerreTrigonometricBase
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreTrigonometricBase(Real u)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:46,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:46,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:48,1
    - Dst: m0
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:50,1
    - Dst: m1
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:52,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:54,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:55,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::GaussLaguerreTrigonometricBase::moment_
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 1
    functionsReached:
    - m0
    - QuantLib::GaussLaguerreTrigonometricBase::moment_
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - m1
    - size
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment_(Size n) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:61,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:62,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:62,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:64,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::GaussLaguerreTrigonometricBase::fact
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 1
    functionsReached:
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - size
    - QuantLib::GaussLaguerreTrigonometricBase::fact
    linkageType: ''
    returnType: mp_real
    signature: mp_real fact(Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::GaussLaguerreCosinePolynomial::GaussLaguerreCosinePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreCosinePolynomial(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussLaguerreCosinePolynomial::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:98,1
    - Dst: QuantLib::GaussLaguerreCosinePolynomial::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::GaussLaguerreCosinePolynomial::moment
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussLaguerreCosinePolynomial::moment_
    - QuantLib::GaussLaguerreCosinePolynomial::fact
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment(Size n) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:99,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::GaussLaguerreCosinePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real w(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::GaussLaguerreCosinePolynomial::m0
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mp_real
    signature: mp_real m0() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::GaussLaguerreCosinePolynomial::m1
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - squared
    linkageType: ''
    returnType: mp_real
    signature: mp_real m1() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::GaussLaguerreSinePolynomial::GaussLaguerreSinePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreSinePolynomial(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussLaguerreSinePolynomial::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:130,1
    - Dst: QuantLib::GaussLaguerreSinePolynomial::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::GaussLaguerreSinePolynomial::moment
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussLaguerreSinePolynomial::fact
    - QuantLib::GaussLaguerreSinePolynomial::moment_
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment(Size n) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:131,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::GaussLaguerreSinePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real w(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::GaussLaguerreSinePolynomial::m0
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mp_real
    signature: mp_real m0() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::GaussLaguerreSinePolynomial::m1
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - squared
    linkageType: ''
    returnType: mp_real
    signature: mp_real m1() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::GaussLaguerreTrigonometricBase::GaussLaguerreTrigonometricBase
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreTrigonometricBase(Real u)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:45,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:46,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:46,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:48,1
    - Dst: m0
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:50,1
    - Dst: m1
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:52,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:54,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:55,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::GaussLaguerreTrigonometricBase::moment_
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 2
    functionsReached:
    - m0
    - QuantLib::GaussLaguerreTrigonometricBase::moment_
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - m1
    - size
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment_(Size n) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:61,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:62,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:62,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:64,1
    - Dst: QuantLib::GaussLaguerreTrigonometricBase::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::GaussLaguerreTrigonometricBase::fact
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 2
    functionsReached:
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - size
    - QuantLib::GaussLaguerreTrigonometricBase::fact
    linkageType: ''
    returnType: mp_real
    signature: mp_real fact(Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::GaussLaguerreCosinePolynomial::GaussLaguerreCosinePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreCosinePolynomial(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussLaguerreCosinePolynomial::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:98,1
    - Dst: QuantLib::GaussLaguerreCosinePolynomial::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::GaussLaguerreCosinePolynomial::moment
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussLaguerreCosinePolynomial::moment_
    - QuantLib::GaussLaguerreCosinePolynomial::fact
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment(Size n) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:99,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::GaussLaguerreCosinePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real w(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::GaussLaguerreCosinePolynomial::m0
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mp_real
    signature: mp_real m0() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::GaussLaguerreCosinePolynomial::m1
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - squared
    linkageType: ''
    returnType: mp_real
    signature: mp_real m1() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::GaussLaguerreSinePolynomial::GaussLaguerreSinePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreSinePolynomial(Real u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussLaguerreSinePolynomial::moment_
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:130,1
    - Dst: QuantLib::GaussLaguerreSinePolynomial::fact
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::GaussLaguerreSinePolynomial::moment
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussLaguerreSinePolynomial::fact
    - QuantLib::GaussLaguerreSinePolynomial::moment_
    linkageType: ''
    returnType: mp_real
    signature: mp_real moment(Size n) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:131,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::GaussLaguerreSinePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::sin
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real w(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: QuantLib::GaussLaguerreSinePolynomial::m0
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mp_real
    signature: mp_real m0() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::GaussLaguerreSinePolynomial::m1
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslaguerrecosinepolynomial.hpp
    functionUses: 0
    functionsReached:
    - squared
    linkageType: ''
    returnType: mp_real
    signature: mp_real m1() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 55
    functionName: QuantLib::exponential_integrals_helper::f
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::exponential_integrals_helper::g
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real g(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 55
    functionName: QuantLib::exponential_integrals_helper::f
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::exponential_integrals_helper::g
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real g(Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Si
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 98
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 1
    functionsReached:
    - g
    - QuantLib::ExponentialIntegral::Si
    - std::sin
    - Real
    - f
    - std::cos
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:106,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - g
    - std::log
    - std::sin
    - f
    - std::cos
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Ci(Real x)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:138,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:141,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:151,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:156,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:157,1
    - Dst: match
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:163,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:169,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:172,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:188,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - ' z'
    - ' acc'
    argTypes:
    - std::complex<Real>
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 197
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - sign
    - real
    - std::exp
    - std::numeric_limits<Real>::infinity
    - std::log
    - std::complex::imag
    - std::floor
    - std::complex<Real>
    - std::complex::real
    - imag
    - Real
    - QL_FAIL
    - match
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Ei(\n            const std::complex<Real>& z, const
      std::complex<Real>& acc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ei(const std::complex<Real>&z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:204,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 213
    functionName: QuantLib::ExponentialIntegral::E1
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - imag
    - real
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> E1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:225,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 235
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 1
    functionsReached:
    - real
    - std::complex<Real>
    - imag
    - QuantLib::ExponentialIntegral::E1
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Si(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:242,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:244,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - imag
    - real
    - std::complex::imag
    - QuantLib::ExponentialIntegral::E1
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ci(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Si
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 98
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 2
    functionsReached:
    - g
    - QuantLib::ExponentialIntegral::Si
    - std::sin
    - Real
    - f
    - std::cos
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:106,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - g
    - std::log
    - std::sin
    - f
    - std::cos
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Ci(Real x)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:138,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:141,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:151,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:156,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:157,1
    - Dst: match
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:163,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:169,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:172,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:188,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - ' z'
    - ' acc'
    argTypes:
    - std::complex<Real>
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 197
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 2
    functionsReached:
    - sign
    - real
    - std::exp
    - std::numeric_limits<Real>::infinity
    - std::log
    - std::complex::imag
    - std::floor
    - std::complex<Real>
    - std::complex::real
    - imag
    - Real
    - QL_FAIL
    - match
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Ei(\n            const std::complex<Real>& z, const
      std::complex<Real>& acc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 3
    functionsReached:
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ei(const std::complex<Real>&z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:204,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 213
    functionName: QuantLib::ExponentialIntegral::E1
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 2
    functionsReached:
    - imag
    - real
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> E1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:225,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 235
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 2
    functionsReached:
    - real
    - std::complex<Real>
    - imag
    - QuantLib::ExponentialIntegral::E1
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Si(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:242,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:244,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - imag
    - real
    - std::complex::imag
    - QuantLib::ExponentialIntegral::E1
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ci(const std::complex<Real>& z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 55
    functionName: QuantLib::exponential_integrals_helper::f
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::exponential_integrals_helper::g
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real g(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 55
    functionName: QuantLib::exponential_integrals_helper::f
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::exponential_integrals_helper::g
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real g(Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Si
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 98
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 3
    functionsReached:
    - g
    - QuantLib::ExponentialIntegral::Si
    - std::sin
    - Real
    - f
    - std::cos
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:106,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - g
    - std::log
    - std::sin
    - f
    - std::cos
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Ci(Real x)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:138,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:141,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:151,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:156,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:157,1
    - Dst: match
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:163,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:169,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:172,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:188,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - ' z'
    - ' acc'
    argTypes:
    - std::complex<Real>
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 197
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 4
    functionsReached:
    - sign
    - real
    - std::exp
    - std::numeric_limits<Real>::infinity
    - std::log
    - std::complex::imag
    - std::floor
    - std::complex<Real>
    - std::complex::real
    - imag
    - Real
    - QL_FAIL
    - match
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Ei(\n            const std::complex<Real>& z, const
      std::complex<Real>& acc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 5
    functionsReached:
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ei(const std::complex<Real>&z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:204,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 213
    functionName: QuantLib::ExponentialIntegral::E1
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 4
    functionsReached:
    - imag
    - real
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> E1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:225,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 235
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 3
    functionsReached:
    - real
    - std::complex<Real>
    - imag
    - QuantLib::ExponentialIntegral::E1
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Si(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:242,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:244,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - imag
    - real
    - std::complex::imag
    - QuantLib::ExponentialIntegral::E1
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ci(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Si
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 98
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 4
    functionsReached:
    - g
    - QuantLib::ExponentialIntegral::Si
    - std::sin
    - Real
    - f
    - std::cos
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:106,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 121
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - g
    - std::log
    - std::sin
    - f
    - std::cos
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Ci(Real x)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:126,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:138,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:141,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:147,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:148,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:151,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:152,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:155,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:156,1
    - Dst: std::floor
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:157,1
    - Dst: match
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:163,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:166,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:169,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: sign
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:171,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:172,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:188,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:191,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:193,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:196,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - ' z'
    - ' acc'
    argTypes:
    - std::complex<Real>
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 197
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 6
    functionsReached:
    - sign
    - real
    - std::exp
    - std::numeric_limits<Real>::infinity
    - std::log
    - std::complex::imag
    - std::floor
    - std::complex<Real>
    - std::complex::real
    - imag
    - Real
    - QL_FAIL
    - match
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Ei(\n            const std::complex<Real>& z, const
      std::complex<Real>& acc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::ExponentialIntegral::Ei
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 7
    functionsReached:
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ei(const std::complex<Real>&z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:204,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:205,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:207,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:208,1
    - Dst: QuantLib::ExponentialIntegral::Ei
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 213
    functionName: QuantLib::ExponentialIntegral::E1
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 6
    functionsReached:
    - imag
    - real
    - std::complex<Real>
    - QuantLib::ExponentialIntegral::Ei
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> E1(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:218,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:225,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:231,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:232,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 235
    functionName: QuantLib::ExponentialIntegral::Si
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 4
    functionsReached:
    - real
    - std::complex<Real>
    - imag
    - QuantLib::ExponentialIntegral::E1
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Si(const std::complex<Real>& z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:241,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:242,1
    - Dst: real
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:243,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:244,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    - Dst: QuantLib::ExponentialIntegral::E1
      Src: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - ' z'
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionName: QuantLib::ExponentialIntegral::Ci
    functionSourceFile: /src/quantlib/ql/math/integrals/exponentialintegrals.cpp
    functionUses: 0
    functionsReached:
    - imag
    - real
    - std::complex::imag
    - QuantLib::ExponentialIntegral::E1
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> Ci(const std::complex<Real>& z)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::SegmentIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/segmentintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real SegmentIntegral::integrate(const std::function<Real (Real)>&
      f,\n                               Real a,\n                               Real
      b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/segmentintegral.hpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::SegmentIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/segmentintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real SegmentIntegral::integrate(const std::function<Real (Real)>&
      f,\n                               Real a,\n                               Real
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:61,1
    - Dst: order
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: operator()(const F& f) const
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - order
    - Integer
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::GaussianQuadrature::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& weights()'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& x()'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & x()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& x() const'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Array>
    signature: std::vector<Array> & x() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLaguerrePolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: QuantLib::GaussLaguerreIntegration::GaussLaguerreIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussLaguerrePolynomial
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreIntegration(Size n, Real s = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermitePolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::GaussHermiteIntegration::GaussHermiteIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussHermitePolynomial
    linkageType: ''
    returnType: void
    signature: void GaussHermiteIntegration(Size n, Real mu = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - alpha
    - beta
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 143
    functionName: QuantLib::GaussJacobiIntegration::GaussJacobiIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussJacobiIntegration(Size n, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHyperbolicPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::GaussHyperbolicIntegration::GaussHyperbolicIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussHyperbolicPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussHyperbolicIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: QuantLib::GaussLegendreIntegration::GaussLegendreIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussLegendreIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 191
    functionName: QuantLib::GaussChebyshevIntegration::GaussChebyshevIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussChebyshevIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 207
    functionName: QuantLib::GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussChebyshev2ndIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - lambda
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: QuantLib::GaussGegenbauerIntegration::GaussGegenbauerIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussGegenbauerIntegration(Size n, Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 234
    functionName: QuantLib::detail::GaussianQuadratureIntegrator::getIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integration>
    signature: ext::shared_ptr<Integration> getIntegration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 234
    functionName: QuantLib::detail::GaussianQuadratureIntegrator::getIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integration>
    signature: ext::shared_ptr<Integration> getIntegration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 257
    functionName: QuantLib::TabulatedGaussLegendre::TabulatedGaussLegendre
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TabulatedGaussLegendre::order
    linkageType: ''
    returnType: void
    signature: void TabulatedGaussLegendre(Size n = 20)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:260,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:261,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:268,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:269,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:277,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:278,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 281
    functionName: operator() (const F& f) const
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - QL_ASSERT
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator() (const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: QuantLib::TabulatedGaussLegendre::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:61,1
    - Dst: order
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: operator()(const F& f) const
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - order
    - Integer
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::GaussianQuadrature::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& weights()'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& x()'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & x()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: '& weights() const'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& x() const'
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Array>
    signature: std::vector<Array> & x() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussLaguerrePolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: QuantLib::GaussLaguerreIntegration::GaussLaguerreIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussLaguerrePolynomial
    linkageType: ''
    returnType: void
    signature: void GaussLaguerreIntegration(Size n, Real s = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermitePolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::GaussHermiteIntegration::GaussHermiteIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussHermitePolynomial
    linkageType: ''
    returnType: void
    signature: void GaussHermiteIntegration(Size n, Real mu = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - alpha
    - beta
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 143
    functionName: QuantLib::GaussJacobiIntegration::GaussJacobiIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussJacobiIntegration(Size n, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHyperbolicPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::GaussHyperbolicIntegration::GaussHyperbolicIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussHyperbolicPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussHyperbolicIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: QuantLib::GaussLegendreIntegration::GaussLegendreIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussLegendreIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 191
    functionName: QuantLib::GaussChebyshevIntegration::GaussChebyshevIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussChebyshevIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 207
    functionName: QuantLib::GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussChebyshev2ndIntegration(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussJacobiPolynomial
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - lambda
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: QuantLib::GaussGegenbauerIntegration::GaussGegenbauerIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - GaussJacobiPolynomial
    linkageType: ''
    returnType: void
    signature: void GaussGegenbauerIntegration(Size n, Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 234
    functionName: QuantLib::detail::GaussianQuadratureIntegrator::getIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integration>
    signature: ext::shared_ptr<Integration> getIntegration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 234
    functionName: QuantLib::detail::GaussianQuadratureIntegrator::getIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integration>
    signature: ext::shared_ptr<Integration> getIntegration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TabulatedGaussLegendre::order
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 257
    functionName: QuantLib::TabulatedGaussLegendre::TabulatedGaussLegendre
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TabulatedGaussLegendre::order
    linkageType: ''
    returnType: void
    signature: void TabulatedGaussLegendre(Size n = 20)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:260,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:261,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:268,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:269,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:277,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp:278,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 281
    functionName: operator() (const F& f) const
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 0
    functionsReached:
    - QL_ASSERT
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator() (const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: QuantLib::TabulatedGaussLegendre::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - integratorX
    - integratorY
    argTypes:
    - ext::shared_ptr<Integrator>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::TwoDimensionalIntegral::TwoDimensionalIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TwoDimensionalIntegral(ext::shared_ptr<Integrator> integratorX,\n
      \                              ext::shared_ptr<Integrator> integratorY)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (Real, Real)>
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: "operator()(const std::function<Real (Real, Real)>& f,\n                        const
      std::pair<Real, Real>& a,\n                        const std::pair<Real, Real>&
      b) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - g
    linkageType: ''
    returnType: Real
    signature: "Real operator()(const std::function<Real (Real, Real)>& f,\n                        const
      std::pair<Real, Real>& a,\n                        const std::pair<Real, Real>&
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' f'
    - x
    - a
    - b
    argTypes:
    - std::function<Real (Real, Real)>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::TwoDimensionalIntegral::g
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real g(const std::function<Real (Real, Real)>& f,\n               Real
      x, Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - integratorX
    - integratorY
    argTypes:
    - ext::shared_ptr<Integrator>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::TwoDimensionalIntegral::TwoDimensionalIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TwoDimensionalIntegral(ext::shared_ptr<Integrator> integratorX,\n
      \                              ext::shared_ptr<Integrator> integratorY)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: g
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (Real, Real)>
    - std::pair<Real, Real>
    - std::pair<Real, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: "operator()(const std::function<Real (Real, Real)>& f,\n                        const
      std::pair<Real, Real>& a,\n                        const std::pair<Real, Real>&
      b) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - g
    linkageType: ''
    returnType: Real
    signature: "Real operator()(const std::function<Real (Real, Real)>& f,\n                        const
      std::pair<Real, Real>& a,\n                        const std::pair<Real, Real>&
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' f'
    - x
    - a
    - b
    argTypes:
    - std::function<Real (Real, Real)>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::TwoDimensionalIntegral::g
    functionSourceFile: /src/quantlib/ql/math/integrals/twodimensionalintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real g(const std::function<Real (Real, Real)>& f,\n               Real
      x, Real a, Real b) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:28,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:30,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - err
    - resultAbs
    - resultAsc
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::rescaleError
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real rescaleError(Real err,\n                             const Real
      resultAbs,\n                             const Real resultAsc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - relativeAccuracy
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: QuantLib::GaussKronrodNonAdaptive::setRelativeAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussKronrodNonAdaptive::setRelativeAccuracy(Real relativeAccuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussKronrodNonAdaptive::relativeAccuracy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    - relativeAccuracy
    argTypes:
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: QuantLib::GaussKronrodNonAdaptive::GaussKronrodNonAdaptive
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GaussKronrodNonAdaptive::GaussKronrodNonAdaptive(Real absoluteAccuracy,\n
      \                                                    Size maxEvaluations,\n
      \                                                    Real relativeAccuracy)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:247,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:251,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:257,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:261,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:262,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:266,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:274,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:278,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:278,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:287,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:291,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:292,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:293,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:295,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:300,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:301,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:314,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:315,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:323,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:326,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:327,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:340,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:341,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:346,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:348,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:349,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 351
    functionName: QuantLib::GaussKronrodNonAdaptive::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - setAbsoluteError
    - rescaleError
    - QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
    - absoluteAccuracy
    - f
    - std::fabs
    - setNumberOfEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodNonAdaptive::integrate(const std::function<Real (Real)>&
      f,\n                                       Real a,\n                                       Real
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:357,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionName: QuantLib::GaussKronrodAdaptive::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - absoluteAccuracy
    - QuantLib::GaussKronrodAdaptive::integrateRecursively
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodAdaptive::integrate(const std::function<Real (Real)>&
      f,\n                                    Real a,\n                                    Real
      b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:399,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:407,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:407,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:415,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:415,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:424,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:429,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:432,1
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:432,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:433,1
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:436,1
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:437,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - tolerance
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 439
    functionName: QuantLib::GaussKronrodAdaptive::integrateRecursively
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 2
    functionsReached:
    - numberOfEvaluations
    - increaseNumberOfEvaluations
    - f
    - std::fabs
    - QuantLib::GaussKronrodAdaptive::integrateRecursively
    - maxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodAdaptive::integrateRecursively(\n                                    const
      std::function<Real (Real)>& f,\n                                    Real a,\n
      \                                   Real b,\n                                    Real
      tolerance) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 448
    functionName: QuantLib::GaussKronrodAdaptive::GaussKronrodAdaptive
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GaussKronrodAdaptive::GaussKronrodAdaptive(Real absoluteAccuracy,\n
      \                                              Size maxEvaluations)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:28,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:30,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - err
    - resultAbs
    - resultAsc
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::rescaleError
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: "Real rescaleError(Real err,\n                             const Real
      resultAbs,\n                             const Real resultAsc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - relativeAccuracy
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: QuantLib::GaussKronrodNonAdaptive::setRelativeAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussKronrodNonAdaptive::setRelativeAccuracy(Real relativeAccuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussKronrodNonAdaptive::relativeAccuracy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    - relativeAccuracy
    argTypes:
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: QuantLib::GaussKronrodNonAdaptive::GaussKronrodNonAdaptive
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GaussKronrodNonAdaptive::GaussKronrodNonAdaptive(Real absoluteAccuracy,\n
      \                                                    Size maxEvaluations,\n
      \                                                    Real relativeAccuracy)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:247,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:251,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:257,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:261,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:262,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:266,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:274,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:278,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:278,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:287,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:291,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:292,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:293,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:295,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:299,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:300,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:301,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:314,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:315,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:323,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:325,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:326,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:327,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:340,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:341,1
    - Dst: rescaleError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:346,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:348,1
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:349,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 351
    functionName: QuantLib::GaussKronrodNonAdaptive::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - setAbsoluteError
    - rescaleError
    - QuantLib::GaussKronrodNonAdaptive::relativeAccuracy
    - absoluteAccuracy
    - f
    - std::fabs
    - setNumberOfEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodNonAdaptive::integrate(const std::function<Real (Real)>&
      f,\n                                       Real a,\n                                       Real
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:357,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 353
    functionDepth: 2
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionName: QuantLib::GaussKronrodAdaptive::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - absoluteAccuracy
    - QuantLib::GaussKronrodAdaptive::integrateRecursively
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodAdaptive::integrate(const std::function<Real (Real)>&
      f,\n                                    Real a,\n                                    Real
      b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:399,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:407,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:407,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:415,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:415,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:424,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:429,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:432,1
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:432,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:433,1
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:436,1
    - Dst: QuantLib::GaussKronrodAdaptive::integrateRecursively
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:437,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - tolerance
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 439
    functionName: QuantLib::GaussKronrodAdaptive::integrateRecursively
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 4
    functionsReached:
    - numberOfEvaluations
    - increaseNumberOfEvaluations
    - f
    - std::fabs
    - QuantLib::GaussKronrodAdaptive::integrateRecursively
    - maxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussKronrodAdaptive::integrateRecursively(\n                                    const
      std::function<Real (Real)>& f,\n                                    Real a,\n
      \                                   Real b,\n                                    Real
      tolerance) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/kronrodintegral.cpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 448
    functionName: QuantLib::GaussKronrodAdaptive::GaussKronrodAdaptive
    functionSourceFile: /src/quantlib/ql/math/integrals/kronrodintegral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GaussKronrodAdaptive::GaussKronrodAdaptive(Real absoluteAccuracy,\n
      \                                              Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:44,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:44,1
    - Dst: QuantLib::IncrementalStatistics::min
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:46,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: QuantLib::TanhSinhIntegral::TanhSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<Real>::epsilon
    - QuantLib::IncrementalStatistics::min
    - std::sqrt
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void TanhSinhIntegral(\n            Real relTolerance = std::sqrt(std::numeric_limits<Real>::epsilon()),\n
      \           Size maxRefinements = 15,\n            Real minComplement = std::numeric_limits<Real>::min()
      * 4\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TanhSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:56,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:58,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:59,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 65
    functionName: QuantLib::TanhSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 1
    functionsReached:
    - setAbsoluteError
    - increaseNumberOfEvaluations
    - QuantLib::TanhSinhIntegral::integrate
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real(Real)>& f, Real a, Real b)\n
      \       const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:44,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:44,1
    - Dst: QuantLib::IncrementalStatistics::min
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:46,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: QuantLib::TanhSinhIntegral::TanhSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<Real>::epsilon
    - QuantLib::IncrementalStatistics::min
    - std::sqrt
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void TanhSinhIntegral(\n            Real relTolerance = std::sqrt(std::numeric_limits<Real>::epsilon()),\n
      \           Size maxRefinements = 15,\n            Real minComplement = std::numeric_limits<Real>::min()
      * 4\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TanhSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:56,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:58,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:59,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 65
    functionName: QuantLib::TanhSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 2
    functionsReached:
    - setAbsoluteError
    - increaseNumberOfEvaluations
    - QuantLib::TanhSinhIntegral::integrate
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real(Real)>& f, Real a, Real b)\n
      \       const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:80,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::TanhSinhIntegral::TanhSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void TanhSinhIntegral(Real relTolerance = 0, Size maxRefinements =
      0, Real minComplement = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::TanhSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:80,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::TanhSinhIntegral::TanhSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void TanhSinhIntegral(Real relTolerance = 0, Size maxRefinements =
      0, Real minComplement = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::TanhSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/tanhsinhintegral.hpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~Integrator()
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Integrator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: ~Integrator()
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Integrator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:45,1
    - Dst: beta
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:45,1
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:47,1
    - Dst: TqrEigenDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:54,1
    - Dst: TqrEigenDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:55,1
    - Dst: mu_0
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:57,1
    - Dst: w
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - n
    - ' orthPoly'
    argTypes:
    - Size
    - GaussianOrthogonalPolynomial
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 61
    functionName: QuantLib::GaussianQuadrature::GaussianQuadrature
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - beta
    - alpha
    - w
    - TqrEigenDecomposition::eigenvalues
    - mu_0
    - std::sqrt
    - TqrEigenDecomposition::eigenvectors
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadrature::GaussianQuadrature(\n                                Size
      n,\n                                const GaussianOrthogonalPolynomial& orthPoly)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: Array
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:71,1
    - Dst: std::partial_sum
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: find
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:79,1
    - Dst: genQuad
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:80,1
    - Dst: ext::shared_ptr::x
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:81,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' ns'
    - ' genQuad'
    argTypes:
    - std::vector<Size>
    - std::function<ext::shared_ptr<GaussianQuadrature>(Size)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 94
    functionName: QuantLib::MultiDimGaussianIntegration::MultiDimGaussianIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - find
    - Size
    - ext::shared_ptr::weights
    - std::vector::begin
    - Array
    - genQuad
    - begin
    - std::multiplies<>
    - std::accumulate
    - ext::shared_ptr::x
    - std::partial_sum
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MultiDimGaussianIntegration::MultiDimGaussianIntegration(\n        const
      std::vector<Size>& ns,\n        const std::function<ext::shared_ptr<GaussianQuadrature>(Size)>&
      genQuad)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:99,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Array)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: "MultiDimGaussianIntegration::operator()(\n        const std::function<Real(Array)>&
      f) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - size
    - f
    linkageType: ''
    returnType: Real
    signature: "Real MultiDimGaussianIntegration::operator()(\n        const std::function<Real(Array)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:112,1
    - Dst: ext::make_shared<Integration>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<Integration>
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator(\n
      \           Size n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration_
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - integration_
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadratureIntegrator<Integration>::integrate(\n            const
      std::function<Real (Real)>& f, Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:112,1
    - Dst: ext::make_shared<Integration>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<Integration>
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator(\n
      \           Size n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration_
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - integration_
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadratureIntegrator<Integration>::integrate(\n            const
      std::function<Real (Real)>& f, Real a, Real b) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:147,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 149
    functionName: QuantLib::TabulatedGaussLegendre::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void TabulatedGaussLegendre::order(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:45,1
    - Dst: beta
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:45,1
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:47,1
    - Dst: TqrEigenDecomposition::eigenvalues
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:54,1
    - Dst: TqrEigenDecomposition::eigenvectors
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:55,1
    - Dst: mu_0
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:57,1
    - Dst: w
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - n
    - ' orthPoly'
    argTypes:
    - Size
    - GaussianOrthogonalPolynomial
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 61
    functionName: QuantLib::GaussianQuadrature::GaussianQuadrature
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - beta
    - alpha
    - w
    - TqrEigenDecomposition::eigenvalues
    - mu_0
    - std::sqrt
    - TqrEigenDecomposition::eigenvectors
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadrature::GaussianQuadrature(\n                                Size
      n,\n                                const GaussianOrthogonalPolynomial& orthPoly)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: Array
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:71,1
    - Dst: std::partial_sum
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:75,1
    - Dst: find
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:79,1
    - Dst: genQuad
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:80,1
    - Dst: ext::shared_ptr::x
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:81,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' ns'
    - ' genQuad'
    argTypes:
    - std::vector<Size>
    - std::function<ext::shared_ptr<GaussianQuadrature>(Size)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 94
    functionName: QuantLib::MultiDimGaussianIntegration::MultiDimGaussianIntegration
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - find
    - Size
    - ext::shared_ptr::weights
    - std::vector::begin
    - Array
    - genQuad
    - begin
    - std::multiplies<>
    - std::accumulate
    - ext::shared_ptr::x
    - std::partial_sum
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void MultiDimGaussianIntegration::MultiDimGaussianIntegration(\n        const
      std::vector<Size>& ns,\n        const std::function<ext::shared_ptr<GaussianQuadrature>(Size)>&
      genQuad)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:99,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Array)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: "MultiDimGaussianIntegration::operator()(\n        const std::function<Real(Array)>&
      f) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - size
    - f
    linkageType: ''
    returnType: Real
    signature: "Real MultiDimGaussianIntegration::operator()(\n        const std::function<Real(Array)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:112,1
    - Dst: ext::make_shared<Integration>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<Integration>
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator(\n
      \           Size n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration_
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - integration_
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadratureIntegrator<Integration>::integrate(\n            const
      std::function<Real (Real)>& f, Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:112,1
    - Dst: ext::make_shared<Integration>
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<Integration>
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadratureIntegrator<Integration>::GaussianQuadratureIntegrator(\n
      \           Size n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration_
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:123,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::GaussianQuadratureIntegrator<Integration>::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 0
    functionsReached:
    - integration_
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadratureIntegrator<Integration>::integrate(\n            const
      std::function<Real (Real)>& f, Real a, Real b) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp:147,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - order
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 149
    functionName: QuantLib::TabulatedGaussLegendre::order
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianquadratures.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void TabulatedGaussLegendre::order(Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - accuracy
    - maxIterations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::SimpsonIntegral::SimpsonIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/simpsonintegral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SimpsonIntegral(Real accuracy,\n                        Size
      maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:46,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:46,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:47,1
    - Dst: QuantLib::FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:53,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:54,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:58,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:58,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 67
    functionName: QuantLib::SimpsonIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/simpsonintegral.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmMesherIntegral::integrate
    - increaseNumberOfEvaluations
    - absoluteAccuracy
    - f
    - QL_FAIL
    - std::fabs
    - maxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - accuracy
    - maxIterations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::SimpsonIntegral::SimpsonIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/simpsonintegral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SimpsonIntegral(Real accuracy,\n                        Size
      maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:46,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:46,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:47,1
    - Dst: QuantLib::FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:53,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:54,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:58,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:58,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/simpsonintegral.hpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 67
    functionName: QuantLib::SimpsonIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/simpsonintegral.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmMesherIntegral::integrate
    - increaseNumberOfEvaluations
    - absoluteAccuracy
    - f
    - QL_FAIL
    - std::fabs
    - maxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maxIterations
    - absAccuracy
    - relAccuracy
    - useConvergenceEstimate
    argTypes:
    - Size
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::GaussLobattoIntegral::GaussLobattoIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GaussLobattoIntegral::GaussLobattoIntegral(Size maxIterations,\n
      \                                              Real absAccuracy,\n                                               Real
      relAccuracy,\n                                               bool useConvergenceEstimate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:49,1
    - Dst: QuantLib::GaussLobattoIntegral::calculateAbsTolerance
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:50,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:52,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::GaussLobattoIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - QuantLib::GaussLobattoIntegral::calculateAbsTolerance
    - f
    - QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    - setNumberOfEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::integrate(\n                                     const
      std::function<Real (Real)>& f, \n                                     Real a,
      Real b) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:66,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:69,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:71,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:73,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:74,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:75,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:76,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:77,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:78,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:101,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:102,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:107,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:108,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:108,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:110,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 15
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 112
    functionName: QuantLib::GaussLobattoIntegral::calculateAbsTolerance
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - increaseNumberOfEvaluations
    - f
    - absoluteAccuracy
    - std::max
    - QL_FAIL
    - std::fabs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::calculateAbsTolerance(\n                                     const
      std::function<Real (Real)>& f, \n                                     Real a,
      Real b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:129,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:130,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:131,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:132,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:133,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:143,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:147,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:148,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:149,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:150,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:151,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:152,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 6
    argNames:
    - ' f'
    - a
    - b
    - fa
    - fb
    - acc
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 154
    functionName: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 2
    functionsReached:
    - numberOfEvaluations
    - increaseNumberOfEvaluations
    - f
    - QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    - maxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::adaptivGaussLobattoStep(\n                                     const
      std::function<Real (Real)>& f,\n                                     Real a,
      Real b, Real fa, Real fb,\n                                     Real acc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maxIterations
    - absAccuracy
    - relAccuracy
    - useConvergenceEstimate
    argTypes:
    - Size
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::GaussLobattoIntegral::GaussLobattoIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GaussLobattoIntegral::GaussLobattoIntegral(Size maxIterations,\n
      \                                              Real absAccuracy,\n                                               Real
      relAccuracy,\n                                               bool useConvergenceEstimate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:49,1
    - Dst: QuantLib::GaussLobattoIntegral::calculateAbsTolerance
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:50,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:52,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::GaussLobattoIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - QuantLib::GaussLobattoIntegral::calculateAbsTolerance
    - f
    - QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    - setNumberOfEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::integrate(\n                                     const
      std::function<Real (Real)>& f, \n                                     Real a,
      Real b) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:61,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:66,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:67,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:69,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:70,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:71,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:73,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:74,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:75,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:76,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:77,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:78,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:101,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:102,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:107,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:108,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:108,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:110,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 15
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 112
    functionName: QuantLib::GaussLobattoIntegral::calculateAbsTolerance
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - increaseNumberOfEvaluations
    - f
    - absoluteAccuracy
    - std::max
    - QL_FAIL
    - std::fabs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::calculateAbsTolerance(\n                                     const
      std::function<Real (Real)>& f, \n                                     Real a,
      Real b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:118,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:129,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:130,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:131,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:132,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:133,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:143,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:147,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:148,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:149,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:150,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:151,1
    - Dst: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
      Src: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp:152,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 6
    argNames:
    - ' f'
    - a
    - b
    - fa
    - fb
    - acc
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 154
    functionName: QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    functionSourceFile: /src/quantlib/ql/math/integrals/gausslobattointegral.cpp
    functionUses: 4
    functionsReached:
    - numberOfEvaluations
    - increaseNumberOfEvaluations
    - f
    - QuantLib::GaussLobattoIntegral::adaptivGaussLobattoStep
    - maxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussLobattoIntegral::adaptivGaussLobattoStep(\n                                     const
      std::function<Real (Real)>& f,\n                                     Real a,
      Real b, Real fa, Real fb,\n                                     Real acc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 37
    functionName: "DiscreteTrapezoidIntegral::operator()(\n        const Array& x,
      const Array& f)    const"
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteTrapezoidIntegral::operator()(\n        const Array&
      x, const Array& f)    const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 64
    functionName: "DiscreteSimpsonIntegral::operator()(\n        const Array& x, const
      Array& f)    const"
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteSimpsonIntegral::operator()(\n        const Array& x,
      const Array& f)    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:71,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:75,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:77,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:79,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 82
    functionName: QuantLib::DiscreteTrapezoidIntegrator::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - maxEvaluations
    - f
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteTrapezoidIntegrator::integrate(\n        const std::function<Real
      (Real)>& f, Real a, Real b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:91,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:98,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:103,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:105,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:105,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:107,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:109,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 112
    functionName: QuantLib::DiscreteSimpsonIntegrator::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - maxEvaluations
    - f
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteSimpsonIntegrator::integrate(\n        const std::function<Real
      (Real)>& f, Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 37
    functionName: "DiscreteTrapezoidIntegral::operator()(\n        const Array& x,
      const Array& f)    const"
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteTrapezoidIntegral::operator()(\n        const Array&
      x, const Array& f)    const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 64
    functionName: "DiscreteSimpsonIntegral::operator()(\n        const Array& x, const
      Array& f)    const"
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteSimpsonIntegral::operator()(\n        const Array& x,
      const Array& f)    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:71,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:75,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:77,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:79,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 82
    functionName: QuantLib::DiscreteTrapezoidIntegrator::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - maxEvaluations
    - f
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteTrapezoidIntegrator::integrate(\n        const std::function<Real
      (Real)>& f, Real a, Real b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:91,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:98,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:103,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:105,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:105,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:107,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:109,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 112
    functionName: QuantLib::DiscreteSimpsonIntegrator::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.cpp
    functionUses: 0
    functionsReached:
    - increaseNumberOfEvaluations
    - maxEvaluations
    - f
    linkageType: ''
    returnType: Real
    signature: "Real DiscreteSimpsonIntegrator::integrate(\n        const std::function<Real
      (Real)>& f, Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DiscreteTrapezoidIntegrator(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DiscreteSimpsonIntegrator(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DiscreteTrapezoidIntegrator(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/discreteintegrals.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
    functionSourceFile: /src/quantlib/ql/math/integrals/discreteintegrals.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void DiscreteSimpsonIntegrator(Size evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~GaussianOrthogonalPolynomial()
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~GaussianOrthogonalPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~GaussianOrthogonalPolynomial()
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~GaussianOrthogonalPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<mp_real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::MomentBasedGaussianPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::vector<mp_real>
    linkageType: ''
    returnType: void
    signature: void MomentBasedGaussianPolynomial<mp_real>::MomentBasedGaussianPolynomial()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: mp_real
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:78,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:82,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:82,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:85,1
    - Dst: std::vector<mp_real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:86,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:86,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:89,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:91,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:93,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - k
    - i
    argTypes:
    - Integer
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 100
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 1
    functionsReached:
    - mp_real
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    - moment
    - std::vector<mp_real>
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::z(Integer k, Integer
      i) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:105,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:106,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:106,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:108,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:110,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 1
    functionsReached:
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    - moment
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::alpha_(Size u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mp_real
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:126,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:127,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:127,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:129,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:131,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 135
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 1
    functionsReached:
    - mp_real
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::beta_(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - alpha_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::alpha(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::alpha(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - beta_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::beta(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:154,1
    - Dst: mp_real::template convert_to<Real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 3
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - mp_real::template convert_to<Real>
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::beta(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:161,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:161,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - moment
    - close_enough
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - moment
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<mp_real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::MomentBasedGaussianPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - std::vector<mp_real>
    linkageType: ''
    returnType: void
    signature: void MomentBasedGaussianPolynomial<mp_real>::MomentBasedGaussianPolynomial()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: mp_real
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:75,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:78,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:82,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:82,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:85,1
    - Dst: std::vector<mp_real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:86,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:86,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:89,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:91,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:93,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:94,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - k
    - i
    argTypes:
    - Integer
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 100
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 4
    functionsReached:
    - mp_real
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    - moment
    - std::vector<mp_real>
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::z(Integer k, Integer
      i) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:105,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:106,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:106,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:108,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:110,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 3
    functionsReached:
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    - moment
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::alpha_(Size u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mp_real
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:126,1
    - Dst: resize
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:127,1
    - Dst: std::numeric_limits<mp_real>::quiet_NaN
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:127,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:129,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:131,1
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 135
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 3
    functionsReached:
    - mp_real
    - resize
    - std::numeric_limits<mp_real>::quiet_NaN
    - std::isnan
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::z
    - size
    linkageType: ''
    returnType: mp_real
    signature: mp_real MomentBasedGaussianPolynomial<mp_real>::beta_(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - alpha_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::alpha(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::alpha_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::alpha(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - beta_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::beta(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:154,1
    - Dst: mp_real::template convert_to<Real>
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 3
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - mp_real::template convert_to<Real>
    - QuantLib::MomentBasedGaussianPolynomial<mp_real>::beta_
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::beta(Size u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:161,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:161,1
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: QuantLib::MomentBasedGaussianPolynomial<Real>::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - moment
    - close_enough
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<Real>::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: moment
      Src: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::MomentBasedGaussianPolynomial<mp_real>::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/momentbasedgaussianpolynomial.hpp
    functionUses: 0
    functionsReached:
    - moment
    linkageType: ''
    returnType: Real
    signature: Real MomentBasedGaussianPolynomial<mp_real>::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - accuracy
    - maxIterations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::TrapezoidIntegral::TrapezoidIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TrapezoidIntegral(Real accuracy,\n                          Size
      maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:63,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:63,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:64,1
    - Dst: QuantLib::FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:68,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:69,1
    - Dst: QuantLib::nbEvalutions
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:69,1
    - Dst: QuantLib::nbEvalutions
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:70,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:72,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:72,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::TrapezoidIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::nbEvalutions
    - QuantLib::FdmMesherIntegral::integrate
    - increaseNumberOfEvaluations
    - f
    - absoluteAccuracy
    - QL_FAIL
    - std::fabs
    - maxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' f'
    - a
    - b
    - I
    - N
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 97
    functionName: QuantLib::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real (Real)>& f, \n                                     Real
      a, \n                                     Real b, \n                                     Real
      I, \n                                     Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::nbEvalutions
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nbEvalutions()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:113,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' f'
    - a
    - b
    - I
    - N
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 115
    functionName: QuantLib::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real (Real)>& f,\n                                     Real
      a, \n                                     Real b, \n                                     Real
      I, \n                                     Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::nbEvalutions
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nbEvalutions()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - accuracy
    - maxIterations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::TrapezoidIntegral::TrapezoidIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TrapezoidIntegral(Real accuracy,\n                          Size
      maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:63,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:63,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:64,1
    - Dst: QuantLib::FdmMesherIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:68,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:69,1
    - Dst: QuantLib::nbEvalutions
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:69,1
    - Dst: QuantLib::nbEvalutions
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:70,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:72,1
    - Dst: absoluteAccuracy
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:72,1
    - Dst: maxEvaluations
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::TrapezoidIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::nbEvalutions
    - QuantLib::FdmMesherIntegral::integrate
    - increaseNumberOfEvaluations
    - f
    - absoluteAccuracy
    - QL_FAIL
    - std::fabs
    - maxEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' f'
    - a
    - b
    - I
    - N
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 97
    functionName: QuantLib::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real (Real)>& f, \n                                     Real
      a, \n                                     Real b, \n                                     Real
      I, \n                                     Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::nbEvalutions
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nbEvalutions()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:113,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' f'
    - a
    - b
    - I
    - N
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 115
    functionName: QuantLib::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real (Real)>& f,\n                                     Real
      a, \n                                     Real b, \n                                     Real
      I, \n                                     Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::nbEvalutions
    functionSourceFile: /src/quantlib/ql/math/integrals/trapezoidintegral.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size nbEvalutions()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:44,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:44,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::ExpSinhIntegral::ExpSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<Real>::epsilon
    - std::sqrt
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void ExpSinhIntegral(\n            Real relTolerance = std::sqrt(std::numeric_limits<Real>::epsilon()),\n
      \           Size maxRefinements = 9)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:52,1
    - Dst: QuantLib::ExpSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:54,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:55,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 1
    functionsReached:
    - setAbsoluteError
    - increaseNumberOfEvaluations
    - QuantLib::ExpSinhIntegral::integrate
    - f
    - setNumberOfEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExpSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:66,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:69,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 2
    functionsReached:
    - increaseNumberOfEvaluations
    - setAbsoluteError
    - QuantLib::ExpSinhIntegral::integrate
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real(Real)>& f, Real a, Real b)\n
      \       const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:44,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:44,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::ExpSinhIntegral::ExpSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<Real>::epsilon
    - std::sqrt
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void ExpSinhIntegral(\n            Real relTolerance = std::sqrt(std::numeric_limits<Real>::epsilon()),\n
      \           Size maxRefinements = 9)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:52,1
    - Dst: QuantLib::ExpSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:54,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:55,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:55,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 3
    functionsReached:
    - setAbsoluteError
    - increaseNumberOfEvaluations
    - QuantLib::ExpSinhIntegral::integrate
    - f
    - setNumberOfEvaluations
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExpSinhIntegral::integrate
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:66,1
    - Dst: increaseNumberOfEvaluations
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:68,1
    - Dst: f
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:69,1
    - Dst: setAbsoluteError
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 4
    functionsReached:
    - increaseNumberOfEvaluations
    - setAbsoluteError
    - QuantLib::ExpSinhIntegral::integrate
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integrate(const std::function<Real(Real)>& f, Real a, Real b)\n
      \       const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:90,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:90,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::ExpSinhIntegral::ExpSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void ExpSinhIntegral( Real relTolerance = 0, Size maxRefinements =
      0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:90,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:90,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::ExpSinhIntegral::ExpSinhIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Null<Real>
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: void ExpSinhIntegral( Real relTolerance = 0, Size maxRefinements =
      0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/expsinhintegral.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::ExpSinhIntegral::integrate
    functionSourceFile: /src/quantlib/ql/math/integrals/expsinhintegral.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(Real)>& f, Real a, Real b)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/segmentintegral.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intervals
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::SegmentIntegral::SegmentIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/segmentintegral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SegmentIntegral::SegmentIntegral(Size intervals)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/segmentintegral.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intervals
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::SegmentIntegral::SegmentIntegral
    functionSourceFile: /src/quantlib/ql/math/integrals/segmentintegral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SegmentIntegral::SegmentIntegral(Size intervals)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:34,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:34,1
    - Dst: beta
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:35,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:35,1
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::GaussianOrthogonalPolynomial::value
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 1
    functionsReached:
    - beta
    - QuantLib::GaussianOrthogonalPolynomial::value
    - alpha
    linkageType: ''
    returnType: Real
    signature: Real GaussianOrthogonalPolynomial::value(Size n, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    - Dst: w
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::GaussianOrthogonalPolynomial::weightedValue
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - w
    - std::sqrt
    - QuantLib::GaussianOrthogonalPolynomial::value
    linkageType: ''
    returnType: Real
    signature: Real GaussianOrthogonalPolynomial::weightedValue(Size n, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::GaussLaguerrePolynomial::GaussLaguerrePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussLaguerrePolynomial::GaussLaguerrePolynomial(Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:55,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::GaussLaguerrePolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::GaussLaguerrePolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::alpha(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::GaussLaguerrePolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::GaussLaguerrePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::GaussHermitePolynomial::GaussHermitePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussHermitePolynomial::GaussHermitePolynomial(Real mu)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:77,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::GaussHermitePolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::GaussHermitePolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::alpha(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:85,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::GaussHermitePolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - Real
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::GaussHermitePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::fabs
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::GaussJacobiPolynomial::GaussJacobiPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussJacobiPolynomial::GaussJacobiPolynomial(Real alpha, Real
      beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:101,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:101,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:102,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: QuantLib::GaussJacobiPolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::mu_0() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:110,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:112,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:119,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 124
    functionName: QuantLib::GaussJacobiPolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QL_ASSERT
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::alpha(Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:131,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:133,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:139,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 143
    functionName: QuantLib::GaussJacobiPolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QL_ASSERT
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:146,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::GaussJacobiPolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::GaussLegendrePolynomial::GaussLegendrePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLegendrePolynomial::GaussLegendrePolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::GaussChebyshev2ndPolynomial::GaussChebyshev2ndPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussChebyshev2ndPolynomial::GaussChebyshev2ndPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::GaussChebyshevPolynomial::GaussChebyshevPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussChebyshevPolynomial::GaussChebyshevPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::GaussGegenbauerPolynomial::GaussGegenbauerPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussGegenbauerPolynomial::GaussGegenbauerPolynomial(Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::GaussHyperbolicPolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::GaussHyperbolicPolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::alpha(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: QuantLib::GaussHyperbolicPolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cosh
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::GaussHyperbolicPolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::cosh
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::w(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:34,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:34,1
    - Dst: beta
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:35,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:35,1
    - Dst: alpha
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::GaussianOrthogonalPolynomial::value
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 3
    functionsReached:
    - beta
    - QuantLib::GaussianOrthogonalPolynomial::value
    - alpha
    linkageType: ''
    returnType: Real
    signature: Real GaussianOrthogonalPolynomial::value(Size n, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    - Dst: w
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    - Dst: QuantLib::GaussianOrthogonalPolynomial::value
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - x
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::GaussianOrthogonalPolynomial::weightedValue
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - w
    - std::sqrt
    - QuantLib::GaussianOrthogonalPolynomial::value
    linkageType: ''
    returnType: Real
    signature: Real GaussianOrthogonalPolynomial::weightedValue(Size n, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::GaussLaguerrePolynomial::GaussLaguerrePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussLaguerrePolynomial::GaussLaguerrePolynomial(Real s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:55,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::GaussLaguerrePolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::GaussLaguerrePolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::alpha(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::GaussLaguerrePolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::GaussLaguerrePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GaussLaguerrePolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::GaussHermitePolynomial::GaussHermitePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussHermitePolynomial::GaussHermitePolynomial(Real mu)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:77,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::GaussHermitePolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::GaussHermitePolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::alpha(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:85,1
    - Dst: Real
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::GaussHermitePolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - Real
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::GaussHermitePolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::fabs
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GaussHermitePolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::GaussJacobiPolynomial::GaussJacobiPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussJacobiPolynomial::GaussJacobiPolynomial(Real alpha, Real
      beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:101,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:101,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:102,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: QuantLib::GaussJacobiPolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::exp
    - GammaFunction
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::mu_0() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:110,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:112,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:119,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 124
    functionName: QuantLib::GaussJacobiPolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QL_ASSERT
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::alpha(Size i) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:131,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:133,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:139,1
    - Dst: close_enough
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 143
    functionName: QuantLib::GaussJacobiPolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QL_ASSERT
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:146,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: QuantLib::GaussJacobiPolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real GaussJacobiPolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::GaussLegendrePolynomial::GaussLegendrePolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussLegendrePolynomial::GaussLegendrePolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::GaussChebyshev2ndPolynomial::GaussChebyshev2ndPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussChebyshev2ndPolynomial::GaussChebyshev2ndPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::GaussChebyshevPolynomial::GaussChebyshevPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussChebyshevPolynomial::GaussChebyshevPolynomial()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::GaussGegenbauerPolynomial::GaussGegenbauerPolynomial
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GaussGegenbauerPolynomial::GaussGegenbauerPolynomial(Real lambda)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::GaussHyperbolicPolynomial::mu_0
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::mu_0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::GaussHyperbolicPolynomial::alpha
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::alpha(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: QuantLib::GaussHyperbolicPolynomial::beta
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::beta(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cosh
      Src: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::GaussHyperbolicPolynomial::w
    functionSourceFile: /src/quantlib/ql/math/integrals/gaussianorthogonalpolynomial.cpp
    functionUses: 0
    functionsReached:
    - std::cosh
    linkageType: ''
    returnType: Real
    signature: Real GaussHyperbolicPolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/integral.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrator::Integrator
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Integrator::Integrator(Real absoluteAccuracy,\n                          Size
      maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - accuracy
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::Integrator::setAbsoluteAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setAbsoluteAccuracy(Real accuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maxEvaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::Integrator::setMaxEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setMaxEvaluations(Size maxEvaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::Integrator::absoluteAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Integrator::absoluteAccuracy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::Integrator::maxEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Integrator::maxEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::Integrator::absoluteError
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Integrator::absoluteError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::Integrator::setAbsoluteError
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setAbsoluteError(Real error) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Integrator::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Integrator::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Integrator::setNumberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setNumberOfEvaluations(Size evaluations) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - increase
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::Integrator::increaseNumberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::increaseNumberOfEvaluations(Size increase) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::Integrator::integrationSuccess
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Integrator::integrationSuccess() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: integrate
      Src: /src/quantlib/ql/math/integrals/integral.cpp:83,1
    - Dst: integrate
      Src: /src/quantlib/ql/math/integrals/integral.cpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionName: "Integrator::operator()(const std::function<Real (Real)>& f,\n                                Real
      a,\n                                Real b) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached:
    - integrate
    linkageType: ''
    returnType: Real
    signature: "Real Integrator::operator()(const std::function<Real (Real)>& f,\n
      \                               Real a,\n                                Real
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/integrals/integral.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absoluteAccuracy
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrator::Integrator
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Integrator::Integrator(Real absoluteAccuracy,\n                          Size
      maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - accuracy
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::Integrator::setAbsoluteAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setAbsoluteAccuracy(Real accuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maxEvaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::Integrator::setMaxEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setMaxEvaluations(Size maxEvaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::Integrator::absoluteAccuracy
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Integrator::absoluteAccuracy() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::Integrator::maxEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Integrator::maxEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::Integrator::absoluteError
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Integrator::absoluteError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::Integrator::setAbsoluteError
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setAbsoluteError(Real error) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Integrator::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size Integrator::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Integrator::setNumberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::setNumberOfEvaluations(Size evaluations) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - increase
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::Integrator::increaseNumberOfEvaluations
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Integrator::increaseNumberOfEvaluations(Size increase) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::Integrator::integrationSuccess
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Integrator::integrationSuccess() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: integrate
      Src: /src/quantlib/ql/math/integrals/integral.cpp:83,1
    - Dst: integrate
      Src: /src/quantlib/ql/math/integrals/integral.cpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' f'
    - a
    - b
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionName: "Integrator::operator()(const std::function<Real (Real)>& f,\n                                Real
      a,\n                                Real b) const"
    functionSourceFile: /src/quantlib/ql/math/integrals/integral.cpp
    functionUses: 0
    functionsReached:
    - integrate
    linkageType: ''
    returnType: Real
    signature: "Real Integrator::operator()(const std::function<Real (Real)>& f,\n
      \                               Real a,\n                                Real
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a1
    - a2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::MarshallOlkinCopula::MarshallOlkinCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarshallOlkinCopula::MarshallOlkinCopula(Real a1,Real a2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:39,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: MarshallOlkinCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MarshallOlkinCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a1
    - a2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::MarshallOlkinCopula::MarshallOlkinCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MarshallOlkinCopula::MarshallOlkinCopula(Real a1,Real a2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:39,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: MarshallOlkinCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/marshallolkincopula.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MarshallOlkinCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::GaussianCopula::GaussianCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/gaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussianCopula::GaussianCopula(Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:35,1
    - Dst: bivariate_normal_cdf_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    - Dst: invCumNormal_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    - Dst: invCumNormal_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: GaussianCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/gaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - invCumNormal_
    - bivariate_normal_cdf_
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GaussianCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - rho
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::GaussianCopula::GaussianCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/gaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GaussianCopula::GaussianCopula(Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:35,1
    - Dst: bivariate_normal_cdf_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    - Dst: invCumNormal_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    - Dst: invCumNormal_
      Src: /src/quantlib/ql/math/copulas/gaussiancopula.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: GaussianCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/gaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - invCumNormal_
    - bivariate_normal_cdf_
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GaussianCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::GalambosCopula::GalambosCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/galamboscopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GalambosCopula::GalambosCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:36,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: GalambosCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/galamboscopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - pow
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GalambosCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::GalambosCopula::GalambosCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/galamboscopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GalambosCopula::GalambosCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:36,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/galamboscopula.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: GalambosCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/galamboscopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - pow
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GalambosCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:30,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: MinCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/mincopula.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MinCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:30,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/copulas/mincopula.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: MinCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/mincopula.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MinCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::AliMikhailHaqCopula::AliMikhailHaqCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AliMikhailHaqCopula::AliMikhailHaqCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: AliMikhailHaqCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AliMikhailHaqCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::AliMikhailHaqCopula::AliMikhailHaqCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AliMikhailHaqCopula::AliMikhailHaqCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: AliMikhailHaqCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/alimikhailhaqcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AliMikhailHaqCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ClaytonCopula::ClaytonCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/claytoncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ClaytonCopula::ClaytonCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:41,1
    - Dst: max
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: ClaytonCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/claytoncopula.cpp
    functionUses: 0
    functionsReached:
    - max
    - pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ClaytonCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ClaytonCopula::ClaytonCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/claytoncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ClaytonCopula::ClaytonCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:41,1
    - Dst: max
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/claytoncopula.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: ClaytonCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/claytoncopula.cpp
    functionUses: 0
    functionsReached:
    - max
    - pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ClaytonCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FarlieGumbelMorgensternCopula::FarlieGumbelMorgensternCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FarlieGumbelMorgensternCopula::FarlieGumbelMorgensternCopula(Real
      theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: FarlieGumbelMorgensternCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FarlieGumbelMorgensternCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FarlieGumbelMorgensternCopula::FarlieGumbelMorgensternCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FarlieGumbelMorgensternCopula::FarlieGumbelMorgensternCopula(Real
      theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: FarlieGumbelMorgensternCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/farliegumbelmorgensterncopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FarlieGumbelMorgensternCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::PlackettCopula::PlackettCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/plackettcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PlackettCopula::PlackettCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:38,1
    - Dst: sqrt
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: PlackettCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/plackettcopula.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PlackettCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::PlackettCopula::PlackettCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/plackettcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PlackettCopula::PlackettCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:38,1
    - Dst: sqrt
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:41,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/copulas/plackettcopula.cpp:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: PlackettCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/plackettcopula.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PlackettCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::GumbelCopula::GumbelCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/gumbelcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GumbelCopula::GumbelCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:35,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: GumbelCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/gumbelcopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - pow
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GumbelCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::GumbelCopula::GumbelCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/gumbelcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GumbelCopula::GumbelCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:35,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/gumbelcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: GumbelCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/gumbelcopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - pow
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GumbelCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/independentcopula.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/independentcopula.cpp:29,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: IndependentCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/independentcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IndependentCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/independentcopula.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/independentcopula.cpp:29,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: IndependentCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/independentcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IndependentCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FrankCopula::FrankCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/frankcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FrankCopula::FrankCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:35,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: FrankCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/frankcopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FrankCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FrankCopula::FrankCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/frankcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FrankCopula::FrankCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:35,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    - Dst: exp
      Src: /src/quantlib/ql/math/copulas/frankcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: FrankCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/frankcopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FrankCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::HuslerReissCopula::HuslerReissCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HuslerReissCopula::HuslerReissCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:37,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: cumNormal_
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: cumNormal_
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: HuslerReissCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - cumNormal_
    - pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real HuslerReissCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::HuslerReissCopula::HuslerReissCopula
    functionSourceFile: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HuslerReissCopula::HuslerReissCopula(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:37,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: cumNormal_
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: pow
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: cumNormal_
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    - Dst: log
      Src: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: HuslerReissCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/huslerreisscopula.cpp
    functionUses: 0
    functionsReached:
    - log
    - cumNormal_
    - pow
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real HuslerReissCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:30,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: MaxCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/maxcopula.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MaxCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:30,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/copulas/maxcopula.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: MaxCopula::operator()(Real x, Real y) const
    functionSourceFile: /src/quantlib/ql/math/copulas/maxcopula.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MaxCopula::operator()(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::Interpolation2D::templateImpl::templateImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void templateImpl(const I1& xBegin, const I1& xEnd,\n                         const
      I2& yBegin, const I2& yEnd,\n                         const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::Interpolation2D::templateImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::Interpolation2D::templateImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::Interpolation2D::templateImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Interpolation2D::templateImpl::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real yMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Interpolation2D::templateImpl::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real yMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::Interpolation2D::templateImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& zData() const override'
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:94,1
    - Dst: QuantLib::Interpolation2D::templateImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:96,1
    - Dst: QuantLib::Interpolation2D::templateImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:96,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:104,1
    - Dst: QuantLib::Interpolation2D::templateImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:106,1
    - Dst: QuantLib::Interpolation2D::templateImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:106,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:107,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:107,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 8
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 108
    functionName: QuantLib::Interpolation2D::templateImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation2D::templateImpl::yMax
    - close
    - QuantLib::Interpolation2D::templateImpl::xMin
    - QuantLib::Interpolation2D::templateImpl::yMin
    - QuantLib::Interpolation2D::templateImpl::xMax
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:114,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionName: QuantLib::Interpolation2D::templateImpl::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:126,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 134
    functionName: QuantLib::Interpolation2D::templateImpl::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::Interpolation2D::Interpolation2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Interpolation2D()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:143,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: "operator()(Real x, Real y,\n                        bool allowExtrapolation
      = false) const"
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real operator()(Real x, Real y,\n                        bool allowExtrapolation
      = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Interpolation2D::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::Interpolation2D::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xValues
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::Interpolation2D::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::xValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::locateX
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::Interpolation2D::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::locateX
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Interpolation2D::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::yMin
    linkageType: ''
    returnType: Real
    signature: Real yMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::Interpolation2D::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::yMax
    linkageType: ''
    returnType: Real
    signature: Real yMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yValues
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::Interpolation2D::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::yValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::locateY
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::Interpolation2D::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::locateY
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zData
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: '& zData() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - zData
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::isInRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::Interpolation2D::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Interpolation2D::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::Interpolation2D::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:181,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:181,1
    - Dst: QuantLib::Interpolation2D::isInRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:182,1
    - Dst: QuantLib::Interpolation2D::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:184,1
    - Dst: QuantLib::Interpolation2D::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:184,1
    - Dst: QuantLib::Interpolation2D::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:186,1
    - Dst: QuantLib::Interpolation2D::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - x
    - y
    - extrapolate
    argTypes:
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 189
    functionName: QuantLib::Interpolation2D::checkRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation2D::isInRange
    - QuantLib::Interpolation2D::xMax
    - QuantLib::Interpolation2D::yMin
    - QuantLib::Interpolation2D::xMin
    - allowsExtrapolation
    - QuantLib::Interpolation2D::yMax
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkRange(Real x, Real y, bool extrapolate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: QuantLib::Interpolation2D::templateImpl::templateImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void templateImpl(const I1& xBegin, const I1& xEnd,\n                         const
      I2& yBegin, const I2& yEnd,\n                         const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::Interpolation2D::templateImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::Interpolation2D::templateImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::Interpolation2D::templateImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Interpolation2D::templateImpl::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real yMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::Interpolation2D::templateImpl::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real yMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::Interpolation2D::templateImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& zData() const override'
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:94,1
    - Dst: QuantLib::Interpolation2D::templateImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:96,1
    - Dst: QuantLib::Interpolation2D::templateImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:96,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:98,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:104,1
    - Dst: QuantLib::Interpolation2D::templateImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:106,1
    - Dst: QuantLib::Interpolation2D::templateImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:106,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:107,1
    - Dst: close
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:107,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 8
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 108
    functionName: QuantLib::Interpolation2D::templateImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation2D::templateImpl::yMax
    - close
    - QuantLib::Interpolation2D::templateImpl::xMin
    - QuantLib::Interpolation2D::templateImpl::yMin
    - QuantLib::Interpolation2D::templateImpl::xMax
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:114,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionName: QuantLib::Interpolation2D::templateImpl::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:126,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 134
    functionName: QuantLib::Interpolation2D::templateImpl::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::Interpolation2D::Interpolation2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Interpolation2D()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:143,1
    - Dst: value
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: "operator()(Real x, Real y,\n                        bool allowExtrapolation
      = false) const"
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - value
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real operator()(Real x, Real y,\n                        bool allowExtrapolation
      = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: QuantLib::Interpolation2D::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation2D::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::Interpolation2D::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation2D::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::xValues
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::Interpolation2D::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation2D::xValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::locateX
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::Interpolation2D::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation2D::locateX
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::Interpolation2D::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation2D::yMin
    linkageType: ''
    returnType: Real
    signature: Real yMin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::Interpolation2D::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation2D::yMax
    linkageType: ''
    returnType: Real
    signature: Real yMax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::yValues
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::Interpolation2D::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation2D::yValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::locateY
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::Interpolation2D::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Interpolation2D::locateY
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zData
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: '& zData() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - zData
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Interpolation2D::isInRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::Interpolation2D::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Interpolation2D::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::Interpolation2D::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:181,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:181,1
    - Dst: QuantLib::Interpolation2D::isInRange
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:182,1
    - Dst: QuantLib::Interpolation2D::xMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:184,1
    - Dst: QuantLib::Interpolation2D::xMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:184,1
    - Dst: QuantLib::Interpolation2D::yMin
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:186,1
    - Dst: QuantLib::Interpolation2D::yMax
      Src: /src/quantlib/ql/math/interpolations/interpolation2d.hpp:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - x
    - y
    - extrapolate
    argTypes:
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 189
    functionName: QuantLib::Interpolation2D::checkRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/interpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Interpolation2D::isInRange
    - QuantLib::Interpolation2D::xMax
    - QuantLib::Interpolation2D::yMin
    - QuantLib::Interpolation2D::xMin
    - allowsExtrapolation
    - QuantLib::Interpolation2D::yMax
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void checkRange(Real x, Real y, bool extrapolate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:26,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::chebyshev_interpolation_detail::apply
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::end
    - std::transform
    - std::begin
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:26,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::chebyshev_interpolation_detail::apply
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::end
    - std::transform
    - std::begin
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:35,1
    - Dst: "ext::make_shared<detail::LagrangeInterpolationImpl<\n            Array::const_iterator,
        Array::const_iterator> >"
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:37,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' y'
    - pointsType
    argTypes:
    - Array
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - "ext::make_shared<detail::LagrangeInterpolationImpl<\n            Array::const_iterator,
      Array::const_iterator> >"
    - std::end
    - update
    - QuantLib::ChebyshevInterpolation::nodes
    - size
    - std::begin
    linkageType: ''
    returnType: void
    signature: "void ChebyshevInterpolation::ChebyshevInterpolation(\n        const
      Array& y, PointsType pointsType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::chebyshev_interpolation_detail::apply
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:48,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - ' f'
    - pointsType
    argTypes:
    - Size
    - std::function<Real(Real)>
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - QuantLib::chebyshev_interpolation_detail::apply
    linkageType: ''
    returnType: void
    signature: "void ChebyshevInterpolation::ChebyshevInterpolation(\n        Size
      n, const std::function<Real(Real)>& f, PointsType pointsType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::ChebyshevInterpolation::nodes
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array ChebyshevInterpolation::nodes() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:64,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:71,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - n
    - pointsType
    argTypes:
    - Size
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: QuantLib::ChebyshevInterpolation::nodes
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - std::cos
    linkageType: ''
    returnType: Array
    signature: Array ChebyshevInterpolation::nodes(Size n, PointsType pointsType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' y'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::ChebyshevInterpolation::updateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation::updateY(const Array& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:26,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::chebyshev_interpolation_detail::apply
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::end
    - std::transform
    - std::begin
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:26,1
    - Dst: std::transform
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' f'
    argTypes:
    - Array
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionName: QuantLib::chebyshev_interpolation_detail::apply
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::end
    - std::transform
    - std::begin
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:35,1
    - Dst: "ext::make_shared<detail::LagrangeInterpolationImpl<\n            Array::const_iterator,
        Array::const_iterator> >"
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:37,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: std::end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: std::begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:39,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' y'
    - pointsType
    argTypes:
    - Array
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - "ext::make_shared<detail::LagrangeInterpolationImpl<\n            Array::const_iterator,
      Array::const_iterator> >"
    - std::end
    - update
    - QuantLib::ChebyshevInterpolation::nodes
    - size
    - std::begin
    linkageType: ''
    returnType: void
    signature: "void ChebyshevInterpolation::ChebyshevInterpolation(\n        const
      Array& y, PointsType pointsType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::chebyshev_interpolation_detail::apply
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:48,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - ' f'
    - pointsType
    argTypes:
    - Size
    - std::function<Real(Real)>
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - QuantLib::chebyshev_interpolation_detail::apply
    linkageType: ''
    returnType: void
    signature: "void ChebyshevInterpolation::ChebyshevInterpolation(\n        Size
      n, const std::function<Real(Real)>& f, PointsType pointsType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::ChebyshevInterpolation::nodes
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array ChebyshevInterpolation::nodes() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:64,1
    - Dst: std::cos
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:68,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:71,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - n
    - pointsType
    argTypes:
    - Size
    - PointsType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: QuantLib::ChebyshevInterpolation::nodes
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - std::cos
    linkageType: ''
    returnType: Array
    signature: Array ChebyshevInterpolation::nodes(Size n, PointsType pointsType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:77,1
    - Dst: std::copy
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' y'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::ChebyshevInterpolation::updateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - begin
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation::updateY(const Array& y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:50,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - SplineGrid::const_iterator::size
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:58,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:76,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - Y
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:97,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<X, Y>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<X, Y> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<std::vector<Real>, EmptyArg>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<std::vector<Real>, EmptyArg> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - Y
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::begin
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data::first::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - d
    - d2
    - ' y'
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::base_cubic_spline::base_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data::first::size
    linkageType: ''
    returnType: void
    signature: "void base_cubic_spline(const data &d, const data &d2,\n                              const
      data_table& y, data_table &y2,\n                              output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:266,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 5
    argNames:
    - d
    - d2
    - y
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::n_cubic_spline::n_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - X
    linkageType: ''
    returnType: void
    signature: "void n_cubic_spline(const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 269
    functionName: ~n_cubic_spline()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_spline()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - y
    - y2
    - res
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data_table
    - data_table
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: QuantLib::detail::base_cubic_splint::base_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void base_cubic_splint(const return_type &a, const return_type &b,\n
      \                             const return_type &a2, const return_type &b2,\n
      \                             const dimensions &i,\n                              const
      data&, const data&,\n                              const data_table &y, data_table
      &y2,\n                              output_data&,\n                              output_data&,
      output_data&,\n                              result_type &res)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:318,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:319,1
    - Dst: base_cubic_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:322,1
    - Dst: base_cubic_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 13
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - d
    - d2
    - y
    - y2
    - v
    - v1
    - v2
    - ' r'
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data
    - data
    - data_table
    - data_table
    - output_data
    - output_data
    - output_data
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::n_cubic_splint::n_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - base_cubic_spline
    - X
    - base_cubic_splint
    linkageType: ''
    returnType: void
    signature: "void n_cubic_splint(const return_type &a, const return_type &b,\n
      \                          const return_type &a2, const return_type &b2,\n                           const
      dimensions &i, const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v,\n                           output_data
      &v1, output_data &v2,\n                           result_type& r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: ~n_cubic_splint()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_splint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:50,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - SplineGrid::const_iterator::size
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:58,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:76,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - Y
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:97,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<X, Y>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 11
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<X, Y> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<std::vector<Real>, EmptyArg>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<std::vector<Real>, EmptyArg> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - Y
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::begin
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data::first::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - d
    - d2
    - ' y'
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::base_cubic_spline::base_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data::first::size
    linkageType: ''
    returnType: void
    signature: "void base_cubic_spline(const data &d, const data &d2,\n                              const
      data_table& y, data_table &y2,\n                              output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:266,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 5
    argNames:
    - d
    - d2
    - y
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::n_cubic_spline::n_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - X
    linkageType: ''
    returnType: void
    signature: "void n_cubic_spline(const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 269
    functionName: ~n_cubic_spline()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_spline()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - y
    - y2
    - res
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data_table
    - data_table
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: QuantLib::detail::base_cubic_splint::base_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void base_cubic_splint(const return_type &a, const return_type &b,\n
      \                             const return_type &a2, const return_type &b2,\n
      \                             const dimensions &i,\n                              const
      data&, const data&,\n                              const data_table &y, data_table
      &y2,\n                              output_data&,\n                              output_data&,
      output_data&,\n                              result_type &res)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:318,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:319,1
    - Dst: base_cubic_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:322,1
    - Dst: base_cubic_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 13
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - d
    - d2
    - y
    - y2
    - v
    - v1
    - v2
    - ' r'
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data
    - data
    - data_table
    - data_table
    - output_data
    - output_data
    - output_data
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::n_cubic_splint::n_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - base_cubic_spline
    - X
    - base_cubic_splint
    linkageType: ''
    returnType: void
    signature: "void n_cubic_splint(const return_type &a, const return_type &b,\n
      \                          const return_type &a2, const return_type &b2,\n                           const
      dimensions &i, const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v,\n                           output_data
      &v1, output_data &v2,\n                           result_type& r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: ~n_cubic_splint()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_splint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:479,1
    - Dst: set_shared_increments
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:482,1
    - Dst: c_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grid'
    - y
    argTypes:
    - SplineGrid
    - data_table
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 484
    functionName: QuantLib::MultiCubicSpline::MultiCubicSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - set_shared_increments
    - c_spline
    - std::vector<bool>
    linkageType: ''
    returnType: void
    signature: "void MultiCubicSpline(const SplineGrid& grid, const data_table &y,\n
      \                        const std::vector<bool>& ae =\n                                             std::vector<bool>(20,
      false))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_shared_coefficients
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:486,1
    - Dst: c_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 490
    functionName: operator()(const argument_type& x) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - c_splint
    - set_shared_coefficients
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(const argument_type& x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:513,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:515,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:517,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:524,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:527,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:532,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:533,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 508
    functionDepth: 1
    functionLinenumber: 508
    functionLinenumberEnd: 534
    functionName: QuantLib::MultiCubicSpline<i>::set_shared_increments
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - swap
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiCubicSpline<i>::set_shared_increments() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:543,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:546,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - typename MultiCubicSpline<i>::argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 561
    functionName: QuantLib::MultiCubicSpline<i>::set_shared_coefficients
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - size
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiCubicSpline<i>::set_shared_coefficients(\n                 const
      typename MultiCubicSpline<i>::argument_type &x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:50,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - SplineGrid::const_iterator::size
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:58,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 11
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:76,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - Y
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:97,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<X, Y>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 17
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<X, Y> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<std::vector<Real>, EmptyArg>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 18
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<std::vector<Real>, EmptyArg> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - Y
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::begin
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data::first::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - d
    - d2
    - ' y'
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::base_cubic_spline::base_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data::first::size
    linkageType: ''
    returnType: void
    signature: "void base_cubic_spline(const data &d, const data &d2,\n                              const
      data_table& y, data_table &y2,\n                              output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:266,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 5
    argNames:
    - d
    - d2
    - y
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::n_cubic_spline::n_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - X
    linkageType: ''
    returnType: void
    signature: "void n_cubic_spline(const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 269
    functionName: ~n_cubic_spline()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_spline()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - y
    - y2
    - res
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data_table
    - data_table
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: QuantLib::detail::base_cubic_splint::base_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void base_cubic_splint(const return_type &a, const return_type &b,\n
      \                             const return_type &a2, const return_type &b2,\n
      \                             const dimensions &i,\n                              const
      data&, const data&,\n                              const data_table &y, data_table
      &y2,\n                              output_data&,\n                              output_data&,
      output_data&,\n                              result_type &res)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:318,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:319,1
    - Dst: base_cubic_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:322,1
    - Dst: base_cubic_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 13
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - d
    - d2
    - y
    - y2
    - v
    - v1
    - v2
    - ' r'
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data
    - data
    - data_table
    - data_table
    - output_data
    - output_data
    - output_data
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::n_cubic_splint::n_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - base_cubic_spline
    - X
    - base_cubic_splint
    linkageType: ''
    returnType: void
    signature: "void n_cubic_splint(const return_type &a, const return_type &b,\n
      \                          const return_type &a2, const return_type &b2,\n                           const
      dimensions &i, const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v,\n                           output_data
      &v1, output_data &v2,\n                           result_type& r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: ~n_cubic_splint()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_splint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:50,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:54,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - SplineGrid::const_iterator::size
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:58,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 15
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: X
    signature: X &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::vector<Size>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<Size>::const_iterator& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void DataTable(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<U>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:76,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::DataTable
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<U>::begin
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void DataTable(const std::vector<U> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::size
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 16
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - X
    - Y
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:97,1
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<X, Y>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 23
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<X, Y> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Data(const SplineGrid &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Data
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Data<std::vector<Real>, EmptyArg>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::swap
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 24
    functionsReached:
    - QuantLib::detail::swap
    linkageType: ''
    returnType: void
    signature: void swap(Data<std::vector<Real>, EmptyArg> &d) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    - Dst: Y
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 125
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - Y
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::begin
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    - Dst: SplineGrid::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::begin
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::vector<Real>::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real>::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(const std::vector<Real> &v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: '&operator[](Size n) const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: '&operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type &operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data_type
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data_type
    linkageType: ''
    returnType: void
    signature: void Point()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: operator data_type() const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator data_type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: data_type
    signature: data_type & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - s
    argTypes:
    - data_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Point(data_type s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SplineGrid::const_iterator::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - i
    argTypes:
    - SplineGrid::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - SplineGrid::const_iterator::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid::const_iterator &i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - grid
    argTypes:
    - SplineGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: QuantLib::detail::Point
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::size
    linkageType: ''
    returnType: void
    signature: void Point(const SplineGrid &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: operator[](Size n) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator[](Size n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: '& operator[](Size n)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & operator[](Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data::first::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - d
    - d2
    - ' y'
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::base_cubic_spline::base_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - data::first::size
    linkageType: ''
    returnType: void
    signature: "void base_cubic_spline(const data &d, const data &d2,\n                              const
      data_table& y, data_table &y2,\n                              output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:266,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 5
    argNames:
    - d
    - d2
    - y
    - y2
    - v
    argTypes:
    - data
    - data
    - data_table
    - data_table
    - output_data
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::n_cubic_spline::n_cubic_spline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - X
    linkageType: ''
    returnType: void
    signature: "void n_cubic_spline(const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 269
    functionName: ~n_cubic_spline()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_spline()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - y
    - y2
    - res
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data_table
    - data_table
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: QuantLib::detail::base_cubic_splint::base_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void base_cubic_splint(const return_type &a, const return_type &b,\n
      \                             const return_type &a2, const return_type &b2,\n
      \                             const dimensions &i,\n                              const
      data&, const data&,\n                              const data_table &y, data_table
      &y2,\n                              output_data&,\n                              output_data&,
      output_data&,\n                              result_type &res)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:318,1
    - Dst: X
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:319,1
    - Dst: base_cubic_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:322,1
    - Dst: base_cubic_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 13
    argNames:
    - a
    - b
    - a2
    - b2
    - i
    - d
    - d2
    - y
    - y2
    - v
    - v1
    - v2
    - ' r'
    argTypes:
    - return_type
    - return_type
    - return_type
    - return_type
    - dimensions
    - data
    - data
    - data_table
    - data_table
    - output_data
    - output_data
    - output_data
    - result_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::n_cubic_splint::n_cubic_splint
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - size
    - base_cubic_spline
    - X
    - base_cubic_splint
    linkageType: ''
    returnType: void
    signature: "void n_cubic_splint(const return_type &a, const return_type &b,\n
      \                          const return_type &a2, const return_type &b2,\n                           const
      dimensions &i, const data &d, const data &d2,\n                           const
      data_table &y, data_table &y2, output_data &v,\n                           output_data
      &v1, output_data &v2,\n                           result_type& r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: ~n_cubic_splint()
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~n_cubic_splint()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:479,1
    - Dst: set_shared_increments
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:482,1
    - Dst: c_spline
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' grid'
    - y
    argTypes:
    - SplineGrid
    - data_table
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 484
    functionName: QuantLib::MultiCubicSpline::MultiCubicSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - set_shared_increments
    - c_spline
    - std::vector<bool>
    linkageType: ''
    returnType: void
    signature: "void MultiCubicSpline(const SplineGrid& grid, const data_table &y,\n
      \                        const std::vector<bool>& ae =\n                                             std::vector<bool>(20,
      false))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_shared_coefficients
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:486,1
    - Dst: c_splint
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 490
    functionName: operator()(const argument_type& x) const
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - c_splint
    - set_shared_coefficients
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(const argument_type& x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:513,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:515,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:517,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:524,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:527,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:532,1
    - Dst: swap
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:533,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 508
    functionDepth: 1
    functionLinenumber: 508
    functionLinenumberEnd: 534
    functionName: QuantLib::MultiCubicSpline<i>::set_shared_increments
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - swap
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiCubicSpline<i>::set_shared_increments() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:543,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:546,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/multicubicspline.hpp:554,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - typename MultiCubicSpline<i>::argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 561
    functionName: QuantLib::MultiCubicSpline<i>::set_shared_coefficients
    functionSourceFile: /src/quantlib/ql/math/interpolations/multicubicspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - size
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultiCubicSpline<i>::set_shared_coefficients(\n                 const
      typename MultiCubicSpline<i>::argument_type &x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BilinearInterpolationImpl::BilinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, const I2& yEnd,\n                                      const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::BilinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 62
    functionName: QuantLib::detail::BilinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::locateY
    - QuantLib::detail::BilinearInterpolationImpl::locateX
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BilinearInterpolationImpl::BilinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, const I2& yEnd,\n                                      const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::BilinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 62
    functionName: QuantLib::detail::BilinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::locateY
    - QuantLib::detail::BilinearInterpolationImpl::locateX
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:79,1
    - Dst: detail::BilinearInterpolationImpl<I1,I2,M>::BilinearInterpolationImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::BilinearInterpolation::BilinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BilinearInterpolationImpl<I1,I2,M>::BilinearInterpolationImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::Bilinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BilinearInterpolation
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BilinearInterpolationImpl::BilinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, const I2& yEnd,\n                                      const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::BilinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 62
    functionName: QuantLib::detail::BilinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::locateY
    - QuantLib::detail::BilinearInterpolationImpl::locateX
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BilinearInterpolationImpl::BilinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, const I2& yEnd,\n                                      const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::BilinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    - Dst: QuantLib::detail::BilinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 62
    functionName: QuantLib::detail::BilinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BilinearInterpolationImpl::locateY
    - QuantLib::detail::BilinearInterpolationImpl::locateX
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:79,1
    - Dst: detail::BilinearInterpolationImpl<I1,I2,M>::BilinearInterpolationImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::BilinearInterpolation::BilinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BilinearInterpolationImpl<I1,I2,M>::BilinearInterpolationImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BilinearInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: QuantLib::Bilinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bilinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BilinearInterpolation
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::BackwardflatLinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolationImpl(const I1& xBegin, const I1&
      xEnd,\n                                      const I2& yBegin, const I2& yEnd,\n
      \                                     const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:47,1
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::BackwardflatLinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolationImpl(const I1& xBegin, const I1&
      xEnd,\n                                      const I2& yBegin, const I2& yEnd,\n
      \                                     const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:47,1
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:84,1
    - Dst: detail::BackwardflatLinearInterpolationImpl<I1,I2,M>::BackwardflatLinearInterpolationImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionName: QuantLib::BackwardflatLinearInterpolation::BackwardflatLinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BackwardflatLinearInterpolationImpl<I1,I2,M>::BackwardflatLinearInterpolationImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                             const I2& yBegin, const I2& yEnd,\n                              const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BackwardflatLinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::BackwardflatLinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BackwardflatLinearInterpolation
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::BackwardflatLinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolationImpl(const I1& xBegin, const I1&
      xEnd,\n                                      const I2& yBegin, const I2& yEnd,\n
      \                                     const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:47,1
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::BackwardflatLinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolationImpl(const I1& xBegin, const I1&
      xEnd,\n                                      const I2& yBegin, const I2& yEnd,\n
      \                                     const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:47,1
    - Dst: QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::BackwardflatLinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateX
    - QuantLib::detail::BackwardflatLinearInterpolationImpl::locateY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:84,1
    - Dst: detail::BackwardflatLinearInterpolationImpl<I1,I2,M>::BackwardflatLinearInterpolationImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionName: QuantLib::BackwardflatLinearInterpolation::BackwardflatLinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BackwardflatLinearInterpolationImpl<I1,I2,M>::BackwardflatLinearInterpolationImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BackwardflatLinearInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                             const I2& yBegin, const I2& yEnd,\n                              const
      M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BackwardflatLinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::BackwardflatLinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatlinearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BackwardflatLinearInterpolation
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~BicubicSplineDerivatives()
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BicubicSplineDerivatives()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::detail::BicubicSplineImpl::BicubicSplineImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BicubicSplineImpl(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:60,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:61,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::row_begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionName: QuantLib::detail::BicubicSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::row_begin
    - resize
    - QuantLib::detail::BicubicSplineImpl::zData_::rows
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:74,1
    - Dst: spline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::detail::BicubicSplineImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - spline
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:83,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:84,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:87,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:96,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:97,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:98,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:112,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:125,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:128,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:139,1
    - Dst: QuantLib::detail::BicubicSplineImpl::derivativeY
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:140,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:143,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - QuantLib::detail::BicubicSplineImpl::derivativeY
    - std::vector::begin
    - CubicInterpolation
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~BicubicSplineDerivatives()
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BicubicSplineDerivatives()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::detail::BicubicSplineImpl::BicubicSplineImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BicubicSplineImpl(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:60,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:61,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::row_begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionName: QuantLib::detail::BicubicSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::row_begin
    - resize
    - QuantLib::detail::BicubicSplineImpl::zData_::rows
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:74,1
    - Dst: spline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::detail::BicubicSplineImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 2
    functionsReached:
    - size
    - std::vector::begin
    - spline
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:83,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:84,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:87,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:96,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:97,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:98,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:112,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 1
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:125,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:128,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:139,1
    - Dst: QuantLib::detail::BicubicSplineImpl::derivativeY
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:140,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:143,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - QuantLib::detail::BicubicSplineImpl::derivativeY
    - std::vector::begin
    - CubicInterpolation
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:170,1
    - Dst: detail::BicubicSplineImpl<I1,I2,M>::BicubicSplineImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: QuantLib::BicubicSpline::BicubicSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BicubicSplineImpl<I1,I2,M>::BicubicSplineImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BicubicSpline(const I1& xBegin, const I1& xEnd,\n                      const
      I2& yBegin, const I2& yEnd,\n                      const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::BicubicSpline::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::BicubicSpline::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: QuantLib::BicubicSpline::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::BicubicSpline::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::BicubicSpline::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: QuantLib::Bicubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BicubicSpline
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~BicubicSplineDerivatives()
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BicubicSplineDerivatives()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::detail::BicubicSplineImpl::BicubicSplineImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BicubicSplineImpl(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:60,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:61,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::row_begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionName: QuantLib::detail::BicubicSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::row_begin
    - resize
    - QuantLib::detail::BicubicSplineImpl::zData_::rows
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:74,1
    - Dst: spline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::detail::BicubicSplineImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 4
    functionsReached:
    - size
    - std::vector::begin
    - spline
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:83,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:84,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:87,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:96,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:97,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:98,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:112,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 2
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:125,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:128,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:139,1
    - Dst: QuantLib::detail::BicubicSplineImpl::derivativeY
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:140,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:143,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - QuantLib::detail::BicubicSplineImpl::derivativeY
    - std::vector::begin
    - CubicInterpolation
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~BicubicSplineDerivatives()
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BicubicSplineDerivatives()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: QuantLib::detail::BicubicSplineImpl::BicubicSplineImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void BicubicSplineImpl(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin, const I2& yEnd,\n                              const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:59,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::rows
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:60,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:61,1
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::row_begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionName: QuantLib::detail::BicubicSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::row_begin
    - resize
    - QuantLib::detail::BicubicSplineImpl::zData_::rows
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:70,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:74,1
    - Dst: spline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::detail::BicubicSplineImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 6
    functionsReached:
    - size
    - std::vector::begin
    - spline
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:83,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:84,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:87,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:96,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:97,1
    - Dst: QuantLib::detail::BicubicSplineImpl::value
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:98,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - std::vector::begin
    - CubicInterpolation
    - QuantLib::detail::BicubicSplineImpl::value
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:111,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:112,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:115,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 3
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:125,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:128,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::BicubicSplineImpl::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::begin
    - CubicInterpolation
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::BicubicSplineImpl::zData_::columns
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:139,1
    - Dst: QuantLib::detail::BicubicSplineImpl::derivativeY
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:140,1
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:143,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionName: QuantLib::detail::BicubicSplineImpl::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BicubicSplineImpl::zData_::columns
    - QuantLib::detail::BicubicSplineImpl::derivativeY
    - std::vector::begin
    - CubicInterpolation
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:170,1
    - Dst: detail::BicubicSplineImpl<I1,I2,M>::BicubicSplineImpl<I1,I2,M>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: QuantLib::BicubicSpline::BicubicSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::BicubicSplineImpl<I1,I2,M>::BicubicSplineImpl<I1,I2,M>
    linkageType: ''
    returnType: void
    signature: "void BicubicSpline(const I1& xBegin, const I1& xEnd,\n                      const
      I2& yBegin, const I2& yEnd,\n                      const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::BicubicSpline::derivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::BicubicSpline::derivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: QuantLib::BicubicSpline::secondDerivativeX
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeX(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::BicubicSpline::secondDerivativeY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real secondDerivativeY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::BicubicSpline::derivativeXY
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::BicubicSplineDerivatives>
    linkageType: ''
    returnType: Real
    signature: Real derivativeXY(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: QuantLib::Bicubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/bicubicsplineinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BicubicSpline
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:57,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:62,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:67,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:71,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:74,1
    - Dst: QuantLib::detail::XABRCoeffHolder::updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' paramIsFixed'
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<bool>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::XABRCoeffHolder::XABRCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Model
    - size
    - QuantLib::detail::XABRCoeffHolder::updateModelInstance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XABRCoeffHolder(const Time t,\n                    const Real&
      forward,\n                    const std::vector<Real>& params,\n                    const
      std::vector<bool>& paramIsFixed,\n                    std::vector<Real> addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: ~XABRCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~XABRCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::XABRCoeffHolder::updateModelInstance
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 1
    functionsReached:
    - Model
    linkageType: ''
    returnType: void
    signature: void updateModelInstance()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:116,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:120,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:125,1
    - Dst: LevenbergMarquardt::LevenbergMarquardt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:126,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:130,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 13
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - t
    - ' forward'
    - ' params'
    - ' paramIsFixed'
    - vegaWeighted
    - endCriteria
    - optMethod
    - errorAccept
    - useMaxError
    - maxGuesses
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - std::vector<Real>
    - std::vector<bool>
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Real
    - bool
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - std::vector<Real>
    - std::move
    - ext::make_shared<EndCriteria>
    - LevenbergMarquardt::LevenbergMarquardt
    linkageType: ''
    returnType: void
    signature: "void XABRInterpolationImpl(const I1& xBegin,\n                          const
      I1& xEnd,\n                          const I2& yBegin,\n                          Time
      t,\n                          const Real& forward,\n                          const
      std::vector<Real>& params,\n                          const std::vector<bool>&
      paramIsFixed,\n                          bool vegaWeighted,\n                          ext::shared_ptr<EndCriteria>
      endCriteria,\n                          ext::shared_ptr<OptimizationMethod>
      optMethod,\n                          const Real errorAccept,\n                          const
      bool useMaxError,\n                          const Size maxGuesses,\n                          const
      std::vector<Real>& addParams = std::vector<Real>(),\n                          VolatilityType
      volatilityType = VolatilityType::ShiftedLognormal)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:139,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::clear
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:151,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::push_back
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:152,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:152,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::back
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:154,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:157,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::end
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:158,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:163,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:163,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::end
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:164,1
    - Dst: std::logical_and<>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:165,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:166,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:167,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:173,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:174,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:181,1
    - Dst: HaltonRsg::nextSequence
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:191,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:192,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:194,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:199,1
    - Dst: ProjectedCostFunction::project
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:207,1
    - Dst: minimize
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:212,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:213,1
    - Dst: ProjectedCostFunction::include
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:215,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:217,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:219,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:220,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:231,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:234,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:235,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 237
    functionName: QuantLib::detail::XABRInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::back
    - Model
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - Problem::currentValue
    - HaltonRsg::nextSequence
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::begin
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::size
    - QuantLib::detail::XABRInterpolationImpl::weights_::push_back
    - minimize
    - QuantLib::detail::XABRInterpolationImpl::interpolationError
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::end
    - QuantLib::detail::XABRInterpolationImpl::weights_::end
    - QuantLib::detail::XABRInterpolationImpl::updateModelInstance
    - ProjectedCostFunction::project
    - std::logical_and<>
    - ProjectedCostFunction::include
    - Array::size
    - std::accumulate
    - std::sqrt
    - QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
    - QuantLib::detail::XABRInterpolationImpl::weights_::clear
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::modelInstance_::volatility
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 239
    functionName: QuantLib::detail::XABRInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::modelInstance_::volatility
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: QuantLib::detail::XABRInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 242
    functionName: QuantLib::detail::XABRInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 243
    functionName: QuantLib::detail::XABRInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:250,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - QuantLib::detail::XABRInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real interpolationSquaredError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:262,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:264,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 269
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationErrors
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - Array::begin
    - QuantLib::detail::XABRInterpolationImpl::value
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array interpolationErrors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:273,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real interpolationError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:282,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:282,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 286
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 1
    functionsReached:
    - std::max
    - std::fabs
    - QuantLib::detail::XABRInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real interpolationMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - xabr
    argTypes:
    - XABRInterpolationImpl*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 291
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::XABRError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XABRError(XABRInterpolationImpl *xabr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:294,1
    - Dst: params_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:296,1
    - Dst: updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:298,1
    - Dst: interpolationSquaredError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 300
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - params_::size
    - updateModelInstance
    - Model
    - interpolationSquaredError
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:303,1
    - Dst: params_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:305,1
    - Dst: updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:307,1
    - Dst: interpolationErrors
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::values
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - params_::size
    - interpolationErrors
    - updateModelInstance
    - Model
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:57,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:62,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:67,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:71,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:74,1
    - Dst: QuantLib::detail::XABRCoeffHolder::updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' paramIsFixed'
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<bool>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::XABRCoeffHolder::XABRCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Model
    - size
    - QuantLib::detail::XABRCoeffHolder::updateModelInstance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XABRCoeffHolder(const Time t,\n                    const Real&
      forward,\n                    const std::vector<Real>& params,\n                    const
      std::vector<bool>& paramIsFixed,\n                    std::vector<Real> addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: ~XABRCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~XABRCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::XABRCoeffHolder::updateModelInstance
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 2
    functionsReached:
    - Model
    linkageType: ''
    returnType: void
    signature: void updateModelInstance()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:116,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:120,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:125,1
    - Dst: LevenbergMarquardt::LevenbergMarquardt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:126,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:130,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 13
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - t
    - ' forward'
    - ' params'
    - ' paramIsFixed'
    - vegaWeighted
    - endCriteria
    - optMethod
    - errorAccept
    - useMaxError
    - maxGuesses
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - std::vector<Real>
    - std::vector<bool>
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Real
    - bool
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - std::vector<Real>
    - std::move
    - ext::make_shared<EndCriteria>
    - LevenbergMarquardt::LevenbergMarquardt
    linkageType: ''
    returnType: void
    signature: "void XABRInterpolationImpl(const I1& xBegin,\n                          const
      I1& xEnd,\n                          const I2& yBegin,\n                          Time
      t,\n                          const Real& forward,\n                          const
      std::vector<Real>& params,\n                          const std::vector<bool>&
      paramIsFixed,\n                          bool vegaWeighted,\n                          ext::shared_ptr<EndCriteria>
      endCriteria,\n                          ext::shared_ptr<OptimizationMethod>
      optMethod,\n                          const Real errorAccept,\n                          const
      bool useMaxError,\n                          const Size maxGuesses,\n                          const
      std::vector<Real>& addParams = std::vector<Real>(),\n                          VolatilityType
      volatilityType = VolatilityType::ShiftedLognormal)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:139,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::clear
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:151,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::push_back
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:152,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:152,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::back
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:154,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:157,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::end
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:158,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:163,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:163,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::end
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:164,1
    - Dst: std::logical_and<>
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:165,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:166,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:167,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:173,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:174,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:181,1
    - Dst: HaltonRsg::nextSequence
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:191,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:192,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:194,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:199,1
    - Dst: ProjectedCostFunction::project
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:207,1
    - Dst: minimize
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:212,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:213,1
    - Dst: ProjectedCostFunction::include
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:215,1
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:217,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:219,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:220,1
    - Dst: Array::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:231,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:234,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:235,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 137
    functionDepth: 3
    functionLinenumber: 137
    functionLinenumberEnd: 237
    functionName: QuantLib::detail::XABRInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::back
    - Model
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - Problem::currentValue
    - HaltonRsg::nextSequence
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::begin
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::size
    - QuantLib::detail::XABRInterpolationImpl::weights_::push_back
    - minimize
    - QuantLib::detail::XABRInterpolationImpl::interpolationError
    - QuantLib::detail::XABRInterpolationImpl::paramIsFixed_::end
    - QuantLib::detail::XABRInterpolationImpl::weights_::end
    - QuantLib::detail::XABRInterpolationImpl::updateModelInstance
    - ProjectedCostFunction::project
    - std::logical_and<>
    - ProjectedCostFunction::include
    - Array::size
    - std::accumulate
    - std::sqrt
    - QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
    - QuantLib::detail::XABRInterpolationImpl::weights_::clear
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::modelInstance_::volatility
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 239
    functionName: QuantLib::detail::XABRInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::modelInstance_::volatility
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: QuantLib::detail::XABRInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 242
    functionName: QuantLib::detail::XABRInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 243
    functionName: QuantLib::detail::XABRInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:250,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - QuantLib::detail::XABRInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real interpolationSquaredError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:262,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::weights_::begin
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:264,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:266,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 269
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationErrors
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::weights_::begin
    - Array::begin
    - QuantLib::detail::XABRInterpolationImpl::value
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array interpolationErrors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:273,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::XABRInterpolationImpl::interpolationSquaredError
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real interpolationError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:282,1
    - Dst: QuantLib::detail::XABRInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:282,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 286
    functionName: QuantLib::detail::XABRInterpolationImpl::interpolationMaxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 2
    functionsReached:
    - std::max
    - std::fabs
    - QuantLib::detail::XABRInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real interpolationMaxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - xabr
    argTypes:
    - XABRInterpolationImpl*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 291
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::XABRError
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XABRError(XABRInterpolationImpl *xabr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:294,1
    - Dst: params_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:296,1
    - Dst: updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:298,1
    - Dst: interpolationSquaredError
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 300
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - params_::size
    - updateModelInstance
    - Model
    - interpolationSquaredError
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Model
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:303,1
    - Dst: params_::size
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:305,1
    - Dst: updateModelInstance
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:307,1
    - Dst: interpolationErrors
      Src: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 309
    functionName: QuantLib::detail::XABRInterpolationImpl::XABRError::values
    functionSourceFile: /src/quantlib/ql/math/interpolations/xabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - params_::size
    - interpolationErrors
    - updateModelInstance
    - Model
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~UpdatedYInterpolation()
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdatedYInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    - Dst: std::set<Real>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::LagrangeInterpolationImpl::LagrangeInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::set<Real>
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::LagrangeInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::LagrangeInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::LagrangeInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::LagrangeInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:118,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' yBegin'
    - x
    argTypes:
    - Iterator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::LagrangeInterpolationImpl::_value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 2
    functionsReached:
    - std::lower_bound
    - std::abs
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real _value(const Iterator& yBegin, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~UpdatedYInterpolation()
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdatedYInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    - Dst: std::set<Real>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::LagrangeInterpolationImpl::LagrangeInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::set<Real>
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::LagrangeInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::LagrangeInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::LagrangeInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::LagrangeInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:118,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' yBegin'
    - x
    argTypes:
    - Iterator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::LagrangeInterpolationImpl::_value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 4
    functionsReached:
    - std::lower_bound
    - std::abs
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real _value(const Iterator& yBegin, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<detail::LagrangeInterpolationImpl<I1,I2> >
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:147,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::LagrangeInterpolation::LagrangeInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<detail::LagrangeInterpolationImpl<I1,I2> >
    - update
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::UpdatedYInterpolation>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::LagrangeInterpolation::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::UpdatedYInterpolation>
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~UpdatedYInterpolation()
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdatedYInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    - Dst: std::set<Real>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::LagrangeInterpolationImpl::LagrangeInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::set<Real>
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::LagrangeInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::LagrangeInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::LagrangeInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::LagrangeInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:118,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' yBegin'
    - x
    argTypes:
    - Iterator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::LagrangeInterpolationImpl::_value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 6
    functionsReached:
    - std::lower_bound
    - std::abs
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real _value(const Iterator& yBegin, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~UpdatedYInterpolation()
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdatedYInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    - Dst: std::set<Real>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::LagrangeInterpolationImpl::LagrangeInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::set<Real>
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::LagrangeInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::LagrangeInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::LagrangeInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::LagrangeInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LagrangeInterpolationImpl::_value
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::LagrangeInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LagrangeInterpolationImpl::_value
    - begin
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:117,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:118,1
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' yBegin'
    - x
    argTypes:
    - Iterator
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::LagrangeInterpolationImpl::_value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 8
    functionsReached:
    - std::lower_bound
    - std::abs
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real _value(const Iterator& yBegin, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<detail::LagrangeInterpolationImpl<I1,I2> >
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:147,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::LagrangeInterpolation::LagrangeInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<detail::LagrangeInterpolationImpl<I1,I2> >
    - update
    linkageType: ''
    returnType: void
    signature: "void LagrangeInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<detail::UpdatedYInterpolation>
      Src: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' y'
    - x
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::LagrangeInterpolation::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/lagrangeinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<detail::UpdatedYInterpolation>
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& y, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:39,1
    - Dst: FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' decoratedInterpolation'
    argTypes:
    - ext::shared_ptr<Interpolation2D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
    linkageType: ''
    returnType: void
    signature: void FlatExtrapolator2D(const ext::shared_ptr<Interpolation2D>& decoratedInterpolation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:46,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - decoratedInterpolation
    argTypes:
    - ext::shared_ptr<Interpolation2D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
    - std::move
    linkageType: ''
    returnType: void
    signature: void FlatExtrapolator2DImpl(ext::shared_ptr<Interpolation2D> decoratedInterpolation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    linkageType: ''
    returnType: Real
    signature: Real yMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    linkageType: ''
    returnType: Real
    signature: Real yMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zData
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& zData() const override'
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - zData
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:66,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:75,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:76,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:77,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    linkageType: ''
    returnType: Real
    signature: Real bindX(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:82,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:83,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:84,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    linkageType: ''
    returnType: Real
    signature: Real bindY(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:39,1
    - Dst: FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' decoratedInterpolation'
    argTypes:
    - ext::shared_ptr<Interpolation2D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D::Impl>
    - FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
    linkageType: ''
    returnType: void
    signature: void FlatExtrapolator2D(const ext::shared_ptr<Interpolation2D>& decoratedInterpolation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:46,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - decoratedInterpolation
    argTypes:
    - ext::shared_ptr<Interpolation2D>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::FlatExtrapolator2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
    - std::move
    linkageType: ''
    returnType: void
    signature: void FlatExtrapolator2DImpl(ext::shared_ptr<Interpolation2D> decoratedInterpolation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    linkageType: ''
    returnType: Real
    signature: Real xMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    linkageType: ''
    returnType: Real
    signature: Real xMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> xValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateX
    linkageType: ''
    returnType: Size
    signature: Size locateX(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    linkageType: ''
    returnType: Real
    signature: Real yMin() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    linkageType: ''
    returnType: Real
    signature: Real yMax() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yValues
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> yValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::locateY
    linkageType: ''
    returnType: Size
    signature: Size locateY(Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zData
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& zData() const override'
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - zData
    linkageType: ''
    returnType: Matrix
    signature: Matrix & zData() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::isInRange
    linkageType: ''
    returnType: bool
    signature: bool isInRange(Real x, Real y) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:66,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
    linkageType: ''
    returnType: Real
    signature: Real value(Real x, Real y) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:75,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:76,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:77,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindX
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMax
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::xMin
    linkageType: ''
    returnType: Real
    signature: Real bindX(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:82,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:83,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:84,1
    - Dst: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
      Src: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::bindY
    functionSourceFile: /src/quantlib/ql/math/interpolations/flatextrapolation2d.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMax
    - QuantLib::FlatExtrapolator2D::FlatExtrapolator2DImpl::yMin
    linkageType: ''
    returnType: Real
    signature: Real bindY(Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::Extrapolator::Extrapolator
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Extrapolator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~Extrapolator()
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Extrapolator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::Extrapolator::enableExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void enableExtrapolation(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Extrapolator::disableExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableExtrapolation(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Extrapolator::allowsExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool allowsExtrapolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::Extrapolator::Extrapolator
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Extrapolator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~Extrapolator()
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Extrapolator()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::Extrapolator::enableExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void enableExtrapolation(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Extrapolator::disableExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableExtrapolation(bool b = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Extrapolator::allowsExtrapolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/extrapolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool allowsExtrapolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: helper_map
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:63,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:64,1
    - Dst: detail::ConvexMonotoneImpl<I1,I2>::ConvexMonotoneImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:65,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: QuantLib::ConvexMonotoneInterpolation::ConvexMonotoneInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map
    - detail::ConvexMonotoneImpl<I1,I2>::ConvexMonotoneImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin, Real quadraticity,\n                                    Real
      monotonicity, bool forcePositive,\n                                    bool
      flatFinalPeriod = false,\n                                    const helper_map&
      preExistingHelpers =\n                                                               helper_map())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' interp'
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: QuantLib::ConvexMonotoneInterpolation::ConvexMonotoneInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneInterpolation(Interpolation& interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::dynamic_pointer_cast<detail::ConvexMonotoneImpl<I1,I2>,\n                                            Interpolation::Impl>"
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:82,1
    - Dst: ext::shared_ptr::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::ConvexMonotoneInterpolation::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::getExistingHelpers
    - "ext::dynamic_pointer_cast<detail::ConvexMonotoneImpl<I1,I2>,\n                                            Interpolation::Impl>"
    linkageType: ''
    returnType: std::map<Real, ext::shared_ptr<detail::SectionHelper> >
    signature: std::map<Real, ext::shared_ptr<detail::SectionHelper> > getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::ConvexMonotone::ConvexMonotone
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone(Real quadraticity = 0.3,\n                       Real
      monotonicity = 0.7,\n                       bool forcePositive = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::ConvexMonotone::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ConvexMonotoneInterpolation<I1,I2>
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:117,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:121,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:128,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:139,1
    - Dst: ConvexMonotoneInterpolation::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:145,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:147,1
    - Dst: ConvexMonotoneInterpolation::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - localisation
    - ' prevInterpolation'
    - finalSize
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - Interpolation
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 155
    functionName: QuantLib::ConvexMonotone::localInterpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ConvexMonotoneInterpolation::getExistingHelpers
    - ConvexMonotoneInterpolation<I1,I2>
    - std::distance
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation localInterpolate(const I1& xBegin, const I1& xEnd,\n
      \                                      const I2& yBegin, Size localisation,\n
      \                                      Interpolation& prevInterpolation,\n                                       Size
      finalSize) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: ~SectionHelper()
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SectionHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 8
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    - constantLastPeriod
    - ' preExistingHelpers'
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    - bool
    - helper_map
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::ConvexMonotoneImpl::ConvexMonotoneImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneImpl(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin,\n                               Real
      quadraticity,\n                               Real monotonicity,\n                               bool
      forcePositive,\n                               bool constantLastPeriod,\n                               const
      helper_map& preExistingHelpers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::ConvexMonotoneImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::detail::ConvexMonotoneImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: helper_map::erase
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 229
    functionName: QuantLib::detail::ConvexMonotoneImpl::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map::erase
    linkageType: ''
    returnType: helper_map
    signature: helper_map getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' quadraticHelper'
    - ' convMonoHelper'
    - quadraticity
    argTypes:
    - ext::shared_ptr<SectionHelper>
    - ext::shared_ptr<SectionHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: QuantLib::detail::ComboHelper::ComboHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ComboHelper(ext::shared_ptr<SectionHelper>& quadraticHelper,\n
      \                       ext::shared_ptr<SectionHelper>& convMonoHelper,\n                        Real
      quadraticity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::ComboHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::ComboHelper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::detail::ComboHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::ComboHelper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: QuantLib::detail::ComboHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::ComboHelper::fNext
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - value
    - prevPrimitive
    - xPrev
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::detail::EverywhereConstantHelper::EverywhereConstantHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EverywhereConstantHelper(Real value, Real prevPrimitive, Real
      xPrev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: QuantLib::detail::EverywhereConstantHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::EverywhereConstantHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 276
    functionName: QuantLib::detail::EverywhereConstantHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta2
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::detail::ConvexMonotone2Helper::ConvexMonotone2Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone2Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta2,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::detail::ConvexMonotone2Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::detail::ConvexMonotone2Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 313
    functionName: QuantLib::detail::ConvexMonotone2Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta3
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::ConvexMonotone3Helper::ConvexMonotone3Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone3Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta3,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionName: QuantLib::detail::ConvexMonotone3Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::ConvexMonotone3Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::detail::ConvexMonotone3Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 363
    functionName: QuantLib::detail::ConvexMonotone4Helper::ConvexMonotone4Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4Helper(Real xPrev,  Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta4,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 372
    functionName: QuantLib::detail::ConvexMonotone4Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 386
    functionName: QuantLib::detail::ConvexMonotone4Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::detail::ConvexMonotone4Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 420
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4MinHelper(Real xPrev,\n                                     Real
      xNext,\n                                     Real gPrev,\n                                     Real
      gNext,\n                                     Real fAverage,\n                                     Real
      eta4,\n                                     Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 436
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 456
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fPrev
    - prevPrimitive
    - xPrev
    - xNext
    - fNext
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: QuantLib::detail::ConstantGradHelper::ConstantGradHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantGradHelper(Real fPrev, Real prevPrimitive,\n                               Real
      xPrev, Real xNext, Real fNext)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 471
    functionName: QuantLib::detail::ConstantGradHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: QuantLib::detail::ConstantGradHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 475
    functionName: QuantLib::detail::ConstantGradHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 494
    functionName: QuantLib::detail::QuadraticHelper::QuadraticHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuadraticHelper(Real xPrev, Real xNext,\n                               Real
      fPrev, Real fNext,\n                               Real fAverage,\n                               Real
      prevPrimitive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionName: QuantLib::detail::QuadraticHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: QuantLib::detail::QuadraticHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 506
    functionName: QuantLib::detail::QuadraticHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 546
    functionName: QuantLib::detail::QuadraticMinHelper::QuadraticMinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void QuadraticMinHelper(\n                Real xPrev, Real xNext,
      Real fPrev, Real fNext, Real fAverage, Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 561
    functionName: QuantLib::detail::QuadraticMinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 575
    functionName: QuantLib::detail::QuadraticMinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 577
    functionName: QuantLib::detail::QuadraticMinHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:589,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:592,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:602,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:640,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:641,1
    - Dst: ConstantGradHelper::ConstantGradHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:643,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:655,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:656,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:663,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:664,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:679,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:680,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:688,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:689,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:705,1
    - Dst: ConvexMonotone2Helper::ConvexMonotone2Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:706,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:715,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:716,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:724,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:725,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:740,1
    - Dst: ConvexMonotone3Helper::ConvexMonotone3Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:741,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:750,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:751,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:759,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:760,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:778,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:779,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:787,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:788,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:804,1
    - Dst: ComboHelper::ComboHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:805,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:817,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:818,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:824,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: second::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:825,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 98
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 830
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - fNext
    - QuadraticMinHelper::QuadraticMinHelper
    - ConvexMonotone4Helper::ConvexMonotone4Helper
    - ComboHelper::ComboHelper
    - EverywhereConstantHelper::EverywhereConstantHelper
    - ConvexMonotone3Helper::ConvexMonotone3Helper
    - second::value
    - ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    - ConstantGradHelper::ConstantGradHelper
    - ext::shared_ptr<SectionHelper>
    - ConvexMonotone2Helper::ConvexMonotone2Helper
    - std::fabs
    - rbegin
    - size
    - QuadraticHelper::QuadraticHelper
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneImpl<I1,I2>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:835,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    - upper_bound
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:844,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 848
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached:
    - upper_bound
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: ~SectionHelper()
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SectionHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 8
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    - constantLastPeriod
    - ' preExistingHelpers'
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    - bool
    - helper_map
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::ConvexMonotoneImpl::ConvexMonotoneImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneImpl(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin,\n                               Real
      quadraticity,\n                               Real monotonicity,\n                               bool
      forcePositive,\n                               bool constantLastPeriod,\n                               const
      helper_map& preExistingHelpers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::ConvexMonotoneImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::detail::ConvexMonotoneImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: helper_map::erase
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 229
    functionName: QuantLib::detail::ConvexMonotoneImpl::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map::erase
    linkageType: ''
    returnType: helper_map
    signature: helper_map getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' quadraticHelper'
    - ' convMonoHelper'
    - quadraticity
    argTypes:
    - ext::shared_ptr<SectionHelper>
    - ext::shared_ptr<SectionHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: QuantLib::detail::ComboHelper::ComboHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ComboHelper(ext::shared_ptr<SectionHelper>& quadraticHelper,\n
      \                       ext::shared_ptr<SectionHelper>& convMonoHelper,\n                        Real
      quadraticity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::ComboHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::ComboHelper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::detail::ComboHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::ComboHelper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: QuantLib::detail::ComboHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::ComboHelper::fNext
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - value
    - prevPrimitive
    - xPrev
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::detail::EverywhereConstantHelper::EverywhereConstantHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EverywhereConstantHelper(Real value, Real prevPrimitive, Real
      xPrev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: QuantLib::detail::EverywhereConstantHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::EverywhereConstantHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 276
    functionName: QuantLib::detail::EverywhereConstantHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta2
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::detail::ConvexMonotone2Helper::ConvexMonotone2Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone2Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta2,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::detail::ConvexMonotone2Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::detail::ConvexMonotone2Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 313
    functionName: QuantLib::detail::ConvexMonotone2Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta3
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::ConvexMonotone3Helper::ConvexMonotone3Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone3Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta3,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionName: QuantLib::detail::ConvexMonotone3Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::ConvexMonotone3Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::detail::ConvexMonotone3Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 363
    functionName: QuantLib::detail::ConvexMonotone4Helper::ConvexMonotone4Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4Helper(Real xPrev,  Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta4,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 372
    functionName: QuantLib::detail::ConvexMonotone4Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 386
    functionName: QuantLib::detail::ConvexMonotone4Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::detail::ConvexMonotone4Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 420
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4MinHelper(Real xPrev,\n                                     Real
      xNext,\n                                     Real gPrev,\n                                     Real
      gNext,\n                                     Real fAverage,\n                                     Real
      eta4,\n                                     Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 436
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 456
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fPrev
    - prevPrimitive
    - xPrev
    - xNext
    - fNext
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: QuantLib::detail::ConstantGradHelper::ConstantGradHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantGradHelper(Real fPrev, Real prevPrimitive,\n                               Real
      xPrev, Real xNext, Real fNext)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 471
    functionName: QuantLib::detail::ConstantGradHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: QuantLib::detail::ConstantGradHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 475
    functionName: QuantLib::detail::ConstantGradHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 494
    functionName: QuantLib::detail::QuadraticHelper::QuadraticHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuadraticHelper(Real xPrev, Real xNext,\n                               Real
      fPrev, Real fNext,\n                               Real fAverage,\n                               Real
      prevPrimitive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionName: QuantLib::detail::QuadraticHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: QuantLib::detail::QuadraticHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 506
    functionName: QuantLib::detail::QuadraticHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 546
    functionName: QuantLib::detail::QuadraticMinHelper::QuadraticMinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void QuadraticMinHelper(\n                Real xPrev, Real xNext,
      Real fPrev, Real fNext, Real fAverage, Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 561
    functionName: QuantLib::detail::QuadraticMinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 575
    functionName: QuantLib::detail::QuadraticMinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 577
    functionName: QuantLib::detail::QuadraticMinHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:589,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:592,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:602,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:640,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:641,1
    - Dst: ConstantGradHelper::ConstantGradHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:643,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:655,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:656,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:663,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:664,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:679,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:680,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:688,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:689,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:705,1
    - Dst: ConvexMonotone2Helper::ConvexMonotone2Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:706,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:715,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:716,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:724,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:725,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:740,1
    - Dst: ConvexMonotone3Helper::ConvexMonotone3Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:741,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:750,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:751,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:759,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:760,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:778,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:779,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:787,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:788,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:804,1
    - Dst: ComboHelper::ComboHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:805,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:817,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:818,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:824,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: second::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:825,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 98
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 830
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - fNext
    - QuadraticMinHelper::QuadraticMinHelper
    - ConvexMonotone4Helper::ConvexMonotone4Helper
    - ComboHelper::ComboHelper
    - EverywhereConstantHelper::EverywhereConstantHelper
    - ConvexMonotone3Helper::ConvexMonotone3Helper
    - second::value
    - ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    - ConstantGradHelper::ConstantGradHelper
    - ext::shared_ptr<SectionHelper>
    - ConvexMonotone2Helper::ConvexMonotone2Helper
    - std::fabs
    - rbegin
    - size
    - QuadraticHelper::QuadraticHelper
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneImpl<I1,I2>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:835,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    - upper_bound
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:844,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 848
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached:
    - upper_bound
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: helper_map
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:63,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:64,1
    - Dst: detail::ConvexMonotoneImpl<I1,I2>::ConvexMonotoneImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:65,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: QuantLib::ConvexMonotoneInterpolation::ConvexMonotoneInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map
    - detail::ConvexMonotoneImpl<I1,I2>::ConvexMonotoneImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin, Real quadraticity,\n                                    Real
      monotonicity, bool forcePositive,\n                                    bool
      flatFinalPeriod = false,\n                                    const helper_map&
      preExistingHelpers =\n                                                               helper_map())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' interp'
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: QuantLib::ConvexMonotoneInterpolation::ConvexMonotoneInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneInterpolation(Interpolation& interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::dynamic_pointer_cast<detail::ConvexMonotoneImpl<I1,I2>,\n                                            Interpolation::Impl>"
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:82,1
    - Dst: ext::shared_ptr::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::ConvexMonotoneInterpolation::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::getExistingHelpers
    - "ext::dynamic_pointer_cast<detail::ConvexMonotoneImpl<I1,I2>,\n                                            Interpolation::Impl>"
    linkageType: ''
    returnType: std::map<Real, ext::shared_ptr<detail::SectionHelper> >
    signature: std::map<Real, ext::shared_ptr<detail::SectionHelper> > getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: QuantLib::ConvexMonotone::ConvexMonotone
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone(Real quadraticity = 0.3,\n                       Real
      monotonicity = 0.7,\n                       bool forcePositive = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::ConvexMonotone::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ConvexMonotoneInterpolation<I1,I2>
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:117,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:121,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:128,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:139,1
    - Dst: ConvexMonotoneInterpolation::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:145,1
    - Dst: ConvexMonotoneInterpolation<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:147,1
    - Dst: ConvexMonotoneInterpolation::getExistingHelpers
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - localisation
    - ' prevInterpolation'
    - finalSize
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - Interpolation
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 155
    functionName: QuantLib::ConvexMonotone::localInterpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ConvexMonotoneInterpolation::getExistingHelpers
    - ConvexMonotoneInterpolation<I1,I2>
    - std::distance
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation localInterpolate(const I1& xBegin, const I1& xEnd,\n
      \                                      const I2& yBegin, Size localisation,\n
      \                                      Interpolation& prevInterpolation,\n                                       Size
      finalSize) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: ~SectionHelper()
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SectionHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 8
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    - constantLastPeriod
    - ' preExistingHelpers'
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    - bool
    - helper_map
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::ConvexMonotoneImpl::ConvexMonotoneImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneImpl(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin,\n                               Real
      quadraticity,\n                               Real monotonicity,\n                               bool
      forcePositive,\n                               bool constantLastPeriod,\n                               const
      helper_map& preExistingHelpers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::ConvexMonotoneImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::detail::ConvexMonotoneImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: helper_map::erase
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 229
    functionName: QuantLib::detail::ConvexMonotoneImpl::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map::erase
    linkageType: ''
    returnType: helper_map
    signature: helper_map getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' quadraticHelper'
    - ' convMonoHelper'
    - quadraticity
    argTypes:
    - ext::shared_ptr<SectionHelper>
    - ext::shared_ptr<SectionHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: QuantLib::detail::ComboHelper::ComboHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ComboHelper(ext::shared_ptr<SectionHelper>& quadraticHelper,\n
      \                       ext::shared_ptr<SectionHelper>& convMonoHelper,\n                        Real
      quadraticity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::ComboHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::ComboHelper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::detail::ComboHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::ComboHelper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: QuantLib::detail::ComboHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::ComboHelper::fNext
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - value
    - prevPrimitive
    - xPrev
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::detail::EverywhereConstantHelper::EverywhereConstantHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EverywhereConstantHelper(Real value, Real prevPrimitive, Real
      xPrev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: QuantLib::detail::EverywhereConstantHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::EverywhereConstantHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 276
    functionName: QuantLib::detail::EverywhereConstantHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta2
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::detail::ConvexMonotone2Helper::ConvexMonotone2Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone2Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta2,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::detail::ConvexMonotone2Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::detail::ConvexMonotone2Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 313
    functionName: QuantLib::detail::ConvexMonotone2Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta3
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::ConvexMonotone3Helper::ConvexMonotone3Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone3Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta3,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionName: QuantLib::detail::ConvexMonotone3Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::ConvexMonotone3Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::detail::ConvexMonotone3Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 363
    functionName: QuantLib::detail::ConvexMonotone4Helper::ConvexMonotone4Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4Helper(Real xPrev,  Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta4,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 372
    functionName: QuantLib::detail::ConvexMonotone4Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 386
    functionName: QuantLib::detail::ConvexMonotone4Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::detail::ConvexMonotone4Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 420
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4MinHelper(Real xPrev,\n                                     Real
      xNext,\n                                     Real gPrev,\n                                     Real
      gNext,\n                                     Real fAverage,\n                                     Real
      eta4,\n                                     Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 436
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 456
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fPrev
    - prevPrimitive
    - xPrev
    - xNext
    - fNext
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: QuantLib::detail::ConstantGradHelper::ConstantGradHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantGradHelper(Real fPrev, Real prevPrimitive,\n                               Real
      xPrev, Real xNext, Real fNext)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 471
    functionName: QuantLib::detail::ConstantGradHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: QuantLib::detail::ConstantGradHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 475
    functionName: QuantLib::detail::ConstantGradHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 494
    functionName: QuantLib::detail::QuadraticHelper::QuadraticHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuadraticHelper(Real xPrev, Real xNext,\n                               Real
      fPrev, Real fNext,\n                               Real fAverage,\n                               Real
      prevPrimitive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionName: QuantLib::detail::QuadraticHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: QuantLib::detail::QuadraticHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 506
    functionName: QuantLib::detail::QuadraticHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 546
    functionName: QuantLib::detail::QuadraticMinHelper::QuadraticMinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void QuadraticMinHelper(\n                Real xPrev, Real xNext,
      Real fPrev, Real fNext, Real fAverage, Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 561
    functionName: QuantLib::detail::QuadraticMinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 575
    functionName: QuantLib::detail::QuadraticMinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 577
    functionName: QuantLib::detail::QuadraticMinHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:589,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:592,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:602,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:640,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:641,1
    - Dst: ConstantGradHelper::ConstantGradHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:643,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:655,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:656,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:663,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:664,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:679,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:680,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:688,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:689,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:705,1
    - Dst: ConvexMonotone2Helper::ConvexMonotone2Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:706,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:715,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:716,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:724,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:725,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:740,1
    - Dst: ConvexMonotone3Helper::ConvexMonotone3Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:741,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:750,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:751,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:759,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:760,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:778,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:779,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:787,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:788,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:804,1
    - Dst: ComboHelper::ComboHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:805,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:817,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:818,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:824,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: second::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:825,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 98
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 830
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - fNext
    - QuadraticMinHelper::QuadraticMinHelper
    - ConvexMonotone4Helper::ConvexMonotone4Helper
    - ComboHelper::ComboHelper
    - EverywhereConstantHelper::EverywhereConstantHelper
    - ConvexMonotone3Helper::ConvexMonotone3Helper
    - second::value
    - ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    - ConstantGradHelper::ConstantGradHelper
    - ext::shared_ptr<SectionHelper>
    - ConvexMonotone2Helper::ConvexMonotone2Helper
    - std::fabs
    - rbegin
    - size
    - QuadraticHelper::QuadraticHelper
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneImpl<I1,I2>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:835,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    - upper_bound
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:844,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 848
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached:
    - upper_bound
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 166
    functionName: ~SectionHelper()
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SectionHelper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 8
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - quadraticity
    - monotonicity
    - forcePositive
    - constantLastPeriod
    - ' preExistingHelpers'
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - bool
    - bool
    - helper_map
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: QuantLib::detail::ConvexMonotoneImpl::ConvexMonotoneImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotoneImpl(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin,\n                               Real
      quadraticity,\n                               Real monotonicity,\n                               bool
      forcePositive,\n                               bool constantLastPeriod,\n                               const
      helper_map& preExistingHelpers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::ConvexMonotoneImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::detail::ConvexMonotoneImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: helper_map::erase
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 229
    functionName: QuantLib::detail::ConvexMonotoneImpl::getExistingHelpers
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - helper_map::erase
    linkageType: ''
    returnType: helper_map
    signature: helper_map getExistingHelpers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' quadraticHelper'
    - ' convMonoHelper'
    - quadraticity
    argTypes:
    - ext::shared_ptr<SectionHelper>
    - ext::shared_ptr<SectionHelper>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: QuantLib::detail::ComboHelper::ComboHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ComboHelper(ext::shared_ptr<SectionHelper>& quadraticHelper,\n
      \                       ext::shared_ptr<SectionHelper>& convMonoHelper,\n                        Real
      quadraticity)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    - Dst: QuantLib::detail::ComboHelper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: QuantLib::detail::ComboHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::ComboHelper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    - Dst: QuantLib::detail::ComboHelper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::detail::ComboHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::ComboHelper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    - Dst: QuantLib::detail::ComboHelper::fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: QuantLib::detail::ComboHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::ComboHelper::fNext
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - value
    - prevPrimitive
    - xPrev
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::detail::EverywhereConstantHelper::EverywhereConstantHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EverywhereConstantHelper(Real value, Real prevPrimitive, Real
      xPrev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: QuantLib::detail::EverywhereConstantHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 275
    functionName: QuantLib::detail::EverywhereConstantHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 276
    functionName: QuantLib::detail::EverywhereConstantHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta2
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::detail::ConvexMonotone2Helper::ConvexMonotone2Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone2Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta2,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::detail::ConvexMonotone2Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::detail::ConvexMonotone2Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 313
    functionName: QuantLib::detail::ConvexMonotone2Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta3
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::ConvexMonotone3Helper::ConvexMonotone3Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone3Helper(Real xPrev, Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta3,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionName: QuantLib::detail::ConvexMonotone3Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::ConvexMonotone3Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::detail::ConvexMonotone3Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 363
    functionName: QuantLib::detail::ConvexMonotone4Helper::ConvexMonotone4Helper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4Helper(Real xPrev,  Real xNext,\n                                  Real
      gPrev, Real gNext,\n                                  Real fAverage, Real eta4,\n
      \                                 Real prevPrimitive)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 372
    functionName: QuantLib::detail::ConvexMonotone4Helper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 386
    functionName: QuantLib::detail::ConvexMonotone4Helper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::detail::ConvexMonotone4Helper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - xPrev
    - xNext
    - gPrev
    - gNext
    - fAverage
    - eta4
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 420
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConvexMonotone4MinHelper(Real xPrev,\n                                     Real
      xNext,\n                                     Real gPrev,\n                                     Real
      gNext,\n                                     Real fAverage,\n                                     Real
      eta4,\n                                     Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 436
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::value
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotone4Helper::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 456
    functionName: QuantLib::detail::ConvexMonotone4MinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ConvexMonotone4Helper::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fPrev
    - prevPrimitive
    - xPrev
    - xNext
    - fNext
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: QuantLib::detail::ConstantGradHelper::ConstantGradHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantGradHelper(Real fPrev, Real prevPrimitive,\n                               Real
      xPrev, Real xNext, Real fNext)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 471
    functionName: QuantLib::detail::ConstantGradHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: QuantLib::detail::ConstantGradHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 475
    functionName: QuantLib::detail::ConstantGradHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 494
    functionName: QuantLib::detail::QuadraticHelper::QuadraticHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QuadraticHelper(Real xPrev, Real xNext,\n                               Real
      fPrev, Real fNext,\n                               Real fAverage,\n                               Real
      prevPrimitive)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionName: QuantLib::detail::QuadraticHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: QuantLib::detail::QuadraticHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 506
    functionName: QuantLib::detail::QuadraticHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 6
    argNames:
    - xPrev
    - xNext
    - fPrev
    - fNext
    - fAverage
    - prevPrimitive
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 546
    functionName: QuantLib::detail::QuadraticMinHelper::QuadraticMinHelper
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void QuadraticMinHelper(\n                Real xPrev, Real xNext,
      Real fPrev, Real fNext, Real fAverage, Real prevPrimitive)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 561
    functionName: QuantLib::detail::QuadraticMinHelper::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 575
    functionName: QuantLib::detail::QuadraticMinHelper::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 577
    functionName: QuantLib::detail::QuadraticMinHelper::fNext
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real fNext() const override
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:589,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:592,1
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:602,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: fNext
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:613,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:640,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:641,1
    - Dst: ConstantGradHelper::ConstantGradHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:643,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:655,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:656,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:663,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:664,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:679,1
    - Dst: QuadraticMinHelper::QuadraticMinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:680,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:688,1
    - Dst: QuadraticHelper::QuadraticHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:689,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:705,1
    - Dst: ConvexMonotone2Helper::ConvexMonotone2Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:706,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:715,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:716,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:724,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:725,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:740,1
    - Dst: ConvexMonotone3Helper::ConvexMonotone3Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:741,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:750,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:751,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:759,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:760,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:778,1
    - Dst: ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:779,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:787,1
    - Dst: ConvexMonotone4Helper::ConvexMonotone4Helper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:788,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:804,1
    - Dst: ComboHelper::ComboHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:805,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:817,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:818,1
    - Dst: ext::shared_ptr<SectionHelper>
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:824,1
    - Dst: rbegin
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: second::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:826,1
    - Dst: EverywhereConstantHelper::EverywhereConstantHelper
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:825,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 98
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 830
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 0
    functionsReached:
    - fNext
    - QuadraticMinHelper::QuadraticMinHelper
    - ConvexMonotone4Helper::ConvexMonotone4Helper
    - ComboHelper::ComboHelper
    - EverywhereConstantHelper::EverywhereConstantHelper
    - ConvexMonotone3Helper::ConvexMonotone3Helper
    - second::value
    - ConvexMonotone4MinHelper::ConvexMonotone4MinHelper
    - ConstantGradHelper::ConstantGradHelper
    - ext::shared_ptr<SectionHelper>
    - ConvexMonotone2Helper::ConvexMonotone2Helper
    - std::fabs
    - rbegin
    - size
    - QuadraticHelper::QuadraticHelper
    - clear
    linkageType: ''
    returnType: void
    signature: void ConvexMonotoneImpl<I1,I2>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:835,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::value
    - upper_bound
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:844,1
    - Dst: upper_bound
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    - Dst: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
      Src: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp:847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 848
    functionName: QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/convexmonotoneinterpolation.hpp
    functionUses: 4
    functionsReached:
    - upper_bound
    - QuantLib::detail::ConvexMonotoneImpl<I1,I2>::primitive
    linkageType: ''
    returnType: Real
    signature: Real ConvexMonotoneImpl<I1,I2>::primitive(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~ChebyshevInterpolation() override
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ChebyshevInterpolation() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation(const ChebyshevInterpolation&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation(ChebyshevInterpolation&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& operator=(const ChebyshevInterpolation&)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ChebyshevInterpolation
    signature: ChebyshevInterpolation & operator=(const ChebyshevInterpolation&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(ChebyshevInterpolation&&)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ChebyshevInterpolation
    signature: ChebyshevInterpolation & operator=(ChebyshevInterpolation&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: ~ChebyshevInterpolation() override
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ChebyshevInterpolation() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation(const ChebyshevInterpolation&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ChebyshevInterpolation::ChebyshevInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ChebyshevInterpolation(ChebyshevInterpolation&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& operator=(const ChebyshevInterpolation&)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ChebyshevInterpolation
    signature: ChebyshevInterpolation & operator=(const ChebyshevInterpolation&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(ChebyshevInterpolation&&)'
    functionSourceFile: /src/quantlib/ql/math/interpolations/chebyshevinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ChebyshevInterpolation
    signature: ChebyshevInterpolation & operator=(ChebyshevInterpolation&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:48,1
    - Dst: detail::LinearInterpolationImpl<I1,I2>::LinearInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:48,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::LinearInterpolation::LinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::LinearInterpolationImpl<I1,I2>::LinearInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Linear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - LinearInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::LinearInterpolationImpl::LinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::LinearInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Size
    - Real
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::LinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::LinearInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::LinearInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::LinearInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::LinearInterpolationImpl::LinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::LinearInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Size
    - Real
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::LinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::LinearInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::LinearInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::LinearInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:48,1
    - Dst: detail::LinearInterpolationImpl<I1,I2>::LinearInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:48,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::LinearInterpolation::LinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::LinearInterpolationImpl<I1,I2>::LinearInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Linear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - LinearInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::LinearInterpolationImpl::LinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::LinearInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Size
    - Real
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::LinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::LinearInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::LinearInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::LinearInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::detail::LinearInterpolationImpl::LinearInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::LinearInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Size
    - Real
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::LinearInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::LinearInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::LinearInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::LinearInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/linearinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:47,1
    - Dst: detail::ForwardFlatInterpolationImpl<I1,I2>::ForwardFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::ForwardFlatInterpolation::ForwardFlatInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::ForwardFlatInterpolationImpl<I1,I2>::ForwardFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ForwardFlatInterpolation
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::ForwardFlat::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ForwardFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::ForwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                        const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::ForwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                        const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:47,1
    - Dst: detail::ForwardFlatInterpolationImpl<I1,I2>::ForwardFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::ForwardFlatInterpolation::ForwardFlatInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::ForwardFlatInterpolationImpl<I1,I2>::ForwardFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ForwardFlatInterpolation
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::ForwardFlat::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ForwardFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::ForwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                        const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::ForwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                        const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::ForwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::ForwardFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::ForwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/forwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:47,1
    - Dst: detail::BackwardFlatInterpolationImpl<I1,I2>::BackwardFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::BackwardFlatInterpolation::BackwardFlatInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::BackwardFlatInterpolationImpl<I1,I2>::BackwardFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                 const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BackwardFlatInterpolation
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::BackwardFlat::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BackwardFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::BackwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:88,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:98,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::BackwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:88,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:98,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:47,1
    - Dst: detail::BackwardFlatInterpolationImpl<I1,I2>::BackwardFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:47,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::BackwardFlatInterpolation::BackwardFlatInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::BackwardFlatInterpolationImpl<I1,I2>::BackwardFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                 const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BackwardFlatInterpolation
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::BackwardFlat::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - BackwardFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::BackwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:88,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:98,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::BackwardFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BackwardFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:88,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:98,1
    - Dst: QuantLib::detail::BackwardFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::BackwardFlatInterpolationImpl::locate
    - std::distance
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::detail::BackwardFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/backwardflatinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:71,1
    - Dst: Linear
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:74,1
    - Dst: Cubic
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:75,1
    - Dst: detail::MixedInterpolationImpl<I1, I2, Linear, Cubic>::MixedInterpolationImpl<I1,
        I2, Linear, Cubic>
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:71,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    - behavior
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 79
    functionName: QuantLib::MixedLinearCubicInterpolation::MixedLinearCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::MixedInterpolationImpl<I1, I2, Linear, Cubic>::MixedInterpolationImpl<I1,
      I2, Linear, Cubic>
    - update
    - Cubic
    - Linear
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubicInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior,\n                                      CubicInterpolation::DerivativeApprox
      da,\n                                      bool monotonic,\n                                      CubicInterpolation::BoundaryCondition
      leftC,\n                                      Real leftConditionValue,\n                                      CubicInterpolation::BoundaryCondition
      rightC,\n                                      Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - behavior
    - da
    argTypes:
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 98
    functionName: QuantLib::MixedLinearCubic::MixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubic(Size n,\n                         MixedInterpolation::Behavior
      behavior,\n                         CubicInterpolation::DerivativeApprox da,\n
      \                        bool monotonic = true,\n                         CubicInterpolation::BoundaryCondition
      leftCondition\n                             = CubicInterpolation::SecondDerivative,\n
      \                        Real leftConditionValue = 0.0,\n                         CubicInterpolation::BoundaryCondition
      rightCondition\n                             = CubicInterpolation::SecondDerivative,\n
      \                        Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MixedLinearCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::MixedLinearCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - MixedLinearCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: QuantLib::MixedLinearCubicNaturalSpline::MixedLinearCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubicNaturalSpline(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 147
    functionName: QuantLib::MixedLinearMonotonicCubicNaturalSpline::MixedLinearMonotonicCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearMonotonicCubicNaturalSpline(const I1& xBegin, const
      I1& xEnd,\n                                               const I2& yBegin,
      Size n,\n                                               MixedInterpolation::Behavior
      behavior\n                                                   = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 161
    functionName: QuantLib::MixedLinearKrugerCubic::MixedLinearKrugerCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearKrugerCubic(const I1& xBegin, const I1& xEnd,\n                               const
      I2& yBegin, Size n,\n                               MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: QuantLib::MixedLinearFritschButlandCubic::MixedLinearFritschButlandCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearFritschButlandCubic(const I1& xBegin, const I1& xEnd,\n
      \                                      const I2& yBegin, Size n,\n                                       MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::MixedLinearParabolic::MixedLinearParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearParabolic(const I1& xBegin, const I1& xEnd,\n                             const
      I2& yBegin, Size n,\n                             MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 203
    functionName: QuantLib::MixedLinearMonotonicParabolic::MixedLinearMonotonicParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearMonotonicParabolic(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator1
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:216,1
    - Dst: Interpolator2
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:227,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:233,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:236,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:241,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:244,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 251
    functionName: QuantLib::detail::MixedInterpolationImpl::MixedInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Interpolator2
    - Interpolator1
    - Size
    - interpolate
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MixedInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, Size n,\n                                   MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges,\n
      \                                  const Interpolator1& factory1 = Interpolator1(),\n
      \                                  const Interpolator2& factory2 = Interpolator2())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:254,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::MixedInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: interpolation1_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:259,1
    - Dst: interpolation2_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::detail::MixedInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolation2_
    - interpolation1_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:264,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:265,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:266,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::MixedInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:271,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::detail::MixedInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:276,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 278
    functionName: QuantLib::detail::MixedInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 279
    functionName: QuantLib::detail::MixedInterpolationImpl::switchIndex
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size switchIndex()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator1
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:216,1
    - Dst: Interpolator2
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:227,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:233,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:236,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:241,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:244,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 251
    functionName: QuantLib::detail::MixedInterpolationImpl::MixedInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Interpolator2
    - Interpolator1
    - Size
    - interpolate
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MixedInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, Size n,\n                                   MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges,\n
      \                                  const Interpolator1& factory1 = Interpolator1(),\n
      \                                  const Interpolator2& factory2 = Interpolator2())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:254,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::MixedInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: interpolation1_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:259,1
    - Dst: interpolation2_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::detail::MixedInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolation2_
    - interpolation1_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:264,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:265,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:266,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::MixedInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:271,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::detail::MixedInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:276,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 278
    functionName: QuantLib::detail::MixedInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 279
    functionName: QuantLib::detail::MixedInterpolationImpl::switchIndex
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size switchIndex()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:71,1
    - Dst: Linear
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:74,1
    - Dst: Cubic
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:75,1
    - Dst: detail::MixedInterpolationImpl<I1, I2, Linear, Cubic>::MixedInterpolationImpl<I1,
        I2, Linear, Cubic>
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:71,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    - behavior
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 79
    functionName: QuantLib::MixedLinearCubicInterpolation::MixedLinearCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::MixedInterpolationImpl<I1, I2, Linear, Cubic>::MixedInterpolationImpl<I1,
      I2, Linear, Cubic>
    - update
    - Cubic
    - Linear
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubicInterpolation(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior,\n                                      CubicInterpolation::DerivativeApprox
      da,\n                                      bool monotonic,\n                                      CubicInterpolation::BoundaryCondition
      leftC,\n                                      Real leftConditionValue,\n                                      CubicInterpolation::BoundaryCondition
      rightC,\n                                      Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - behavior
    - da
    argTypes:
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 98
    functionName: QuantLib::MixedLinearCubic::MixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubic(Size n,\n                         MixedInterpolation::Behavior
      behavior,\n                         CubicInterpolation::DerivativeApprox da,\n
      \                        bool monotonic = true,\n                         CubicInterpolation::BoundaryCondition
      leftCondition\n                             = CubicInterpolation::SecondDerivative,\n
      \                        Real leftConditionValue = 0.0,\n                         CubicInterpolation::BoundaryCondition
      rightCondition\n                             = CubicInterpolation::SecondDerivative,\n
      \                        Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MixedLinearCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::MixedLinearCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - MixedLinearCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: QuantLib::MixedLinearCubicNaturalSpline::MixedLinearCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearCubicNaturalSpline(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 147
    functionName: QuantLib::MixedLinearMonotonicCubicNaturalSpline::MixedLinearMonotonicCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearMonotonicCubicNaturalSpline(const I1& xBegin, const
      I1& xEnd,\n                                               const I2& yBegin,
      Size n,\n                                               MixedInterpolation::Behavior
      behavior\n                                                   = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 161
    functionName: QuantLib::MixedLinearKrugerCubic::MixedLinearKrugerCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearKrugerCubic(const I1& xBegin, const I1& xEnd,\n                               const
      I2& yBegin, Size n,\n                               MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: QuantLib::MixedLinearFritschButlandCubic::MixedLinearFritschButlandCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearFritschButlandCubic(const I1& xBegin, const I1& xEnd,\n
      \                                      const I2& yBegin, Size n,\n                                       MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::MixedLinearParabolic::MixedLinearParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearParabolic(const I1& xBegin, const I1& xEnd,\n                             const
      I2& yBegin, Size n,\n                             MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 203
    functionName: QuantLib::MixedLinearMonotonicParabolic::MixedLinearMonotonicParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MixedLinearMonotonicParabolic(const I1& xBegin, const I1& xEnd,\n
      \                                     const I2& yBegin, Size n,\n                                      MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator1
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:216,1
    - Dst: Interpolator2
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:227,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:233,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:236,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:241,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:244,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 251
    functionName: QuantLib::detail::MixedInterpolationImpl::MixedInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Interpolator2
    - Interpolator1
    - Size
    - interpolate
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MixedInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, Size n,\n                                   MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges,\n
      \                                  const Interpolator1& factory1 = Interpolator1(),\n
      \                                  const Interpolator2& factory2 = Interpolator2())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:254,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::MixedInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: interpolation1_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:259,1
    - Dst: interpolation2_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::detail::MixedInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolation2_
    - interpolation1_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:264,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:265,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:266,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::MixedInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:271,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::detail::MixedInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:276,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 278
    functionName: QuantLib::detail::MixedInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 279
    functionName: QuantLib::detail::MixedInterpolationImpl::switchIndex
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size switchIndex()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator1
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:216,1
    - Dst: Interpolator2
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:220,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:227,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:233,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:236,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:241,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:244,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 251
    functionName: QuantLib::detail::MixedInterpolationImpl::MixedInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Interpolator2
    - Interpolator1
    - Size
    - interpolate
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MixedInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, Size n,\n                                   MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges,\n
      \                                  const Interpolator1& factory1 = Interpolator1(),\n
      \                                  const Interpolator2& factory2 = Interpolator2())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:254,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: QuantLib::detail::MixedInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::update
    linkageType: ''
    returnType: void
    signature: void update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: interpolation1_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:259,1
    - Dst: interpolation2_
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::detail::MixedInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolation2_
    - interpolation1_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:264,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:265,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:266,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::primitive
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: QuantLib::detail::MixedInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::primitive
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:271,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::detail::MixedInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::derivative
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:276,1
    - Dst: QuantLib::detail::MixedInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 278
    functionName: QuantLib::detail::MixedInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::MixedInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 279
    functionName: QuantLib::detail::MixedInterpolationImpl::switchIndex
    functionSourceFile: /src/quantlib/ql/math/interpolations/mixedinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size switchIndex()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:48,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' addParams'
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::SABRWrapper::SABRWrapper
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - validateSabrParameters
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SABRWrapper(const Time t,\n                const Real& forward,\n
      \               const std::vector<Real>& params,\n                const std::vector<Real>&
      addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shiftedSabrVolatility
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - volatilityType
    argTypes:
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::SABRWrapper::volatility
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - shiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real volatility(const Real x, const VolatilityType volatilityType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:79,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - params
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Real
    - std::vector<Real>::empty
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params, std::vector<bool> &,\n
      \                      const Real &forward, const Real expiryTime,\n                       const
      std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::empty
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:123,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 120
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:48,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' addParams'
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::SABRWrapper::SABRWrapper
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - validateSabrParameters
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SABRWrapper(const Time t,\n                const Real& forward,\n
      \               const std::vector<Real>& params,\n                const std::vector<Real>&
      addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shiftedSabrVolatility
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - volatilityType
    argTypes:
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::SABRWrapper::volatility
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - shiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real volatility(const Real x, const VolatilityType volatilityType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:79,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - params
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Real
    - std::vector<Real>::empty
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params, std::vector<bool> &,\n
      \                      const Real &forward, const Real expiryTime,\n                       const
      std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::empty
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:123,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 120
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:161,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:163,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:169,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::SABRSpecs>::SABRSpecs>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 176
    functionName: QuantLib::SABRInterpolation::SABRInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - detail::XABRInterpolationImpl<I1, I2, detail::SABRSpecs>::SABRSpecs>
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void SABRInterpolation(const I1 &xBegin, // x = strikes\n                      const
      I1 &xEnd,\n                      const I2 &yBegin, // y = volatilities\n                      Time
      t,           // option expiry\n                      const Real &forward, Real
      alpha, Real beta, Real nu,\n                      Real rho, bool alphaIsFixed,
      bool betaIsFixed,\n                      bool nuIsFixed, bool rhoIsFixed, bool
      vegaWeighted = true,\n                      const ext::shared_ptr<EndCriteria>
      &endCriteria =\n                          ext::shared_ptr<EndCriteria>(),\n
      \                     const ext::shared_ptr<OptimizationMethod> &optMethod =\n
      \                         ext::shared_ptr<OptimizationMethod>(),\n                      const
      Real errorAccept = 0.0020,\n                      const bool useMaxError = false,\n
      \                     const Size maxGuesses = 50, const Real shift = 0.0,\n
      \                     const VolatilityType volatilityType = VolatilityType::ShiftedLognormal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::SABRInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::SABRInterpolation::forward
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: QuantLib::SABRInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::SABRInterpolation::beta
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: QuantLib::SABRInterpolation::nu
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::SABRInterpolation::rho
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: QuantLib::SABRInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 184
    functionName: QuantLib::SABRInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: QuantLib::SABRInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::SABRSpecs>*>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:192,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::SABRSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::SABRSpecs>
    signature: detail::XABRCoeffHolder<detail::SABRSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:211,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:219,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 221
    functionName: QuantLib::SABR::SABR
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SABR(Time t,\n         Real forward,\n         Real alpha,\n
      \        Real beta,\n         Real nu,\n         Real rho,\n         bool alphaIsFixed,\n
      \        bool betaIsFixed,\n         bool nuIsFixed,\n         bool rhoIsFixed,\n
      \        bool vegaWeighted = false,\n         ext::shared_ptr<EndCriteria> endCriteria
      = ext::shared_ptr<EndCriteria>(),\n         ext::shared_ptr<OptimizationMethod>
      optMethod = ext::shared_ptr<OptimizationMethod>(),\n         const Real errorAccept
      = 0.0020,\n         const bool useMaxError = false,\n         const Size maxGuesses
      = 50,\n         const Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SABRInterpolation
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 230
    functionName: QuantLib::SABR::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - SABRInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:48,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' addParams'
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::SABRWrapper::SABRWrapper
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - validateSabrParameters
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SABRWrapper(const Time t,\n                const Real& forward,\n
      \               const std::vector<Real>& params,\n                const std::vector<Real>&
      addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shiftedSabrVolatility
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - volatilityType
    argTypes:
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::SABRWrapper::volatility
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - shiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real volatility(const Real x, const VolatilityType volatilityType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:79,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - params
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Real
    - std::vector<Real>::empty
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params, std::vector<bool> &,\n
      \                      const Real &forward, const Real expiryTime,\n                       const
      std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::empty
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:123,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 120
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:48,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - t
    - ' forward'
    - ' params'
    - ' addParams'
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::detail::SABRWrapper::SABRWrapper
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - validateSabrParameters
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SABRWrapper(const Time t,\n                const Real& forward,\n
      \               const std::vector<Real>& params,\n                const std::vector<Real>&
      addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shiftedSabrVolatility
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - volatilityType
    argTypes:
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::SABRWrapper::volatility
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - shiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real volatility(const Real x, const VolatilityType volatilityType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:79,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - params
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Real
    - std::vector<Real>::empty
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params, std::vector<bool> &,\n
      \                      const Real &forward, const Real expiryTime,\n                       const
      std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:93,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>::empty
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:109,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:111,1
    - Dst: std::asin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:119,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:123,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:124,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:125,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: std::sin
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:127,1
    - Dst: Real
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 120
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:161,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:163,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:169,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::SABRSpecs>::SABRSpecs>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 176
    functionName: QuantLib::SABRInterpolation::SABRInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - detail::XABRInterpolationImpl<I1, I2, detail::SABRSpecs>::SABRSpecs>
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void SABRInterpolation(const I1 &xBegin, // x = strikes\n                      const
      I1 &xEnd,\n                      const I2 &yBegin, // y = volatilities\n                      Time
      t,           // option expiry\n                      const Real &forward, Real
      alpha, Real beta, Real nu,\n                      Real rho, bool alphaIsFixed,
      bool betaIsFixed,\n                      bool nuIsFixed, bool rhoIsFixed, bool
      vegaWeighted = true,\n                      const ext::shared_ptr<EndCriteria>
      &endCriteria =\n                          ext::shared_ptr<EndCriteria>(),\n
      \                     const ext::shared_ptr<OptimizationMethod> &optMethod =\n
      \                         ext::shared_ptr<OptimizationMethod>(),\n                      const
      Real errorAccept = 0.0020,\n                      const bool useMaxError = false,\n
      \                     const Size maxGuesses = 50, const Real shift = 0.0,\n
      \                     const VolatilityType volatilityType = VolatilityType::ShiftedLognormal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::SABRInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::SABRInterpolation::forward
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: QuantLib::SABRInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::SABRInterpolation::beta
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: QuantLib::SABRInterpolation::nu
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::SABRInterpolation::rho
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: QuantLib::SABRInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 184
    functionName: QuantLib::SABRInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: QuantLib::SABRInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::SABRSpecs>*>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:192,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::SABRSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::SABRSpecs>
    signature: detail::XABRCoeffHolder<detail::SABRSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:211,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:219,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 221
    functionName: QuantLib::SABR::SABR
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SABR(Time t,\n         Real forward,\n         Real alpha,\n
      \        Real beta,\n         Real nu,\n         Real rho,\n         bool alphaIsFixed,\n
      \        bool betaIsFixed,\n         bool nuIsFixed,\n         bool rhoIsFixed,\n
      \        bool vegaWeighted = false,\n         ext::shared_ptr<EndCriteria> endCriteria
      = ext::shared_ptr<EndCriteria>(),\n         ext::shared_ptr<OptimizationMethod>
      optMethod = ext::shared_ptr<OptimizationMethod>(),\n         const Real errorAccept
      = 0.0020,\n         const bool useMaxError = false,\n         const Size maxGuesses
      = 50,\n         const Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SABRInterpolation
      Src: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 230
    functionName: QuantLib::SABR::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/sabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - SABRInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - kernel
    - epsilon
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::KernelInterpolationImpl::KernelInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Size
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolationImpl(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin,\n                                    Kernel
      kernel,\n                                    const Real epsilon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::KernelInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:56,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::KernelInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::KernelInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::KernelInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::KernelInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::KernelInterpolationImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 1
    functionsReached:
    - kernel_
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(Real x1, Real x2)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::KernelInterpolationImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(Real x)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:103,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:106,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:112,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:120,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 1
    functionsReached:
    - qrSolve
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - Abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - kernel
    - epsilon
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::KernelInterpolationImpl::KernelInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Size
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolationImpl(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin,\n                                    Kernel
      kernel,\n                                    const Real epsilon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::KernelInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:56,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::KernelInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::KernelInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::KernelInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::KernelInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::KernelInterpolationImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 4
    functionsReached:
    - kernel_
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(Real x1, Real x2)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::KernelInterpolationImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(Real x)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:103,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:106,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:112,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:120,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 2
    functionsReached:
    - qrSolve
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - Abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:163,1
    - Dst: detail::KernelInterpolationImpl<I1,I2,Kernel>::KernelInterpolationImpl<I1,I2,Kernel>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:163,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' kernel'
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: QuantLib::KernelInterpolation::KernelInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::KernelInterpolationImpl<I1,I2,Kernel>::KernelInterpolationImpl<I1,I2,Kernel>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin,\n                            const Kernel& kernel,\n                            const
      double epsilon = 1.0E-7)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - kernel
    - epsilon
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::KernelInterpolationImpl::KernelInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Size
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolationImpl(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin,\n                                    Kernel
      kernel,\n                                    const Real epsilon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::KernelInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:56,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::KernelInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::KernelInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::KernelInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::KernelInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::KernelInterpolationImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 7
    functionsReached:
    - kernel_
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(Real x1, Real x2)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::KernelInterpolationImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(Real x)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:103,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:106,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:112,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:120,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 3
    functionsReached:
    - qrSolve
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - Abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - kernel
    - epsilon
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::KernelInterpolationImpl::KernelInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Size
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolationImpl(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin,\n                                    Kernel
      kernel,\n                                    const Real epsilon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::detail::KernelInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:56,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::detail::KernelInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::KernelInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::detail::KernelInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::KernelInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::KernelInterpolationImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 10
    functionsReached:
    - kernel_
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(Real x1, Real x2)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: QuantLib::detail::KernelInterpolationImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(Real x)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolationImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:103,1
    - Dst: QuantLib::detail::KernelInterpolationImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:106,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:112,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:120,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::KernelInterpolationImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 4
    functionsReached:
    - qrSolve
    - QuantLib::detail::KernelInterpolationImpl::kernelAbs
    - QuantLib::detail::KernelInterpolationImpl::gammaFunc
    - Abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:163,1
    - Dst: detail::KernelInterpolationImpl<I1,I2,Kernel>::KernelInterpolationImpl<I1,I2,Kernel>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:163,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' kernel'
    argTypes:
    - I1
    - I1
    - I2
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: QuantLib::KernelInterpolation::KernelInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation.hpp
    functionUses: 0
    functionsReached:
    - detail::KernelInterpolationImpl<I1,I2,Kernel>::KernelInterpolationImpl<I1,I2,Kernel>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin,\n                            const Kernel& kernel,\n                            const
      double epsilon = 1.0E-7)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::CoefficientHolder::CoefficientHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoefficientHolder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~CoefficientHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CoefficientHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::CoefficientHolder::CoefficientHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoefficientHolder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~CoefficientHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CoefficientHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:168,1
    - Dst: detail::CubicInterpolationImpl<I1,I2>::CubicInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:168,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCond
    - leftConditionValue
    - rightCond
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 177
    functionName: QuantLib::CubicInterpolation::CubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - update
    - detail::CubicInterpolationImpl<I1,I2>::CubicInterpolationImpl<I1,I2>
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolation(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin,\n                           CubicInterpolation::DerivativeApprox
      da,\n                           bool monotonic,\n                           CubicInterpolation::BoundaryCondition
      leftCond,\n                           Real leftConditionValue,\n                           CubicInterpolation::BoundaryCondition
      rightCond,\n                           Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: '& primitiveConstants() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & primitiveConstants() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: '& aCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & aCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: '& bCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & bCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: '& cCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & cCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: '& monotonicityAdjustments() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> & monotonicityAdjustments() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::CoefficientHolder*>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:189,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::CoefficientHolder*>
    - get
    linkageType: ''
    returnType: detail::CoefficientHolder
    signature: detail::CoefficientHolder & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionName: QuantLib::CubicNaturalSpline::CubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicNaturalSpline(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 219
    functionName: QuantLib::MonotonicCubicNaturalSpline::MonotonicCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicCubicNaturalSpline(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::CubicSplineOvershootingMinimization1::CubicSplineOvershootingMinimization1
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicSplineOvershootingMinimization1 (const I1& xBegin,\n                                           const
      I1& xEnd,\n                                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 245
    functionName: QuantLib::CubicSplineOvershootingMinimization2::CubicSplineOvershootingMinimization2
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicSplineOvershootingMinimization2 (const I1& xBegin,\n                                           const
      I1& xEnd,\n                                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 258
    functionName: QuantLib::AkimaCubicInterpolation::AkimaCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AkimaCubicInterpolation(const I1& xBegin,\n                                const
      I1& xEnd,\n                                const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: QuantLib::KrugerCubic::KrugerCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerCubic(const I1& xBegin,\n                    const I1&
      xEnd,\n                    const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 284
    functionName: QuantLib::HarmonicCubic::HarmonicCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HarmonicCubic(const I1& xBegin,\n                      const
      I1& xEnd,\n                      const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 297
    functionName: QuantLib::FritschButlandCubic::FritschButlandCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FritschButlandCubic(const I1& xBegin,\n                            const
      I1& xEnd,\n                            const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: QuantLib::Parabolic::Parabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Parabolic(const I1& xBegin,\n                  const I1& xEnd,\n
      \                 const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::MonotonicParabolic::MonotonicParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicParabolic(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 341
    functionName: QuantLib::Cubic::Cubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Cubic(CubicInterpolation::DerivativeApprox da\n                  =
      CubicInterpolation::Kruger,\n              bool monotonic = false,\n              CubicInterpolation::BoundaryCondition
      leftCondition\n                  = CubicInterpolation::SecondDerivative,\n              Real
      leftConditionValue = 0.0,\n              CubicInterpolation::BoundaryCondition
      rightCondition\n                  = CubicInterpolation::SecondDerivative,\n
      \             Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 350
    functionName: QuantLib::Cubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - CubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCondition
    - leftConditionValue
    - rightCondition
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 391
    functionName: QuantLib::detail::CubicInterpolationImpl::CubicInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolationImpl(const I1& xBegin,\n                                   const
      I1& xEnd,\n                                   const I2& yBegin,\n                                   CubicInterpolation::DerivativeApprox
      da,\n                                   bool monotonic,\n                                   CubicInterpolation::BoundaryCondition
      leftCondition,\n                                   Real leftConditionValue,\n
      \                                  CubicInterpolation::BoundaryCondition rightCondition,\n
      \                                  Real rightConditionValue)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: setMidRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:403,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:411,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:417,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:421,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:425,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:427,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:428,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:436,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:443,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:449,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:453,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:457,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:459,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:460,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:468,1
    - Dst: solveFor
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:472,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:492,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:536,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:566,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:579,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:580,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:665,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:671,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:679,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:681,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:691,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:693,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:704,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:705,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:706,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:707,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:731,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 266
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 760
    functionName: QuantLib::detail::CubicInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - std::fill
    - std::min<Real>
    - setMidRow
    - begin
    - setLastRow
    - inverse
    - QL_FAIL
    - std::max
    - std::fabs
    - transpose
    - std::max<Real>
    - QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    - end
    - setFirstRow
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: QuantLib::detail::CubicInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 772
    functionName: QuantLib::detail::CubicInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 773
    functionDepth: 0
    functionLinenumber: 773
    functionLinenumberEnd: 777
    functionName: QuantLib::detail::CubicInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 782
    functionName: QuantLib::detail::CubicInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - a
    - b
    - c
    - d
    - u
    - v
    - w
    - z
    - x
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 802
    functionName: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real cubicInterpolatingPolynomialDerivative(\n                               Real
      a, Real b, Real c, Real d,\n                               Real u, Real v, Real
      w, Real z, Real x) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCondition
    - leftConditionValue
    - rightCondition
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 391
    functionName: QuantLib::detail::CubicInterpolationImpl::CubicInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolationImpl(const I1& xBegin,\n                                   const
      I1& xEnd,\n                                   const I2& yBegin,\n                                   CubicInterpolation::DerivativeApprox
      da,\n                                   bool monotonic,\n                                   CubicInterpolation::BoundaryCondition
      leftCondition,\n                                   Real leftConditionValue,\n
      \                                  CubicInterpolation::BoundaryCondition rightCondition,\n
      \                                  Real rightConditionValue)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: setMidRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:403,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:411,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:417,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:421,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:425,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:427,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:428,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:436,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:443,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:449,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:453,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:457,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:459,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:460,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:468,1
    - Dst: solveFor
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:472,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:492,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:536,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:566,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:579,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:580,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:665,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:671,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:679,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:681,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:691,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:693,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:704,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:705,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:706,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:707,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:731,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 266
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 760
    functionName: QuantLib::detail::CubicInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - std::fill
    - std::min<Real>
    - setMidRow
    - begin
    - setLastRow
    - inverse
    - QL_FAIL
    - std::max
    - std::fabs
    - transpose
    - std::max<Real>
    - QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    - end
    - setFirstRow
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: QuantLib::detail::CubicInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 772
    functionName: QuantLib::detail::CubicInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 773
    functionDepth: 0
    functionLinenumber: 773
    functionLinenumberEnd: 777
    functionName: QuantLib::detail::CubicInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 782
    functionName: QuantLib::detail::CubicInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - a
    - b
    - c
    - d
    - u
    - v
    - w
    - z
    - x
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 802
    functionName: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real cubicInterpolatingPolynomialDerivative(\n                               Real
      a, Real b, Real c, Real d,\n                               Real u, Real v, Real
      w, Real z, Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::CoefficientHolder::CoefficientHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoefficientHolder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~CoefficientHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CoefficientHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::CoefficientHolder::CoefficientHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoefficientHolder(Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~CoefficientHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CoefficientHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:168,1
    - Dst: detail::CubicInterpolationImpl<I1,I2>::CubicInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:168,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCond
    - leftConditionValue
    - rightCond
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 177
    functionName: QuantLib::CubicInterpolation::CubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - update
    - detail::CubicInterpolationImpl<I1,I2>::CubicInterpolationImpl<I1,I2>
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolation(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin,\n                           CubicInterpolation::DerivativeApprox
      da,\n                           bool monotonic,\n                           CubicInterpolation::BoundaryCondition
      leftCond,\n                           Real leftConditionValue,\n                           CubicInterpolation::BoundaryCondition
      rightCond,\n                           Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: '& primitiveConstants() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & primitiveConstants() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: '& aCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & aCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: '& bCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & bCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: '& cCoefficients() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & cCoefficients() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: '& monotonicityAdjustments() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> & monotonicityAdjustments() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::CoefficientHolder*>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:189,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::CoefficientHolder*>
    - get
    linkageType: ''
    returnType: detail::CoefficientHolder
    signature: detail::CoefficientHolder & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionName: QuantLib::CubicNaturalSpline::CubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicNaturalSpline(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 219
    functionName: QuantLib::MonotonicCubicNaturalSpline::MonotonicCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicCubicNaturalSpline(const I1& xBegin,\n                                    const
      I1& xEnd,\n                                    const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::CubicSplineOvershootingMinimization1::CubicSplineOvershootingMinimization1
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicSplineOvershootingMinimization1 (const I1& xBegin,\n                                           const
      I1& xEnd,\n                                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 245
    functionName: QuantLib::CubicSplineOvershootingMinimization2::CubicSplineOvershootingMinimization2
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CubicSplineOvershootingMinimization2 (const I1& xBegin,\n                                           const
      I1& xEnd,\n                                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 258
    functionName: QuantLib::AkimaCubicInterpolation::AkimaCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AkimaCubicInterpolation(const I1& xBegin,\n                                const
      I1& xEnd,\n                                const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: QuantLib::KrugerCubic::KrugerCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerCubic(const I1& xBegin,\n                    const I1&
      xEnd,\n                    const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 284
    functionName: QuantLib::HarmonicCubic::HarmonicCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HarmonicCubic(const I1& xBegin,\n                      const
      I1& xEnd,\n                      const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 297
    functionName: QuantLib::FritschButlandCubic::FritschButlandCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FritschButlandCubic(const I1& xBegin,\n                            const
      I1& xEnd,\n                            const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: QuantLib::Parabolic::Parabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Parabolic(const I1& xBegin,\n                  const I1& xEnd,\n
      \                 const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::MonotonicParabolic::MonotonicParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicParabolic(const I1& xBegin,\n                           const
      I1& xEnd,\n                           const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 341
    functionName: QuantLib::Cubic::Cubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Cubic(CubicInterpolation::DerivativeApprox da\n                  =
      CubicInterpolation::Kruger,\n              bool monotonic = false,\n              CubicInterpolation::BoundaryCondition
      leftCondition\n                  = CubicInterpolation::SecondDerivative,\n              Real
      leftConditionValue = 0.0,\n              CubicInterpolation::BoundaryCondition
      rightCondition\n                  = CubicInterpolation::SecondDerivative,\n
      \             Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 350
    functionName: QuantLib::Cubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - CubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCondition
    - leftConditionValue
    - rightCondition
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 391
    functionName: QuantLib::detail::CubicInterpolationImpl::CubicInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolationImpl(const I1& xBegin,\n                                   const
      I1& xEnd,\n                                   const I2& yBegin,\n                                   CubicInterpolation::DerivativeApprox
      da,\n                                   bool monotonic,\n                                   CubicInterpolation::BoundaryCondition
      leftCondition,\n                                   Real leftConditionValue,\n
      \                                  CubicInterpolation::BoundaryCondition rightCondition,\n
      \                                  Real rightConditionValue)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: setMidRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:403,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:411,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:417,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:421,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:425,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:427,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:428,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:436,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:443,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:449,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:453,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:457,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:459,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:460,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:468,1
    - Dst: solveFor
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:472,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:492,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:536,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:566,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:579,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:580,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:665,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:671,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:679,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:681,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:691,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:693,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:704,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:705,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:706,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:707,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:731,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 266
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 760
    functionName: QuantLib::detail::CubicInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - std::fill
    - std::min<Real>
    - setMidRow
    - begin
    - setLastRow
    - inverse
    - QL_FAIL
    - std::max
    - std::fabs
    - transpose
    - std::max<Real>
    - QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    - end
    - setFirstRow
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: QuantLib::detail::CubicInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 772
    functionName: QuantLib::detail::CubicInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 773
    functionDepth: 0
    functionLinenumber: 773
    functionLinenumberEnd: 777
    functionName: QuantLib::detail::CubicInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 782
    functionName: QuantLib::detail::CubicInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - a
    - b
    - c
    - d
    - u
    - v
    - w
    - z
    - x
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 802
    functionName: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real cubicInterpolatingPolynomialDerivative(\n                               Real
      a, Real b, Real c, Real d,\n                               Real u, Real v, Real
      w, Real z, Real x) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftCondition
    - leftConditionValue
    - rightCondition
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 391
    functionName: QuantLib::detail::CubicInterpolationImpl::CubicInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicInterpolationImpl(const I1& xBegin,\n                                   const
      I1& xEnd,\n                                   const I2& yBegin,\n                                   CubicInterpolation::DerivativeApprox
      da,\n                                   bool monotonic,\n                                   CubicInterpolation::BoundaryCondition
      leftCondition,\n                                   Real leftConditionValue,\n
      \                                  CubicInterpolation::BoundaryCondition rightCondition,\n
      \                                  Real rightConditionValue)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: setMidRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:403,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:411,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:417,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:421,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:425,1
    - Dst: setFirstRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:427,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:428,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:436,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:443,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:449,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:453,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:457,1
    - Dst: setLastRow
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:459,1
    - Dst: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:460,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:468,1
    - Dst: solveFor
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:472,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:492,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:508,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:536,1
    - Dst: inverse
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: transpose
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:552,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:566,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:579,1
    - Dst: std::max
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:580,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:597,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:598,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:609,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:611,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::abs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:612,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:649,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:659,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:665,1
    - Dst: std::fill
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:670,1
    - Dst: end
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:671,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:679,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:680,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:681,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:691,1
    - Dst: std::min<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:692,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:693,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:704,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:705,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:706,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:707,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:715,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:716,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:725,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:726,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:731,1
    - Dst: std::min
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:732,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 266
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 760
    functionName: QuantLib::detail::CubicInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - solveFor
    - std::fill
    - std::min<Real>
    - setMidRow
    - begin
    - setLastRow
    - inverse
    - QL_FAIL
    - std::max
    - std::fabs
    - transpose
    - std::max<Real>
    - QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    - end
    - setFirstRow
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: QuantLib::detail::CubicInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 772
    functionName: QuantLib::detail::CubicInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 773
    functionDepth: 0
    functionLinenumber: 773
    functionLinenumberEnd: 777
    functionName: QuantLib::detail::CubicInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::CubicInterpolationImpl::locate
      Src: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 782
    functionName: QuantLib::detail::CubicInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::CubicInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - a
    - b
    - c
    - d
    - u
    - v
    - w
    - z
    - x
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 802
    functionName: QuantLib::detail::CubicInterpolationImpl::cubicInterpolatingPolynomialDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/cubicinterpolation.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real cubicInterpolatingPolynomialDerivative(\n                               Real
      a, Real b, Real c, Real d,\n                               Real u, Real v, Real
      w, Real z, Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: rows
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - kernel
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::KernelInterpolation2DImpl::KernelInterpolation2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - Size
    - rows
    - std::move
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2DImpl(const I1& xBegin,\n                                      const
      I1& xEnd,\n                                      const I2& yBegin,\n                                      const
      I2& yEnd,\n                                      const M& zData,\n                                      Kernel
      kernel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::KernelInterpolation2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:91,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::KernelInterpolation2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x1, Real x2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - invPrec
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::KernelInterpolation2DImpl::setInverseResultPrecision
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInverseResultPrecision(Real invPrec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' X'
    - ' Y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 1
    functionsReached:
    - kernel_
    - Norm2
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(const Array& X, const Array& Y)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:116,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' X'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(const Array& X)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:147,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:154,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:162,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 1
    functionsReached:
    - qrSolve
    - Abs
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: rows
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - kernel
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::KernelInterpolation2DImpl::KernelInterpolation2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - Size
    - rows
    - std::move
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2DImpl(const I1& xBegin,\n                                      const
      I1& xEnd,\n                                      const I2& yBegin,\n                                      const
      I2& yEnd,\n                                      const M& zData,\n                                      Kernel
      kernel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::KernelInterpolation2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:91,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::KernelInterpolation2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x1, Real x2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - invPrec
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::KernelInterpolation2DImpl::setInverseResultPrecision
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInverseResultPrecision(Real invPrec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' X'
    - ' Y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 4
    functionsReached:
    - kernel_
    - Norm2
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(const Array& X, const Array& Y)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:116,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' X'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 3
    functionsReached:
    - size
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(const Array& X)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:147,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:154,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:162,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 2
    functionsReached:
    - qrSolve
    - Abs
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:206,1
    - Dst: detail::KernelInterpolation2DImpl<I1,I2,M,Kernel>::KernelInterpolation2DImpl<I1,I2,M,Kernel>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:206,1
    - Dst: QuantLib::KernelInterpolation2D::update
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - ' kernel'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 211
    functionName: QuantLib::KernelInterpolation2D::KernelInterpolation2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KernelInterpolation2D::update
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::KernelInterpolation2DImpl<I1,I2,M,Kernel>::KernelInterpolation2DImpl<I1,I2,M,Kernel>
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2D(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin, const I2& yEnd,\n                            const M& zData,\n                            const
      Kernel& kernel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: rows
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - kernel
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::KernelInterpolation2DImpl::KernelInterpolation2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - Size
    - rows
    - std::move
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2DImpl(const I1& xBegin,\n                                      const
      I1& xEnd,\n                                      const I2& yBegin,\n                                      const
      I2& yEnd,\n                                      const M& zData,\n                                      Kernel
      kernel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::KernelInterpolation2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:91,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::KernelInterpolation2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x1, Real x2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - invPrec
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::KernelInterpolation2DImpl::setInverseResultPrecision
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInverseResultPrecision(Real invPrec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' X'
    - ' Y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 7
    functionsReached:
    - kernel_
    - Norm2
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(const Array& X, const Array& Y)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:116,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' X'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 5
    functionsReached:
    - size
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(const Array& X)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:147,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:154,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:162,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 3
    functionsReached:
    - qrSolve
    - Abs
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: Size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: rows
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    - Dst: columns
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - kernel
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::KernelInterpolation2DImpl::KernelInterpolation2DImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - Size
    - rows
    - std::move
    - columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2DImpl(const I1& xBegin,\n                                      const
      I1& xEnd,\n                                      const I2& yBegin,\n                                      const
      I2& yEnd,\n                                      const M& zData,\n                                      Kernel
      kernel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::KernelInterpolation2DImpl::calculate
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    linkageType: ''
    returnType: void
    signature: void calculate() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:91,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - x1
    - x2
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::detail::KernelInterpolation2DImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real value(Real x1, Real x2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - invPrec
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::KernelInterpolation2DImpl::setInverseResultPrecision
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInverseResultPrecision(Real invPrec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kernel_
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    - Dst: Norm2
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' X'
    - ' Y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 10
    functionsReached:
    - kernel_
    - Norm2
    linkageType: ''
    returnType: Real
    signature: Real kernelAbs(const Array& X, const Array& Y)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:116,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' X'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 127
    functionName: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 7
    functionsReached:
    - size
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    linkageType: ''
    returnType: Real
    signature: Real gammaFunc(const Array& X)const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:147,1
    - Dst: QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:154,1
    - Dst: qrSolve
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:162,1
    - Dst: Abs
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 171
    functionName: QuantLib::detail::KernelInterpolation2DImpl::updateAlphaVec
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 4
    functionsReached:
    - qrSolve
    - Abs
    - QuantLib::detail::KernelInterpolation2DImpl::kernelAbs
    - QuantLib::detail::KernelInterpolation2DImpl::gammaFunc
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void updateAlphaVec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:206,1
    - Dst: detail::KernelInterpolation2DImpl<I1,I2,M,Kernel>::KernelInterpolation2DImpl<I1,I2,M,Kernel>
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:206,1
    - Dst: QuantLib::KernelInterpolation2D::update
      Src: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    - ' kernel'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    - Kernel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 211
    functionName: QuantLib::KernelInterpolation2D::KernelInterpolation2D
    functionSourceFile: /src/quantlib/ql/math/interpolations/kernelinterpolation2d.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KernelInterpolation2D::update
    - ext::shared_ptr<Interpolation2D::Impl>
    - detail::KernelInterpolation2DImpl<I1,I2,M,Kernel>::KernelInterpolation2DImpl<I1,I2,M,Kernel>
    linkageType: ''
    returnType: void
    signature: "void KernelInterpolation2D(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin, const I2& yEnd,\n                            const M& zData,\n                            const
      Kernel& kernel)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:64,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:68,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::AbcdCoeffHolder::AbcdCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: "void AbcdCoeffHolder(Real a,\n                            Real b,\n
      \                           Real c,\n                            Real d,\n                            bool
      aIsFixed,\n                            bool bIsFixed,\n                            bool
      cIsFixed,\n                            bool dIsFixed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~AbcdCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AbcdCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::AbcdInterpolationImpl::AbcdInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolationImpl(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin,\n                                  Real
      a,\n                                  Real b,\n                                  Real
      c,\n                                  Real d,\n                                  bool
      aIsFixed,\n                                  bool bIsFixed,\n                                  bool
      cIsFixed,\n                                  bool dIsFixed,\n                                  bool
      vegaWeighted,\n                                  ext::shared_ptr<EndCriteria>
      endCriteria,\n                                  ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:106,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:107,1
    - Dst: ext::shared_ptr<AbcdCalibration>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:109,1
    - Dst: AbcdCalibration::AbcdCalibration
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:110,1
    - Dst: compute
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:117,1
    - Dst: a
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:118,1
    - Dst: b
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:119,1
    - Dst: c
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:120,1
    - Dst: d
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:121,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::k
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:122,1
    - Dst: error
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:123,1
    - Dst: maxError
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:124,1
    - Dst: endCriteria
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 126
    functionName: QuantLib::detail::AbcdInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - b
    - c
    - a
    - d
    - error
    - maxError
    - push_back
    - QuantLib::detail::AbcdInterpolationImpl::k
    - compute
    - endCriteria
    - ext::shared_ptr<AbcdCalibration>
    - std::vector::push_back
    - AbcdCalibration::AbcdCalibration
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:128,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::AbcdInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::AbcdInterpolationImpl::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::detail::AbcdInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::AbcdInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::AbcdInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::detail::AbcdInterpolationImpl::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 1
    functionsReached:
    - li
    linkageType: ''
    returnType: Real
    signature: Real k(Time t) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:64,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:68,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::AbcdCoeffHolder::AbcdCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: "void AbcdCoeffHolder(Real a,\n                            Real b,\n
      \                           Real c,\n                            Real d,\n                            bool
      aIsFixed,\n                            bool bIsFixed,\n                            bool
      cIsFixed,\n                            bool dIsFixed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~AbcdCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AbcdCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::AbcdInterpolationImpl::AbcdInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolationImpl(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin,\n                                  Real
      a,\n                                  Real b,\n                                  Real
      c,\n                                  Real d,\n                                  bool
      aIsFixed,\n                                  bool bIsFixed,\n                                  bool
      cIsFixed,\n                                  bool dIsFixed,\n                                  bool
      vegaWeighted,\n                                  ext::shared_ptr<EndCriteria>
      endCriteria,\n                                  ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:106,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:107,1
    - Dst: ext::shared_ptr<AbcdCalibration>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:109,1
    - Dst: AbcdCalibration::AbcdCalibration
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:110,1
    - Dst: compute
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:117,1
    - Dst: a
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:118,1
    - Dst: b
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:119,1
    - Dst: c
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:120,1
    - Dst: d
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:121,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::k
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:122,1
    - Dst: error
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:123,1
    - Dst: maxError
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:124,1
    - Dst: endCriteria
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 126
    functionName: QuantLib::detail::AbcdInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - b
    - c
    - a
    - d
    - error
    - maxError
    - push_back
    - QuantLib::detail::AbcdInterpolationImpl::k
    - compute
    - endCriteria
    - ext::shared_ptr<AbcdCalibration>
    - std::vector::push_back
    - AbcdCalibration::AbcdCalibration
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:128,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::AbcdInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::AbcdInterpolationImpl::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::detail::AbcdInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::AbcdInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::AbcdInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::detail::AbcdInterpolationImpl::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 2
    functionsReached:
    - li
    linkageType: ''
    returnType: Real
    signature: Real k(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:174,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:176,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:178,1
    - Dst: detail::AbcdInterpolationImpl<I1,I2>::AbcdInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:178,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 187
    functionName: QuantLib::AbcdInterpolation::AbcdInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::AbcdInterpolationImpl<I1,I2>::AbcdInterpolationImpl<I1,I2>
    - ext::shared_ptr<EndCriteria>
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolation(const I1& xBegin,  // x = times\n                          const
      I1& xEnd,\n                          const I2& yBegin,  // y = volatilities\n
      \                         Real a = -0.06,\n                          Real b
      =  0.17,\n                          Real c =  0.54,\n                          Real
      d =  0.17,\n                          bool aIsFixed = false,\n                          bool
      bIsFixed = false,\n                          bool cIsFixed = false,\n                          bool
      dIsFixed = false,\n                          bool vegaWeighted = false,\n                          const
      ext::shared_ptr<EndCriteria>& endCriteria\n                              = ext::shared_ptr<EndCriteria>(),\n
      \                         const ext::shared_ptr<OptimizationMethod>& optMethod\n
      \                             = ext::shared_ptr<OptimizationMethod>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 190
    functionName: QuantLib::AbcdInterpolation::a
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::AbcdInterpolation::b
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::AbcdInterpolation::c
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: QuantLib::AbcdInterpolation::d
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::AbcdInterpolation::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 195
    functionName: QuantLib::AbcdInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: QuantLib::AbcdInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:200,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:200,1
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - ' xBegin'
    - ' xEnd'
    argTypes:
    - Time
    - I1
    - I1
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: QuantLib::AbcdInterpolation::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - li
    - coeffs
    - begin
    linkageType: ''
    returnType: Real
    signature: Real k(Time t, const I1& xBegin, const I1& xEnd) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::AbcdCoeffHolder*>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:205,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::AbcdCoeffHolder*>
    - get
    linkageType: ''
    returnType: detail::AbcdCoeffHolder
    signature: detail::AbcdCoeffHolder & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:222,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:223,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:225,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 226
    functionName: QuantLib::Abcd::Abcd
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Abcd(Real a,\n             Real b,\n             Real c,\n             Real
      d,\n             bool aIsFixed,\n             bool bIsFixed,\n             bool
      cIsFixed,\n             bool dIsFixed,\n             bool vegaWeighted = false,\n
      \            ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \            ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdInterpolation
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 236
    functionName: QuantLib::Abcd::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - AbcdInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:64,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:68,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::AbcdCoeffHolder::AbcdCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: "void AbcdCoeffHolder(Real a,\n                            Real b,\n
      \                           Real c,\n                            Real d,\n                            bool
      aIsFixed,\n                            bool bIsFixed,\n                            bool
      cIsFixed,\n                            bool dIsFixed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~AbcdCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AbcdCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::AbcdInterpolationImpl::AbcdInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolationImpl(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin,\n                                  Real
      a,\n                                  Real b,\n                                  Real
      c,\n                                  Real d,\n                                  bool
      aIsFixed,\n                                  bool bIsFixed,\n                                  bool
      cIsFixed,\n                                  bool dIsFixed,\n                                  bool
      vegaWeighted,\n                                  ext::shared_ptr<EndCriteria>
      endCriteria,\n                                  ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:106,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:107,1
    - Dst: ext::shared_ptr<AbcdCalibration>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:109,1
    - Dst: AbcdCalibration::AbcdCalibration
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:110,1
    - Dst: compute
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:117,1
    - Dst: a
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:118,1
    - Dst: b
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:119,1
    - Dst: c
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:120,1
    - Dst: d
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:121,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::k
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:122,1
    - Dst: error
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:123,1
    - Dst: maxError
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:124,1
    - Dst: endCriteria
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 126
    functionName: QuantLib::detail::AbcdInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - b
    - c
    - a
    - d
    - error
    - maxError
    - push_back
    - QuantLib::detail::AbcdInterpolationImpl::k
    - compute
    - endCriteria
    - ext::shared_ptr<AbcdCalibration>
    - std::vector::push_back
    - AbcdCalibration::AbcdCalibration
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:128,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::AbcdInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::AbcdInterpolationImpl::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::detail::AbcdInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::AbcdInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::AbcdInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::detail::AbcdInterpolationImpl::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 3
    functionsReached:
    - li
    linkageType: ''
    returnType: Real
    signature: Real k(Time t) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:58,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:64,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:68,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::AbcdCoeffHolder::AbcdCoeffHolder
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AbcdMathFunction::validate
    linkageType: ''
    returnType: void
    signature: "void AbcdCoeffHolder(Real a,\n                            Real b,\n
      \                           Real c,\n                            Real d,\n                            bool
      aIsFixed,\n                            bool bIsFixed,\n                            bool
      cIsFixed,\n                            bool dIsFixed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~AbcdCoeffHolder()
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AbcdCoeffHolder()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - I1
    - I1
    - I2
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::detail::AbcdInterpolationImpl::AbcdInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolationImpl(const I1& xBegin,\n                                  const
      I1& xEnd,\n                                  const I2& yBegin,\n                                  Real
      a,\n                                  Real b,\n                                  Real
      c,\n                                  Real d,\n                                  bool
      aIsFixed,\n                                  bool bIsFixed,\n                                  bool
      cIsFixed,\n                                  bool dIsFixed,\n                                  bool
      vegaWeighted,\n                                  ext::shared_ptr<EndCriteria>
      endCriteria,\n                                  ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:106,1
    - Dst: push_back
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:107,1
    - Dst: ext::shared_ptr<AbcdCalibration>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:109,1
    - Dst: AbcdCalibration::AbcdCalibration
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:110,1
    - Dst: compute
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:117,1
    - Dst: a
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:118,1
    - Dst: b
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:119,1
    - Dst: c
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:120,1
    - Dst: d
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:121,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::k
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:122,1
    - Dst: error
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:123,1
    - Dst: maxError
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:124,1
    - Dst: endCriteria
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 126
    functionName: QuantLib::detail::AbcdInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - b
    - c
    - a
    - d
    - error
    - maxError
    - push_back
    - QuantLib::detail::AbcdInterpolationImpl::k
    - compute
    - endCriteria
    - ext::shared_ptr<AbcdCalibration>
    - std::vector::push_back
    - AbcdCalibration::AbcdCalibration
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:128,1
    - Dst: QuantLib::detail::AbcdInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: QuantLib::detail::AbcdInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::AbcdInterpolationImpl::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::detail::AbcdInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::AbcdInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::detail::AbcdInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::detail::AbcdInterpolationImpl::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 4
    functionsReached:
    - li
    linkageType: ''
    returnType: Real
    signature: Real k(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:174,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:176,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:178,1
    - Dst: detail::AbcdInterpolationImpl<I1,I2>::AbcdInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:178,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 187
    functionName: QuantLib::AbcdInterpolation::AbcdInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::AbcdInterpolationImpl<I1,I2>::AbcdInterpolationImpl<I1,I2>
    - ext::shared_ptr<EndCriteria>
    linkageType: ''
    returnType: void
    signature: "void AbcdInterpolation(const I1& xBegin,  // x = times\n                          const
      I1& xEnd,\n                          const I2& yBegin,  // y = volatilities\n
      \                         Real a = -0.06,\n                          Real b
      =  0.17,\n                          Real c =  0.54,\n                          Real
      d =  0.17,\n                          bool aIsFixed = false,\n                          bool
      bIsFixed = false,\n                          bool cIsFixed = false,\n                          bool
      dIsFixed = false,\n                          bool vegaWeighted = false,\n                          const
      ext::shared_ptr<EndCriteria>& endCriteria\n                              = ext::shared_ptr<EndCriteria>(),\n
      \                         const ext::shared_ptr<OptimizationMethod>& optMethod\n
      \                             = ext::shared_ptr<OptimizationMethod>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 190
    functionName: QuantLib::AbcdInterpolation::a
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: QuantLib::AbcdInterpolation::b
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::AbcdInterpolation::c
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: QuantLib::AbcdInterpolation::d
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::AbcdInterpolation::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 195
    functionName: QuantLib::AbcdInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: QuantLib::AbcdInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:200,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:200,1
    - Dst: li
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - ' xBegin'
    - ' xEnd'
    argTypes:
    - Time
    - I1
    - I1
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: QuantLib::AbcdInterpolation::k
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - li
    - coeffs
    - begin
    linkageType: ''
    returnType: Real
    signature: Real k(Time t, const I1& xBegin, const I1& xEnd) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::AbcdCoeffHolder*>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:205,1
    - Dst: get
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::AbcdCoeffHolder*>
    - get
    linkageType: ''
    returnType: detail::AbcdCoeffHolder
    signature: detail::AbcdCoeffHolder & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:222,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:223,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:225,1
    - Dst: std::move
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 226
    functionName: QuantLib::Abcd::Abcd
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Abcd(Real a,\n             Real b,\n             Real c,\n             Real
      d,\n             bool aIsFixed,\n             bool bIsFixed,\n             bool
      cIsFixed,\n             bool dIsFixed,\n             bool vegaWeighted = false,\n
      \            ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \            ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdInterpolation
      Src: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 236
    functionName: QuantLib::Abcd::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/abcdinterpolation.hpp
    functionUses: 0
    functionsReached:
    - AbcdInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:51,1
    - Dst: detail::LogInterpolationImpl<I1, I2, Linear>::LogInterpolationImpl<I1,
        I2, Linear>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:51,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::LogLinearInterpolation::LogLinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::LogInterpolationImpl<I1, I2, Linear>::LogInterpolationImpl<I1, I2, Linear>
    linkageType: ''
    returnType: void
    signature: "void LogLinearInterpolation(const I1& xBegin, const I1& xEnd,\n                               const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogLinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::LogLinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogLinearInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:85,1
    - Dst: Cubic
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:88,1
    - Dst: detail::LogInterpolationImpl<I1, I2, Cubic>::LogInterpolationImpl<I1, I2,
        Cubic>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:85,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 92
    functionName: QuantLib::LogCubicInterpolation::LogCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - Cubic
    - detail::LogInterpolationImpl<I1, I2, Cubic>::LogInterpolationImpl<I1, I2, Cubic>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LogCubicInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin,\n                              CubicInterpolation::DerivativeApprox
      da,\n                              bool monotonic,\n                              CubicInterpolation::BoundaryCondition
      leftC,\n                              Real leftConditionValue,\n                              CubicInterpolation::BoundaryCondition
      rightC,\n                              Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - da
    argTypes:
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 109
    functionName: QuantLib::LogCubic::LogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogCubic(CubicInterpolation::DerivativeApprox da,\n                  bool
      monotonic = true,\n                  CubicInterpolation::BoundaryCondition leftCondition\n
      \                     = CubicInterpolation::SecondDerivative,\n                  Real
      leftConditionValue = 0.0,\n                  CubicInterpolation::BoundaryCondition
      rightCondition\n                      = CubicInterpolation::SecondDerivative,\n
      \                 Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 117
    functionName: QuantLib::LogCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: QuantLib::DefaultLogCubic::DefaultLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultLogCubic()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MonotonicLogCubic::MonotonicLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonotonicLogCubic()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: QuantLib::KrugerLog::KrugerLog
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void KrugerLog()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: QuantLib::LogCubicNaturalSpline::LogCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogCubicNaturalSpline(const I1& xBegin,\n                              const
      I1& xEnd,\n                              const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionName: QuantLib::MonotonicLogCubicNaturalSpline::MonotonicLogCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogCubicNaturalSpline(const I1& xBegin,\n                                       const
      I1& xEnd,\n                                       const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: QuantLib::KrugerLogCubic::KrugerLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerLogCubic(const I1& xBegin,\n                       const
      I1& xEnd,\n                       const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionName: QuantLib::HarmonicLogCubic::HarmonicLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HarmonicLogCubic(const I1& xBegin,\n                         const
      I1& xEnd,\n                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: QuantLib::FritschButlandLogCubic::FritschButlandLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FritschButlandLogCubic(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionName: QuantLib::LogParabolic::LogParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogParabolic(const I1& xBegin,\n                     const I1&
      xEnd,\n                     const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionName: QuantLib::MonotonicLogParabolic::MonotonicLogParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogParabolic(const I1& xBegin,\n                              const
      I1& xEnd,\n                              const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:258,1
    - Dst: MixedLinearCubic
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:261,1
    - Dst: detail::LogInterpolationImpl<I1, I2, MixedLinearCubic>::LogInterpolationImpl<I1,
        I2, MixedLinearCubic>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:258,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    - behavior
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 265
    functionName: QuantLib::LogMixedLinearCubicInterpolation::LogMixedLinearCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - MixedLinearCubic
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::LogInterpolationImpl<I1, I2, MixedLinearCubic>::LogInterpolationImpl<I1,
      I2, MixedLinearCubic>
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubicInterpolation(const I1& xBegin, const I1&
      xEnd,\n                                         const I2& yBegin, const Size
      n,\n                                         MixedInterpolation::Behavior behavior,\n
      \                                        CubicInterpolation::DerivativeApprox
      da,\n                                         bool monotonic,\n                                         CubicInterpolation::BoundaryCondition
      leftC,\n                                         Real leftConditionValue,\n
      \                                        CubicInterpolation::BoundaryCondition
      rightC,\n                                         Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - behavior
    - da
    argTypes:
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 284
    functionName: QuantLib::LogMixedLinearCubic::LogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubic(const Size n,\n                            MixedInterpolation::Behavior
      behavior,\n                            CubicInterpolation::DerivativeApprox
      da,\n                            bool monotonic = true,\n                            CubicInterpolation::BoundaryCondition
      leftCondition\n                                = CubicInterpolation::SecondDerivative,\n
      \                           Real leftConditionValue = 0.0,\n                            CubicInterpolation::BoundaryCondition
      rightCondition\n                                = CubicInterpolation::SecondDerivative,\n
      \                           Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogMixedLinearCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::LogMixedLinearCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogMixedLinearCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: QuantLib::DefaultLogMixedLinearCubic::DefaultLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultLogMixedLinearCubic(const Size n,\n                                            MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 324
    functionName: QuantLib::MonotonicLogMixedLinearCubic::MonotonicLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogMixedLinearCubic(const Size n,\n                                              MixedInterpolation::Behavior
      behavior\n                                              = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 335
    functionName: QuantLib::KrugerLogMixedLinearCubic::KrugerLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerLogMixedLinearCubic(const Size n,\n                                           MixedInterpolation::Behavior
      behavior\n                                           = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 350
    functionName: QuantLib::LogMixedLinearCubicNaturalSpline::LogMixedLinearCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubicNaturalSpline(const I1& xBegin, const I1&
      xEnd,\n                                         const I2& yBegin, const Size
      n,\n                                         MixedInterpolation::Behavior behavior\n
      \                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:362,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:366,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::detail::LogInterpolationImpl::LogInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - begin
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void LogInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                 const
      I2& yBegin,\n                                 const Interpolator& factory =
      Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:371,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:372,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:375,1
    - Dst: QuantLib::detail::LogInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: QuantLib::detail::LogInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::detail::LogInterpolationImpl::update
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 379
    functionName: QuantLib::detail::LogInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: QuantLib::detail::LogInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: QuantLib::detail::LogInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    - Dst: QuantLib::detail::LogInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: QuantLib::detail::LogInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    - QuantLib::detail::LogInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:362,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:366,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::detail::LogInterpolationImpl::LogInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - begin
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void LogInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                 const
      I2& yBegin,\n                                 const Interpolator& factory =
      Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:371,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:372,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:375,1
    - Dst: QuantLib::detail::LogInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: QuantLib::detail::LogInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::detail::LogInterpolationImpl::update
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 379
    functionName: QuantLib::detail::LogInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: QuantLib::detail::LogInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: QuantLib::detail::LogInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    - Dst: QuantLib::detail::LogInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: QuantLib::detail::LogInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    - QuantLib::detail::LogInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:51,1
    - Dst: detail::LogInterpolationImpl<I1, I2, Linear>::LogInterpolationImpl<I1,
        I2, Linear>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:51,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::LogLinearInterpolation::LogLinearInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::LogInterpolationImpl<I1, I2, Linear>::LogInterpolationImpl<I1, I2, Linear>
    linkageType: ''
    returnType: void
    signature: "void LogLinearInterpolation(const I1& xBegin, const I1& xEnd,\n                               const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogLinearInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::LogLinear::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogLinearInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:85,1
    - Dst: Cubic
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:88,1
    - Dst: detail::LogInterpolationImpl<I1, I2, Cubic>::LogInterpolationImpl<I1, I2,
        Cubic>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:85,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 92
    functionName: QuantLib::LogCubicInterpolation::LogCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - Cubic
    - detail::LogInterpolationImpl<I1, I2, Cubic>::LogInterpolationImpl<I1, I2, Cubic>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LogCubicInterpolation(const I1& xBegin, const I1& xEnd,\n                              const
      I2& yBegin,\n                              CubicInterpolation::DerivativeApprox
      da,\n                              bool monotonic,\n                              CubicInterpolation::BoundaryCondition
      leftC,\n                              Real leftConditionValue,\n                              CubicInterpolation::BoundaryCondition
      rightC,\n                              Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - da
    argTypes:
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 109
    functionName: QuantLib::LogCubic::LogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogCubic(CubicInterpolation::DerivativeApprox da,\n                  bool
      monotonic = true,\n                  CubicInterpolation::BoundaryCondition leftCondition\n
      \                     = CubicInterpolation::SecondDerivative,\n                  Real
      leftConditionValue = 0.0,\n                  CubicInterpolation::BoundaryCondition
      rightCondition\n                      = CubicInterpolation::SecondDerivative,\n
      \                 Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 117
    functionName: QuantLib::LogCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: QuantLib::DefaultLogCubic::DefaultLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultLogCubic()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::MonotonicLogCubic::MonotonicLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MonotonicLogCubic()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: QuantLib::KrugerLog::KrugerLog
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void KrugerLog()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: QuantLib::LogCubicNaturalSpline::LogCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogCubicNaturalSpline(const I1& xBegin,\n                              const
      I1& xEnd,\n                              const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionName: QuantLib::MonotonicLogCubicNaturalSpline::MonotonicLogCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogCubicNaturalSpline(const I1& xBegin,\n                                       const
      I1& xEnd,\n                                       const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: QuantLib::KrugerLogCubic::KrugerLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerLogCubic(const I1& xBegin,\n                       const
      I1& xEnd,\n                       const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionName: QuantLib::HarmonicLogCubic::HarmonicLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HarmonicLogCubic(const I1& xBegin,\n                         const
      I1& xEnd,\n                         const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: QuantLib::FritschButlandLogCubic::FritschButlandLogCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FritschButlandLogCubic(const I1& xBegin,\n                               const
      I1& xEnd,\n                               const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionName: QuantLib::LogParabolic::LogParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogParabolic(const I1& xBegin,\n                     const I1&
      xEnd,\n                     const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionName: QuantLib::MonotonicLogParabolic::MonotonicLogParabolic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogParabolic(const I1& xBegin,\n                              const
      I1& xEnd,\n                              const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:258,1
    - Dst: MixedLinearCubic
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:261,1
    - Dst: detail::LogInterpolationImpl<I1, I2, MixedLinearCubic>::LogInterpolationImpl<I1,
        I2, MixedLinearCubic>
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:258,1
    - Dst: update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    - behavior
    - da
    - monotonic
    - leftC
    - leftConditionValue
    - rightC
    - rightConditionValue
    argTypes:
    - I1
    - I1
    - I2
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    - bool
    - CubicInterpolation::BoundaryCondition
    - Real
    - CubicInterpolation::BoundaryCondition
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 265
    functionName: QuantLib::LogMixedLinearCubicInterpolation::LogMixedLinearCubicInterpolation
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - MixedLinearCubic
    - update
    - ext::shared_ptr<Interpolation::Impl>
    - detail::LogInterpolationImpl<I1, I2, MixedLinearCubic>::LogInterpolationImpl<I1,
      I2, MixedLinearCubic>
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubicInterpolation(const I1& xBegin, const I1&
      xEnd,\n                                         const I2& yBegin, const Size
      n,\n                                         MixedInterpolation::Behavior behavior,\n
      \                                        CubicInterpolation::DerivativeApprox
      da,\n                                         bool monotonic,\n                                         CubicInterpolation::BoundaryCondition
      leftC,\n                                         Real leftConditionValue,\n
      \                                        CubicInterpolation::BoundaryCondition
      rightC,\n                                         Real rightConditionValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - behavior
    - da
    argTypes:
    - Size
    - MixedInterpolation::Behavior
    - CubicInterpolation::DerivativeApprox
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 284
    functionName: QuantLib::LogMixedLinearCubic::LogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubic(const Size n,\n                            MixedInterpolation::Behavior
      behavior,\n                            CubicInterpolation::DerivativeApprox
      da,\n                            bool monotonic = true,\n                            CubicInterpolation::BoundaryCondition
      leftCondition\n                                = CubicInterpolation::SecondDerivative,\n
      \                           Real leftConditionValue = 0.0,\n                            CubicInterpolation::BoundaryCondition
      rightCondition\n                                = CubicInterpolation::SecondDerivative,\n
      \                           Real rightConditionValue = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LogMixedLinearCubicInterpolation
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::LogMixedLinearCubic::interpolate
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - LogMixedLinearCubicInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: QuantLib::DefaultLogMixedLinearCubic::DefaultLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultLogMixedLinearCubic(const Size n,\n                                            MixedInterpolation::Behavior
      behavior\n                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 324
    functionName: QuantLib::MonotonicLogMixedLinearCubic::MonotonicLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MonotonicLogMixedLinearCubic(const Size n,\n                                              MixedInterpolation::Behavior
      behavior\n                                              = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 335
    functionName: QuantLib::KrugerLogMixedLinearCubic::KrugerLogMixedLinearCubic
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KrugerLogMixedLinearCubic(const Size n,\n                                           MixedInterpolation::Behavior
      behavior\n                                           = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - n
    argTypes:
    - I1
    - I1
    - I2
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 350
    functionName: QuantLib::LogMixedLinearCubicNaturalSpline::LogMixedLinearCubicNaturalSpline
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LogMixedLinearCubicNaturalSpline(const I1& xBegin, const I1&
      xEnd,\n                                         const I2& yBegin, const Size
      n,\n                                         MixedInterpolation::Behavior behavior\n
      \                                            = MixedInterpolation::ShareRanges)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:362,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:366,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::detail::LogInterpolationImpl::LogInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - begin
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void LogInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                 const
      I2& yBegin,\n                                 const Interpolator& factory =
      Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:371,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:372,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:375,1
    - Dst: QuantLib::detail::LogInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: QuantLib::detail::LogInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 3
    functionsReached:
    - size
    - QuantLib::detail::LogInterpolationImpl::update
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 379
    functionName: QuantLib::detail::LogInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 4
    functionsReached:
    - std::exp
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: QuantLib::detail::LogInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: QuantLib::detail::LogInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    - Dst: QuantLib::detail::LogInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: QuantLib::detail::LogInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    - QuantLib::detail::LogInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:362,1
    - Dst: interpolate
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:366,1
    - Dst: begin
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::detail::LogInterpolationImpl::LogInterpolationImpl
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - begin
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void LogInterpolationImpl(const I1& xBegin, const I1& xEnd,\n                                 const
      I2& yBegin,\n                                 const Interpolator& factory =
      Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:371,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:372,1
    - Dst: std::log
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:375,1
    - Dst: QuantLib::detail::LogInterpolationImpl::update
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: QuantLib::detail::LogInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 4
    functionsReached:
    - size
    - QuantLib::detail::LogInterpolationImpl::update
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 379
    functionName: QuantLib::detail::LogInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 6
    functionsReached:
    - std::exp
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: QuantLib::detail::LogInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: QuantLib::detail::LogInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::derivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:387,1
    - Dst: QuantLib::detail::LogInterpolationImpl::value
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    - Dst: QuantLib::detail::LogInterpolationImpl::secondDerivative
      Src: /src/quantlib/ql/math/interpolations/loginterpolation.hpp:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: QuantLib::detail::LogInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/math/interpolations/loginterpolation.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::LogInterpolationImpl::derivative
    - QuantLib::detail::LogInterpolationImpl::value
    - QuantLib::detail::LogInterpolationImpl::secondDerivative
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::hash<typename boost::shared_ptr<T>::element_type*>
      Src: /src/quantlib/ql/patterns/observable.hpp:45,1
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - boost::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: operator()(const boost::shared_ptr<T>& ptr) const noexcept
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - std::hash<typename boost::shared_ptr<T>::element_type*>
    - get
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(const boost::shared_ptr<T>& ptr) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::hash<typename boost::shared_ptr<T>::element_type*>
      Src: /src/quantlib/ql/patterns/observable.hpp:45,1
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - boost::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: operator()(const boost::shared_ptr<T>& ptr) const noexcept
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - std::hash<typename boost::shared_ptr<T>::element_type*>
    - get
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(const boost::shared_ptr<T>& ptr) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable(Observable&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& operator=(Observable&&)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Observable
    signature: Observable & operator=(Observable&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: ~Observable()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::ObservableSettings::disableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableUpdates(bool deferred=false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ObservableSettings::updatesEnabled
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesEnabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::ObservableSettings::updatesDeferred
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesDeferred() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::ObservableSettings::ObservableSettings
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observer()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ObservableSettings::updatesDeferred
      Src: /src/quantlib/ql/patterns/observable.hpp:162,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' observers'
    argTypes:
    - Observable::set_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ObservableSettings::registerDeferredObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - insert
    - QuantLib::ObservableSettings::updatesDeferred
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::registerDeferredObservers(const Observable::set_type&
      observers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::ObservableSettings::unregisterDeferredObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::unregisterDeferredObserver(Observer* o)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable::Observable(const Observable&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/observable.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observable
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: '& Observable::operator=(const Observable& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Observable
    signature: Observable & Observable::operator=(const Observable& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::Observable::registerObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - insert
    linkageType: ''
    returnType: std::pair<Observable::iterator, bool>
    signature: std::pair<Observable::iterator, bool> Observable::registerObserver(Observer*
      o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.hpp:198,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.hpp:199,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: QuantLib::Observable::unregisterObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - erase
    linkageType: ''
    returnType: Size
    signature: Size Observable::unregisterObserver(Observer* o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - registerObserver
    linkageType: ''
    returnType: void
    signature: void Observer::Observer(const Observer& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:213,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: '& Observer::operator=(const Observer& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - registerObserver
    - unregisterObserver
    linkageType: ''
    returnType: Observer
    signature: Observer & Observer::operator=(const Observer& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: Observer::~Observer()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::~Observer()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:228,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/patterns/observable.hpp:231,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: QuantLib::Observer::registerWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - end
    - insert
    - std::make_pair
    - registerObserver
    linkageType: ''
    returnType: std::pair<Observer::iterator, bool>
    signature: std::pair<Observer::iterator, bool> Observer::registerWith(const ext::shared_ptr<Observable>&
      h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/patterns/observable.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - o
    argTypes:
    - ext::shared_ptr<Observer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionName: QuantLib::Observer::registerWithObservables
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    linkageType: ''
    returnType: void
    signature: void Observer::registerWithObservables(const ext::shared_ptr<Observer>
      &o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:245,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 247
    functionName: QuantLib::Observer::unregisterWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    - unregisterObserver
    linkageType: ''
    returnType: Size
    signature: Size Observer::unregisterWith(const ext::shared_ptr<Observable>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:251,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: QuantLib::Observer::unregisterWithAll
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - clear
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::unregisterWithAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::Observer::deepUpdate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void Observer::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable(Observable&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& operator=(Observable&&)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Observable
    signature: Observable & operator=(Observable&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: ~Observable()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::ObservableSettings::disableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableUpdates(bool deferred=false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::ObservableSettings::updatesEnabled
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesEnabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::ObservableSettings::updatesDeferred
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesDeferred() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::ObservableSettings::ObservableSettings
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observer()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ObservableSettings::updatesDeferred
      Src: /src/quantlib/ql/patterns/observable.hpp:162,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' observers'
    argTypes:
    - Observable::set_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ObservableSettings::registerDeferredObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - insert
    - QuantLib::ObservableSettings::updatesDeferred
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::registerDeferredObservers(const Observable::set_type&
      observers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::ObservableSettings::unregisterDeferredObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::unregisterDeferredObserver(Observer* o)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observable::Observable(const Observable&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/observable.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observable
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: '& Observable::operator=(const Observable& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Observable
    signature: Observable & Observable::operator=(const Observable& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::Observable::registerObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - insert
    linkageType: ''
    returnType: std::pair<Observable::iterator, bool>
    signature: std::pair<Observable::iterator, bool> Observable::registerObserver(Observer*
      o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.hpp:198,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.hpp:199,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - o
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: QuantLib::Observable::unregisterObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - erase
    linkageType: ''
    returnType: Size
    signature: Size Observable::unregisterObserver(Observer* o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - registerObserver
    linkageType: ''
    returnType: void
    signature: void Observer::Observer(const Observer& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:213,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: '& Observer::operator=(const Observer& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - registerObserver
    - unregisterObserver
    linkageType: ''
    returnType: Observer
    signature: Observer & Observer::operator=(const Observer& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: Observer::~Observer()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::~Observer()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:228,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/patterns/observable.hpp:231,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: QuantLib::Observer::registerWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 1
    functionsReached:
    - end
    - insert
    - std::make_pair
    - registerObserver
    linkageType: ''
    returnType: std::pair<Observer::iterator, bool>
    signature: std::pair<Observer::iterator, bool> Observer::registerWith(const ext::shared_ptr<Observable>&
      h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/patterns/observable.hpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - o
    argTypes:
    - ext::shared_ptr<Observer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionName: QuantLib::Observer::registerWithObservables
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    linkageType: ''
    returnType: void
    signature: void Observer::registerWithObservables(const ext::shared_ptr<Observer>
      &o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:245,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 247
    functionName: QuantLib::Observer::unregisterWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    - unregisterObserver
    linkageType: ''
    returnType: Size
    signature: Size Observer::unregisterWith(const ext::shared_ptr<Observable>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:251,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: QuantLib::Observer::unregisterWithAll
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - clear
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::unregisterWithAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::Observer::deepUpdate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void Observer::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 287
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - observer
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionName: QuantLib::Observer::Proxy::Proxy
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Proxy(Observer* const observer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: weak_from_this
      Src: /src/quantlib/ql/patterns/observable.hpp:330,1
    - Dst: ext::weak_ptr::owner_before
      Src: /src/quantlib/ql/patterns/observable.hpp:335,1
    - Dst: ext::weak_ptr::owner_before
      Src: /src/quantlib/ql/patterns/observable.hpp:335,1
    - Dst: ext::weak_ptr::lock
      Src: /src/quantlib/ql/patterns/observable.hpp:336,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/patterns/observable.hpp:338,1
    - Dst: QuantLib::Observer::Proxy::update
      Src: /src/quantlib/ql/patterns/observable.hpp:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 344
    functionName: QuantLib::Observer::Proxy::update
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 1
    functionsReached:
    - ext::weak_ptr::owner_before
    - ext::weak_ptr::lock
    - QuantLib::Observer::Proxy::update
    - ext::shared_ptr::update
    - weak_from_this
    linkageType: ''
    returnType: void
    signature: void update() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: QuantLib::Observer::Proxy::deactivate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void deactivate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 381
    functionName: ~Observable()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: QuantLib::ObservableSettings::disableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableUpdates(bool deferred=false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 408
    functionName: QuantLib::ObservableSettings::updatesEnabled
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesEnabled()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 409
    functionName: QuantLib::ObservableSettings::updatesDeferred
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesDeferred()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 411
    functionName: QuantLib::ObservableSettings::ObservableSettings
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' observers'
    argTypes:
    - Observable::set_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionName: QuantLib::ObservableSettings::registerDeferredObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::registerDeferredObservers(const Observable::set_type&
      observers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 443
    functionName: QuantLib::ObservableSettings::unregisterDeferredObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: "void ObservableSettings::unregisterDeferredObserver(\n        const
      ext::shared_ptr<Observer::Proxy>& o)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/patterns/observable.hpp:451,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:455,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:456,1
    - Dst: auto::lock
      Src: /src/quantlib/ql/patterns/observable.hpp:458,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/patterns/observable.hpp:460,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.hpp:463,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:469,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.hpp:471,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 474
    functionName: QuantLib::ObservableSettings::enableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - auto::lock
    - begin
    - what
    - size
    - ext::shared_ptr::update
    - end
    - clear
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::enableUpdates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/observable.hpp:489,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observable
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 491
    functionName: '& Observable::operator=(const Observable& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Observable
    signature: Observable & Observable::operator=(const Observable& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:494,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:494,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 503
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - reset
    - Proxy::Proxy
    - registerObserver
    linkageType: ''
    returnType: void
    signature: void Observer::Observer(const Observer& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:508,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:508,1
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:512,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 522
    functionName: '& Observer::operator=(const Observer& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - reset
    - registerObserver
    - Proxy::Proxy
    - unregisterObserver
    linkageType: ''
    returnType: Observer
    signature: Observer & Observer::operator=(const Observer& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: deactivate
      Src: /src/quantlib/ql/patterns/observable.hpp:527,1
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 531
    functionName: Observer::~Observer()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - deactivate
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::~Observer()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:537,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:537,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:541,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:542,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/patterns/observable.hpp:544,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 545
    functionName: QuantLib::Observer::registerWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 2
    functionsReached:
    - std::make_pair
    - reset
    - registerObserver
    - end
    - insert
    - Proxy::Proxy
    linkageType: ''
    returnType: std::pair<Observer::iterator, bool>
    signature: std::pair<Observer::iterator, bool> Observer::registerWith(const ext::shared_ptr<Observable>&
      h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/patterns/observable.hpp:553,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - ext::shared_ptr<Observer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 555
    functionName: QuantLib::Observer::registerWithObservables
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    linkageType: ''
    returnType: void
    signature: void Observer::registerWithObservables(const ext::shared_ptr<Observer>&
      o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:562,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:565,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 566
    functionName: QuantLib::Observer::unregisterWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    - unregisterObserver
    linkageType: ''
    returnType: Size
    signature: Size Observer::unregisterWith(const ext::shared_ptr<Observable>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:572,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 575
    functionName: QuantLib::Observer::unregisterWithAll
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - clear
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::unregisterWithAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.hpp:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 579
    functionName: QuantLib::Observer::deepUpdate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void Observer::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 287
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Observer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - observer
    argTypes:
    - Observer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionName: QuantLib::Observer::Proxy::Proxy
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Proxy(Observer* const observer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: weak_from_this
      Src: /src/quantlib/ql/patterns/observable.hpp:330,1
    - Dst: ext::weak_ptr::owner_before
      Src: /src/quantlib/ql/patterns/observable.hpp:335,1
    - Dst: ext::weak_ptr::owner_before
      Src: /src/quantlib/ql/patterns/observable.hpp:335,1
    - Dst: ext::weak_ptr::lock
      Src: /src/quantlib/ql/patterns/observable.hpp:336,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/patterns/observable.hpp:338,1
    - Dst: QuantLib::Observer::Proxy::update
      Src: /src/quantlib/ql/patterns/observable.hpp:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 344
    functionName: QuantLib::Observer::Proxy::update
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 2
    functionsReached:
    - ext::weak_ptr::owner_before
    - ext::weak_ptr::lock
    - QuantLib::Observer::Proxy::update
    - ext::shared_ptr::update
    - weak_from_this
    linkageType: ''
    returnType: void
    signature: void update() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: QuantLib::Observer::Proxy::deactivate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void deactivate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 381
    functionName: ~Observable()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: QuantLib::ObservableSettings::disableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void disableUpdates(bool deferred=false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 408
    functionName: QuantLib::ObservableSettings::updatesEnabled
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesEnabled()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 409
    functionName: QuantLib::ObservableSettings::updatesDeferred
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool updatesDeferred()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 411
    functionName: QuantLib::ObservableSettings::ObservableSettings
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObservableSettings()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' observers'
    argTypes:
    - Observable::set_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionName: QuantLib::ObservableSettings::registerDeferredObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::registerDeferredObservers(const Observable::set_type&
      observers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 443
    functionName: QuantLib::ObservableSettings::unregisterDeferredObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: "void ObservableSettings::unregisterDeferredObserver(\n        const
      ext::shared_ptr<Observer::Proxy>& o)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/patterns/observable.hpp:451,1
    - Dst: begin
      Src: /src/quantlib/ql/patterns/observable.hpp:455,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:456,1
    - Dst: auto::lock
      Src: /src/quantlib/ql/patterns/observable.hpp:458,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/patterns/observable.hpp:460,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.hpp:463,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:469,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.hpp:471,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 474
    functionName: QuantLib::ObservableSettings::enableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - auto::lock
    - begin
    - what
    - size
    - ext::shared_ptr::update
    - end
    - clear
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::enableUpdates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/observable.hpp:489,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observable
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 491
    functionName: '& Observable::operator=(const Observable& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Observable
    signature: Observable & Observable::operator=(const Observable& o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:494,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:494,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 503
    functionName: QuantLib::Observer::Observer
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - reset
    - Proxy::Proxy
    - registerObserver
    linkageType: ''
    returnType: void
    signature: void Observer::Observer(const Observer& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:508,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:508,1
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:512,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Observer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 522
    functionName: '& Observer::operator=(const Observer& o)'
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - reset
    - registerObserver
    - Proxy::Proxy
    - unregisterObserver
    linkageType: ''
    returnType: Observer
    signature: Observer & Observer::operator=(const Observer& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: deactivate
      Src: /src/quantlib/ql/patterns/observable.hpp:527,1
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 531
    functionName: Observer::~Observer()
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - deactivate
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::~Observer()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/patterns/observable.hpp:537,1
    - Dst: Proxy::Proxy
      Src: /src/quantlib/ql/patterns/observable.hpp:537,1
    - Dst: registerObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:541,1
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.hpp:542,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/patterns/observable.hpp:544,1
    - Dst: end
      Src: /src/quantlib/ql/patterns/observable.hpp:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 545
    functionName: QuantLib::Observer::registerWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 3
    functionsReached:
    - std::make_pair
    - reset
    - registerObserver
    - end
    - insert
    - Proxy::Proxy
    linkageType: ''
    returnType: std::pair<Observer::iterator, bool>
    signature: std::pair<Observer::iterator, bool> Observer::registerWith(const ext::shared_ptr<Observable>&
      h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/patterns/observable.hpp:553,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - ext::shared_ptr<Observer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 555
    functionName: QuantLib::Observer::registerWithObservables
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    linkageType: ''
    returnType: void
    signature: void Observer::registerWithObservables(const ext::shared_ptr<Observer>&
      o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:562,1
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.hpp:565,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - ext::shared_ptr<Observable>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 566
    functionName: QuantLib::Observer::unregisterWith
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - erase
    - unregisterObserver
    linkageType: ''
    returnType: Size
    signature: Size Observer::unregisterWith(const ext::shared_ptr<Observable>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterObserver
      Src: /src/quantlib/ql/patterns/observable.hpp:572,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.hpp:574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 575
    functionName: QuantLib::Observer::unregisterWithAll
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - clear
    - unregisterObserver
    linkageType: ''
    returnType: void
    signature: void Observer::unregisterWithAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.hpp:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 579
    functionName: QuantLib::Observer::deepUpdate
    functionSourceFile: /src/quantlib/ql/patterns/observable.hpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void Observer::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::CuriouslyRecurringTemplate::CuriouslyRecurringTemplate
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CuriouslyRecurringTemplate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~CuriouslyRecurringTemplate()
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CuriouslyRecurringTemplate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Impl&>
      Src: /src/quantlib/ql/patterns/curiouslyrecurring.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: '& impl()'
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Impl&>
    linkageType: ''
    returnType: Impl
    signature: Impl & impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Impl&>
      Src: /src/quantlib/ql/patterns/curiouslyrecurring.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: '& impl() const'
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const Impl&>
    linkageType: ''
    returnType: Impl
    signature: Impl & impl() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::CuriouslyRecurringTemplate::CuriouslyRecurringTemplate
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CuriouslyRecurringTemplate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~CuriouslyRecurringTemplate()
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CuriouslyRecurringTemplate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Impl&>
      Src: /src/quantlib/ql/patterns/curiouslyrecurring.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: '& impl()'
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Impl&>
    linkageType: ''
    returnType: Impl
    signature: Impl & impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Impl&>
      Src: /src/quantlib/ql/patterns/curiouslyrecurring.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: '& impl() const'
    functionSourceFile: /src/quantlib/ql/patterns/curiouslyrecurring.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const Impl&>
    linkageType: ''
    returnType: Impl
    signature: Impl & impl() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton(const Singleton&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton(Singleton&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(const Singleton&)'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Singleton
    signature: Singleton & operator=(const Singleton&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& operator=(Singleton&&)'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Singleton
    signature: Singleton & operator=(Singleton&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~Singleton()
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Singleton()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Global
      Src: /src/quantlib/ql/patterns/singleton.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: '& Singleton<T, Global>::instance()'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached:
    - Global
    linkageType: ''
    returnType: T
    signature: T & Singleton<T, Global>::instance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: '& Singleton<T, Global>::instance()'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & Singleton<T, Global>::instance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton(const Singleton&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton(Singleton&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(const Singleton&)'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Singleton
    signature: Singleton & operator=(const Singleton&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& operator=(Singleton&&)'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Singleton
    signature: Singleton & operator=(Singleton&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~Singleton()
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Singleton()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::Singleton::Singleton
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Singleton()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Global
      Src: /src/quantlib/ql/patterns/singleton.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: '& Singleton<T, Global>::instance()'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached:
    - Global
    linkageType: ''
    returnType: T
    signature: T & Singleton<T, Global>::instance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: '& Singleton<T, Global>::instance()'
    functionSourceFile: /src/quantlib/ql/patterns/singleton.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T & Singleton<T, Global>::instance()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~AcyclicVisitor()
    functionSourceFile: /src/quantlib/ql/patterns/visitor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AcyclicVisitor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Visitor()
    functionSourceFile: /src/quantlib/ql/patterns/visitor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Visitor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~AcyclicVisitor()
    functionSourceFile: /src/quantlib/ql/patterns/visitor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AcyclicVisitor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~Visitor()
    functionSourceFile: /src/quantlib/ql/patterns/visitor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Visitor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~LazyObject() override
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LazyObject() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - subject
    argTypes:
    - LazyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::LazyObject::UpdateChecker::UpdateChecker
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdateChecker(LazyObject* subject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: ~UpdateChecker()
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdateChecker()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::LazyObject::Defaults::Defaults
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Defaults()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::LazyObject::Defaults::forwardFirstNotificationOnly
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void forwardFirstNotificationOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::LazyObject::Defaults::alwaysForwardNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void alwaysForwardNotifications()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::LazyObject::Defaults::forwardsAllNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool forwardsAllNotifications() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 186
    functionName: QuantLib::LazyObject::LazyObject
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void LazyObject::LazyObject()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:191,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 216
    functionName: QuantLib::LazyObject::update
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void LazyObject::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::calculate
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:222,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:225,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 230
    functionName: QuantLib::LazyObject::recalculate
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::LazyObject::calculate
    linkageType: ''
    returnType: void
    signature: void LazyObject::recalculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: QuantLib::LazyObject::freeze
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::freeze()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 243
    functionName: QuantLib::LazyObject::unfreeze
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void LazyObject::unfreeze()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::LazyObject::forwardFirstNotificationOnly
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::forwardFirstNotificationOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: QuantLib::LazyObject::alwaysForwardNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::alwaysForwardNotifications()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:258,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 264
    functionName: QuantLib::LazyObject::calculate
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 3
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: void
    signature: void LazyObject::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::LazyObject::isCalculated
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LazyObject::isCalculated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~LazyObject() override
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LazyObject() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - subject
    argTypes:
    - LazyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::LazyObject::UpdateChecker::UpdateChecker
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdateChecker(LazyObject* subject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: ~UpdateChecker()
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~UpdateChecker()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::LazyObject::Defaults::Defaults
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Defaults()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::LazyObject::Defaults::forwardFirstNotificationOnly
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void forwardFirstNotificationOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::LazyObject::Defaults::alwaysForwardNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void alwaysForwardNotifications()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::LazyObject::Defaults::forwardsAllNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool forwardsAllNotifications() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 186
    functionName: QuantLib::LazyObject::LazyObject
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void LazyObject::LazyObject()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:191,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 216
    functionName: QuantLib::LazyObject::update
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void LazyObject::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::calculate
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:222,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:225,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 230
    functionName: QuantLib::LazyObject::recalculate
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::LazyObject::calculate
    linkageType: ''
    returnType: void
    signature: void LazyObject::recalculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: QuantLib::LazyObject::freeze
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::freeze()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 243
    functionName: QuantLib::LazyObject::unfreeze
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void LazyObject::unfreeze()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::LazyObject::forwardFirstNotificationOnly
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::forwardFirstNotificationOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: QuantLib::LazyObject::alwaysForwardNotifications
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LazyObject::alwaysForwardNotifications()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/patterns/lazyobject.hpp:258,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 264
    functionName: QuantLib::LazyObject::calculate
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 4
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: void
    signature: void LazyObject::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::LazyObject::isCalculated
    functionSourceFile: /src/quantlib/ql/patterns/lazyobject.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LazyObject::isCalculated() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/patterns/observable.cpp:33,1
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:39,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.cpp:42,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.cpp:48,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 53
    functionName: QuantLib::ObservableSettings::enableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - empty
    - update
    - what
    - clear
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::enableUpdates()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:60,1
    - Dst: empty
      Src: /src/quantlib/ql/patterns/observable.cpp:61,1
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:66,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.cpp:76,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.cpp:81,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 84
    functionName: QuantLib::Observable::notifyObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - empty
    - update
    - QuantLib::detail::instance
    - what
    linkageType: ''
    returnType: void
    signature: void Observable::notifyObservers()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/patterns/observable.cpp:33,1
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:39,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.cpp:42,1
    - Dst: clear
      Src: /src/quantlib/ql/patterns/observable.cpp:48,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 53
    functionName: QuantLib::ObservableSettings::enableUpdates
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - empty
    - update
    - what
    - clear
    linkageType: ''
    returnType: void
    signature: void ObservableSettings::enableUpdates()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:60,1
    - Dst: empty
      Src: /src/quantlib/ql/patterns/observable.cpp:61,1
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:66,1
    - Dst: what
      Src: /src/quantlib/ql/patterns/observable.cpp:76,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/patterns/observable.cpp:81,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 84
    functionName: QuantLib::Observable::notifyObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - empty
    - update
    - QuantLib::detail::instance
    - what
    linkageType: ''
    returnType: void
    signature: void Observable::notifyObservers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::connect
      Src: /src/quantlib/ql/patterns/observable.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - signal_type::slot_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Signal::connect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::Signal::connect
    linkageType: ''
    returnType: void
    signature: void connect(const signal_type::slot_type& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Signal::disconnect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::Signal::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(const T& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - sig_
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::ProxyUpdater::ProxyUpdater
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: void
    signature: void ProxyUpdater(const ext::shared_ptr<T>& observerProxy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: operator==(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator!=(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::connect
      Src: /src/quantlib/ql/patterns/observable.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - signal_type::slot_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Signal::connect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::Signal::connect
    linkageType: ''
    returnType: void
    signature: void connect(const signal_type::slot_type& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Signal::disconnect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::Signal::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(const T& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - sig_
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::ProxyUpdater::ProxyUpdater
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: void
    signature: void ProxyUpdater(const ext::shared_ptr<T>& observerProxy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: operator==(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator!=(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.cpp:144,1
    - Dst: detail::ProxyUpdater<Observer::Proxy>
      Src: /src/quantlib/ql/patterns/observable.cpp:147,1
    - Dst: connect
      Src: /src/quantlib/ql/patterns/observable.cpp:149,1
    - Dst: detail::Signal::signal_type::slot_type::track_foreign
      Src: /src/quantlib/ql/patterns/observable.cpp:149,1
    - Dst: connect
      Src: /src/quantlib/ql/patterns/observable.cpp:151,1
    - Dst: detail::Signal::signal_type::slot_type::track
      Src: /src/quantlib/ql/patterns/observable.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 153
    functionName: QuantLib::Observable::registerObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::ProxyUpdater<Observer::Proxy>
    - detail::Signal::signal_type::slot_type::track_foreign
    - detail::Signal::signal_type::slot_type::track
    - insert
    - connect
    linkageType: ''
    returnType: void
    signature: void Observable::registerObserver(const ext::shared_ptr<Observer::Proxy>&
      observerProxy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.cpp:159,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:162,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:163,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:164,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:165,1
    - Dst: disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:169,1
    - Dst: detail::ProxyUpdater<Observer::Proxy>
      Src: /src/quantlib/ql/patterns/observable.cpp:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' observerProxy'
    - disconnect
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 171
    functionName: QuantLib::Observable::unregisterObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::ProxyUpdater<Observer::Proxy>
    - disconnect
    - QuantLib::detail::instance
    - erase
    linkageType: ''
    returnType: void
    signature: "void Observable::unregisterObserver(const ext::shared_ptr<Observer::Proxy>&
      observerProxy,\n                                        bool disconnect)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:174,1
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:175,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:180,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:181,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:183,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:185,1
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 192
    functionName: QuantLib::Observable::notifyObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - sig_
    linkageType: ''
    returnType: void
    signature: void Observable::notifyObservers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::Signal::Signal
      Src: /src/quantlib/ql/patterns/observable.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 195
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::Signal::Signal
    linkageType: ''
    returnType: void
    signature: void Observable::Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::Signal::Signal
      Src: /src/quantlib/ql/patterns/observable.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::Signal::Signal
    linkageType: ''
    returnType: void
    signature: void Observable::Observable(const Observable&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::connect
      Src: /src/quantlib/ql/patterns/observable.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - signal_type::slot_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Signal::connect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::Signal::connect
    linkageType: ''
    returnType: void
    signature: void connect(const signal_type::slot_type& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Signal::disconnect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::Signal::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(const T& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - sig_
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::ProxyUpdater::ProxyUpdater
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: void
    signature: void ProxyUpdater(const ext::shared_ptr<T>& observerProxy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: operator==(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator!=(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::connect
      Src: /src/quantlib/ql/patterns/observable.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - signal_type::slot_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::detail::Signal::connect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::Signal::connect
    linkageType: ''
    returnType: void
    signature: void connect(const signal_type::slot_type& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Signal::disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' slot'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::Signal::disconnect
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::Signal::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(const T& slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - sig_
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/quantlib/ql/patterns/observable.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::ProxyUpdater::ProxyUpdater
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: void
    signature: void ProxyUpdater(const ext::shared_ptr<T>& observerProxy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/patterns/observable.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: operator()() const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void operator()() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: operator==(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - ProxyUpdater<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: operator!=(const ProxyUpdater<T>& other) const
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const ProxyUpdater<T>& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/patterns/observable.cpp:144,1
    - Dst: detail::ProxyUpdater<Observer::Proxy>
      Src: /src/quantlib/ql/patterns/observable.cpp:147,1
    - Dst: connect
      Src: /src/quantlib/ql/patterns/observable.cpp:149,1
    - Dst: detail::Signal::signal_type::slot_type::track_foreign
      Src: /src/quantlib/ql/patterns/observable.cpp:149,1
    - Dst: connect
      Src: /src/quantlib/ql/patterns/observable.cpp:151,1
    - Dst: detail::Signal::signal_type::slot_type::track
      Src: /src/quantlib/ql/patterns/observable.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' observerProxy'
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 153
    functionName: QuantLib::Observable::registerObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::ProxyUpdater<Observer::Proxy>
    - detail::Signal::signal_type::slot_type::track_foreign
    - detail::Signal::signal_type::slot_type::track
    - insert
    - connect
    linkageType: ''
    returnType: void
    signature: void Observable::registerObserver(const ext::shared_ptr<Observer::Proxy>&
      observerProxy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/patterns/observable.cpp:159,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:162,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:163,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:164,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:165,1
    - Dst: disconnect
      Src: /src/quantlib/ql/patterns/observable.cpp:169,1
    - Dst: detail::ProxyUpdater<Observer::Proxy>
      Src: /src/quantlib/ql/patterns/observable.cpp:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' observerProxy'
    - disconnect
    argTypes:
    - ext::shared_ptr<Observer::Proxy>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 171
    functionName: QuantLib::Observable::unregisterObserver
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::ProxyUpdater<Observer::Proxy>
    - disconnect
    - QuantLib::detail::instance
    - erase
    linkageType: ''
    returnType: void
    signature: "void Observable::unregisterObserver(const ext::shared_ptr<Observer::Proxy>&
      observerProxy,\n                                        bool disconnect)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:174,1
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:175,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:180,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:181,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:183,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/patterns/observable.cpp:185,1
    - Dst: sig_
      Src: /src/quantlib/ql/patterns/observable.cpp:190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 192
    functionName: QuantLib::Observable::notifyObservers
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - sig_
    linkageType: ''
    returnType: void
    signature: void Observable::notifyObservers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::Signal::Signal
      Src: /src/quantlib/ql/patterns/observable.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 195
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::Signal::Signal
    linkageType: ''
    returnType: void
    signature: void Observable::Observable()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::Signal::Signal
      Src: /src/quantlib/ql/patterns/observable.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: QuantLib::Observable::Observable
    functionSourceFile: /src/quantlib/ql/patterns/observable.cpp
    functionUses: 0
    functionsReached:
    - detail::Signal::Signal
    linkageType: ''
    returnType: void
    signature: void Observable::Observable(const Observable&)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:37,1
    - Dst: units
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:39,1
    - Dst: length
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:39,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:40,1
    - Dst: length
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:40,1
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:52,1
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:54,1
    - Dst: QuantLib::InterestRateIndex::name
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:56,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:60,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:60,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 6
    argNames:
    - familyName
    - ' tenor'
    - fixingDays
    - currency
    - fixingCalendar
    - dayCounter
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 61
    functionName: QuantLib::InterestRateIndex::InterestRateIndex
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::name
    - std::move
    - notifier
    - Period
    - std::ostringstream::str
    - length
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::io::short_period
    - units
    linkageType: ''
    returnType: void
    signature: "void InterestRateIndex::InterestRateIndex(std::string familyName,\n
      \                                        const Period& tenor,\n                                         Natural
      fixingDays,\n                                         Currency currency,\n                                         Calendar
      fixingCalendar,\n                                         DayCounter dayCounter)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:66,1
    - Dst: QuantLib::InterestRateIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:66,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:69,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:73,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:76,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:80,1
    - Dst: QuantLib::InterestRateIndex::name
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:81,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:87,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:88,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:95,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - ' fixingDate'
    - forecastTodaysFixing
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 96
    functionName: QuantLib::InterestRateIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::name
    - Null<Real>
    - pastFixing
    - forecastFixing
    - QuantLib::detail::instance
    - QuantLib::InterestRateIndex::isValidFixingDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate InterestRateIndex::fixing(const Date& fixingDate,\n                                   bool
      forecastTodaysFixing) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:37,1
    - Dst: units
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:39,1
    - Dst: length
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:39,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:40,1
    - Dst: length
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:40,1
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:52,1
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:54,1
    - Dst: QuantLib::InterestRateIndex::name
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:56,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:60,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:60,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 6
    argNames:
    - familyName
    - ' tenor'
    - fixingDays
    - currency
    - fixingCalendar
    - dayCounter
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 61
    functionName: QuantLib::InterestRateIndex::InterestRateIndex
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::name
    - std::move
    - notifier
    - Period
    - std::ostringstream::str
    - length
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::io::short_period
    - units
    linkageType: ''
    returnType: void
    signature: "void InterestRateIndex::InterestRateIndex(std::string familyName,\n
      \                                        const Period& tenor,\n                                         Natural
      fixingDays,\n                                         Currency currency,\n                                         Calendar
      fixingCalendar,\n                                         DayCounter dayCounter)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:66,1
    - Dst: QuantLib::InterestRateIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:66,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:69,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:73,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:76,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:80,1
    - Dst: QuantLib::InterestRateIndex::name
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:81,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:87,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:88,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/indexes/interestrateindex.cpp:95,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - ' fixingDate'
    - forecastTodaysFixing
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 96
    functionName: QuantLib::InterestRateIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::name
    - Null<Real>
    - pastFixing
    - forecastFixing
    - QuantLib::detail::instance
    - QuantLib::InterestRateIndex::isValidFixingDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate InterestRateIndex::fixing(const Date& fixingDate,\n                                   bool
      forecastTodaysFixing) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/indexes/region.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' code'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::CustomRegion::CustomRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    linkageType: ''
    returnType: void
    signature: "void CustomRegion::CustomRegion(const std::string& name,\n                               const
      std::string& code)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::AustraliaRegion::AustraliaRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void AustraliaRegion::AustraliaRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::EURegion::EURegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void EURegion::EURegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::FranceRegion::FranceRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void FranceRegion::FranceRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::UKRegion::UKRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void UKRegion::UKRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::USRegion::USRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void USRegion::USRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::ZARegion::ZARegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void ZARegion::ZARegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Data>
      Src: /src/quantlib/ql/indexes/region.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' code'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::CustomRegion::CustomRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Data>
    linkageType: ''
    returnType: void
    signature: "void CustomRegion::CustomRegion(const std::string& name,\n                               const
      std::string& code)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: QuantLib::AustraliaRegion::AustraliaRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void AustraliaRegion::AustraliaRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: QuantLib::EURegion::EURegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void EURegion::EURegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::FranceRegion::FranceRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void FranceRegion::FranceRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::UKRegion::UKRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void UKRegion::UKRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::USRegion::USRegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void USRegion::USRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/indexes/region.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::ZARegion::ZARegion
    functionSourceFile: /src/quantlib/ql/indexes/region.cpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void ZARegion::ZARegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::EquityIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::EquityIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar fixingCalendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::EquityIndex::currency
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::EquityIndex::equityInterestRateCurve
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> equityInterestRateCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::EquityIndex::equityDividendCurve
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> equityDividendCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::EquityIndex::spot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EquityIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/equityindex.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::EquityIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::fixingCalendar
    linkageType: ''
    returnType: bool
    signature: bool EquityIndex::isValidFixingDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::EquityIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::EquityIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar fixingCalendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::EquityIndex::currency
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::EquityIndex::equityInterestRateCurve
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> equityInterestRateCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: QuantLib::EquityIndex::equityDividendCurve
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> equityDividendCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::EquityIndex::spot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EquityIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/equityindex.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::EquityIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::fixingCalendar
    linkageType: ''
    returnType: bool
    signature: bool EquityIndex::isValidFixingDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' spot'
    - lastFixing
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::resolveSpot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::Null
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real resolveSpot(const Handle<Quote>& spot, Real lastFixing)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' spot'
    - lastFixing
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::resolveSpot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::Null
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real resolveSpot(const Handle<Quote>& spot, Real lastFixing)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:40,1
    - Dst: Currency
      Src: /src/quantlib/ql/indexes/equityindex.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - name
    - fixingCalendar
    - interest
    - dividend
    - spot
    argTypes:
    - std::string
    - Calendar
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::EquityIndex::EquityIndex
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Currency
    linkageType: ''
    returnType: void
    signature: "void EquityIndex::EquityIndex(std::string name,\n                             Calendar
      fixingCalendar,\n                             Handle<YieldTermStructure> interest,\n
      \                            Handle<YieldTermStructure> dividend,\n                             Handle<Quote>
      spot)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:60,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/equityindex.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - name
    - fixingCalendar
    - currency
    - interest
    - dividend
    - spot
    argTypes:
    - std::string
    - Calendar
    - Currency
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 61
    functionName: QuantLib::EquityIndex::EquityIndex
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - notifier
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void EquityIndex::EquityIndex(std::string name,\n                             Calendar
      fixingCalendar,\n                             Currency currency,\n                             Handle<YieldTermStructure>
      interest,\n                             Handle<YieldTermStructure> dividend,\n
      \                            Handle<Quote> spot)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:65,1
    - Dst: QuantLib::EquityIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/equityindex.cpp:65,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:67,1
    - Dst: QuantLib::EquityIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:70,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:72,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/equityindex.cpp:74,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:78,1
    - Dst: value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:81,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/equityindex.cpp:83,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' fixingDate'
    - forecastTodaysFixing
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 84
    functionName: QuantLib::EquityIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::forecastFixing
    - QuantLib::EquityIndex::isValidFixingDate
    - empty
    - value
    - Null<Real>
    - pastFixing
    - QuantLib::EquityIndex::name
    - QL_FAIL
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EquityIndex::fixing(const Date& fixingDate, bool forecastTodaysFixing)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:87,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:88,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:90,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/equityindex.cpp:91,1
    - Dst: resolveSpot
      Src: /src/quantlib/ql/indexes/equityindex.cpp:93,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:93,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 102
    functionName: QuantLib::EquityIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 1
    functionsReached:
    - empty
    - QuantLib::EquityIndex::name
    - pastFixing
    - resolveSpot
    - QuantLib::detail::instance
    - discount
    - adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EquityIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EquityIndex>
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::currency
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' interest'
    - ' dividend'
    - ' spot'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionName: QuantLib::EquityIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::name
    - QuantLib::EquityIndex::currency
    - ext::make_shared<EquityIndex>
    - QuantLib::EquityIndex::fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<EquityIndex>
    signature: "ext::shared_ptr<EquityIndex> EquityIndex::clone(const Handle<YieldTermStructure>&
      interest,\n                                                    const Handle<YieldTermStructure>&
      dividend,\n                                                    const Handle<Quote>&
      spot) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' spot'
    - lastFixing
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::resolveSpot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::Null
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real resolveSpot(const Handle<Quote>& spot, Real lastFixing)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/indexes/equityindex.cpp:28,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' spot'
    - lastFixing
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::resolveSpot
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::Null
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real resolveSpot(const Handle<Quote>& spot, Real lastFixing)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:40,1
    - Dst: Currency
      Src: /src/quantlib/ql/indexes/equityindex.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - name
    - fixingCalendar
    - interest
    - dividend
    - spot
    argTypes:
    - std::string
    - Calendar
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::EquityIndex::EquityIndex
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Currency
    linkageType: ''
    returnType: void
    signature: "void EquityIndex::EquityIndex(std::string name,\n                             Calendar
      fixingCalendar,\n                             Handle<YieldTermStructure> interest,\n
      \                            Handle<YieldTermStructure> dividend,\n                             Handle<Quote>
      spot)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/equityindex.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:59,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/equityindex.cpp:60,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/equityindex.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - name
    - fixingCalendar
    - currency
    - interest
    - dividend
    - spot
    argTypes:
    - std::string
    - Calendar
    - Currency
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 61
    functionName: QuantLib::EquityIndex::EquityIndex
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - notifier
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void EquityIndex::EquityIndex(std::string name,\n                             Calendar
      fixingCalendar,\n                             Currency currency,\n                             Handle<YieldTermStructure>
      interest,\n                             Handle<YieldTermStructure> dividend,\n
      \                            Handle<Quote> spot)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:65,1
    - Dst: QuantLib::EquityIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/equityindex.cpp:65,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:67,1
    - Dst: QuantLib::EquityIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:70,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:72,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/equityindex.cpp:74,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:78,1
    - Dst: value
      Src: /src/quantlib/ql/indexes/equityindex.cpp:81,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/equityindex.cpp:83,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' fixingDate'
    - forecastTodaysFixing
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 84
    functionName: QuantLib::EquityIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::forecastFixing
    - QuantLib::EquityIndex::isValidFixingDate
    - empty
    - value
    - Null<Real>
    - pastFixing
    - QuantLib::EquityIndex::name
    - QL_FAIL
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EquityIndex::fixing(const Date& fixingDate, bool forecastTodaysFixing)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/equityindex.cpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:87,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:88,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/equityindex.cpp:90,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/equityindex.cpp:91,1
    - Dst: resolveSpot
      Src: /src/quantlib/ql/indexes/equityindex.cpp:93,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/indexes/equityindex.cpp:93,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/equityindex.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/equityindex.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 102
    functionName: QuantLib::EquityIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::EquityIndex::name
    - pastFixing
    - resolveSpot
    - QuantLib::detail::instance
    - discount
    - adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EquityIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EquityIndex>
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::name
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    - Dst: QuantLib::EquityIndex::currency
      Src: /src/quantlib/ql/indexes/equityindex.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' interest'
    - ' dividend'
    - ' spot'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionName: QuantLib::EquityIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/equityindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EquityIndex::name
    - QuantLib::EquityIndex::currency
    - ext::make_shared<EquityIndex>
    - QuantLib::EquityIndex::fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<EquityIndex>
    signature: "ext::shared_ptr<EquityIndex> EquityIndex::clone(const Handle<YieldTermStructure>&
      interest,\n                                                    const Handle<YieldTermStructure>&
      dividend,\n                                                    const Handle<Quote>&
      spot) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::SwapIndex::fixedLegTenor
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period fixedLegTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapIndex::iborIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::SwapIndex::fixedLegConvention
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention SwapIndex::fixedLegConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::SwapIndex::exogenousDiscount
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SwapIndex::exogenousDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::OvernightIndexedSwapIndex::overnightIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> OvernightIndexedSwapIndex::overnightIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::SwapIndex::fixedLegTenor
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period fixedLegTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapIndex::iborIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::SwapIndex::fixedLegConvention
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention SwapIndex::fixedLegConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::SwapIndex::exogenousDiscount
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SwapIndex::exogenousDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::OvernightIndexedSwapIndex::overnightIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> OvernightIndexedSwapIndex::overnightIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - ' fixedLegTenor'
    - fixedLegConvention
    - ' fixedLegDayCounter'
    - iborIndex
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::SwapIndex::SwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwapIndex::SwapIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        const Period& fixedLegTenor,\n                         BusinessDayConvention
      fixedLegConvention,\n                         const DayCounter& fixedLegDayCounter,\n
      \                        ext::shared_ptr<IborIndex> iborIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:57,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - ' fixedLegTenor'
    - fixedLegConvention
    - ' fixedLegDayCounter'
    - iborIndex
    - discount
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 62
    functionName: QuantLib::SwapIndex::SwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwapIndex::SwapIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        const Period& fixedLegTenor,\n                         BusinessDayConvention
      fixedLegConvention,\n                         const DayCounter& fixedLegDayCounter,\n
      \                        ext::shared_ptr<IborIndex> iborIndex,\n                         Handle<YieldTermStructure>
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwapIndex::forwardingTermStructure
      Src: /src/quantlib/ql/indexes/swapindex.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::SwapIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwapIndex::forwardingTermStructure
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> SwapIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapIndex::discountingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> SwapIndex::discountingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwapIndex::underlyingSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwapIndex::underlyingSwap
    linkageType: ''
    returnType: Rate
    signature: Rate SwapIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/swapindex.cpp:79,1
    - Dst: Date
      Src: /src/quantlib/ql/indexes/swapindex.cpp:79,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:85,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:86,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:87,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:94,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:95,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 104
    functionName: QuantLib::SwapIndex::underlyingSwap
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 1
    functionsReached:
    - valueDate
    - Date
    - MakeVanillaSwap
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> SwapIndex::underlyingSwap(const Date&
      fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:107,1
    - Dst: QuantLib::SwapIndex::underlyingSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::SwapIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - fixingDate
    - QuantLib::SwapIndex::underlyingSwap
    linkageType: ''
    returnType: Date
    signature: Date SwapIndex::maturityDate(const Date& valueDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:115,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:115,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:116,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:117,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:118,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:119,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:120,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:121,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:122,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:123,1
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:126,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:126,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:127,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:128,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:129,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:130,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:131,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:132,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:133,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' forwarding'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 135
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::clone
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> SwapIndex::clone(const Handle<YieldTermStructure>&
      forwarding) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:140,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:140,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:141,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:142,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:143,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:144,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:145,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:146,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:147,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::clone
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: "ext::shared_ptr<SwapIndex> SwapIndex::clone(const Handle<YieldTermStructure>&
      forwarding,\n                     const Handle<YieldTermStructure>& discounting)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:156,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:156,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:158,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:159,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:160,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:161,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:162,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:163,1
    - Dst: QuantLib::SwapIndex::iborIndex
      Src: /src/quantlib/ql/indexes/swapindex.cpp:164,1
    - Dst: QuantLib::SwapIndex::discountingTermStructure
      Src: /src/quantlib/ql/indexes/swapindex.cpp:165,1
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:167,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:167,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:169,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:170,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:171,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:172,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:173,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:174,1
    - Dst: QuantLib::SwapIndex::iborIndex
      Src: /src/quantlib/ql/indexes/swapindex.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 177
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - QuantLib::SwapIndex::iborIndex
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::discountingTermStructure
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> SwapIndex::clone(const Period& tenor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:191,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' overnightIndex'
    - telescopicValueDates
    - averagingMethod
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - ext::shared_ptr<OvernightIndex>
    - bool
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 198
    functionName: QuantLib::OvernightIndexedSwapIndex::OvernightIndexedSwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwapIndex::OvernightIndexedSwapIndex(\n        const
      std::string& familyName,\n        const Period& tenor,\n        Natural settlementDays,\n
      \       const Currency& currency,\n        const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n        bool telescopicValueDates,\n        RateAveraging::Type
      averagingMethod)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/swapindex.cpp:204,1
    - Dst: Date
      Src: /src/quantlib/ql/indexes/swapindex.cpp:204,1
    - Dst: MakeOIS
      Src: /src/quantlib/ql/indexes/swapindex.cpp:209,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 217
    functionName: QuantLib::OvernightIndexedSwapIndex::underlyingSwap
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - Date
    - valueDate
    - MakeOIS
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndexedSwap>
    signature: ext::shared_ptr<OvernightIndexedSwap> OvernightIndexedSwapIndex::underlyingSwap(const
      Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - ' fixedLegTenor'
    - fixedLegConvention
    - ' fixedLegDayCounter'
    - iborIndex
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::SwapIndex::SwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwapIndex::SwapIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        const Period& fixedLegTenor,\n                         BusinessDayConvention
      fixedLegConvention,\n                         const DayCounter& fixedLegDayCounter,\n
      \                        ext::shared_ptr<IborIndex> iborIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:57,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/swapindex.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/swapindex.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - ' fixedLegTenor'
    - fixedLegConvention
    - ' fixedLegDayCounter'
    - iborIndex
    - discount
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 62
    functionName: QuantLib::SwapIndex::SwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SwapIndex::SwapIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        const Period& fixedLegTenor,\n                         BusinessDayConvention
      fixedLegConvention,\n                         const DayCounter& fixedLegDayCounter,\n
      \                        ext::shared_ptr<IborIndex> iborIndex,\n                         Handle<YieldTermStructure>
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwapIndex::forwardingTermStructure
      Src: /src/quantlib/ql/indexes/swapindex.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::SwapIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwapIndex::forwardingTermStructure
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> SwapIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::SwapIndex::discountingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> SwapIndex::discountingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwapIndex::underlyingSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::SwapIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwapIndex::underlyingSwap
    linkageType: ''
    returnType: Rate
    signature: Rate SwapIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/swapindex.cpp:79,1
    - Dst: Date
      Src: /src/quantlib/ql/indexes/swapindex.cpp:79,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:85,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:86,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:87,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:94,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:95,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 104
    functionName: QuantLib::SwapIndex::underlyingSwap
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 3
    functionsReached:
    - valueDate
    - Date
    - MakeVanillaSwap
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> SwapIndex::underlyingSwap(const Date&
      fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:107,1
    - Dst: QuantLib::SwapIndex::underlyingSwap
      Src: /src/quantlib/ql/indexes/swapindex.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::SwapIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - fixingDate
    - QuantLib::SwapIndex::underlyingSwap
    linkageType: ''
    returnType: Date
    signature: Date SwapIndex::maturityDate(const Date& valueDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:115,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:115,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:116,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:117,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:118,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:119,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:120,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:121,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:122,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:123,1
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:126,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:126,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:127,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:128,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:129,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:130,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:131,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:132,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:133,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' forwarding'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 135
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::clone
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> SwapIndex::clone(const Handle<YieldTermStructure>&
      forwarding) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:140,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:140,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:141,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:142,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:143,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:144,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:145,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:146,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:147,1
    - Dst: QuantLib::SwapIndex::clone
      Src: /src/quantlib/ql/indexes/swapindex.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::clone
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: "ext::shared_ptr<SwapIndex> SwapIndex::clone(const Handle<YieldTermStructure>&
      forwarding,\n                     const Handle<YieldTermStructure>& discounting)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:156,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:156,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:158,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:159,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:160,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:161,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:162,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:163,1
    - Dst: QuantLib::SwapIndex::iborIndex
      Src: /src/quantlib/ql/indexes/swapindex.cpp:164,1
    - Dst: QuantLib::SwapIndex::discountingTermStructure
      Src: /src/quantlib/ql/indexes/swapindex.cpp:165,1
    - Dst: ext::make_shared<SwapIndex>
      Src: /src/quantlib/ql/indexes/swapindex.cpp:167,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/swapindex.cpp:167,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/swapindex.cpp:169,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/swapindex.cpp:170,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:171,1
    - Dst: QuantLib::SwapIndex::fixedLegTenor
      Src: /src/quantlib/ql/indexes/swapindex.cpp:172,1
    - Dst: QuantLib::SwapIndex::fixedLegConvention
      Src: /src/quantlib/ql/indexes/swapindex.cpp:173,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:174,1
    - Dst: QuantLib::SwapIndex::iborIndex
      Src: /src/quantlib/ql/indexes/swapindex.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 177
    functionName: QuantLib::SwapIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwapIndex::fixedLegTenor
    - QuantLib::SwapIndex::iborIndex
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::SwapIndex::discountingTermStructure
    - currency
    - QuantLib::SwapIndex::fixedLegConvention
    - ext::make_shared<SwapIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> SwapIndex::clone(const Period& tenor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/swapindex.cpp:191,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/swapindex.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' overnightIndex'
    - telescopicValueDates
    - averagingMethod
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - ext::shared_ptr<OvernightIndex>
    - bool
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 198
    functionName: QuantLib::OvernightIndexedSwapIndex::OvernightIndexedSwapIndex
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedSwapIndex::OvernightIndexedSwapIndex(\n        const
      std::string& familyName,\n        const Period& tenor,\n        Natural settlementDays,\n
      \       const Currency& currency,\n        const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n        bool telescopicValueDates,\n        RateAveraging::Type
      averagingMethod)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/swapindex.cpp:204,1
    - Dst: Date
      Src: /src/quantlib/ql/indexes/swapindex.cpp:204,1
    - Dst: MakeOIS
      Src: /src/quantlib/ql/indexes/swapindex.cpp:209,1
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/swapindex.cpp:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 217
    functionName: QuantLib::OvernightIndexedSwapIndex::underlyingSwap
    functionSourceFile: /src/quantlib/ql/indexes/swapindex.cpp
    functionUses: 0
    functionsReached:
    - Date
    - valueDate
    - MakeOIS
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndexedSwap>
    signature: ext::shared_ptr<OvernightIndexedSwap> OvernightIndexedSwapIndex::underlyingSwap(const
      Date& fixingDate) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:36,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:36,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:37,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:40,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:40,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:41,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:41,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:43,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:52,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' index'
    - ' date'
    - ' observationLag'
    - interpolationType
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - Date
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 62
    functionName: QuantLib::CPI::laggedFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - Period
    - QL_FAIL
    - inflationPeriod
    - fixing
    - frequency
    linkageType: ''
    returnType: Real
    signature: "Real CPI::laggedFixing(const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                           const Date& date,\n                           const
      Period& observationLag,\n                           CPI::InterpolationType interpolationType)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:72,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:75,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:75,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:76,1
    - Dst: ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:79,1
    - Dst: needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:79,1
    - Dst: underlyingIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:88,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:89,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:95,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:97,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:97,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:98,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:98,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:100,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:107,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:114,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - ' index'
    - ' date'
    - ' observationLag'
    - interpolationType
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Date
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 116
    functionName: QuantLib::CPI::laggedYoYRate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - needsForecast
    - Period
    - QuantLib::CPI::laggedFixing
    - inflationPeriod
    - ratio
    - QL_FAIL
    - fixing
    - frequency
    - underlyingIndex
    linkageType: ''
    returnType: Real
    signature: "Real CPI::laggedYoYRate(const ext::shared_ptr<YoYInflationIndex>&
      index,\n                            const Date& date,\n                            const
      Period& observationLag,\n                            CPI::InterpolationType
      interpolationType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:126,1
    - Dst: QuantLib::InflationIndex::name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:127,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:128,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:128,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:129,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - familyName
    - region
    - revised
    - frequency
    - ' availabilityLag'
    - currency
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 130
    functionName: QuantLib::InflationIndex::InflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - notifier
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::InflationIndex::name
    linkageType: ''
    returnType: void
    signature: "void InflationIndex::InflationIndex(std::string familyName,\n                                   Region
      region,\n                                   bool revised,\n                                   Frequency
      frequency,\n                                   const Period& availabilityLag,\n
      \                                  Currency currency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::InflationIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar InflationIndex::fixingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:141,1
    - Dst: static_cast<QuantLib::Size>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:142,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 152
    functionName: QuantLib::InflationIndex::addFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - QuantLib::Index::addFixings
    - inflationPeriod
    - static_cast<QuantLib::Size>
    linkageType: ''
    returnType: void
    signature: "void InflationIndex::addFixing(const Date& fixingDate,\n                                   Real
      fixing,\n                                   bool forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:162,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - frequency
    - ' availabilityLag'
    - ' currency'
    - zeroInflation
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<ZeroInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 164
    functionName: QuantLib::ZeroInflationIndex::ZeroInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationIndex::ZeroInflationIndex(const std::string& familyName,\n
      \                                          const Region& region,\n                                           bool
      revised,\n                                           Frequency frequency,\n
      \                                          const Period& availabilityLag,\n
      \                                          const Currency& currency,\n                                           Handle<ZeroInflationTermStructure>
      zeroInflation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:168,1
    - Dst: QuantLib::ZeroInflationIndex::pastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:170,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:170,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:171,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:172,1
    - Dst: QuantLib::ZeroInflationIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 178
    functionName: QuantLib::ZeroInflationIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZeroInflationIndex::forecastFixing
    - QuantLib::ZeroInflationIndex::pastFixing
    - name
    - Null<Real>
    - inflationPeriod
    - QuantLib::ZeroInflationIndex::needsForecast
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ZeroInflationIndex::fixing(const Date& fixingDate,\n                                    bool
      /*forecastTodaysFixing*/) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:181,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: QuantLib::ZeroInflationIndex::pastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - inflationPeriod
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationIndex::pastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:190,1
    - Dst: lastDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: QuantLib::ZeroInflationIndex::lastFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - timeSeries
    - empty
    - name
    - inflationPeriod
    - lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date ZeroInflationIndex::lastFixingDate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:195,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:198,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:201,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:214,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 216
    functionName: QuantLib::ZeroInflationIndex::needsForecast
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - QuantLib::detail::instance
    - inflationPeriod
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool ZeroInflationIndex::needsForecast(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:222,1
    - Dst: QuantLib::ZeroInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:222,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:223,1
    - Dst: QuantLib::ZeroInflationIndex::fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:224,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:226,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:229,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:229,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:230,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:230,1
    - Dst: std::pow
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 233
    functionName: QuantLib::ZeroInflationIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - zeroRate
    - inflationYearFraction
    - name
    - dayCounter
    - Period
    - inflationPeriod
    - QuantLib::ZeroInflationIndex::fixing
    - std::pow
    - QuantLib::ZeroInflationIndex::needsForecast
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<ZeroInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<ZeroInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 240
    functionName: QuantLib::ZeroInflationIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: "ext::shared_ptr<ZeroInflationIndex> ZeroInflationIndex::clone(\n                          const
      Handle<ZeroInflationTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:245,1
    - Dst: region
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:245,1
    - Dst: revised
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:246,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:246,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:247,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:247,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:249,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:250,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' underlyingIndex'
    - yoyInflation
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 252
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - region
    - familyName
    - availabilityLag
    - std::move
    - registerWith
    - currency
    - frequency
    - revised
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const ext::shared_ptr<ZeroInflationIndex>&
      underlyingIndex,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' underlyingIndex'
    - interpolated
    - yoyInflation
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - bool
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 259
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const ext::shared_ptr<ZeroInflationIndex>&
      underlyingIndex,\n                                         bool interpolated,\n
      \                                        Handle<YoYInflationTermStructure> yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:269,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - frequency
    - ' availabilityLag'
    - ' currency'
    - yoyInflation
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const std::string& familyName,\n
      \                                        const Region& region,\n                                         bool
      revised,\n                                         Frequency frequency,\n                                         const
      Period& availabilityLag,\n                                         const Currency&
      currency,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - interpolated
    - frequency
    - ' availabilityLag'
    - ' currency'
    - yoyInflation
    argTypes:
    - std::string
    - Region
    - bool
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 283
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const std::string& familyName,\n
      \                                        const Region& region,\n                                         bool
      revised,\n                                         bool interpolated,\n                                         Frequency
      frequency,\n                                         const Period& availabilityLag,\n
      \                                        const Currency& currency,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:288,1
    - Dst: QuantLib::YoYInflationIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:289,1
    - Dst: QuantLib::YoYInflationIndex::pastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::YoYInflationIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationIndex::forecastFixing
    - QuantLib::YoYInflationIndex::needsForecast
    - QuantLib::YoYInflationIndex::pastFixing
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYInflationIndex::fixing(const Date& fixingDate,\n                                   bool
      /*forecastTodaysFixing*/) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:296,1
    - Dst: QuantLib::YoYInflationIndex::lastFixingDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:297,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:302,1
    - Dst: lastDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 304
    functionName: QuantLib::YoYInflationIndex::lastFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - QuantLib::YoYInflationIndex::lastFixingDate
    - lastDate
    - empty
    - name
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationIndex::lastFixingDate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:307,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:309,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:311,1
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:316,1
    - Dst: QuantLib::YoYInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:317,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:320,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:331,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:332,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 335
    functionName: QuantLib::YoYInflationIndex::needsForecast
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - timeSeries
    - QuantLib::YoYInflationIndex::needsForecast
    - QuantLib::YoYInflationIndex::interpolated
    - Null<Real>
    - QuantLib::detail::instance
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::needsForecast(const Date& fixingDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:338,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:340,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:342,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:342,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:343,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:343,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:349,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:353,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:353,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:354,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:356,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:365,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:365,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:366,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 371
    functionName: QuantLib::YoYInflationIndex::pastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - timeSeries
    - name
    - Null<Rate>
    - QuantLib::YoYInflationIndex::interpolated
    - Period
    - QuantLib::CPI::laggedFixing
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationIndex::pastFixing(const Date& fixingDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:376,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:381,1
    - Dst: yoyRate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:384,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 385
    functionName: QuantLib::YoYInflationIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYInflationIndex::interpolated
    - inflationPeriod
    - yoyRate
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:392,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:393,1
    - Dst: return ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:396,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: QuantLib::YoYInflationIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - YoYInflationIndex::YoYInflationIndex
    - ext::shared_ptr<YoYInflationIndex>
    - return ext::shared_ptr<YoYInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: "ext::shared_ptr<YoYInflationIndex> YoYInflationIndex::clone(\n                           const
      Handle<YoYInflationTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:392,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::if
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - YoYInflationIndex::YoYInflationIndex
    - ext::shared_ptr<YoYInflationIndex>
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING if (ratio_)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:36,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:36,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:37,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:40,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:40,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:41,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:41,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:43,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:52,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ' index'
    - ' date'
    - ' observationLag'
    - interpolationType
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - Date
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 62
    functionName: QuantLib::CPI::laggedFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - Period
    - QL_FAIL
    - inflationPeriod
    - fixing
    - frequency
    linkageType: ''
    returnType: Real
    signature: "Real CPI::laggedFixing(const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                           const Date& date,\n                           const
      Period& observationLag,\n                           CPI::InterpolationType interpolationType)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:72,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:75,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:75,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:76,1
    - Dst: ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:79,1
    - Dst: needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:79,1
    - Dst: underlyingIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:88,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:89,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:95,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:97,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:97,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:98,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:98,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:100,1
    - Dst: fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:107,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:114,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - ' index'
    - ' date'
    - ' observationLag'
    - interpolationType
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Date
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 116
    functionName: QuantLib::CPI::laggedYoYRate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - needsForecast
    - Period
    - QuantLib::CPI::laggedFixing
    - inflationPeriod
    - ratio
    - QL_FAIL
    - fixing
    - frequency
    - underlyingIndex
    linkageType: ''
    returnType: Real
    signature: "Real CPI::laggedYoYRate(const ext::shared_ptr<YoYInflationIndex>&
      index,\n                            const Date& date,\n                            const
      Period& observationLag,\n                            CPI::InterpolationType
      interpolationType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:126,1
    - Dst: QuantLib::InflationIndex::name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:127,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:128,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:128,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:129,1
    - Dst: notifier
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - familyName
    - region
    - revised
    - frequency
    - ' availabilityLag'
    - currency
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 130
    functionName: QuantLib::InflationIndex::InflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - notifier
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::InflationIndex::name
    linkageType: ''
    returnType: void
    signature: "void InflationIndex::InflationIndex(std::string familyName,\n                                   Region
      region,\n                                   bool revised,\n                                   Frequency
      frequency,\n                                   const Period& availabilityLag,\n
      \                                  Currency currency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::InflationIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar InflationIndex::fixingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:141,1
    - Dst: static_cast<QuantLib::Size>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:142,1
    - Dst: QuantLib::Index::addFixings
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:150,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 152
    functionName: QuantLib::InflationIndex::addFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - QuantLib::Index::addFixings
    - inflationPeriod
    - static_cast<QuantLib::Size>
    linkageType: ''
    returnType: void
    signature: "void InflationIndex::addFixing(const Date& fixingDate,\n                                   Real
      fixing,\n                                   bool forceOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:162,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - frequency
    - ' availabilityLag'
    - ' currency'
    - zeroInflation
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<ZeroInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 164
    functionName: QuantLib::ZeroInflationIndex::ZeroInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationIndex::ZeroInflationIndex(const std::string& familyName,\n
      \                                          const Region& region,\n                                           bool
      revised,\n                                           Frequency frequency,\n
      \                                          const Period& availabilityLag,\n
      \                                          const Currency& currency,\n                                           Handle<ZeroInflationTermStructure>
      zeroInflation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:168,1
    - Dst: QuantLib::ZeroInflationIndex::pastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:170,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:170,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:171,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:172,1
    - Dst: QuantLib::ZeroInflationIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 166
    functionDepth: 3
    functionLinenumber: 166
    functionLinenumberEnd: 178
    functionName: QuantLib::ZeroInflationIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroInflationIndex::forecastFixing
    - QuantLib::ZeroInflationIndex::pastFixing
    - name
    - Null<Real>
    - inflationPeriod
    - QuantLib::ZeroInflationIndex::needsForecast
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ZeroInflationIndex::fixing(const Date& fixingDate,\n                                    bool
      /*forecastTodaysFixing*/) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:181,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: QuantLib::ZeroInflationIndex::pastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - timeSeries
    - inflationPeriod
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationIndex::pastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:188,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:190,1
    - Dst: lastDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: QuantLib::ZeroInflationIndex::lastFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - timeSeries
    - empty
    - name
    - inflationPeriod
    - lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date ZeroInflationIndex::lastFixingDate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:195,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:198,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:201,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:214,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 216
    functionName: QuantLib::ZeroInflationIndex::needsForecast
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 3
    functionsReached:
    - timeSeries
    - QuantLib::detail::instance
    - inflationPeriod
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool ZeroInflationIndex::needsForecast(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:222,1
    - Dst: QuantLib::ZeroInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:222,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:223,1
    - Dst: QuantLib::ZeroInflationIndex::fixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:224,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:226,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:229,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:229,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:230,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:230,1
    - Dst: std::pow
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 233
    functionName: QuantLib::ZeroInflationIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - zeroRate
    - inflationYearFraction
    - name
    - dayCounter
    - Period
    - inflationPeriod
    - QuantLib::ZeroInflationIndex::fixing
    - std::pow
    - QuantLib::ZeroInflationIndex::needsForecast
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<ZeroInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<ZeroInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 240
    functionName: QuantLib::ZeroInflationIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: "ext::shared_ptr<ZeroInflationIndex> ZeroInflationIndex::clone(\n                          const
      Handle<ZeroInflationTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:245,1
    - Dst: region
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:245,1
    - Dst: revised
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:246,1
    - Dst: frequency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:246,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:247,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:247,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:249,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:250,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' underlyingIndex'
    - yoyInflation
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 252
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - region
    - familyName
    - availabilityLag
    - std::move
    - registerWith
    - currency
    - frequency
    - revised
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const ext::shared_ptr<ZeroInflationIndex>&
      underlyingIndex,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' underlyingIndex'
    - interpolated
    - yoyInflation
    argTypes:
    - ext::shared_ptr<ZeroInflationIndex>
    - bool
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 259
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const ext::shared_ptr<ZeroInflationIndex>&
      underlyingIndex,\n                                         bool interpolated,\n
      \                                        Handle<YoYInflationTermStructure> yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:269,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - frequency
    - ' availabilityLag'
    - ' currency'
    - yoyInflation
    argTypes:
    - std::string
    - Region
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const std::string& familyName,\n
      \                                        const Region& region,\n                                         bool
      revised,\n                                         Frequency frequency,\n                                         const
      Period& availabilityLag,\n                                         const Currency&
      currency,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' familyName'
    - ' region'
    - revised
    - interpolated
    - frequency
    - ' availabilityLag'
    - ' currency'
    - yoyInflation
    argTypes:
    - std::string
    - Region
    - bool
    - bool
    - Frequency
    - Period
    - Currency
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 283
    functionName: QuantLib::YoYInflationIndex::YoYInflationIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationIndex::YoYInflationIndex(const std::string& familyName,\n
      \                                        const Region& region,\n                                         bool
      revised,\n                                         bool interpolated,\n                                         Frequency
      frequency,\n                                         const Period& availabilityLag,\n
      \                                        const Currency& currency,\n                                         Handle<YoYInflationTermStructure>
      yoyInflation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:288,1
    - Dst: QuantLib::YoYInflationIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:289,1
    - Dst: QuantLib::YoYInflationIndex::pastFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 286
    functionDepth: 3
    functionLinenumber: 286
    functionLinenumberEnd: 293
    functionName: QuantLib::YoYInflationIndex::fixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationIndex::forecastFixing
    - QuantLib::YoYInflationIndex::needsForecast
    - QuantLib::YoYInflationIndex::pastFixing
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYInflationIndex::fixing(const Date& fixingDate,\n                                   bool
      /*forecastTodaysFixing*/) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:296,1
    - Dst: QuantLib::YoYInflationIndex::lastFixingDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:297,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:300,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:302,1
    - Dst: lastDate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 304
    functionName: QuantLib::YoYInflationIndex::lastFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - timeSeries
    - QuantLib::YoYInflationIndex::lastFixingDate
    - lastDate
    - empty
    - name
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date YoYInflationIndex::lastFixingDate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:307,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:309,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:311,1
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:316,1
    - Dst: QuantLib::YoYInflationIndex::needsForecast
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:317,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:320,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:331,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:332,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 335
    functionName: QuantLib::YoYInflationIndex::needsForecast
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 4
    functionsReached:
    - timeSeries
    - QuantLib::YoYInflationIndex::needsForecast
    - QuantLib::YoYInflationIndex::interpolated
    - Null<Real>
    - QuantLib::detail::instance
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::needsForecast(const Date& fixingDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::ratio
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:338,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:340,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:342,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:342,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:343,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:343,1
    - Dst: timeSeries
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:349,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:353,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:353,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:354,1
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:356,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:365,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:365,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:366,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 371
    functionName: QuantLib::YoYInflationIndex::pastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - timeSeries
    - name
    - Null<Rate>
    - QuantLib::YoYInflationIndex::interpolated
    - Period
    - QuantLib::CPI::laggedFixing
    - inflationPeriod
    - QuantLib::YoYInflationIndex::ratio
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationIndex::pastFixing(const Date& fixingDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationIndex::interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:376,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:381,1
    - Dst: yoyRate
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:384,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 385
    functionName: QuantLib::YoYInflationIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYInflationIndex::interpolated
    - inflationPeriod
    - yoyRate
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:392,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:393,1
    - Dst: return ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:396,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YoYInflationTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: QuantLib::YoYInflationIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - YoYInflationIndex::YoYInflationIndex
    - ext::shared_ptr<YoYInflationIndex>
    - return ext::shared_ptr<YoYInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: "ext::shared_ptr<YoYInflationIndex> YoYInflationIndex::clone(\n                           const
      Handle<YoYInflationTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<YoYInflationIndex>
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:392,1
    - Dst: YoYInflationIndex::YoYInflationIndex
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::if
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - YoYInflationIndex::YoYInflationIndex
    - ext::shared_ptr<YoYInflationIndex>
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING if (ratio_)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - QuantLib::CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 412
    functionName: detail::CPI::effectiveInterpolationType(const QuantLib::CPI::InterpolationType&
      type)
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType detail::CPI::effectiveInterpolationType(const
      QuantLib::CPI::InterpolationType& type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: interpolated
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' type'
    - ' index'
    argTypes:
    - QuantLib::CPI::InterpolationType
    - ext::shared_ptr<YoYInflationIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 414
    functionDepth: 0
    functionLinenumber: 414
    functionLinenumberEnd: 422
    functionName: "detail::CPI::effectiveInterpolationType(const QuantLib::CPI::InterpolationType&
      type,\n                                            const ext::shared_ptr<YoYInflationIndex>&
      index)"
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - interpolated
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: "CPI::InterpolationType detail::CPI::effectiveInterpolationType(const
      QuantLib::CPI::InterpolationType& type,\n                                            const
      ext::shared_ptr<YoYInflationIndex>& index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::CPI::effectiveInterpolationType
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - QuantLib::CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionName: detail::CPI::isInterpolated(const QuantLib::CPI::InterpolationType&
      type)
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - detail::CPI::effectiveInterpolationType
    linkageType: ''
    returnType: bool
    signature: bool detail::CPI::isInterpolated(const QuantLib::CPI::InterpolationType&
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::CPI::effectiveInterpolationType
      Src: /src/quantlib/ql/indexes/inflationindex.cpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' type'
    - ' index'
    argTypes:
    - QuantLib::CPI::InterpolationType
    - ext::shared_ptr<YoYInflationIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 431
    functionName: "detail::CPI::isInterpolated(const QuantLib::CPI::InterpolationType&
      type,\n                                     const ext::shared_ptr<YoYInflationIndex>&
      index)"
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.cpp
    functionUses: 0
    functionsReached:
    - detail::CPI::effectiveInterpolationType
    linkageType: ''
    returnType: bool
    signature: "bool detail::CPI::isInterpolated(const QuantLib::CPI::InterpolationType&
      type,\n                                     const ext::shared_ptr<YoYInflationIndex>&
      index)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::IndexManager::IndexManager
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IndexManager()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lexicographical_compare
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' s1'
    - ' s2'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: operator()(const std::string& s1, const std::string& s2) const
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached:
    - std::toupper
    - std::lexicographical_compare
    - begin
    - static_cast<unsigned char>
    - end
    linkageType: ''
    returnType: bool
    signature: bool operator()(const std::string& s1, const std::string& s2) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:117,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:119,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:121,1
    - Dst: close
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:127,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:147,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - ' name'
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - std::string
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 151
    functionName: QuantLib::IndexManager::addFixings
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached:
    - close
    - isValidFixingDate
    - Null<Real>
    - Date::weekday
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void addFixings(const std::string& name,\n                        DateIterator
      dBegin,\n                        DateIterator dEnd,\n                        ValueIterator
      vBegin,\n                        bool forceOverwrite = false,\n                        const
      std::function<bool(const Date& d)>& isValidFixingDate = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::IndexManager::IndexManager
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IndexManager()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lexicographical_compare
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:92,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' s1'
    - ' s2'
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: operator()(const std::string& s1, const std::string& s2) const
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached:
    - std::toupper
    - std::lexicographical_compare
    - begin
    - static_cast<unsigned char>
    - end
    linkageType: ''
    returnType: bool
    signature: bool operator()(const std::string& s1, const std::string& s2) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:117,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:119,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:121,1
    - Dst: close
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:127,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/indexmanager.hpp:147,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - ' name'
    - dBegin
    - dEnd
    - vBegin
    argTypes:
    - std::string
    - DateIterator
    - DateIterator
    - ValueIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 151
    functionName: QuantLib::IndexManager::addFixings
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.hpp
    functionUses: 0
    functionsReached:
    - close
    - isValidFixingDate
    - Null<Real>
    - Date::weekday
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void addFixings(const std::string& name,\n                        DateIterator
      dBegin,\n                        DateIterator dEnd,\n                        ValueIterator
      vBegin,\n                        bool forceOverwrite = false,\n                        const
      std::function<bool(const Date& d)>& isValidFixingDate = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/iborindex.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/iborindex.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - h
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::IborIndex::IborIndex
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IborIndex::IborIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        BusinessDayConvention convention,\n                         bool
      endOfMonth,\n                         const DayCounter& dayCounter,\n                         Handle<YieldTermStructure>
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/iborindex.cpp:43,1
    - Dst: QuantLib::IborIndex::maturityDate
      Src: /src/quantlib/ql/indexes/iborindex.cpp:44,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/indexes/iborindex.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/iborindex.cpp:46,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/iborindex.cpp:50,1
    - Dst: QuantLib::IborIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/iborindex.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::IborIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 1
    functionsReached:
    - yearFraction
    - name
    - QuantLib::IborIndex::maturityDate
    - valueDate
    - QuantLib::IborIndex::forecastFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IborIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: QuantLib::IborIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 1
    functionsReached:
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date IborIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/indexes/iborindex.cpp:63,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/iborindex.cpp:64,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/iborindex.cpp:65,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/iborindex.cpp:66,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/iborindex.cpp:67,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:68,1
    - Dst: QuantLib::IborIndex::businessDayConvention
      Src: /src/quantlib/ql/indexes/iborindex.cpp:69,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/indexes/iborindex.cpp:70,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/iborindex.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 73
    functionName: QuantLib::IborIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - ext::make_shared<IborIndex>
    - QuantLib::IborIndex::endOfMonth
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::IborIndex::businessDayConvention
    - currency
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> IborIndex::clone(\n                               const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' familyName'
    - settlementDays
    - ' curr'
    - ' fixCal'
    - ' dc'
    - ' h'
    argTypes:
    - std::string
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::OvernightIndex::OvernightIndex
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OvernightIndex::OvernightIndex(const std::string& familyName,\n
      \                                  Natural settlementDays,\n                                   const
      Currency& curr,\n                                   const Calendar& fixCal,\n
      \                                  const DayCounter& dc,\n                                   const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/iborindex.cpp:87,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/iborindex.cpp:88,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/iborindex.cpp:89,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/iborindex.cpp:90,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:91,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/iborindex.cpp:92,1
    - Dst: OvernightIndex::OvernightIndex
      Src: /src/quantlib/ql/indexes/iborindex.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::OvernightIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - familyName
    - fixingDays
    - dayCounter
    - currency
    - fixingCalendar
    - OvernightIndex::OvernightIndex
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> OvernightIndex::clone(\n                               const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/iborindex.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/iborindex.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - h
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::IborIndex::IborIndex
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IborIndex::IborIndex(const std::string& familyName,\n                         const
      Period& tenor,\n                         Natural settlementDays,\n                         const
      Currency& currency,\n                         const Calendar& fixingCalendar,\n
      \                        BusinessDayConvention convention,\n                         bool
      endOfMonth,\n                         const DayCounter& dayCounter,\n                         Handle<YieldTermStructure>
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: valueDate
      Src: /src/quantlib/ql/indexes/iborindex.cpp:43,1
    - Dst: QuantLib::IborIndex::maturityDate
      Src: /src/quantlib/ql/indexes/iborindex.cpp:44,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/indexes/iborindex.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/iborindex.cpp:46,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/iborindex.cpp:50,1
    - Dst: QuantLib::IborIndex::forecastFixing
      Src: /src/quantlib/ql/indexes/iborindex.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::IborIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 2
    functionsReached:
    - yearFraction
    - name
    - QuantLib::IborIndex::maturityDate
    - valueDate
    - QuantLib::IborIndex::forecastFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IborIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: QuantLib::IborIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 2
    functionsReached:
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date IborIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/indexes/iborindex.cpp:63,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/iborindex.cpp:64,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/iborindex.cpp:65,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/iborindex.cpp:66,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/iborindex.cpp:67,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:68,1
    - Dst: QuantLib::IborIndex::businessDayConvention
      Src: /src/quantlib/ql/indexes/iborindex.cpp:69,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/indexes/iborindex.cpp:70,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/iborindex.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 73
    functionName: QuantLib::IborIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - ext::make_shared<IborIndex>
    - QuantLib::IborIndex::endOfMonth
    - dayCounter
    - familyName
    - fixingDays
    - QuantLib::IborIndex::businessDayConvention
    - currency
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> IborIndex::clone(\n                               const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' familyName'
    - settlementDays
    - ' curr'
    - ' fixCal'
    - ' dc'
    - ' h'
    argTypes:
    - std::string
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::OvernightIndex::OvernightIndex
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OvernightIndex::OvernightIndex(const std::string& familyName,\n
      \                                  Natural settlementDays,\n                                   const
      Currency& curr,\n                                   const Calendar& fixCal,\n
      \                                  const DayCounter& dc,\n                                   const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/iborindex.cpp:87,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/iborindex.cpp:88,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/iborindex.cpp:89,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/iborindex.cpp:90,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/iborindex.cpp:91,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/iborindex.cpp:92,1
    - Dst: OvernightIndex::OvernightIndex
      Src: /src/quantlib/ql/indexes/iborindex.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::OvernightIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - familyName
    - fixingDays
    - dayCounter
    - currency
    - fixingCalendar
    - OvernightIndex::OvernightIndex
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> OvernightIndex::clone(\n                               const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::InflationIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isValidFixingDate(const Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: QuantLib::InflationIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InflationIndex::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionName: QuantLib::InflationIndex::familyName
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InflationIndex::familyName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: QuantLib::InflationIndex::region
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Region
    signature: Region InflationIndex::region() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionName: QuantLib::InflationIndex::revised
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool InflationIndex::revised() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionName: QuantLib::InflationIndex::frequency
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency InflationIndex::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::InflationIndex::availabilityLag
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period InflationIndex::availabilityLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: QuantLib::InflationIndex::currency
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency InflationIndex::currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: QuantLib::ZeroInflationIndex::zeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<ZeroInflationTermStructure>
    signature: Handle<ZeroInflationTermStructure> ZeroInflationIndex::zeroInflationTermStructure()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 330
    functionName: QuantLib::YoYInflationIndex::interpolated
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::interpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionName: QuantLib::YoYInflationIndex::ratio
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::ratio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionName: QuantLib::YoYInflationIndex::underlyingIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> YoYInflationIndex::underlyingIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: QuantLib::YoYInflationIndex::yoyInflationTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYInflationTermStructure>
    signature: Handle<YoYInflationTermStructure> YoYInflationIndex::yoyInflationTermStructure()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::InflationIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isValidFixingDate(const Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: QuantLib::InflationIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InflationIndex::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionName: QuantLib::InflationIndex::familyName
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InflationIndex::familyName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: QuantLib::InflationIndex::region
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Region
    signature: Region InflationIndex::region() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionName: QuantLib::InflationIndex::revised
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool InflationIndex::revised() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionName: QuantLib::InflationIndex::frequency
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency InflationIndex::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::InflationIndex::availabilityLag
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period InflationIndex::availabilityLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: QuantLib::InflationIndex::currency
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency InflationIndex::currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: QuantLib::ZeroInflationIndex::zeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<ZeroInflationTermStructure>
    signature: Handle<ZeroInflationTermStructure> ZeroInflationIndex::zeroInflationTermStructure()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 330
    functionName: QuantLib::YoYInflationIndex::interpolated
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::interpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionName: QuantLib::YoYInflationIndex::ratio
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationIndex::ratio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionName: QuantLib::YoYInflationIndex::underlyingIndex
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> YoYInflationIndex::underlyingIndex()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: QuantLib::YoYInflationIndex::yoyInflationTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/inflationindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYInflationTermStructure>
    signature: Handle<YoYInflationTermStructure> YoYInflationIndex::yoyInflationTermStructure()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::IborIndex::endOfMonth
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool endOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::IborIndex::businessDayConvention
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention IborIndex::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::IborIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> IborIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/iborindex.hpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/iborindex.hpp:115,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/iborindex.hpp:116,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/iborindex.hpp:117,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/iborindex.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d1'
    - ' d2'
    - t
    argTypes:
    - Date
    - Date
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::IborIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached:
    - discount
    - name
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate IborIndex::forecastFixing(const Date& d1,\n                                          const
      Date& d2,\n                                          Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::IborIndex::endOfMonth
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool endOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::IborIndex::businessDayConvention
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention IborIndex::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::IborIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> IborIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/iborindex.hpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/iborindex.hpp:115,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/iborindex.hpp:116,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/iborindex.hpp:117,1
    - Dst: discount
      Src: /src/quantlib/ql/indexes/iborindex.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d1'
    - ' d2'
    - t
    argTypes:
    - Date
    - Date
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: QuantLib::IborIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/iborindex.hpp
    functionUses: 2
    functionsReached:
    - discount
    - name
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate IborIndex::forecastFixing(const Date& d1,\n                                          const
      Date& d2,\n                                          Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:25,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::IndexManager::hasHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool IndexManager::hasHistory(const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: '& IndexManager::getHistory(const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: TimeSeries<Real> & IndexManager::getHistory(const std::string& name)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - history
    argTypes:
    - std::string
    - TimeSeries<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::IndexManager::setHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void IndexManager::setHistory(const std::string& name, TimeSeries<Real>
      history)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexManager::addFixings
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' name'
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - std::string
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::IndexManager::addFixing
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexManager::addFixings
    linkageType: ''
    returnType: void
    signature: "void IndexManager::addFixing(const std::string& name,\n                                 const
      Date& fixingDate,\n                                 Real fixing,\n                                 bool
      forceOverwrite)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:48,1
    - Dst: ext::make_shared<Observable>
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 53
    functionName: QuantLib::IndexManager::notifier
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Observable>
    - end
    - find
    linkageType: ''
    returnType: ext::shared_ptr<Observable>
    signature: ext::shared_ptr<Observable> IndexManager::notifier(const std::string&
      name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:57,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::IndexManager::histories
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> IndexManager::histories() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: QuantLib::IndexManager::clearHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IndexManager::clearHistory(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexManager::notifier
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 76
    functionName: QuantLib::IndexManager::clearHistories
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexManager::notifier
    linkageType: ''
    returnType: void
    signature: void IndexManager::clearHistories()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' fixingDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::IndexManager::hasHistoricalFixing
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool IndexManager::hasHistoricalFixing(const std::string& name, const
      Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:25,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::IndexManager::hasHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool IndexManager::hasHistory(const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: '& IndexManager::getHistory(const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeSeries<Real>
    signature: TimeSeries<Real> & IndexManager::getHistory(const std::string& name)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - history
    argTypes:
    - std::string
    - TimeSeries<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::IndexManager::setHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void IndexManager::setHistory(const std::string& name, TimeSeries<Real>
      history)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexManager::addFixings
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' name'
    - ' fixingDate'
    - fixing
    - forceOverwrite
    argTypes:
    - std::string
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::IndexManager::addFixing
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexManager::addFixings
    linkageType: ''
    returnType: void
    signature: "void IndexManager::addFixing(const std::string& name,\n                                 const
      Date& fixingDate,\n                                 Real fixing,\n                                 bool
      forceOverwrite)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:48,1
    - Dst: ext::make_shared<Observable>
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 53
    functionName: QuantLib::IndexManager::notifier
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<Observable>
    - end
    - find
    linkageType: ''
    returnType: ext::shared_ptr<Observable>
    signature: ext::shared_ptr<Observable> IndexManager::notifier(const std::string&
      name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:57,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::IndexManager::histories
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> IndexManager::histories() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: QuantLib::IndexManager::clearHistory
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IndexManager::clearHistory(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexManager::notifier
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 76
    functionName: QuantLib::IndexManager::clearHistories
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexManager::notifier
    linkageType: ''
    returnType: void
    signature: void IndexManager::clearHistories()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:79,1
    - Dst: end
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/indexes/indexmanager.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' fixingDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::IndexManager::hasHistoricalFixing
    functionSourceFile: /src/quantlib/ql/indexes/indexmanager.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool IndexManager::hasHistoricalFixing(const std::string& name, const
      Date& fixingDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::previousWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - weekday
    linkageType: ''
    returnType: Date
    signature: Date previousWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::nextWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::previousWednesday
    linkageType: ''
    returnType: Date
    signature: Date nextWednesday(const Date& date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::previousWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 1
    functionsReached:
    - weekday
    linkageType: ''
    returnType: Date
    signature: Date previousWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::nextWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::previousWednesday
    linkageType: ''
    returnType: Date
    signature: Date nextWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:47,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:48,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - h
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::BMAIndex::BMAIndex
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ActualActual
    - std::move
    - UnitedStates
    - registerWith
    linkageType: ''
    returnType: void
    signature: void BMAIndex::BMAIndex(Handle<YieldTermStructure> h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:55,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:59,1
    - Dst: Calendar::isBusinessDay
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:60,1
    - Dst: Calendar::isBusinessDay
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::BMAIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - previousWednesday
    - fixingCalendar
    - Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool BMAIndex::isValidFixingDate(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::BMAIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> BMAIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:72,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:73,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:74,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: QuantLib::BMAIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - previousWednesday
    - Calendar::advance
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date BMAIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:79,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:79,1
    - Dst: nextWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:80,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::BMAIndex::fixingSchedule
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - MakeSchedule
    - fixingCalendar
    - nextWednesday
    - previousWednesday
    linkageType: ''
    returnType: Schedule
    signature: Schedule BMAIndex::fixingSchedule(const Date& start, const Date& end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:88,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:89,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:90,1
    - Dst: QuantLib::BMAIndex::maturityDate
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:91,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: QuantLib::BMAIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - empty
    - name
    - QuantLib::BMAIndex::maturityDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate BMAIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::previousWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 2
    functionsReached:
    - weekday
    linkageType: ''
    returnType: Date
    signature: Date previousWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::nextWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::previousWednesday
    linkageType: ''
    returnType: Date
    signature: Date nextWednesday(const Date& date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::previousWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 3
    functionsReached:
    - weekday
    linkageType: ''
    returnType: Date
    signature: Date previousWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::nextWednesday
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::previousWednesday
    linkageType: ''
    returnType: Date
    signature: Date nextWednesday(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:47,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:48,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - h
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::BMAIndex::BMAIndex
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ActualActual
    - std::move
    - UnitedStates
    - registerWith
    linkageType: ''
    returnType: void
    signature: void BMAIndex::BMAIndex(Handle<YieldTermStructure> h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:55,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:59,1
    - Dst: Calendar::isBusinessDay
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:60,1
    - Dst: Calendar::isBusinessDay
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: QuantLib::BMAIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - previousWednesday
    - fixingCalendar
    - Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool BMAIndex::isValidFixingDate(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::BMAIndex::forwardingTermStructure
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> BMAIndex::forwardingTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:72,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:73,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:74,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: QuantLib::BMAIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 1
    functionsReached:
    - previousWednesday
    - Calendar::advance
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date BMAIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:79,1
    - Dst: previousWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:79,1
    - Dst: nextWednesday
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:80,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::BMAIndex::fixingSchedule
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - MakeSchedule
    - fixingCalendar
    - nextWednesday
    - previousWednesday
    linkageType: ''
    returnType: Schedule
    signature: Schedule BMAIndex::fixingSchedule(const Date& start, const Date& end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:88,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:89,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:90,1
    - Dst: QuantLib::BMAIndex::maturityDate
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:91,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/indexes/bmaindex.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: QuantLib::BMAIndex::forecastFixing
    functionSourceFile: /src/quantlib/ql/indexes/bmaindex.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - empty
    - name
    - QuantLib::BMAIndex::maturityDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate BMAIndex::forecastFixing(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Region::Region
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Region()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/region.hpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/region.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - code
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Data
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::string name, std::string code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: '& Region::name() const'
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & Region::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: '& Region::code() const'
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & Region::code() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:122,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - Region
    - Region
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: operator==(const Region& r1, const Region& r2)
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Region& r1, const Region& r2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:126,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - Region
    - Region
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: operator!=(const Region& r1, const Region& r2)
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Region& r1, const Region& r2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::Region::Region
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Region()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/region.hpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/region.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - code
    argTypes:
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Data
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Data(std::string name, std::string code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: '& Region::name() const'
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & Region::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: '& Region::code() const'
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & Region::code() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:122,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - Region
    - Region
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: operator==(const Region& r1, const Region& r2)
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Region& r1, const Region& r2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:126,1
    - Dst: name
      Src: /src/quantlib/ql/indexes/region.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r1'
    - ' r2'
    argTypes:
    - Region
    - Region
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: operator!=(const Region& r1, const Region& r2)
    functionSourceFile: /src/quantlib/ql/indexes/region.hpp
    functionUses: 0
    functionsReached:
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Region& r1, const Region& r2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::InterestRateIndex::familyName
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string familyName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::InterestRateIndex::tenor
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::InterestRateIndex::fixingDays
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::InterestRateIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InterestRateIndex::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::InterestRateIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterestRateIndex::fixingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::InterestRateIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterestRateIndex::fixingCalendar
    linkageType: ''
    returnType: bool
    signature: bool InterestRateIndex::isValidFixingDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:105,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::InterestRateIndex::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - QuantLib::InterestRateIndex::fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date InterestRateIndex::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:111,1
    - Dst: QuantLib::InterestRateIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:111,1
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::InterestRateIndex::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::fixingCalendar
    - QuantLib::InterestRateIndex::isValidFixingDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date InterestRateIndex::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::InterestRateIndex::familyName
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string familyName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::InterestRateIndex::tenor
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::InterestRateIndex::fixingDays
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::InterestRateIndex::name
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string InterestRateIndex::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::InterestRateIndex::fixingCalendar
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterestRateIndex::fixingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::InterestRateIndex::isValidFixingDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterestRateIndex::fixingCalendar
    linkageType: ''
    returnType: bool
    signature: bool InterestRateIndex::isValidFixingDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:105,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::InterestRateIndex::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - QuantLib::InterestRateIndex::fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date InterestRateIndex::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:111,1
    - Dst: QuantLib::InterestRateIndex::isValidFixingDate
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:111,1
    - Dst: QuantLib::InterestRateIndex::fixingCalendar
      Src: /src/quantlib/ql/indexes/interestrateindex.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::InterestRateIndex::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/interestrateindex.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateIndex::fixingCalendar
    - QuantLib::InterestRateIndex::isValidFixingDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date InterestRateIndex::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AustraliaRegion
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:40,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:40,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - frequency
    - revised
    argTypes:
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionName: AUCPI::AUCPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/aucpi.hpp
    functionUses: 0
    functionsReached:
    - AustraliaRegion
    - AUDCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: "void AUCPI(Frequency frequency,\n              bool revised,\n              const
      Handle<ZeroInflationTermStructure>& ts = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AustraliaRegion
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:51,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:54,1
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/inflation/aucpi.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - frequency
    - revised
    argTypes:
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: YYAUCPI::YYAUCPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/aucpi.hpp
    functionUses: 0
    functionsReached:
    - AustraliaRegion
    - AUDCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: "void YYAUCPI(Frequency frequency,\n                bool revised,\n
      \               const Handle<YoYInflationTermStructure>& ts = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USRegion
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:41,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: USCPI::USCPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/uscpi.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - USRegion
    - Period
    linkageType: ''
    returnType: void
    signature: void USCPI(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USRegion
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:52,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:55,1
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/inflation/uscpi.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: YYUSCPI::YYUSCPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/uscpi.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - USRegion
    - Period
    linkageType: ''
    returnType: void
    signature: void YYUSCPI(const Handle<YoYInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UKRegion
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:38,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: UKRPI::UKRPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/ukrpi.hpp
    functionUses: 0
    functionsReached:
    - UKRegion
    - GBPCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: void UKRPI(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UKRegion
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:47,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:50,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/inflation/ukrpi.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: YYUKRPI::YYUKRPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/ukrpi.hpp
    functionUses: 0
    functionsReached:
    - UKRegion
    - GBPCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: void YYUKRPI(const Handle<YoYInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UKRegion
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::UKHICP::UKHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/ukhicp.hpp
    functionUses: 0
    functionsReached:
    - UKRegion
    - GBPCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: void UKHICP(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UKRegion
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/inflation/ukhicp.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::UKHICP::UKHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/ukhicp.hpp
    functionUses: 0
    functionsReached:
    - UKRegion
    - GBPCurrency
    - Period
    linkageType: ''
    returnType: void
    signature: void UKHICP(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FranceRegion
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:38,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: FRHICP::FRHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/frhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - FranceRegion
    - Period
    linkageType: ''
    returnType: void
    signature: void FRHICP(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FranceRegion
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:47,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:50,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/frhicp.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: YYFRHICP::YYFRHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/frhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - FranceRegion
    - Period
    linkageType: ''
    returnType: void
    signature: void YYFRHICP(const Handle<YoYInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZARegion
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:38,1
    - Dst: ZARCurrency
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: ZACPI::ZACPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/zacpi.hpp
    functionUses: 0
    functionsReached:
    - ZARCurrency
    - ZARegion
    - Period
    linkageType: ''
    returnType: void
    signature: void ZACPI(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZARegion
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:48,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:51,1
    - Dst: ZARCurrency
      Src: /src/quantlib/ql/indexes/inflation/zacpi.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 53
    functionName: YYZACPI::YYZACPI
    functionSourceFile: /src/quantlib/ql/indexes/inflation/zacpi.hpp
    functionUses: 0
    functionsReached:
    - ZARCurrency
    - ZARegion
    - Period
    linkageType: ''
    returnType: void
    signature: "void YYZACPI(\n            const Handle<YoYInflationTermStructure>&
      ts = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURegion
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:39,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:42,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: EUHICP::EUHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/euhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Period
    - EURegion
    linkageType: ''
    returnType: void
    signature: void EUHICP(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURegion
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:52,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:55,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: EUHICPXT::EUHICPXT
    functionSourceFile: /src/quantlib/ql/indexes/inflation/euhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Period
    - EURegion
    linkageType: ''
    returnType: void
    signature: void EUHICPXT(const Handle<ZeroInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURegion
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:66,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:69,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 71
    functionName: YYEUHICP
    functionSourceFile: /src/quantlib/ql/indexes/inflation/euhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Period
    - EURegion
    linkageType: ''
    returnType: void
    signature: void YYEUHICP(const Handle<YoYInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURegion
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:99,1
    - Dst: Period
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:102,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/inflation/euhicp.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: YYEUHICPXT::YYEUHICPXT
    functionSourceFile: /src/quantlib/ql/indexes/inflation/euhicp.hpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Period
    - EURegion
    linkageType: ''
    returnType: void
    signature: void YYEUHICPXT(const Handle<YoYInflationTermStructure>& ts = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:45,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:48,1
    - Dst: QuantLib::Bkbm::tenor
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:48,1
    - Dst: QuantLib::Bkbm::tenor
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: QuantLib::Bkbm::Bkbm
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - NZDCurrency
    - Actual365Fixed
    - NewZealand
    - QuantLib::Bkbm::tenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bkbm(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: QuantLib::Bkbm1M::Bkbm1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Bkbm2M::Bkbm2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Bkbm3M::Bkbm3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Bkbm4M::Bkbm4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::Bkbm5M::Bkbm5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::Bkbm6M::Bkbm6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:45,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:48,1
    - Dst: QuantLib::Bkbm::tenor
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:48,1
    - Dst: QuantLib::Bkbm::tenor
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: QuantLib::Bkbm::Bkbm
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - NZDCurrency
    - Actual365Fixed
    - NewZealand
    - QuantLib::Bkbm::tenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bkbm(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: QuantLib::Bkbm1M::Bkbm1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Bkbm2M::Bkbm2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Bkbm3M::Bkbm3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Bkbm4M::Bkbm4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::Bkbm5M::Bkbm5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bkbm.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::Bkbm6M::Bkbm6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bkbm.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bkbm6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::CustomIborIndex::valueCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar valueCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::CustomIborIndex::maturityCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar maturityCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::CustomIborIndex::valueCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar valueCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::CustomIborIndex::maturityCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar maturityCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:48,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:49,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::USDLibor::USDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void USDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:59,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:60,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 61
    functionName: QuantLib::DailyTenorUSDLibor::DailyTenorUSDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorUSDLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::USDLiborON::USDLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void USDLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:48,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:49,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::USDLibor::USDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void USDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:59,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:60,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/usdlibor.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 61
    functionName: QuantLib::DailyTenorUSDLibor::DailyTenorUSDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorUSDLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::USDLiborON::USDLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/usdlibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void USDLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:50,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:51,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::JPYLibor::JPYLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jpylibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void JPYLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:61,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:62,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: QuantLib::DailyTenorJPYLibor::DailyTenorJPYLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jpylibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorJPYLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:50,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:51,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: QuantLib::JPYLibor::JPYLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jpylibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void JPYLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:61,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:62,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/jpylibor.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: QuantLib::DailyTenorJPYLibor::DailyTenorJPYLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jpylibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorJPYLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:47,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:48,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Zibor::Zibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/zibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Zibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:47,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:48,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/zibor.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Zibor::Zibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/zibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Zibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:46,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: QuantLib::GBPLibor::GBPLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GBPLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:57,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:58,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: QuantLib::DailyTenorGBPLibor::DailyTenorGBPLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void DailyTenorGBPLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::GBPLiborON::GBPLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GBPLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:46,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: QuantLib::GBPLibor::GBPLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GBPLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:57,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:58,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/gbplibor.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: QuantLib::DailyTenorGBPLibor::DailyTenorGBPLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void DailyTenorGBPLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::GBPLiborON::GBPLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/gbplibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GBPLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::EURLiborON::EURLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EURLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::EURLiborSW::EURLiborSW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLiborSW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: QuantLib::EURLibor2W::EURLibor2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::EURLibor1M::EURLibor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: QuantLib::EURLibor2M::EURLibor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: QuantLib::EURLibor3M::EURLibor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: QuantLib::EURLibor4M::EURLibor4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: QuantLib::EURLibor5M::EURLibor5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::EURLibor6M::EURLibor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: QuantLib::EURLibor7M::EURLibor7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: QuantLib::EURLibor8M::EURLibor8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: QuantLib::EURLibor9M::EURLibor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 184
    functionName: QuantLib::EURLibor10M::EURLibor10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: QuantLib::EURLibor11M::EURLibor11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: QuantLib::EURLibor1Y::EURLibor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::EURLiborON::EURLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EURLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: QuantLib::EURLiborSW::EURLiborSW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLiborSW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: QuantLib::EURLibor2W::EURLibor2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: QuantLib::EURLibor1M::EURLibor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: QuantLib::EURLibor2M::EURLibor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: QuantLib::EURLibor3M::EURLibor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: QuantLib::EURLibor4M::EURLibor4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: QuantLib::EURLibor5M::EURLibor5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::EURLibor6M::EURLibor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: QuantLib::EURLibor7M::EURLibor7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: QuantLib::EURLibor8M::EURLibor8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: QuantLib::EURLibor9M::EURLibor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 184
    functionName: QuantLib::EURLibor10M::EURLibor10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: QuantLib::EURLibor11M::EURLibor11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.hpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: QuantLib::EURLibor1Y::EURLibor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void EURLibor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:28,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:29,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Sofr::Sofr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/sofr.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Sofr::Sofr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:28,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:29,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/sofr.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Sofr::Sofr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/sofr.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Sofr::Sofr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Saron::Saron
    functionSourceFile: /src/quantlib/ql/indexes/ibor/saron.cpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Saron::Saron(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/saron.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Saron::Saron
    functionSourceFile: /src/quantlib/ql/indexes/ibor/saron.cpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Saron::Saron(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DKKCurrency
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:44,1
    - Dst: Denmark
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::DKKLibor::DKKLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/dkklibor.hpp
    functionUses: 0
    functionsReached:
    - DKKCurrency
    - Denmark
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DKKLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DKKCurrency
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:44,1
    - Dst: Denmark
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/dkklibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::DKKLibor::DKKLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/dkklibor.hpp
    functionUses: 0
    functionsReached:
    - DKKCurrency
    - Denmark
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DKKLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZARCurrency
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:44,1
    - Dst: SouthAfrica
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::Jibar::Jibar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jibar.hpp
    functionUses: 0
    functionsReached:
    - ZARCurrency
    - SouthAfrica
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Jibar(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZARCurrency
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:44,1
    - Dst: SouthAfrica
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/jibar.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::Jibar::Jibar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/jibar.hpp
    functionUses: 0
    functionsReached:
    - ZARCurrency
    - SouthAfrica
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Jibar(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:42,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Tona::Tona
    functionSourceFile: /src/quantlib/ql/indexes/ibor/tona.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Tona(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:42,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/tona.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Tona::Tona
    functionSourceFile: /src/quantlib/ql/indexes/ibor/tona.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Tona(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CZKCurrency
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:48,1
    - Dst: CzechRepublic
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:49,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::Pribor::Pribor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/pribor.hpp
    functionUses: 0
    functionsReached:
    - CZKCurrency
    - Actual360
    - CzechRepublic
    linkageType: ''
    returnType: void
    signature: "void Pribor(const Period& tenor,\n               const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CZKCurrency
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:48,1
    - Dst: CzechRepublic
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:49,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/pribor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::Pribor::Pribor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/pribor.hpp
    functionUses: 0
    functionsReached:
    - CZKCurrency
    - Actual360
    - CzechRepublic
    linkageType: ''
    returnType: void
    signature: "void Pribor(const Period& tenor,\n               const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::euriborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention euriborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::euriborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool euriborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::euriborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention euriborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::euriborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool euriborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:63,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:63,1
    - Dst: euriborConvention
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:64,1
    - Dst: euriborEOM
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:64,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:66,1
    - Dst: QuantLib::Euribor::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:66,1
    - Dst: QuantLib::Euribor::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: QuantLib::Euribor::Euribor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - EURCurrency
    - Actual360
    - euriborConvention
    - euriborEOM
    - QuantLib::Euribor::tenor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void Euribor::Euribor(const Period& tenor,\n                     const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:75,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:75,1
    - Dst: euriborConvention
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:76,1
    - Dst: euriborEOM
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:76,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:78,1
    - Dst: QuantLib::Euribor365::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:78,1
    - Dst: QuantLib::Euribor365::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionName: QuantLib::Euribor365::Euribor365
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Euribor365::tenor
    - EURCurrency
    - euriborConvention
    - euriborEOM
    - Actual365Fixed
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void Euribor365::Euribor365(const Period& tenor,\n                           const
      Handle<YieldTermStructure>& h)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::euriborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention euriborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::euriborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool euriborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::euriborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention euriborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::euriborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool euriborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:63,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:63,1
    - Dst: euriborConvention
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:64,1
    - Dst: euriborEOM
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:64,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:66,1
    - Dst: QuantLib::Euribor::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:66,1
    - Dst: QuantLib::Euribor::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: QuantLib::Euribor::Euribor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - EURCurrency
    - Actual360
    - euriborConvention
    - euriborEOM
    - QuantLib::Euribor::tenor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void Euribor::Euribor(const Period& tenor,\n                     const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:75,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:75,1
    - Dst: euriborConvention
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:76,1
    - Dst: euriborEOM
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:76,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:78,1
    - Dst: QuantLib::Euribor365::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:78,1
    - Dst: QuantLib::Euribor365::tenor
      Src: /src/quantlib/ql/indexes/ibor/euribor.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionName: QuantLib::Euribor365::Euribor365
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Euribor365::tenor
    - EURCurrency
    - euriborConvention
    - euriborEOM
    - Actual365Fixed
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void Euribor365::Euribor365(const Period& tenor,\n                           const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:48,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:49,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::Cdor::Cdor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cdor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Cdor(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:48,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:49,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cdor.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::Cdor::Cdor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cdor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Cdor(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:21,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - valueCalendar
    - maturityCalendar
    - convention
    - endOfMonth
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Calendar
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 21
    functionName: QuantLib::CustomIborIndex::CustomIborIndex
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CustomIborIndex::CustomIborIndex(const std::string& familyName,\n
      \                                    const Period& tenor,\n                                     Natural
      settlementDays,\n                                     const Currency& currency,\n
      \                                    const Calendar& fixingCalendar,\n                                     Calendar
      \ valueCalendar,\n                                     Calendar  maturityCalendar,\n
      \                                    BusinessDayConvention convention,\n                                     bool
      endOfMonth,\n                                     const DayCounter& dayCounter,\n
      \                                    const Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:24,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:25,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: QuantLib::CustomIborIndex::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - advance
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:31,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:31,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:34,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::CustomIborIndex::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - isValidFixingDate
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::CustomIborIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - advance
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CustomIborIndex>
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::CustomIborIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CustomIborIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> CustomIborIndex::clone(\n            const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:21,1
    - Dst: std::move
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' fixingCalendar'
    - valueCalendar
    - maturityCalendar
    - convention
    - endOfMonth
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - Calendar
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 21
    functionName: QuantLib::CustomIborIndex::CustomIborIndex
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CustomIborIndex::CustomIborIndex(const std::string& familyName,\n
      \                                    const Period& tenor,\n                                     Natural
      settlementDays,\n                                     const Currency& currency,\n
      \                                    const Calendar& fixingCalendar,\n                                     Calendar
      \ valueCalendar,\n                                     Calendar  maturityCalendar,\n
      \                                    BusinessDayConvention convention,\n                                     bool
      endOfMonth,\n                                     const DayCounter& dayCounter,\n
      \                                    const Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:24,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:25,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: QuantLib::CustomIborIndex::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - advance
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:31,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:31,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:34,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::CustomIborIndex::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - isValidFixingDate
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::CustomIborIndex::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - advance
    linkageType: ''
    returnType: Date
    signature: Date CustomIborIndex::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CustomIborIndex>
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:45,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/custom.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::CustomIborIndex::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/custom.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CustomIborIndex>
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> CustomIborIndex::clone(\n            const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::liborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention liborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::liborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool liborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::liborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention liborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::liborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool liborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:72,1
    - Dst: liborConvention
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:73,1
    - Dst: liborEOM
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:73,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:76,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:79,1
    - Dst: QuantLib::Libor::tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:79,1
    - Dst: QuantLib::Libor::tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:82,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' financialCenterCalendar'
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 84
    functionName: QuantLib::Libor::Libor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Libor::tenor
    - JointCalendar
    - liborEOM
    - EURCurrency
    - UnitedKingdom
    - liborConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Libor::Libor(const std::string& familyName,\n                 const
      Period& tenor,\n                 Natural settlementDays,\n                 const
      Currency& currency,\n                 const Calendar& financialCenterCalendar,\n
      \                const DayCounter& dayCounter,\n                 const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:88,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:88,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:98,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionName: QuantLib::Libor::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - isValidFixingDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Libor::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:111,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::Libor::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - advance
    linkageType: ''
    returnType: Date
    signature: Date Libor::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::Libor::jointCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar Libor::jointCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Libor>
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:121,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:121,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:122,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:123,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: QuantLib::Libor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - currency
    - ext::make_shared<Libor>
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> Libor::clone(\n                                  const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:143,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:143,1
    - Dst: liborConvention
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:146,1
    - Dst: liborEOM
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:148,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' familyName'
    - settlementDays
    - ' currency'
    - ' financialCenterCalendar'
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 150
    functionName: QuantLib::DailyTenorLibor::DailyTenorLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - JointCalendar
    - liborEOM
    - EURCurrency
    - UnitedKingdom
    - liborConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DailyTenorLibor::DailyTenorLibor(\n                 const std::string&
      familyName,\n                 Natural settlementDays,\n                 const
      Currency& currency,\n                 const Calendar& financialCenterCalendar,\n
      \                const DayCounter& dayCounter,\n                 const Handle<YieldTermStructure>&
      h)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::liborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention liborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::liborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool liborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::liborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention liborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:45,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionName: QuantLib::liborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool liborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:72,1
    - Dst: liborConvention
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:73,1
    - Dst: liborEOM
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:73,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:76,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:79,1
    - Dst: QuantLib::Libor::tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:79,1
    - Dst: QuantLib::Libor::tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:82,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' familyName'
    - ' tenor'
    - settlementDays
    - ' currency'
    - ' financialCenterCalendar'
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Period
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 84
    functionName: QuantLib::Libor::Libor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Libor::tenor
    - JointCalendar
    - liborEOM
    - EURCurrency
    - UnitedKingdom
    - liborConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Libor::Libor(const std::string& familyName,\n                 const
      Period& tenor,\n                 Natural settlementDays,\n                 const
      Currency& currency,\n                 const Calendar& financialCenterCalendar,\n
      \                const DayCounter& dayCounter,\n                 const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:88,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:88,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:98,1
    - Dst: adjust
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionName: QuantLib::Libor::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - adjust
    - isValidFixingDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date Libor::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:111,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 113
    functionName: QuantLib::Libor::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - advance
    linkageType: ''
    returnType: Date
    signature: Date Libor::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::Libor::jointCalendar
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar Libor::jointCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Libor>
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:121,1
    - Dst: familyName
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:121,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:122,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:123,1
    - Dst: currency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: QuantLib::Libor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - familyName
    - fixingDays
    - currency
    - ext::make_shared<Libor>
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> Libor::clone(\n                                  const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:143,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:143,1
    - Dst: liborConvention
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:146,1
    - Dst: liborEOM
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:148,1
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/libor.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' familyName'
    - settlementDays
    - ' currency'
    - ' financialCenterCalendar'
    - ' dayCounter'
    - ' h'
    argTypes:
    - std::string
    - Natural
    - Currency
    - Calendar
    - DayCounter
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 150
    functionName: QuantLib::DailyTenorLibor::DailyTenorLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/libor.cpp
    functionUses: 0
    functionsReached:
    - JointCalendar
    - liborEOM
    - EURCurrency
    - UnitedKingdom
    - liborConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DailyTenorLibor::DailyTenorLibor(\n                 const std::string&
      familyName,\n                 Natural settlementDays,\n                 const
      Currency& currency,\n                 const Calendar& financialCenterCalendar,\n
      \                const DayCounter& dayCounter,\n                 const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KRWCurrency
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    - Dst: SouthKorea
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::Kofr::Kofr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/kofr.cpp
    functionUses: 0
    functionsReached:
    - SouthKorea
    - KRWCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Kofr::Kofr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KRWCurrency
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    - Dst: SouthKorea
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/kofr.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::Kofr::Kofr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/kofr.cpp
    functionUses: 0
    functionsReached:
    - SouthKorea
    - KRWCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Kofr::Kofr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:28,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:29,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Sonia::Sonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/sonia.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Sonia::Sonia(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:28,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:29,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/sonia.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::Sonia::Sonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/sonia.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Sonia::Sonia(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:51,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:52,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: QuantLib::CADLibor::CADLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cadlibor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void CADLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:62,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:63,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: QuantLib::CADLiborON::CADLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cadlibor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void CADLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:51,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:52,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: QuantLib::CADLibor::CADLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cadlibor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void CADLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:62,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:63,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/cadlibor.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: QuantLib::CADLiborON::CADLiborON
    functionSourceFile: /src/quantlib/ql/indexes/ibor/cadlibor.hpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void CADLiborON(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DKKCurrency
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    - Dst: Denmark
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::Destr::Destr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/destr.hpp
    functionUses: 0
    functionsReached:
    - DKKCurrency
    - Denmark
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Destr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DKKCurrency
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    - Dst: Denmark
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/destr.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::Destr::Destr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/destr.hpp
    functionUses: 0
    functionsReached:
    - DKKCurrency
    - Denmark
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Destr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:42,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Aonia::Aonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/aonia.hpp
    functionUses: 0
    functionsReached:
    - Australia
    - Actual365Fixed
    - AUDCurrency
    linkageType: ''
    returnType: void
    signature: void Aonia(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:42,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/aonia.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Aonia::Aonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/aonia.hpp
    functionUses: 0
    functionsReached:
    - Australia
    - Actual365Fixed
    - AUDCurrency
    linkageType: ''
    returnType: void
    signature: void Aonia(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:45,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:48,1
    - Dst: QuantLib::Bbsw::tenor
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:48,1
    - Dst: QuantLib::Bbsw::tenor
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: QuantLib::Bbsw::Bbsw
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bbsw::tenor
    - AUDCurrency
    - Actual365Fixed
    - Australia
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bbsw(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: QuantLib::Bbsw1M::Bbsw1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Bbsw2M::Bbsw2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Bbsw3M::Bbsw3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Bbsw4M::Bbsw4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::Bbsw5M::Bbsw5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::Bbsw6M::Bbsw6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:45,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:45,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:48,1
    - Dst: QuantLib::Bbsw::tenor
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:48,1
    - Dst: QuantLib::Bbsw::tenor
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: QuantLib::Bbsw::Bbsw
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bbsw::tenor
    - AUDCurrency
    - Actual365Fixed
    - Australia
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bbsw(const Period& tenor,\n             const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: QuantLib::Bbsw1M::Bbsw1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: QuantLib::Bbsw2M::Bbsw2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: QuantLib::Bbsw3M::Bbsw3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::Bbsw4M::Bbsw4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::Bbsw5M::Bbsw5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bbsw.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::Bbsw6M::Bbsw6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bbsw.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bbsw6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::Corra::Corra
    functionSourceFile: /src/quantlib/ql/indexes/ibor/corra.cpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Corra::Corra(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CADCurrency
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    - Dst: Canada
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/corra.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::Corra::Corra
    functionSourceFile: /src/quantlib/ql/indexes/ibor/corra.cpp
    functionUses: 0
    functionsReached:
    - Canada
    - CADCurrency
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: void Corra::Corra(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RUBCurrency
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:46,1
    - Dst: Russia
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:47,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Mosprime::Mosprime
    functionSourceFile: /src/quantlib/ql/indexes/ibor/mosprime.hpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Russia
    - RUBCurrency
    linkageType: ''
    returnType: void
    signature: "void Mosprime(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RUBCurrency
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:46,1
    - Dst: Russia
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:47,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/ibor/mosprime.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Mosprime::Mosprime
    functionSourceFile: /src/quantlib/ql/indexes/ibor/mosprime.hpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - Russia
    - RUBCurrency
    linkageType: ''
    returnType: void
    signature: "void Mosprime(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:44,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::AUDLibor::AUDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/audlibor.hpp
    functionUses: 0
    functionsReached:
    - Australia
    - Actual360
    - AUDCurrency
    linkageType: ''
    returnType: void
    signature: "void AUDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AUDCurrency
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:44,1
    - Dst: Australia
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/audlibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::AUDLibor::AUDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/audlibor.hpp
    functionUses: 0
    functionsReached:
    - Australia
    - Actual360
    - AUDCurrency
    linkageType: ''
    returnType: void
    signature: "void AUDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::BiborSW::BiborSW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void BiborSW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: QuantLib::Bibor1M::Bibor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::Bibor2M::Bibor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: QuantLib::Bibor3M::Bibor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::Bibor6M::Bibor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 83
    functionName: QuantLib::Bibor9M::Bibor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::Bibor1Y::Bibor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::BiborSW::BiborSW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void BiborSW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: QuantLib::Bibor1M::Bibor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::Bibor2M::Bibor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: QuantLib::Bibor3M::Bibor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: QuantLib::Bibor6M::Bibor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 83
    functionName: QuantLib::Bibor9M::Bibor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/bibor.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::Bibor1Y::Bibor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Bibor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::Euribor1W::Euribor1W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::Euribor2W::Euribor2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::Euribor3W::Euribor3W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor3W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: QuantLib::Euribor1M::Euribor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 103
    functionName: QuantLib::Euribor2M::Euribor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: QuantLib::Euribor3M::Euribor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: QuantLib::Euribor4M::Euribor4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: QuantLib::Euribor5M::Euribor5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: QuantLib::Euribor6M::Euribor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: QuantLib::Euribor7M::Euribor7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: QuantLib::Euribor8M::Euribor8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: QuantLib::Euribor9M::Euribor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::Euribor10M::Euribor10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: QuantLib::Euribor11M::Euribor11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 187
    functionName: QuantLib::Euribor1Y::Euribor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: QuantLib::Euribor365_SW::Euribor365_SW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_SW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::Euribor365_2W::Euribor365_2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 215
    functionName: QuantLib::Euribor365_3W::Euribor365_3W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_3W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 224
    functionName: QuantLib::Euribor365_1M::Euribor365_1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 233
    functionName: QuantLib::Euribor365_2M::Euribor365_2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 242
    functionName: QuantLib::Euribor365_3M::Euribor365_3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 251
    functionName: QuantLib::Euribor365_4M::Euribor365_4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 260
    functionName: QuantLib::Euribor365_5M::Euribor365_5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 269
    functionName: QuantLib::Euribor365_6M::Euribor365_6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 278
    functionName: QuantLib::Euribor365_7M::Euribor365_7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: QuantLib::Euribor365_8M::Euribor365_8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 296
    functionName: QuantLib::Euribor365_9M::Euribor365_9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 305
    functionName: QuantLib::Euribor365_10M::Euribor365_10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 314
    functionName: QuantLib::Euribor365_11M::Euribor365_11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 323
    functionName: QuantLib::Euribor365_1Y::Euribor365_1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::Euribor1W::Euribor1W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::Euribor2W::Euribor2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: QuantLib::Euribor3W::Euribor3W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor3W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: QuantLib::Euribor1M::Euribor1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 103
    functionName: QuantLib::Euribor2M::Euribor2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: QuantLib::Euribor3M::Euribor3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: QuantLib::Euribor4M::Euribor4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: QuantLib::Euribor5M::Euribor5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: QuantLib::Euribor6M::Euribor6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: QuantLib::Euribor7M::Euribor7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: QuantLib::Euribor8M::Euribor8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: QuantLib::Euribor9M::Euribor9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: QuantLib::Euribor10M::Euribor10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: QuantLib::Euribor11M::Euribor11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 187
    functionName: QuantLib::Euribor1Y::Euribor1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: QuantLib::Euribor365_SW::Euribor365_SW
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_SW(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: QuantLib::Euribor365_2W::Euribor365_2W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_2W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 215
    functionName: QuantLib::Euribor365_3W::Euribor365_3W
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_3W(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 224
    functionName: QuantLib::Euribor365_1M::Euribor365_1M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_1M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 233
    functionName: QuantLib::Euribor365_2M::Euribor365_2M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_2M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 242
    functionName: QuantLib::Euribor365_3M::Euribor365_3M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_3M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 251
    functionName: QuantLib::Euribor365_4M::Euribor365_4M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_4M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 260
    functionName: QuantLib::Euribor365_5M::Euribor365_5M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_5M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 269
    functionName: QuantLib::Euribor365_6M::Euribor365_6M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_6M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 278
    functionName: QuantLib::Euribor365_7M::Euribor365_7M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_7M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: QuantLib::Euribor365_8M::Euribor365_8M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_8M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 296
    functionName: QuantLib::Euribor365_9M::Euribor365_9M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_9M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 305
    functionName: QuantLib::Euribor365_10M::Euribor365_10M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_10M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 314
    functionName: QuantLib::Euribor365_11M::Euribor365_11M
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_11M(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/indexes/ibor/euribor.hpp:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 323
    functionName: QuantLib::Euribor365_1Y::Euribor365_1Y
    functionSourceFile: /src/quantlib/ql/indexes/ibor/euribor.hpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: void
    signature: void Euribor365_1Y(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: THBCurrency
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:56,1
    - Dst: Thailand
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:57,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::THBFIX::THBFIX
    functionSourceFile: /src/quantlib/ql/indexes/ibor/thbfix.hpp
    functionUses: 0
    functionsReached:
    - THBCurrency
    - Thailand
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void THBFIX(const Period& tenor,\n               const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: THBCurrency
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:56,1
    - Dst: Thailand
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:57,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/thbfix.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::THBFIX::THBFIX
    functionSourceFile: /src/quantlib/ql/indexes/ibor/thbfix.hpp
    functionUses: 0
    functionsReached:
    - THBCurrency
    - Thailand
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void THBFIX(const Period& tenor,\n               const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PLNCurrency
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:46,1
    - Dst: Poland
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Wibor::Wibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/wibor.hpp
    functionUses: 0
    functionsReached:
    - PLNCurrency
    - Poland
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Wibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PLNCurrency
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:46,1
    - Dst: Poland
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/wibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Wibor::Wibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/wibor.hpp
    functionUses: 0
    functionsReached:
    - PLNCurrency
    - Poland
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Wibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: QuantLib::BiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention BiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::BiborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool BiborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: QuantLib::BiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention BiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::BiborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool BiborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: THBCurrency
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:62,1
    - Dst: Thailand
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:62,1
    - Dst: BiborConvention
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:63,1
    - Dst: BiborEOM
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:63,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:65,1
    - Dst: QuantLib::Bibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:65,1
    - Dst: QuantLib::Bibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 68
    functionName: QuantLib::Bibor::Bibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - BiborEOM
    - Thailand
    - THBCurrency
    - BiborConvention
    - Actual365Fixed
    - QuantLib::Bibor::tenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bibor::Bibor(const Period& tenor,\n                     const
      Handle<YieldTermStructure>& h)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: QuantLib::BiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention BiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::BiborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool BiborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: QuantLib::BiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention BiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:44,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::BiborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool BiborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: THBCurrency
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:62,1
    - Dst: Thailand
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:62,1
    - Dst: BiborConvention
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:63,1
    - Dst: BiborEOM
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:63,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:65,1
    - Dst: QuantLib::Bibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:65,1
    - Dst: QuantLib::Bibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/bibor.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 68
    functionName: QuantLib::Bibor::Bibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/bibor.cpp
    functionUses: 0
    functionsReached:
    - BiborEOM
    - Thailand
    - THBCurrency
    - BiborConvention
    - Actual365Fixed
    - QuantLib::Bibor::tenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Bibor::Bibor(const Period& tenor,\n                     const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TRYCurrency
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:45,1
    - Dst: Turkey
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:46,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::TRLibor::TRLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/trlibor.hpp
    functionUses: 0
    functionsReached:
    - TRYCurrency
    - Turkey
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void TRLibor(const Period& tenor,\n                const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TRYCurrency
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:45,1
    - Dst: Turkey
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:46,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/trlibor.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::TRLibor::TRLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/trlibor.hpp
    functionUses: 0
    functionsReached:
    - TRYCurrency
    - Turkey
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void TRLibor(const Period& tenor,\n                const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:49,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:50,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::CHFLibor::CHFLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/chflibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void CHFLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:60,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:61,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionName: QuantLib::DailyTenorCHFLibor::DailyTenorCHFLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/chflibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorCHFLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:49,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:50,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::CHFLibor::CHFLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/chflibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void CHFLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:60,1
    - Dst: Switzerland
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:61,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/chflibor.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionName: QuantLib::DailyTenorCHFLibor::DailyTenorCHFLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/chflibor.hpp
    functionUses: 0
    functionsReached:
    - CHFCurrency
    - Switzerland
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void DailyTenorCHFLibor(Natural settlementDays,\n                           const
      Handle<YieldTermStructure>& h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RONCurrency
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:46,1
    - Dst: Romania
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:47,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Robor::Robor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/robor.hpp
    functionUses: 0
    functionsReached:
    - Romania
    - RONCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Robor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RONCurrency
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:46,1
    - Dst: Romania
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:47,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/robor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Robor::Robor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/robor.hpp
    functionUses: 0
    functionsReached:
    - Romania
    - RONCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Robor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::eurliborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention eurliborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::eurliborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool eurliborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::eurliborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention eurliborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::eurliborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool eurliborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:64,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:68,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:68,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:69,1
    - Dst: eurliborConvention
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:71,1
    - Dst: eurliborEOM
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:71,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:72,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:74,1
    - Dst: QuantLib::EURLibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:74,1
    - Dst: QuantLib::EURLibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 77
    functionName: QuantLib::EURLibor::EURLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EURLibor::tenor
    - JointCalendar
    - QL_REQUIRE
    - EURCurrency
    - UnitedKingdom
    - Actual360
    - eurliborEOM
    - eurliborConvention
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EURLibor::EURLibor(const Period& tenor,\n                       const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:80,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:81,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::EURLibor::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - advance
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:87,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:87,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::EURLibor::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:100,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::EURLibor::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - advance
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EURLibor>
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:104,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::EURLibor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - ext::make_shared<EURLibor>
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> EURLibor::clone(const Handle<YieldTermStructure>&
      h) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:111,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:116,1
    - Dst: eurliborConvention
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:117,1
    - Dst: eurliborEOM
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:117,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - settlementDays
    - ' h'
    argTypes:
    - Natural
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: QuantLib::DailyTenorEURLibor::DailyTenorEURLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - eurliborEOM
    - eurliborConvention
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void DailyTenorEURLibor::DailyTenorEURLibor(Natural settlementDays,\n
      \                                          const Handle<YieldTermStructure>&
      h)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::eurliborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention eurliborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::eurliborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool eurliborEOM(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:33,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::eurliborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention eurliborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::eurliborEOM
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: bool
    signature: bool eurliborEOM(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:64,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:68,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:68,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:69,1
    - Dst: eurliborConvention
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:71,1
    - Dst: eurliborEOM
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:71,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:72,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:74,1
    - Dst: QuantLib::EURLibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:74,1
    - Dst: QuantLib::EURLibor::tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 77
    functionName: QuantLib::EURLibor::EURLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EURLibor::tenor
    - JointCalendar
    - QL_REQUIRE
    - EURCurrency
    - UnitedKingdom
    - Actual360
    - eurliborEOM
    - eurliborConvention
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EURLibor::EURLibor(const Period& tenor,\n                       const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:80,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:81,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::EURLibor::fixingDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - advance
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::fixingDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:87,1
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:87,1
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 94
    functionName: QuantLib::EURLibor::valueDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - advance
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::valueDate(const Date& fixingDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:100,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::EURLibor::maturityDate
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - endOfMonth
    - advance
    linkageType: ''
    returnType: Date
    signature: Date EURLibor::maturityDate(const Date& valueDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EURLibor>
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:104,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::EURLibor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - ext::make_shared<EURLibor>
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> EURLibor::clone(const Handle<YieldTermStructure>&
      h) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:111,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:116,1
    - Dst: eurliborConvention
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:117,1
    - Dst: eurliborEOM
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:117,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eurlibor.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - settlementDays
    - ' h'
    argTypes:
    - Natural
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: QuantLib::DailyTenorEURLibor::DailyTenorEURLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eurlibor.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - eurliborEOM
    - eurliborConvention
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void DailyTenorEURLibor::DailyTenorEURLibor(Natural settlementDays,\n
      \                                          const Handle<YieldTermStructure>&
      h)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::shiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention shiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::shiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention shiborConvention(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CNYCurrency
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:46,1
    - Dst: China
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:47,1
    - Dst: shiborConvention
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:47,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Shibor::Shibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - CNYCurrency
    - China
    - shiborConvention
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Shibor::Shibor(const Period& tenor,\n                   const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    - Dst: Shibor::Shibor
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::Shibor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - Shibor::Shibor
    - ext::shared_ptr<IborIndex>
    - tenor
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> Shibor::clone(\n                                  const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::shiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention shiborConvention(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionName: QuantLib::shiborConvention
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - units
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention shiborConvention(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CNYCurrency
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:46,1
    - Dst: China
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:47,1
    - Dst: shiborConvention
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:47,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Shibor::Shibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - CNYCurrency
    - China
    - shiborConvention
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void Shibor::Shibor(const Period& tenor,\n                   const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    - Dst: tenor
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    - Dst: Shibor::Shibor
      Src: /src/quantlib/ql/indexes/ibor/shibor.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::Shibor::clone
    functionSourceFile: /src/quantlib/ql/indexes/ibor/shibor.cpp
    functionUses: 0
    functionsReached:
    - Shibor::Shibor
    - ext::shared_ptr<IborIndex>
    - tenor
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: "ext::shared_ptr<IborIndex> Shibor::clone(\n                                  const
      Handle<YieldTermStructure>& h) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Estr::Estr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/estr.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - TARGET
    linkageType: ''
    returnType: void
    signature: void Estr::Estr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/estr.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Estr::Estr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/estr.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - TARGET
    linkageType: ''
    returnType: void
    signature: void Estr::Estr(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:42,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Nzocr::Nzocr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/nzocr.hpp
    functionUses: 0
    functionsReached:
    - NewZealand
    - Actual365Fixed
    - NZDCurrency
    linkageType: ''
    returnType: void
    signature: void Nzocr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:42,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:43,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/nzocr.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::Nzocr::Nzocr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/nzocr.hpp
    functionUses: 0
    functionsReached:
    - NewZealand
    - Actual365Fixed
    - NZDCurrency
    linkageType: ''
    returnType: void
    signature: void Nzocr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Eonia::Eonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eonia.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - TARGET
    linkageType: ''
    returnType: void
    signature: void Eonia::Eonia(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/eonia.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: QuantLib::Eonia::Eonia
    functionSourceFile: /src/quantlib/ql/indexes/ibor/eonia.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - Actual360
    - TARGET
    linkageType: ''
    returnType: void
    signature: void Eonia::Eonia(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:29,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:30,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::FedFunds::FedFunds
    functionSourceFile: /src/quantlib/ql/indexes/ibor/fedfunds.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: void FedFunds::FedFunds(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:29,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:30,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/fedfunds.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' h'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::FedFunds::FedFunds
    functionSourceFile: /src/quantlib/ql/indexes/ibor/fedfunds.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - UnitedStates
    - Actual360
    linkageType: ''
    returnType: void
    signature: void FedFunds::FedFunds(const Handle<YieldTermStructure>& h)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:46,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Tibor::Tibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/tibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Tibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:46,1
    - Dst: Japan
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:47,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/ibor/tibor.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Tibor::Tibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/tibor.hpp
    functionUses: 0
    functionsReached:
    - JPYCurrency
    - Japan
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void Tibor(const Period& tenor,\n              const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    - Dst: Sweden
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::Swestr::Swestr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/swestr.hpp
    functionUses: 0
    functionsReached:
    - Sweden
    - SEKCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Swestr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    - Dst: Sweden
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/swestr.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: QuantLib::Swestr::Swestr
    functionSourceFile: /src/quantlib/ql/indexes/ibor/swestr.hpp
    functionUses: 0
    functionsReached:
    - Sweden
    - SEKCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: void Swestr(const Handle<YieldTermStructure>& h = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:44,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::NZDLibor::NZDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp
    functionUses: 0
    functionsReached:
    - NewZealand
    - Actual360
    - NZDCurrency
    linkageType: ''
    returnType: void
    signature: "void NZDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NZDCurrency
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:44,1
    - Dst: NewZealand
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:45,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::NZDLibor::NZDLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/nzdlibor.hpp
    functionUses: 0
    functionsReached:
    - NewZealand
    - Actual360
    - NZDCurrency
    linkageType: ''
    returnType: void
    signature: "void NZDLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:45,1
    - Dst: Sweden
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:46,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::SEKLibor::SEKLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/seklibor.hpp
    functionUses: 0
    functionsReached:
    - Sweden
    - SEKCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void SEKLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SEKCurrency
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:45,1
    - Dst: Sweden
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:46,1
    - Dst: Actual360
      Src: /src/quantlib/ql/indexes/ibor/seklibor.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::SEKLibor::SEKLibor
    functionSourceFile: /src/quantlib/ql/indexes/ibor/seklibor.hpp
    functionUses: 0
    functionsReached:
    - Sweden
    - SEKCurrency
    - Actual360
    linkageType: ''
    returnType: void
    signature: "void SEKLibor(const Period& tenor,\n                 const Handle<YieldTermStructure>&
      h = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:41,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:42,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:57,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:58,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:67,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:68,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:71,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:73,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:73,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:74,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:83,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:84,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:87,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:89,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:89,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:90,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:99,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:100,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:103,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:105,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:105,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:106,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 106
    functionName: QuantLib::EurLiborSwapIfrFix::EurLiborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIfrFix::EurLiborSwapIfrFix(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:115,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:116,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:119,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:121,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:121,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:122,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 123
    functionName: QuantLib::EurLiborSwapIfrFix::EurLiborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIfrFix::EurLiborSwapIfrFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:41,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:42,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:57,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:58,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixA::EurLiborSwapIsdaFixA(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:67,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:68,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:71,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:73,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:73,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:74,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:83,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:84,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:87,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:89,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:89,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:90,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIsdaFixB::EurLiborSwapIsdaFixB(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:99,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:100,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:103,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:105,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:105,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:106,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 106
    functionName: QuantLib::EurLiborSwapIfrFix::EurLiborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIfrFix::EurLiborSwapIfrFix(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:115,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:116,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:119,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:121,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:121,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:122,1
    - Dst: EURLibor::EURLibor
      Src: /src/quantlib/ql/indexes/swap/eurliborswap.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 123
    functionName: QuantLib::EurLiborSwapIfrFix::EurLiborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/eurliborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Thirty360
    - EURLibor::EURLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EurLiborSwapIfrFix::EurLiborSwapIfrFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:34,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:35,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:38,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:39,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:48,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:49,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:52,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:53,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionName: QuantLib::JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:62,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:63,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:66,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:67,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:76,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:77,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:80,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:81,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:34,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:35,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:38,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:39,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:48,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:49,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:52,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:53,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionName: QuantLib::JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixAm::JpyLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:62,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:63,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:66,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:67,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JPYCurrency
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:76,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:77,1
    - Dst: ActualActual
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:80,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:81,1
    - Dst: JPYLibor::JPYLibor
      Src: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/jpyliborswap.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - ext::shared_ptr<IborIndex>
    - JPYCurrency
    - JPYLibor::JPYLibor
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void JpyLiborSwapIsdaFixPm::JpyLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:34,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:35,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:38,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:39,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:48,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:49,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:52,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:53,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionName: QuantLib::UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:62,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:63,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:66,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:67,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:76,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:77,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:80,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:81,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:34,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:35,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:38,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:39,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 39
    functionName: QuantLib::UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:48,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:49,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:52,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:53,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionName: QuantLib::UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixAm::UsdLiborSwapIsdaFixAm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:62,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:63,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:66,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:67,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USDCurrency
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:76,1
    - Dst: UnitedStates
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:77,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:80,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:81,1
    - Dst: USDLibor::USDLibor
      Src: /src/quantlib/ql/indexes/swap/usdliborswap.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionName: QuantLib::UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm
    functionSourceFile: /src/quantlib/ql/indexes/swap/usdliborswap.cpp
    functionUses: 0
    functionsReached:
    - USDCurrency
    - ext::shared_ptr<IborIndex>
    - UnitedStates
    - USDLibor::USDLibor
    - Thirty360
    linkageType: ''
    returnType: void
    signature: "void UsdLiborSwapIsdaFixPm::UsdLiborSwapIsdaFixPm(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:41,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:42,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/chfliborswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - CHFLibor::CHFLibor
    - CHFCurrency
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:57,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:58,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/chfliborswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - CHFLibor::CHFLibor
    - CHFCurrency
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:41,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:42,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/chfliborswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - CHFLibor::CHFLibor
    - CHFCurrency
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHFCurrency
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:57,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:58,1
    - Dst: CHFLibor::CHFLibor
      Src: /src/quantlib/ql/indexes/swap/chfliborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/chfliborswap.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<IborIndex>
    - CHFLibor::CHFLibor
    - CHFCurrency
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void ChfLiborSwapIsdaFix::ChfLiborSwapIsdaFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:35,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:40,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:42,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:42,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:43,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - ext::shared_ptr<IborIndex>
    - GBPLibor::GBPLibor
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix(\n                            const
      Period& tenor,\n                            const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:52,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:53,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:59,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:59,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:60,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionName: QuantLib::GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - ext::shared_ptr<IborIndex>
    - GBPLibor::GBPLibor
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix(\n                            const
      Period& tenor,\n                            const Handle<YieldTermStructure>&
      forwarding,\n                            const Handle<YieldTermStructure>& discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:35,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:40,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:42,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:42,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:43,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: QuantLib::GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - ext::shared_ptr<IborIndex>
    - GBPLibor::GBPLibor
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix(\n                            const
      Period& tenor,\n                            const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GBPCurrency
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:52,1
    - Dst: UnitedKingdom
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:53,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:59,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:59,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:60,1
    - Dst: GBPLibor::GBPLibor
      Src: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionName: QuantLib::GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/gbpliborswap.cpp
    functionUses: 0
    functionsReached:
    - GBPCurrency
    - UnitedKingdom
    - ext::shared_ptr<IborIndex>
    - GBPLibor::GBPLibor
    - Actual365Fixed
    linkageType: ''
    returnType: void
    signature: "void GbpLiborSwapIsdaFix::GbpLiborSwapIsdaFix(\n                            const
      Period& tenor,\n                            const Handle<YieldTermStructure>&
      forwarding,\n                            const Handle<YieldTermStructure>& discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:41,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:42,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::EuriborSwapIsdaFixA::EuriborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixA::EuriborSwapIsdaFixA(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:57,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:58,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::EuriborSwapIsdaFixA::EuriborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixA::EuriborSwapIsdaFixA(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:67,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:68,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:71,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:73,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:73,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:74,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::EuriborSwapIsdaFixB::EuriborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixB::EuriborSwapIsdaFixB(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:83,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:84,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:87,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:89,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:89,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:90,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::EuriborSwapIsdaFixB::EuriborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixB::EuriborSwapIsdaFixB(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:99,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:100,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:103,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:105,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:105,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:106,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 106
    functionName: QuantLib::EuriborSwapIfrFix::EuriborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIfrFix::EuriborSwapIfrFix(const Period& tenor,\n                                         const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:115,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:116,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:119,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:121,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:121,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:122,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 123
    functionName: QuantLib::EuriborSwapIfrFix::EuriborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIfrFix::EuriborSwapIfrFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:35,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:36,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:39,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:41,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:41,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:42,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 42
    functionName: QuantLib::EuriborSwapIsdaFixA::EuriborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixA::EuriborSwapIsdaFixA(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:51,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:52,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:55,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:57,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:57,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:58,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: QuantLib::EuriborSwapIsdaFixA::EuriborSwapIsdaFixA
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixA::EuriborSwapIsdaFixA(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:67,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:68,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:71,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:73,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:73,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:74,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::EuriborSwapIsdaFixB::EuriborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixB::EuriborSwapIsdaFixB(\n                                        const
      Period& tenor,\n                                        const Handle<YieldTermStructure>&
      h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:83,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:84,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:87,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:89,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:89,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:90,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::EuriborSwapIsdaFixB::EuriborSwapIsdaFixB
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIsdaFixB::EuriborSwapIsdaFixB(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:99,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:100,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:103,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:105,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:105,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:106,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' tenor'
    - ' h'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 106
    functionName: QuantLib::EuriborSwapIfrFix::EuriborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIfrFix::EuriborSwapIfrFix(const Period& tenor,\n                                         const
      Handle<YieldTermStructure>& h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EURCurrency
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:115,1
    - Dst: TARGET
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:116,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:119,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:121,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:121,1
    - Dst: ext::shared_ptr<IborIndex>
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:122,1
    - Dst: Euribor::Euribor
      Src: /src/quantlib/ql/indexes/swap/euriborswap.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' tenor'
    - ' forwarding'
    - ' discounting'
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 123
    functionName: QuantLib::EuriborSwapIfrFix::EuriborSwapIfrFix
    functionSourceFile: /src/quantlib/ql/indexes/swap/euriborswap.cpp
    functionUses: 0
    functionsReached:
    - EURCurrency
    - ext::shared_ptr<IborIndex>
    - Euribor::Euribor
    - Thirty360
    - TARGET
    linkageType: ''
    returnType: void
    signature: "void EuriborSwapIfrFix::EuriborSwapIfrFix(\n                                const
      Period& tenor,\n                                const Handle<YieldTermStructure>&
      forwarding,\n                                const Handle<YieldTermStructure>&
      discounting)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:29,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:31,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:40,1
    - Dst: columns
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:43,1
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:53,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:53,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:55,1
    - Dst: std::transform
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:56,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:63,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:64,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:73,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:78,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:82,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - ' process'
    - ' capletVol'
    - ' correlation'
    - factors
    argTypes:
    - ext::shared_ptr<LiborForwardModelProcess>
    - ext::shared_ptr<OptionletVolatilityStructure>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 87
    functionName: QuantLib::LfmHullWhiteParameterization::LfmHullWhiteParameterization
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - std::transform
    - empty
    - std::inner_product
    - dayCounter
    - rows
    - Real
    - volatility
    - columns
    - fixingTimes
    - std::sqrt
    - transpose
    - fixingDates
    - size
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LfmHullWhiteParameterization::LfmHullWhiteParameterization(\n
      \       const ext::shared_ptr<LiborForwardModelProcess> & process,\n        const
      ext::shared_ptr<OptionletVolatilityStructure> & capletVol,\n        const Matrix&
      correlation, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::LfmHullWhiteParameterization::nextIndexReset
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Size
    signature: Size LfmHullWhiteParameterization::nextIndexReset(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmHullWhiteParameterization::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 106
    functionName: QuantLib::LfmHullWhiteParameterization::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmHullWhiteParameterization::nextIndexReset
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::diffusion(Time t, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmHullWhiteParameterization::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 119
    functionName: QuantLib::LfmHullWhiteParameterization::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmHullWhiteParameterization::nextIndexReset
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::covariance(Time t, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: QuantLib::LfmHullWhiteParameterization::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::integratedCovariance(Time t, const
      Array&) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:29,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:31,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:39,1
    - Dst: rows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:40,1
    - Dst: columns
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:43,1
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:53,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:53,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:55,1
    - Dst: std::transform
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:56,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:63,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:64,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:73,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:78,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:82,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - ' process'
    - ' capletVol'
    - ' correlation'
    - factors
    argTypes:
    - ext::shared_ptr<LiborForwardModelProcess>
    - ext::shared_ptr<OptionletVolatilityStructure>
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 87
    functionName: QuantLib::LfmHullWhiteParameterization::LfmHullWhiteParameterization
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - std::transform
    - empty
    - std::inner_product
    - dayCounter
    - rows
    - Real
    - volatility
    - columns
    - fixingTimes
    - std::sqrt
    - transpose
    - fixingDates
    - size
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LfmHullWhiteParameterization::LfmHullWhiteParameterization(\n
      \       const ext::shared_ptr<LiborForwardModelProcess> & process,\n        const
      ext::shared_ptr<OptionletVolatilityStructure> & capletVol,\n        const Matrix&
      correlation, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::LfmHullWhiteParameterization::nextIndexReset
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 2
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Size
    signature: Size LfmHullWhiteParameterization::nextIndexReset(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmHullWhiteParameterization::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 106
    functionName: QuantLib::LfmHullWhiteParameterization::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmHullWhiteParameterization::nextIndexReset
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::diffusion(Time t, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmHullWhiteParameterization::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 119
    functionName: QuantLib::LfmHullWhiteParameterization::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmHullWhiteParameterization::nextIndexReset
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::covariance(Time t, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:125,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:125,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: QuantLib::LfmHullWhiteParameterization::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmhullwhiteparam.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmHullWhiteParameterization::integratedCovariance(Time t, const
      Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - nArguments
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::LmVolatilityModel::LmVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmVolatilityModel::LmVolatilityModel(Size size, Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::LmVolatilityModel::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmVolatilityModel::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - t
    - ' x'
    argTypes:
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::LmVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmVolatilityModel::volatility(\n        Size i, Time t,
      const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::LmVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real LmVolatilityModel::integratedVariance(Size, Size, Time,\n                                               const
      Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& LmVolatilityModel::params()'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Parameter>
    signature: std::vector<Parameter> & LmVolatilityModel::params()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::LmVolatilityModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached:
    - generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmVolatilityModel::setParams(\n        const std::vector<Parameter>
      & arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - nArguments
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::LmVolatilityModel::LmVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmVolatilityModel::LmVolatilityModel(Size size, Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::LmVolatilityModel::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmVolatilityModel::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - t
    - ' x'
    argTypes:
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::LmVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmVolatilityModel::volatility(\n        Size i, Time t,
      const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::LmVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real LmVolatilityModel::integratedVariance(Size, Size, Time,\n                                               const
      Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& LmVolatilityModel::params()'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Parameter>
    signature: std::vector<Parameter> & LmVolatilityModel::params()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::LmVolatilityModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.cpp
    functionUses: 0
    functionsReached:
    - generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmVolatilityModel::setParams(\n        const std::vector<Parameter>
      & arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - factors
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::LfmCovarianceParameterization::LfmCovarianceParameterization
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LfmCovarianceParameterization(Size size, Size factors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~LfmCovarianceParameterization()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LfmCovarianceParameterization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LfmCovarianceParameterization::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::LfmCovarianceParameterization::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - factors
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::LfmCovarianceParameterization::LfmCovarianceParameterization
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LfmCovarianceParameterization(Size size, Size factors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~LfmCovarianceParameterization()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LfmCovarianceParameterization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LfmCovarianceParameterization::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::LfmCovarianceParameterization::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~LmCorrelationModel()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LmCorrelationModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~LmCorrelationModel()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LmCorrelationModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - param
    - i
    - j
    argTypes:
    - LfmCovarianceParameterization*
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: "LfmCovarianceParameterization::Var_Helper::Var_Helper(\n                                   const
      LfmCovarianceParameterization* param,\n                                   Size
      i, Size j)"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceParameterization::Var_Helper::Var_Helper(\n                                   const
      LfmCovarianceParameterization* param,\n                                   Size
      i, Size j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:41,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: LfmCovarianceParameterization::Var_Helper::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - Matrix::row_end
    - std::inner_product
    - Real
    - Matrix::row_begin
    - diffusion
    linkageType: ''
    returnType: Real
    signature: Real LfmCovarianceParameterization::Var_Helper::operator()(Real t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmCovarianceParameterization::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:48,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::LfmCovarianceParameterization::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmCovarianceParameterization::diffusion
    - transpose
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceParameterization::covariance(Time t, const Array&
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:58,1
    - Dst: integrator
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 74
    functionName: QuantLib::LfmCovarianceParameterization::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - integrator
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceParameterization::integratedCovariance(Time t,
      const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - param
    - i
    - j
    argTypes:
    - LfmCovarianceParameterization*
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: "LfmCovarianceParameterization::Var_Helper::Var_Helper(\n                                   const
      LfmCovarianceParameterization* param,\n                                   Size
      i, Size j)"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceParameterization::Var_Helper::Var_Helper(\n                                   const
      LfmCovarianceParameterization* param,\n                                   Size
      i, Size j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:41,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:43,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:44,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: LfmCovarianceParameterization::Var_Helper::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - Matrix::row_end
    - std::inner_product
    - Real
    - Matrix::row_begin
    - diffusion
    linkageType: ''
    returnType: Real
    signature: Real LfmCovarianceParameterization::Var_Helper::operator()(Real t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LfmCovarianceParameterization::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:48,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: QuantLib::LfmCovarianceParameterization::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LfmCovarianceParameterization::diffusion
    - transpose
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceParameterization::covariance(Time t, const Array&
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:58,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:58,1
    - Dst: integrator
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 74
    functionName: QuantLib::LfmCovarianceParameterization::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarparam.cpp
    functionUses: 0
    functionsReached:
    - integrator
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceParameterization::integratedCovariance(Time t,
      const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - volatilities
    - ' startTimes'
    argTypes:
    - Array
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 38
    functionName: QuantLib::LmFixedVolatilityModel::LmFixedVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LmFixedVolatilityModel::LmFixedVolatilityModel(Array volatilities,\n
      \                                                  const std::vector<Time>&
      startTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 55
    functionName: QuantLib::LmFixedVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - end
    - back
    - std::upper_bound
    - front
    linkageType: ''
    returnType: Array
    signature: Array LmFixedVolatilityModel::volatility(Time t, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::LmFixedVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - end
    - back
    - std::upper_bound
    - front
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmFixedVolatilityModel::volatility(\n                                         Size
      i, Time t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::LmFixedVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmFixedVolatilityModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - volatilities
    - ' startTimes'
    argTypes:
    - Array
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 38
    functionName: QuantLib::LmFixedVolatilityModel::LmFixedVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LmFixedVolatilityModel::LmFixedVolatilityModel(Array volatilities,\n
      \                                                  const std::vector<Time>&
      startTimes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:41,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 55
    functionName: QuantLib::LmFixedVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - end
    - back
    - std::upper_bound
    - front
    linkageType: ''
    returnType: Array
    signature: Array LmFixedVolatilityModel::volatility(Time t, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:59,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:62,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::LmFixedVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - begin
    - end
    - back
    - std::upper_bound
    - front
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmFixedVolatilityModel::volatility(\n                                         Size
      i, Time t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::LmFixedVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmfixedvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmFixedVolatilityModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:30,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:31,1
    - Dst: QuantLib::LmLinearExponentialCorrelationModel::generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - size
    - rho
    - beta
    - factors
    argTypes:
    - Size
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::LmLinearExponentialCorrelationModel::LmLinearExponentialCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - Null<Size>
    - BoundaryConstraint
    - QuantLib::LmLinearExponentialCorrelationModel::generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmLinearExponentialCorrelationModel::LmLinearExponentialCorrelationModel(\n
      \                                 Size size, Real rho, Real beta, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::LmLinearExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmLinearExponentialCorrelationModel::correlation(Time, const
      Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::LmLinearExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real LmLinearExponentialCorrelationModel::correlation(\n                                   Size
      i, Size j, Time, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LmLinearExponentialCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmLinearExponentialCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::LmLinearExponentialCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmLinearExponentialCorrelationModel::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::LmLinearExponentialCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmLinearExponentialCorrelationModel::pseudoSqrt(Time, const
      Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:70,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::LmLinearExponentialCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - Real
    - std::fabs
    - transpose
    - rankReducedSqrt
    linkageType: ''
    returnType: void
    signature: void LmLinearExponentialCorrelationModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:30,1
    - Dst: BoundaryConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:31,1
    - Dst: QuantLib::LmLinearExponentialCorrelationModel::generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - size
    - rho
    - beta
    - factors
    argTypes:
    - Size
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionName: QuantLib::LmLinearExponentialCorrelationModel::LmLinearExponentialCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - Null<Size>
    - BoundaryConstraint
    - QuantLib::LmLinearExponentialCorrelationModel::generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmLinearExponentialCorrelationModel::LmLinearExponentialCorrelationModel(\n
      \                                 Size size, Real rho, Real beta, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::LmLinearExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmLinearExponentialCorrelationModel::correlation(Time, const
      Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::LmLinearExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real LmLinearExponentialCorrelationModel::correlation(\n                                   Size
      i, Size j, Time, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LmLinearExponentialCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmLinearExponentialCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::LmLinearExponentialCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmLinearExponentialCorrelationModel::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::LmLinearExponentialCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmLinearExponentialCorrelationModel::pseudoSqrt(Time, const
      Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:66,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:70,1
    - Dst: transpose
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::LmLinearExponentialCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpcorrmodel.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - Real
    - std::fabs
    - transpose
    - rankReducedSqrt
    linkageType: ''
    returnType: void
    signature: void LmLinearExponentialCorrelationModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' fixingTimes'
    - a
    - b
    - c
    - d
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 33
    functionName: QuantLib::LmExtLinearExponentialVolModel::LmExtLinearExponentialVolModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void LmExtLinearExponentialVolModel::LmExtLinearExponentialVolModel(\n
      \                                        const std::vector<Time>& fixingTimes,\n
      \                                        Real a, Real b, Real c, Real d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::LmExtLinearExponentialVolModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::volatility
    linkageType: ''
    returnType: Array
    signature: "Array LmExtLinearExponentialVolModel::volatility(\n                                               Time
      t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - t
    - ' x'
    argTypes:
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::LmExtLinearExponentialVolModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmExtLinearExponentialVolModel::volatility(\n                                       Size
      i, Time t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - j
    - u
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::LmExtLinearExponentialVolModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
    linkageType: ''
    returnType: Real
    signature: "Real LmExtLinearExponentialVolModel::integratedVariance(\n                               Size
      i, Size j, Time u, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' fixingTimes'
    - a
    - b
    - c
    - d
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 33
    functionName: QuantLib::LmExtLinearExponentialVolModel::LmExtLinearExponentialVolModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - resize
    - PositiveConstraint
    - ConstantParameter
    linkageType: ''
    returnType: void
    signature: "void LmExtLinearExponentialVolModel::LmExtLinearExponentialVolModel(\n
      \                                        const std::vector<Time>& fixingTimes,\n
      \                                        Real a, Real b, Real c, Real d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::LmExtLinearExponentialVolModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::volatility
    linkageType: ''
    returnType: Array
    signature: "Array LmExtLinearExponentialVolModel::volatility(\n                                               Time
      t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - t
    - ' x'
    argTypes:
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::LmExtLinearExponentialVolModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmExtLinearExponentialVolModel::volatility(\n                                       Size
      i, Time t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - j
    - u
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::LmExtLinearExponentialVolModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmextlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
    linkageType: ''
    returnType: Real
    signature: "Real LmExtLinearExponentialVolModel::integratedVariance(\n                               Size
      i, Size j, Time u, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - nArguments
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::LmCorrelationModel::LmCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmCorrelationModel::LmCorrelationModel(Size size, Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::LmCorrelationModel::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmCorrelationModel::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::LmCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmCorrelationModel::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::LmCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:42,1
    - Dst: QuantLib::LmCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 4
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::LmCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::pseudoSqrt
    - QuantLib::LmCorrelationModel::correlation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix LmCorrelationModel::pseudoSqrt(\n        Time t, const Array&
      x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - j
    - t
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::LmCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmCorrelationModel::correlation
    linkageType: ''
    returnType: Real
    signature: "Real LmCorrelationModel::correlation(\n        Size i, Size j, Time
      t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& LmCorrelationModel::params()'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Parameter>
    signature: std::vector<Parameter> & LmCorrelationModel::params()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::LmCorrelationModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmCorrelationModel::setParams(\n        const std::vector<Parameter>
      & arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - size
    - nArguments
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: QuantLib::LmCorrelationModel::LmCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmCorrelationModel::LmCorrelationModel(Size size, Size nArguments)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::LmCorrelationModel::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmCorrelationModel::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::LmCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LmCorrelationModel::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::LmCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:42,1
    - Dst: QuantLib::LmCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 4
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::LmCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::pseudoSqrt
    - QuantLib::LmCorrelationModel::correlation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix LmCorrelationModel::pseudoSqrt(\n        Time t, const Array&
      x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - i
    - j
    - t
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::LmCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LmCorrelationModel::correlation
    linkageType: ''
    returnType: Real
    signature: "Real LmCorrelationModel::correlation(\n        Size i, Size j, Time
      t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& LmCorrelationModel::params()'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Parameter>
    signature: std::vector<Parameter> & LmCorrelationModel::params()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' arguments'
    argTypes:
    - std::vector<Parameter>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: QuantLib::LmCorrelationModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmCorrelationModel::setParams(\n        const std::vector<Parameter>
      & arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' volaModel'
    argTypes:
    - ext::shared_ptr<LmVolatilityModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LmConstWrapperVolatilityModel::LmConstWrapperVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void LmConstWrapperVolatilityModel(\n            const ext::shared_ptr<LmVolatilityModel>
      & volaModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::LmConstWrapperVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::volatility
    linkageType: ''
    returnType: Array
    signature: Array volatility(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::LmConstWrapperVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility volatility(\n            Size i, Time t, const Array& x
      = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - u
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::LmConstWrapperVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::integratedVariance
    linkageType: ''
    returnType: Real
    signature: Real integratedVariance(Size i, Size j, Time u, const Array& x = {})
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::LmConstWrapperVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' volaModel'
    argTypes:
    - ext::shared_ptr<LmVolatilityModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LmConstWrapperVolatilityModel::LmConstWrapperVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void LmConstWrapperVolatilityModel(\n            const ext::shared_ptr<LmVolatilityModel>
      & volaModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::LmConstWrapperVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::volatility
    linkageType: ''
    returnType: Array
    signature: Array volatility(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QuantLib::LmConstWrapperVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility volatility(\n            Size i, Time t, const Array& x
      = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperVolatilityModel::integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - u
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::LmConstWrapperVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperVolatilityModel::integratedVariance
    linkageType: ''
    returnType: Real
    signature: Real integratedVariance(Size i, Size j, Time u, const Array& x = {})
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::LmConstWrapperVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~LmVolatilityModel()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LmVolatilityModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~LmVolatilityModel()
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmvolmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LmVolatilityModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:31,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:33,1
    - Dst: LfmCovarianceProxy::LfmCovarianceProxy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:34,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:38,1
    - Dst: std::copy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:40,1
    - Dst: std::copy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:44,1
    - Dst: accrualEndTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:45,1
    - Dst: accrualStartTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:46,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - ' volaModel'
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LiborForwardModelProcess>
    - ext::shared_ptr<LmVolatilityModel>
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::LiborForwardModel::LiborForwardModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - accrualEndTimes
    - begin
    - accrualStartTimes
    - initialValues
    - size
    - params
    - LfmCovarianceProxy::LfmCovarianceProxy
    linkageType: ''
    returnType: void
    signature: "void LiborForwardModel::LiborForwardModel(\n          const ext::shared_ptr<LiborForwardModelProcess>
      & process,\n          const ext::shared_ptr<LmVolatilityModel> & volaModel,\n
      \         const ext::shared_ptr<LmCorrelationModel> & corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CalibratedModel::setParams
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:52,1
    - Dst: volatilityModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:54,1
    - Dst: volatilityModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:56,1
    - Dst: std::vector<Parameter>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: correlationModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:58,1
    - Dst: std::vector<Parameter>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: ext::shared_ptr<SwaptionVolatilityMatrix>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 62
    functionName: QuantLib::LiborForwardModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Parameter>
    - volatilityModel
    - begin
    - QuantLib::CalibratedModel::setParams
    - correlationModel
    - ext::shared_ptr<SwaptionVolatilityMatrix>
    - end
    linkageType: ''
    returnType: void
    signature: void LiborForwardModel::setParams(const Array& params)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accrualStartTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:69,1
    - Dst: accrualEndTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:73,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:73,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:74,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:82,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:83,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:84,1
    - Dst: "i<process_->size()\n                   && std::fabs(maturity - accrualStartTimes[i])\n
        \                       < 100*std::numeric_limits<Real>::epsilon()\n                   &&
        std::fabs(bondMaturity - accrualEndTimes[i])\n                        < 100*std::numeric_limits<Real>::epsilon"
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:89,1
    - Dst: integratedCovariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:91,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:92,1
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:94,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 103
    functionName: QuantLib::LiborForwardModel::discountBondOption
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::lower_bound
    - integratedCovariance
    - std::numeric_limits<Real>::epsilon
    - accrualEndTimes
    - begin
    - accrualStartTimes
    - "i<process_->size()\n                   && std::fabs(maturity - accrualStartTimes[i])\n
      \                       < 100*std::numeric_limits<Real>::epsilon()\n                   &&
      std::fabs(bondMaturity - accrualEndTimes[i])\n                        < 100*std::numeric_limits<Real>::epsilon"
    - initialValues
    - std::fabs
    - index
    - fixingTimes
    - blackFormula
    - std::sqrt
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: "Real LiborForwardModel::discountBondOption(Option::Type type,\n                                               Real
      strike, Time maturity,\n                                               Time
      bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 128
    functionName: QuantLib::LiborForwardModel::w_0
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModel::w_0(Size alpha, Size beta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModel::w_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:131,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 140
    functionName: QuantLib::LiborForwardModel::S_0
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - initialValues
    - QuantLib::LiborForwardModel::w_0
    linkageType: ''
    returnType: Rate
    signature: Rate LiborForwardModel::S_0(Size alpha, Size beta) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:153,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:156,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:159,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:160,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:164,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:167,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:170,1
    - Dst: integratedCovariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:176,1
    - Dst: QuantLib::LiborForwardModel::w_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:191,1
    - Dst: QuantLib::LiborForwardModel::S_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:191,1
    - Dst: ext::make_shared<SwaptionVolatilityMatrix>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:195,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:196,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:198,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 199
    functionName: QuantLib::LiborForwardModel::getSwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - integratedCovariance
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::tenor
    - index
    - initialValues
    - fixingTimes
    - std::sqrt
    - ext::make_shared<SwaptionVolatilityMatrix>
    - fixingDates
    - size
    - NullCalendar
    - QuantLib::LiborForwardModel::w_0
    - QuantLib::LiborForwardModel::S_0
    linkageType: ''
    returnType: ext::shared_ptr<SwaptionVolatilityMatrix>
    signature: ext::shared_ptr<SwaptionVolatilityMatrix> LiborForwardModel::getSwaptionVolatilityMatrix()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionName: QuantLib::LiborForwardModel::discount
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - index
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor LiborForwardModel::discount(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModel::discount
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: QuantLib::LiborForwardModel::discountBond
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModel::discount
    linkageType: ''
    returnType: Real
    signature: Real LiborForwardModel::discountBond(Time, Time maturity, Array) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:31,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:33,1
    - Dst: LfmCovarianceProxy::LfmCovarianceProxy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:34,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:38,1
    - Dst: std::copy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:40,1
    - Dst: std::copy
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: params
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:41,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:44,1
    - Dst: accrualEndTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:45,1
    - Dst: accrualStartTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:46,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - ' volaModel'
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LiborForwardModelProcess>
    - ext::shared_ptr<LmVolatilityModel>
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::LiborForwardModel::LiborForwardModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - std::copy
    - accrualEndTimes
    - begin
    - accrualStartTimes
    - initialValues
    - size
    - params
    - LfmCovarianceProxy::LfmCovarianceProxy
    linkageType: ''
    returnType: void
    signature: "void LiborForwardModel::LiborForwardModel(\n          const ext::shared_ptr<LiborForwardModelProcess>
      & process,\n          const ext::shared_ptr<LmVolatilityModel> & volaModel,\n
      \         const ext::shared_ptr<LmCorrelationModel> & corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CalibratedModel::setParams
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:52,1
    - Dst: volatilityModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:54,1
    - Dst: volatilityModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:56,1
    - Dst: std::vector<Parameter>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:57,1
    - Dst: correlationModel
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:58,1
    - Dst: std::vector<Parameter>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:59,1
    - Dst: ext::shared_ptr<SwaptionVolatilityMatrix>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' params'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 62
    functionName: QuantLib::LiborForwardModel::setParams
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Parameter>
    - volatilityModel
    - begin
    - QuantLib::CalibratedModel::setParams
    - correlationModel
    - ext::shared_ptr<SwaptionVolatilityMatrix>
    - end
    linkageType: ''
    returnType: void
    signature: void LiborForwardModel::setParams(const Array& params)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accrualStartTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:69,1
    - Dst: accrualEndTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:73,1
    - Dst: front
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:73,1
    - Dst: back
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:74,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:78,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:82,1
    - Dst: std::numeric_limits<Real>::epsilon
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:83,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:84,1
    - Dst: "i<process_->size()\n                   && std::fabs(maturity - accrualStartTimes[i])\n
        \                       < 100*std::numeric_limits<Real>::epsilon()\n                   &&
        std::fabs(bondMaturity - accrualEndTimes[i])\n                        < 100*std::numeric_limits<Real>::epsilon"
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:81,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:89,1
    - Dst: integratedCovariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:91,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:92,1
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:94,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 103
    functionName: QuantLib::LiborForwardModel::discountBondOption
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::lower_bound
    - integratedCovariance
    - std::numeric_limits<Real>::epsilon
    - accrualEndTimes
    - begin
    - accrualStartTimes
    - "i<process_->size()\n                   && std::fabs(maturity - accrualStartTimes[i])\n
      \                       < 100*std::numeric_limits<Real>::epsilon()\n                   &&
      std::fabs(bondMaturity - accrualEndTimes[i])\n                        < 100*std::numeric_limits<Real>::epsilon"
    - initialValues
    - std::fabs
    - index
    - fixingTimes
    - blackFormula
    - std::sqrt
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: "Real LiborForwardModel::discountBondOption(Option::Type type,\n                                               Real
      strike, Time maturity,\n                                               Time
      bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 128
    functionName: QuantLib::LiborForwardModel::w_0
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModel::w_0(Size alpha, Size beta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModel::w_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:131,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - alpha
    - beta
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 140
    functionName: QuantLib::LiborForwardModel::S_0
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 1
    functionsReached:
    - initialValues
    - QuantLib::LiborForwardModel::w_0
    linkageType: ''
    returnType: Rate
    signature: Rate LiborForwardModel::S_0(Size alpha, Size beta) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:153,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:154,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:156,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:159,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:160,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:164,1
    - Dst: initialValues
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:167,1
    - Dst: fixingTimes
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:170,1
    - Dst: integratedCovariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:176,1
    - Dst: QuantLib::LiborForwardModel::w_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:191,1
    - Dst: QuantLib::LiborForwardModel::S_0
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:191,1
    - Dst: ext::make_shared<SwaptionVolatilityMatrix>
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:195,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:196,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:198,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 199
    functionName: QuantLib::LiborForwardModel::getSwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - integratedCovariance
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::tenor
    - index
    - initialValues
    - fixingTimes
    - std::sqrt
    - ext::make_shared<SwaptionVolatilityMatrix>
    - fixingDates
    - size
    - NullCalendar
    - QuantLib::LiborForwardModel::w_0
    - QuantLib::LiborForwardModel::S_0
    linkageType: ''
    returnType: ext::shared_ptr<SwaptionVolatilityMatrix>
    signature: ext::shared_ptr<SwaptionVolatilityMatrix> LiborForwardModel::getSwaptionVolatilityMatrix()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionName: QuantLib::LiborForwardModel::discount
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 1
    functionsReached:
    - index
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor LiborForwardModel::discount(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModel::discount
      Src: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: QuantLib::LiborForwardModel::discountBond
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/liborforwardmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModel::discount
    linkageType: ''
    returnType: Real
    signature: Real LiborForwardModel::discountBond(Time, Time maturity, Array) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:28,1
    - Dst: factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - volaModel
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LmVolatilityModel>
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::LfmCovarianceProxy::LfmCovarianceProxy
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - size
    - factors
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceProxy::LfmCovarianceProxy(ext::shared_ptr<LmVolatilityModel>
      volaModel,\n                                           const ext::shared_ptr<LmCorrelationModel>&
      corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::LfmCovarianceProxy::volatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LmVolatilityModel>
    signature: ext::shared_ptr<LmVolatilityModel> LfmCovarianceProxy::volatilityModel()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::LfmCovarianceProxy::correlationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LmCorrelationModel>
    signature: ext::shared_ptr<LmCorrelationModel> LfmCovarianceProxy::correlationModel()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:49,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:50,1
    - Dst: std::transform
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::LfmCovarianceProxy::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - Matrix::row_end
    - Matrix::row_begin
    - volatility
    - std::transform
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceProxy::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:62,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::LfmCovarianceProxy::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - volatility
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceProxy::covariance(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LfmCovarianceProxy*::volaModel_::get
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:90,1
    - Dst: LfmCovarianceProxy*::corrModel_::get
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - proxy
    - i
    - j
    argTypes:
    - LfmCovarianceProxy*
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: "LfmCovarianceProxy::Var_Helper::Var_Helper(const LfmCovarianceProxy*
      proxy,\n                                               Size i, Size j)"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - LfmCovarianceProxy*::corrModel_::get
    - LfmCovarianceProxy*::volaModel_::get
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceProxy::Var_Helper::Var_Helper(const LfmCovarianceProxy*
      proxy,\n                                               Size i, Size j)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:98,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:100,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:101,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionName: LfmCovarianceProxy::Var_Helper::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - volatility
    linkageType: ''
    returnType: Real
    signature: Real LfmCovarianceProxy::Var_Helper::operator()(Real t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: isTimeIndependent
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:110,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:115,1
    - Dst: integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:124,1
    - Dst: integrator
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - i
    - j
    - t
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 134
    functionName: QuantLib::LfmCovarianceProxy::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - empty
    - integratedVariance
    - integrator
    - isTimeIndependent
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real LfmCovarianceProxy::integratedCovariance(\n                               Size
      i, Size j, Time t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:28,1
    - Dst: factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - volaModel
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LmVolatilityModel>
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::LfmCovarianceProxy::LfmCovarianceProxy
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - size
    - factors
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceProxy::LfmCovarianceProxy(ext::shared_ptr<LmVolatilityModel>
      volaModel,\n                                           const ext::shared_ptr<LmCorrelationModel>&
      corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::LfmCovarianceProxy::volatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LmVolatilityModel>
    signature: ext::shared_ptr<LmVolatilityModel> LfmCovarianceProxy::volatilityModel()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::LfmCovarianceProxy::correlationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LmCorrelationModel>
    signature: ext::shared_ptr<LmCorrelationModel> LfmCovarianceProxy::correlationModel()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:49,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:50,1
    - Dst: std::transform
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:52,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::LfmCovarianceProxy::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - Matrix::row_end
    - Matrix::row_begin
    - volatility
    - std::transform
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceProxy::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:62,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: QuantLib::LfmCovarianceProxy::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - volatility
    linkageType: ''
    returnType: Matrix
    signature: Matrix LfmCovarianceProxy::covariance(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LfmCovarianceProxy*::volaModel_::get
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:90,1
    - Dst: LfmCovarianceProxy*::corrModel_::get
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - proxy
    - i
    - j
    argTypes:
    - LfmCovarianceProxy*
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: "LfmCovarianceProxy::Var_Helper::Var_Helper(const LfmCovarianceProxy*
      proxy,\n                                               Size i, Size j)"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - LfmCovarianceProxy*::corrModel_::get
    - LfmCovarianceProxy*::volaModel_::get
    linkageType: ''
    returnType: void
    signature: "void LfmCovarianceProxy::Var_Helper::Var_Helper(const LfmCovarianceProxy*
      proxy,\n                                               Size i, Size j)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:98,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:100,1
    - Dst: volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:101,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionName: LfmCovarianceProxy::Var_Helper::operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - volatility
    linkageType: ''
    returnType: Real
    signature: Real LfmCovarianceProxy::Var_Helper::operator()(Real t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: isTimeIndependent
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:110,1
    - Dst: correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:115,1
    - Dst: integratedVariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:124,1
    - Dst: integrator
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - i
    - j
    - t
    - ' x'
    argTypes:
    - Size
    - Size
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 134
    functionName: QuantLib::LfmCovarianceProxy::integratedCovariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmcovarproxy.cpp
    functionUses: 0
    functionsReached:
    - correlation
    - empty
    - integratedVariance
    - integrator
    - isTimeIndependent
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real LfmCovarianceProxy::integratedCovariance(\n                               Size
      i, Size j, Time t, const Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:27,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:29,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - ' fixingTimes'
    - a
    - b
    - c
    - d
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 33
    functionName: QuantLib::LmLinearExponentialVolatilityModel::LmLinearExponentialVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - ConstantParameter
    - PositiveConstraint
    linkageType: ''
    returnType: void
    signature: "void LmLinearExponentialVolatilityModel::LmLinearExponentialVolatilityModel(\n
      \                                        const std::vector<Time>& fixingTimes,\n
      \                                        Real a, Real b, Real c, Real d)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::LmLinearExponentialVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 4
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array LmLinearExponentialVolatilityModel::volatility(\n                                                 Time
      t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:64,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::LmLinearExponentialVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 4
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmLinearExponentialVolatilityModel::volatility(\n                                         Size
      i, Time t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:78,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - u
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 91
    functionName: QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real LmLinearExponentialVolatilityModel::integratedVariance(\n                                 Size
      i, Size j, Time u, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::LmLinearExponentialVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmLinearExponentialVolatilityModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:27,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:29,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:29,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:31,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:32,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - ' fixingTimes'
    - a
    - b
    - c
    - d
    argTypes:
    - std::vector<Time>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 33
    functionName: QuantLib::LmLinearExponentialVolatilityModel::LmLinearExponentialVolatilityModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - ConstantParameter
    - PositiveConstraint
    linkageType: ''
    returnType: void
    signature: "void LmLinearExponentialVolatilityModel::LmLinearExponentialVolatilityModel(\n
      \                                        const std::vector<Time>& fixingTimes,\n
      \                                        Real a, Real b, Real c, Real d)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::LmLinearExponentialVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 4
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array LmLinearExponentialVolatilityModel::volatility(\n                                                 Time
      t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:64,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::LmLinearExponentialVolatilityModel::volatility
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 4
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LmLinearExponentialVolatilityModel::volatility(\n                                         Size
      i, Time t, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:78,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - u
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 91
    functionName: QuantLib::LmLinearExponentialVolatilityModel::integratedVariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real LmLinearExponentialVolatilityModel::integratedVariance(\n                                 Size
      i, Size j, Time u, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::LmLinearExponentialVolatilityModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmlinexpvolmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LmLinearExponentialVolatilityModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::LmConstWrapperCorrelationModel::LmConstWrapperCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void LmConstWrapperCorrelationModel(\n            const ext::shared_ptr<LmCorrelationModel>
      & corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::LmConstWrapperCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::factors
    linkageType: ''
    returnType: Size
    signature: Size factors() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::LmConstWrapperCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::correlation
    linkageType: ''
    returnType: Matrix
    signature: Matrix correlation(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix pseudoSqrt(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - t
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::LmConstWrapperCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::correlation
    linkageType: ''
    returnType: Real
    signature: Real correlation(Size i, Size j, Time t, const Array& x = {}) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
    linkageType: ''
    returnType: bool
    signature: bool isTimeIndependent() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::LmConstWrapperCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' corrModel'
    argTypes:
    - ext::shared_ptr<LmCorrelationModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: QuantLib::LmConstWrapperCorrelationModel::LmConstWrapperCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void LmConstWrapperCorrelationModel(\n            const ext::shared_ptr<LmCorrelationModel>
      & corrModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::LmConstWrapperCorrelationModel::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::factors
    linkageType: ''
    returnType: Size
    signature: Size factors() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::LmConstWrapperCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::correlation
    linkageType: ''
    returnType: Matrix
    signature: Matrix correlation(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::pseudoSqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix pseudoSqrt(Time t, const Array& x = {}) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::correlation
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - j
    - t
    argTypes:
    - Size
    - Size
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::LmConstWrapperCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::correlation
    linkageType: ''
    returnType: Real
    signature: Real correlation(Size i, Size j, Time t, const Array& x = {}) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LmConstWrapperCorrelationModel::isTimeIndependent
    linkageType: ''
    returnType: bool
    signature: bool isTimeIndependent() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::LmConstWrapperCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void generateArguments() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - discountCurve
    argTypes:
    - ext::shared_ptr<LiborForwardModel>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::LfmSwaptionEngine::LfmSwaptionEngine
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LfmSwaptionEngine::LfmSwaptionEngine(const ext::shared_ptr<LiborForwardModel>&
      model,\n                                         Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:37,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:43,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:43,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:44,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:46,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:48,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:49,1
    - Dst: getSwaptionVolatilityMatrix
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:52,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:54,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:55,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:57,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:60,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:61,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:62,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:66,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:68,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 70
    functionName: QuantLib::LfmSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - auto::fairRate
    - ext::shared_ptr::volatility
    - fixedPayDates::back
    - getSwaptionVolatilityMatrix
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - DayCounter::yearFraction
    - auto::spread
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ext::shared_ptr::referenceDate
    - exercise::date
    - auto::fixedLegBPS
    - QL_REQUIRE
    - blackFormula
    - std::sqrt
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: void
    signature: void LfmSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - discountCurve
    argTypes:
    - ext::shared_ptr<LiborForwardModel>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::LfmSwaptionEngine::LfmSwaptionEngine
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LfmSwaptionEngine::LfmSwaptionEngine(const ext::shared_ptr<LiborForwardModel>&
      model,\n                                         Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:37,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:43,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:43,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:44,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:46,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:47,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:48,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:49,1
    - Dst: getSwaptionVolatilityMatrix
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:52,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:54,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:55,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:57,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:60,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:61,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:62,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:66,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:68,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 70
    functionName: QuantLib::LfmSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - auto::fairRate
    - ext::shared_ptr::volatility
    - fixedPayDates::back
    - getSwaptionVolatilityMatrix
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - DayCounter::yearFraction
    - auto::spread
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ext::shared_ptr::referenceDate
    - exercise::date
    - auto::fixedLegBPS
    - QL_REQUIRE
    - blackFormula
    - std::sqrt
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: void
    signature: void LfmSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:30,1
    - Dst: QuantLib::LmExponentialCorrelationModel::generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - size
    - rho
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::LmExponentialCorrelationModel::LmExponentialCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::LmExponentialCorrelationModel::generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmExponentialCorrelationModel::LmExponentialCorrelationModel(Size
      size,\n                                                                 Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LmExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmExponentialCorrelationModel::correlation(Time, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::LmExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real LmExponentialCorrelationModel::correlation(\n                                   Size
      i, Size j, Time, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LmExponentialCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmExponentialCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::LmExponentialCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmExponentialCorrelationModel::pseudoSqrt(Time, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: QuantLib::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 54
    functionDepth: 4
    functionLinenumber: 54
    functionLinenumberEnd: 66
    functionName: QuantLib::LmExponentialCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - std::exp
    - Real
    - QuantLib::pseudoSqrt
    linkageType: ''
    returnType: void
    signature: void LmExponentialCorrelationModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:30,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:30,1
    - Dst: QuantLib::LmExponentialCorrelationModel::generateArguments
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - size
    - rho
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 5
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::LmExponentialCorrelationModel::LmExponentialCorrelationModel
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached:
    - ConstantParameter
    - PositiveConstraint
    - QuantLib::LmExponentialCorrelationModel::generateArguments
    linkageType: ''
    returnType: void
    signature: "void LmExponentialCorrelationModel::LmExponentialCorrelationModel(Size
      size,\n                                                                 Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LmExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmExponentialCorrelationModel::correlation(Time, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::LmExponentialCorrelationModel::correlation
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real LmExponentialCorrelationModel::correlation(\n                                   Size
      i, Size j, Time, const Array&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LmExponentialCorrelationModel::isTimeIndependent
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool LmExponentialCorrelationModel::isTimeIndependent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::LmExponentialCorrelationModel::pseudoSqrt
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix LmExponentialCorrelationModel::pseudoSqrt(Time, const Array&)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:60,1
    - Dst: QuantLib::pseudoSqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 54
    functionDepth: 4
    functionLinenumber: 54
    functionLinenumberEnd: 66
    functionName: QuantLib::LmExponentialCorrelationModel::generateArguments
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lmexpcorrmodel.cpp
    functionUses: 2
    functionsReached:
    - std::fabs
    - std::exp
    - Real
    - QuantLib::pseudoSqrt
    linkageType: ''
    returnType: void
    signature: void LmExponentialCorrelationModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:34,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:35,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:39,1
    - Dst: QuantLib::LiborForwardModelProcess::cashFlows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:42,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:42,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:55,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:56,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:60,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:60,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:62,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:64,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - size
    - index
    argTypes:
    - Size
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 66
    functionName: QuantLib::LiborForwardModelProcess::LiborForwardModelProcess
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModelProcess::cashFlows
    - ext::shared_ptr<discretization>
    - ext::shared_ptr::fixingDate
    - forwardingTermStructure
    - DayCounter::yearFraction
    - dayCounter
    - ext::shared_ptr::accrualStartDate
    - std::move
    - ext::shared_ptr::accrualPeriod
    - EulerDiscretization::EulerDiscretization
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::rate
    - Leg::size
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LiborForwardModelProcess::LiborForwardModelProcess(Size size,
      ext::shared_ptr<IborIndex> index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:71,1
    - Dst: QuantLib::LiborForwardModelProcess::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:73,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:78,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 83
    functionName: QuantLib::LiborForwardModelProcess::drift
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::LiborForwardModelProcess::covariance
    - Matrix::column_begin
    - QuantLib::LiborForwardModelProcess::nextIndexReset
    linkageType: ''
    returnType: Array
    signature: "Array LiborForwardModelProcess::drift(Time t,\n                                          const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::LiborForwardModelProcess::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LiborForwardModelProcess::diffusion
    linkageType: ''
    returnType: Matrix
    signature: Matrix LiborForwardModelProcess::diffusion(Time t, const Array& x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - ' x'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LiborForwardModelProcess::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LiborForwardModelProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix LiborForwardModelProcess::covariance(Time t, const Array& x,
      Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionName: QuantLib::LiborForwardModelProcess::apply
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModelProcess::apply(const Array& x0, const Array&
      dx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:118,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:119,1
    - Dst: QuantLib::LiborForwardModelProcess::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:122,1
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:123,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:130,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:130,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:133,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:136,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:138,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:140,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 145
    functionName: QuantLib::LiborForwardModelProcess::evolve
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModelProcess::diffusion
    - std::exp
    - Matrix::row_end
    - std::inner_product
    - begin
    - Real
    - QuantLib::LiborForwardModelProcess::covariance
    - Matrix::row_begin
    - Matrix::column_begin
    - std::sqrt
    - QuantLib::LiborForwardModelProcess::nextIndexReset
    linkageType: ''
    returnType: Array
    signature: "Array LiborForwardModelProcess::evolve(Time t0, const Array& x0,\n
      \                                          Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::LiborForwardModelProcess::initialValues
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModelProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' param'
    argTypes:
    - ext::shared_ptr<LfmCovarianceParameterization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::LiborForwardModelProcess::setCovarParam
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LiborForwardModelProcess::setCovarParam(\n             const
      ext::shared_ptr<LfmCovarianceParameterization> & param)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::LiborForwardModelProcess::covarParam
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LfmCovarianceParameterization>
    signature: ext::shared_ptr<LfmCovarianceParameterization> LiborForwardModelProcess::covarParam()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: QuantLib::LiborForwardModelProcess::index
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> LiborForwardModelProcess::index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:168,1
    - Dst: Period
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:170,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:170,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:171,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:172,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:172,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:173,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:174,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:176,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:178,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:179,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - amount
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 181
    functionName: QuantLib::LiborForwardModelProcess::cashFlows
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 1
    functionsReached:
    - tenor
    - dayCounter
    - fixingDays
    - Period
    - IborLeg
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: Leg
    signature: Leg LiborForwardModelProcess::cashFlows(Real amount) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::LiborForwardModelProcess::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: QuantLib::LiborForwardModelProcess::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LiborForwardModelProcess::factors
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& LiborForwardModelProcess::fixingTimes() const'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & LiborForwardModelProcess::fixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: '& LiborForwardModelProcess::fixingDates() const'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & LiborForwardModelProcess::fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: "&\n    LiborForwardModelProcess::accrualStartTimes() const"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    LiborForwardModelProcess::accrualStartTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: "&\n    LiborForwardModelProcess::accrualEndTimes() const"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    LiborForwardModelProcess::accrualEndTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: QuantLib::LiborForwardModelProcess::nextIndexReset
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 2
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::nextIndexReset(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' rates'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 226
    functionName: QuantLib::LiborForwardModelProcess::discountBond
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DiscountFactor>
    signature: "std::vector<DiscountFactor> LiborForwardModelProcess::discountBond(\n
      \       const std::vector<Rate> & rates) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:34,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:35,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:39,1
    - Dst: QuantLib::LiborForwardModelProcess::cashFlows
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:42,1
    - Dst: Leg::size
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:42,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:52,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:55,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:56,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:60,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:60,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:62,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:64,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - size
    - index
    argTypes:
    - Size
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 66
    functionName: QuantLib::LiborForwardModelProcess::LiborForwardModelProcess
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModelProcess::cashFlows
    - ext::shared_ptr<discretization>
    - ext::shared_ptr::fixingDate
    - forwardingTermStructure
    - DayCounter::yearFraction
    - dayCounter
    - ext::shared_ptr::accrualStartDate
    - std::move
    - ext::shared_ptr::accrualPeriod
    - EulerDiscretization::EulerDiscretization
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::rate
    - Leg::size
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LiborForwardModelProcess::LiborForwardModelProcess(Size size,
      ext::shared_ptr<IborIndex> index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:71,1
    - Dst: QuantLib::LiborForwardModelProcess::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:73,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:77,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:78,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 83
    functionName: QuantLib::LiborForwardModelProcess::drift
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::LiborForwardModelProcess::covariance
    - Matrix::column_begin
    - QuantLib::LiborForwardModelProcess::nextIndexReset
    linkageType: ''
    returnType: Array
    signature: "Array LiborForwardModelProcess::drift(Time t,\n                                          const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::LiborForwardModelProcess::diffusion
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::LiborForwardModelProcess::diffusion
    linkageType: ''
    returnType: Matrix
    signature: Matrix LiborForwardModelProcess::diffusion(Time t, const Array& x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - ' x'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::LiborForwardModelProcess::covariance
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::LiborForwardModelProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix LiborForwardModelProcess::covariance(Time t, const Array& x,
      Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionName: QuantLib::LiborForwardModelProcess::apply
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModelProcess::apply(const Array& x0, const Array&
      dx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::nextIndexReset
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:118,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:119,1
    - Dst: QuantLib::LiborForwardModelProcess::diffusion
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:122,1
    - Dst: QuantLib::LiborForwardModelProcess::covariance
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:123,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:129,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:130,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:130,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:133,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:136,1
    - Dst: std::exp
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:138,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:139,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:140,1
    - Dst: Real
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 145
    functionName: QuantLib::LiborForwardModelProcess::evolve
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LiborForwardModelProcess::diffusion
    - std::exp
    - Matrix::row_end
    - std::inner_product
    - begin
    - Real
    - QuantLib::LiborForwardModelProcess::covariance
    - Matrix::row_begin
    - Matrix::column_begin
    - std::sqrt
    - QuantLib::LiborForwardModelProcess::nextIndexReset
    linkageType: ''
    returnType: Array
    signature: "Array LiborForwardModelProcess::evolve(Time t0, const Array& x0,\n
      \                                          Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::LiborForwardModelProcess::initialValues
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array LiborForwardModelProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' param'
    argTypes:
    - ext::shared_ptr<LfmCovarianceParameterization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::LiborForwardModelProcess::setCovarParam
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LiborForwardModelProcess::setCovarParam(\n             const
      ext::shared_ptr<LfmCovarianceParameterization> & param)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::LiborForwardModelProcess::covarParam
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LfmCovarianceParameterization>
    signature: ext::shared_ptr<LfmCovarianceParameterization> LiborForwardModelProcess::covarParam()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: QuantLib::LiborForwardModelProcess::index
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> LiborForwardModelProcess::index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:168,1
    - Dst: Period
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:170,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:170,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:171,1
    - Dst: tenor
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:172,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:172,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:173,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:174,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:176,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:178,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:179,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - amount
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 181
    functionName: QuantLib::LiborForwardModelProcess::cashFlows
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 2
    functionsReached:
    - tenor
    - dayCounter
    - fixingDays
    - Period
    - IborLeg
    - forwardingTermStructure
    - businessDayConvention
    - fixingCalendar
    linkageType: ''
    returnType: Leg
    signature: Leg LiborForwardModelProcess::cashFlows(Real amount) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::LiborForwardModelProcess::size
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LiborForwardModelProcess::factors
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: QuantLib::LiborForwardModelProcess::factors
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LiborForwardModelProcess::factors
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: '& LiborForwardModelProcess::fixingTimes() const'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & LiborForwardModelProcess::fixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: '& LiborForwardModelProcess::fixingDates() const'
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & LiborForwardModelProcess::fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: "&\n    LiborForwardModelProcess::accrualStartTimes() const"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    LiborForwardModelProcess::accrualStartTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: "&\n    LiborForwardModelProcess::accrualEndTimes() const"
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    LiborForwardModelProcess::accrualEndTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: end
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:210,1
    - Dst: begin
      Src: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: QuantLib::LiborForwardModelProcess::nextIndexReset
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 4
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Size
    signature: Size LiborForwardModelProcess::nextIndexReset(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' rates'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 226
    functionName: QuantLib::LiborForwardModelProcess::discountBond
    functionSourceFile: /src/quantlib/ql/legacy/libormarketmodels/lfmprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DiscountFactor>
    signature: "std::vector<DiscountFactor> LiborForwardModelProcess::discountBond(\n
      \       const std::vector<Rate> & rates) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:36,1
    - Dst: reserve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:39,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:39,1
    - Dst: reserve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:40,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:40,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:43,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:46,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:47,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:50,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:51,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:56,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - l
    - factors
    argTypes:
    - std::vector<ext::shared_ptr<StochasticProcess> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 58
    functionName: QuantLib::JointStochasticProcess::JointStochasticProcess
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - Null<Size>
    - std::move
    - push_back
    - QuantLib::JointStochasticProcess::factors
    - registerWith
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void JointStochasticProcess::JointStochasticProcess(\n        std::vector<ext::shared_ptr<StochasticProcess>
      > l, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::JointStochasticProcess::size
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size JointStochasticProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::JointStochasticProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size JointStochasticProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - i
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionName: QuantLib::JointStochasticProcess::slice
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - begin
    - std::copy
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::slice(const Array& x,\n                                        Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:80,1
    - Dst: QuantLib::JointStochasticProcess::initialValues
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:81,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 88
    functionName: QuantLib::JointStochasticProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::JointStochasticProcess::initialValues
    - std::copy
    - Array::begin
    - begin
    - end
    linkageType: ''
    returnType: Array
    signature: Array JointStochasticProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:95,1
    - Dst: QuantLib::JointStochasticProcess::drift
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:97,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:97,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 104
    functionName: QuantLib::JointStochasticProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::slice
    - QuantLib::JointStochasticProcess::drift
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::drift(Time t,\n                                        const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:111,1
    - Dst: QuantLib::JointStochasticProcess::expectation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:113,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:113,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionName: QuantLib::JointStochasticProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - QuantLib::JointStochasticProcess::expectation
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::slice
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::expectation(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:126,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::JointStochasticProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - QuantLib::JointStochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix JointStochasticProcess::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:135,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:135,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:137,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:140,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:140,1
    - Dst: rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:142,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:144,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:149,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:149,1
    - Dst: QuantLib::JointStochasticProcess::crossModelCorrelation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:150,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:152,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 161
    functionName: QuantLib::JointStochasticProcess::covariance
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - rows
    - QuantLib::JointStochasticProcess::crossModelCorrelation
    - Matrix::diagonal
    - Matrix::row_begin
    - Sqrt
    - QuantLib::JointStochasticProcess::slice
    - row_end
    - QuantLib::JointStochasticProcess::covariance
    - row_begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix JointStochasticProcess::covariance(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:167,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::JointStochasticProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - QuantLib::JointStochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: "Matrix JointStochasticProcess::stdDeviation(Time t0,\n                                                const
      Array& x0,\n                                                Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:175,1
    - Dst: QuantLib::JointStochasticProcess::apply
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 183
    functionName: QuantLib::JointStochasticProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::apply
    - QuantLib::JointStochasticProcess::slice
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::apply(const Array& x0,\n                                        const
      Array& dx) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:189,1
    - Dst: count
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:190,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:190,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:191,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:193,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:193,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:194,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:195,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:198,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:202,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:204,1
    - Dst: QuantLib::JointStochasticProcess::stdDeviation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:208,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:208,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:210,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:211,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:212,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:212,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:213,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:214,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:214,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:217,1
    - Dst: std::fill
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:228,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:229,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:229,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:230,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:231,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:231,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:238,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:240,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:244,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:247,1
    - Dst: Matrix
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:250,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:250,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:251,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:253,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:258,1
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:260,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:261,1
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:266,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:267,1
    - Dst: QuantLib::JointStochasticProcess::preEvolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:271,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:275,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:276,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:278,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:279,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:279,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:280,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:280,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:281,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:282,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:283,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:283,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:284,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:284,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:285,1
    - Dst: QuantLib::JointStochasticProcess::evolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:286,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: QuantLib::JointStochasticProcess::postEvolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:290,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 185
    functionDepth: 3
    functionLinenumber: 185
    functionLinenumberEnd: 291
    functionName: QuantLib::JointStochasticProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - std::fill
    - Matrix::row_end
    - QuantLib::JointStochasticProcess::preEvolve
    - count
    - Real
    - Matrix::row_begin
    - std::transform
    - rankReducedSqrt
    - Array::begin
    - QuantLib::JointStochasticProcess::evolve
    - begin
    - QuantLib::JointStochasticProcess::stdDeviation
    - Matrix::diagonal
    - std::fabs
    - QuantLib::JointStochasticProcess::covariance
    - QuantLib::JointStochasticProcess::size
    - Array::end
    - Matrix
    - Sqrt
    - transpose
    - QuantLib::JointStochasticProcess::slice
    - Matrix::columns
    - end
    - SVD::V
    - SVD::singularValues
    - std::copy
    - std::inner_product
    - correlationIsStateDependent
    - Matrix::rows
    - SVD::U
    - QuantLib::JointStochasticProcess::factors
    - QuantLib::JointStochasticProcess::postEvolve
    - std::sqrt
    - QuantLib::JointStochasticProcess::CachingKey
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::evolve(\n        Time t0, const Array&
      x0, Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: "&\n                          JointStochasticProcess::constituents()
      const"
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<StochasticProcess> >
    signature: "std::vector<ext::shared_ptr<StochasticProcess> > &\n                          JointStochasticProcess::constituents()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:299,1
    - Dst: empty
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:299,1
    - Dst: QuantLib::JointStochasticProcess::time
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 302
    functionName: QuantLib::JointStochasticProcess::time
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::JointStochasticProcess::time
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: Time JointStochasticProcess::time(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:306,1
    - Dst: QuantLib::JointStochasticProcess::StochasticProcess::update
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 309
    functionName: QuantLib::JointStochasticProcess::update
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::JointStochasticProcess::StochasticProcess::update
    - clear
    linkageType: ''
    returnType: void
    signature: void JointStochasticProcess::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:36,1
    - Dst: reserve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:39,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:39,1
    - Dst: reserve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:40,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:40,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:43,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:44,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:46,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:47,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:50,1
    - Dst: push_back
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:51,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:56,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - l
    - factors
    argTypes:
    - std::vector<ext::shared_ptr<StochasticProcess> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 58
    functionName: QuantLib::JointStochasticProcess::JointStochasticProcess
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - Null<Size>
    - std::move
    - push_back
    - QuantLib::JointStochasticProcess::factors
    - registerWith
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void JointStochasticProcess::JointStochasticProcess(\n        std::vector<ext::shared_ptr<StochasticProcess>
      > l, Size factors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::JointStochasticProcess::size
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size JointStochasticProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::JointStochasticProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size JointStochasticProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - i
    argTypes:
    - Array
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionName: QuantLib::JointStochasticProcess::slice
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 5
    functionsReached:
    - Array::begin
    - begin
    - std::copy
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::slice(const Array& x,\n                                        Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:80,1
    - Dst: QuantLib::JointStochasticProcess::initialValues
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:81,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:83,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 88
    functionName: QuantLib::JointStochasticProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::initialValues
    - std::copy
    - Array::begin
    - begin
    - end
    linkageType: ''
    returnType: Array
    signature: Array JointStochasticProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:95,1
    - Dst: QuantLib::JointStochasticProcess::drift
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:97,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:97,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:99,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 104
    functionName: QuantLib::JointStochasticProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::slice
    - QuantLib::JointStochasticProcess::drift
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::drift(Time t,\n                                        const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:111,1
    - Dst: QuantLib::JointStochasticProcess::expectation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:113,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:113,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:115,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionName: QuantLib::JointStochasticProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - QuantLib::JointStochasticProcess::expectation
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::slice
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::expectation(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:126,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::JointStochasticProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - QuantLib::JointStochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: Matrix JointStochasticProcess::diffusion(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:135,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:135,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:137,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:140,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:140,1
    - Dst: rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:142,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:143,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:144,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:149,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:149,1
    - Dst: QuantLib::JointStochasticProcess::crossModelCorrelation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:150,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:152,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 161
    functionName: QuantLib::JointStochasticProcess::covariance
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - rows
    - QuantLib::JointStochasticProcess::crossModelCorrelation
    - Matrix::diagonal
    - Matrix::row_begin
    - Sqrt
    - QuantLib::JointStochasticProcess::slice
    - row_end
    - QuantLib::JointStochasticProcess::covariance
    - row_begin
    linkageType: ''
    returnType: Matrix
    signature: "Matrix JointStochasticProcess::covariance(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:167,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionName: QuantLib::JointStochasticProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 1
    functionsReached:
    - pseudoSqrt
    - QuantLib::JointStochasticProcess::covariance
    linkageType: ''
    returnType: Matrix
    signature: "Matrix JointStochasticProcess::stdDeviation(Time t0,\n                                                const
      Array& x0,\n                                                Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:175,1
    - Dst: QuantLib::JointStochasticProcess::apply
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:176,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:178,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 183
    functionName: QuantLib::JointStochasticProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::size
    - std::copy
    - Array::begin
    - begin
    - QuantLib::JointStochasticProcess::apply
    - QuantLib::JointStochasticProcess::slice
    - end
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::apply(const Array& x0,\n                                        const
      Array& dx) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:189,1
    - Dst: count
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:190,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:190,1
    - Dst: QuantLib::JointStochasticProcess::covariance
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:191,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:193,1
    - Dst: Matrix::diagonal
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:193,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:194,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:195,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:198,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:202,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:204,1
    - Dst: QuantLib::JointStochasticProcess::stdDeviation
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:208,1
    - Dst: QuantLib::JointStochasticProcess::slice
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:208,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:210,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:211,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:212,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:212,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:213,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:214,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:214,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:216,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:217,1
    - Dst: std::fill
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:222,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:228,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:229,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:229,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:230,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:231,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:231,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:236,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:238,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:239,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:240,1
    - Dst: rankReducedSqrt
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:244,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:247,1
    - Dst: Matrix
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:250,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:250,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:251,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:252,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:253,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:258,1
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:260,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:261,1
    - Dst: correlationIsStateDependent
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:266,1
    - Dst: QuantLib::JointStochasticProcess::CachingKey
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:267,1
    - Dst: QuantLib::JointStochasticProcess::preEvolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:271,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:275,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:276,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:278,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:279,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:279,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:280,1
    - Dst: QuantLib::JointStochasticProcess::factors
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:280,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:281,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:282,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:283,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:283,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:284,1
    - Dst: QuantLib::JointStochasticProcess::size
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:284,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:285,1
    - Dst: QuantLib::JointStochasticProcess::evolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:286,1
    - Dst: std::copy
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::end
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:287,1
    - Dst: QuantLib::JointStochasticProcess::postEvolve
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:290,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 185
    functionDepth: 3
    functionLinenumber: 185
    functionLinenumberEnd: 291
    functionName: QuantLib::JointStochasticProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - std::fill
    - Matrix::row_end
    - QuantLib::JointStochasticProcess::preEvolve
    - count
    - Real
    - Matrix::row_begin
    - std::transform
    - rankReducedSqrt
    - Array::begin
    - QuantLib::JointStochasticProcess::evolve
    - begin
    - QuantLib::JointStochasticProcess::stdDeviation
    - Matrix::diagonal
    - std::fabs
    - QuantLib::JointStochasticProcess::covariance
    - QuantLib::JointStochasticProcess::size
    - Array::end
    - Matrix
    - Sqrt
    - transpose
    - QuantLib::JointStochasticProcess::slice
    - Matrix::columns
    - end
    - SVD::V
    - SVD::singularValues
    - std::copy
    - std::inner_product
    - correlationIsStateDependent
    - Matrix::rows
    - SVD::U
    - QuantLib::JointStochasticProcess::factors
    - QuantLib::JointStochasticProcess::postEvolve
    - std::sqrt
    - QuantLib::JointStochasticProcess::CachingKey
    linkageType: ''
    returnType: Array
    signature: "Array JointStochasticProcess::evolve(\n        Time t0, const Array&
      x0, Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: "&\n                          JointStochasticProcess::constituents()
      const"
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<StochasticProcess> >
    signature: "std::vector<ext::shared_ptr<StochasticProcess> > &\n                          JointStochasticProcess::constituents()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:299,1
    - Dst: empty
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:299,1
    - Dst: QuantLib::JointStochasticProcess::time
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 302
    functionName: QuantLib::JointStochasticProcess::time
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::JointStochasticProcess::time
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: Time JointStochasticProcess::time(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:306,1
    - Dst: QuantLib::JointStochasticProcess::StochasticProcess::update
      Src: /src/quantlib/ql/processes/jointstochasticprocess.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 309
    functionName: QuantLib::JointStochasticProcess::update
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::JointStochasticProcess::StochasticProcess::update
    - clear
    linkageType: ''
    returnType: void
    signature: void JointStochasticProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/geometricbrownianprocess.cpp:31,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/geometricbrownianprocess.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - initialValue
    - mue
    - sigma
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::GeometricBrownianMotionProcess::GeometricBrownianMotionProcess
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - ext::shared_ptr<discretization>
    linkageType: ''
    returnType: void
    signature: "void GeometricBrownianMotionProcess::GeometricBrownianMotionProcess(\n
      \                                                         Real initialValue,\n
      \                                                         Real mue,\n                                                          Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::GeometricBrownianMotionProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::GeometricBrownianMotionProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::GeometricBrownianMotionProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::diffusion(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/geometricbrownianprocess.cpp:31,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/geometricbrownianprocess.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - initialValue
    - mue
    - sigma
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::GeometricBrownianMotionProcess::GeometricBrownianMotionProcess
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - ext::shared_ptr<discretization>
    linkageType: ''
    returnType: void
    signature: "void GeometricBrownianMotionProcess::GeometricBrownianMotionProcess(\n
      \                                                         Real initialValue,\n
      \                                                         Real mue,\n                                                          Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::GeometricBrownianMotionProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::GeometricBrownianMotionProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::GeometricBrownianMotionProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/geometricbrownianprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeometricBrownianMotionProcess::diffusion(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:33,1
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' times'
    - ' vols'
    - ' reversions'
    - T
    - ' referenceDate'
    - dc
    argTypes:
    - Array
    - Array
    - Array
    - Real
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: QuantLib::GsrProcess::GsrProcess
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::flushCache
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GsrProcess::GsrProcess(const Array& times,\n                           const
      Array& vols,\n                           const Array& reversions,\n                           const
      Real T,\n                           const Date& referenceDate,\n                           DayCounter
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:38,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:38,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::GsrProcess::checkT
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - getForwardMeasureTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GsrProcess::checkT(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:45,1
    - Dst: Date
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:46,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::GsrProcess::time
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - Date
    - DayCounter
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::time(const Date &d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::GsrProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::y
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:54,1
    - Dst: QuantLib::GsrProcess::G
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::reversion
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::GsrProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::G
    - QuantLib::GsrProcess::y
    - QuantLib::GsrProcess::reversion
    - QuantLib::GsrProcess::sigma
    - getForwardMeasureTime
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:60,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::GsrProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::sigma
    - QuantLib::GsrProcess::checkT
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:65,1
    - Dst: expectation_x0dep_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:66,1
    - Dst: expectation_rn_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:67,1
    - Dst: expectation_tf_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - w
    - xw
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionName: QuantLib::GsrProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - expectation_tf_part
    - QuantLib::GsrProcess::checkT
    - expectation_rn_part
    - expectation_x0dep_part
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::expectation(Time w, Real xw, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:74,1
    - Dst: QuantLib::GsrProcess::variance
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::GsrProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:78,1
    - Dst: QuantLib::GsrProcess::variance
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::GsrProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GsrProcess::variance
    - QuantLib::GsrProcess::checkT
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::variance(Time w, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::GsrProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::GsrProcess::sigma
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::sigma(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::reversion
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::GsrProcess::reversion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GsrProcess::reversion
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::reversion(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:87,1
    - Dst: QuantLib::GsrProcess::y
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::GsrProcess::y
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GsrProcess::checkT
    - QuantLib::GsrProcess::y
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::y(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:94,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:94,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:97,1
    - Dst: QuantLib::GsrProcess::G
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - w
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionName: QuantLib::GsrProcess::G
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 2
    functionsReached:
    - getForwardMeasureTime
    - QuantLib::GsrProcess::G
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::G(Time t, Time w, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:33,1
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' times'
    - ' vols'
    - ' reversions'
    - T
    - ' referenceDate'
    - dc
    argTypes:
    - Array
    - Array
    - Array
    - Real
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 35
    functionName: QuantLib::GsrProcess::GsrProcess
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::flushCache
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GsrProcess::GsrProcess(const Array& times,\n                           const
      Array& vols,\n                           const Array& reversions,\n                           const
      Real T,\n                           const Date& referenceDate,\n                           DayCounter
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:38,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:38,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::GsrProcess::checkT
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 4
    functionsReached:
    - getForwardMeasureTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void GsrProcess::checkT(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:45,1
    - Dst: Date
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:46,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::GsrProcess::time
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - Date
    - DayCounter
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::time(const Date &d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::GsrProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::y
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:54,1
    - Dst: QuantLib::GsrProcess::G
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:55,1
    - Dst: QuantLib::GsrProcess::reversion
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::GsrProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::G
    - QuantLib::GsrProcess::y
    - QuantLib::GsrProcess::reversion
    - QuantLib::GsrProcess::sigma
    - getForwardMeasureTime
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:60,1
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: QuantLib::GsrProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::sigma
    - QuantLib::GsrProcess::checkT
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:65,1
    - Dst: expectation_x0dep_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:66,1
    - Dst: expectation_rn_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:67,1
    - Dst: expectation_tf_part
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - w
    - xw
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionName: QuantLib::GsrProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - expectation_tf_part
    - QuantLib::GsrProcess::checkT
    - expectation_rn_part
    - expectation_x0dep_part
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::expectation(Time w, Real xw, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:74,1
    - Dst: QuantLib::GsrProcess::variance
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::GsrProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GsrProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:78,1
    - Dst: QuantLib::GsrProcess::variance
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::GsrProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::GsrProcess::variance
    - QuantLib::GsrProcess::checkT
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::variance(Time w, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::sigma
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::GsrProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::GsrProcess::sigma
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::sigma(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::reversion
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::GsrProcess::reversion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::GsrProcess::reversion
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::reversion(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::checkT
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:87,1
    - Dst: QuantLib::GsrProcess::y
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::GsrProcess::y
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::GsrProcess::checkT
    - QuantLib::GsrProcess::y
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::y(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:94,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:94,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:97,1
    - Dst: QuantLib::GsrProcess::G
      Src: /src/quantlib/ql/processes/gsrprocess.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - w
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionName: QuantLib::GsrProcess::G
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.cpp
    functionUses: 4
    functionsReached:
    - getForwardMeasureTime
    - QuantLib::GsrProcess::G
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GsrProcess::G(Time t, Time w, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::SquareRootProcess::a
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::SquareRootProcess::b
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SquareRootProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::SquareRootProcess::a
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::SquareRootProcess::b
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SquareRootProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:28,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' h'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 32
    functionName: QuantLib::HullWhiteProcess::HullWhiteProcess
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HullWhiteProcess::HullWhiteProcess(const Handle<YieldTermStructure>&
      h,\n                                       Real a,\n                                       Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::x0
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::HullWhiteProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteProcess::x0
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:39,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:41,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:42,1
    - Dst: QuantLib::HullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: QuantLib::HullWhiteProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - forwardRate
    - QuantLib::HullWhiteProcess::drift
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::diffusion
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::HullWhiteProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::expectation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:53,1
    - Dst: QuantLib::HullWhiteProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    - Dst: QuantLib::HullWhiteProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::HullWhiteProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::HullWhiteProcess::alpha
    - QuantLib::HullWhiteProcess::expectation
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::expectation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::stdDeviation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::HullWhiteProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteProcess::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::variance
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::HullWhiteProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:67,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: QuantLib::HullWhiteProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::alpha(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::HullWhiteProcess::a
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::HullWhiteProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:87,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' h'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::HullWhiteForwardProcess::HullWhiteForwardProcess
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: "void HullWhiteForwardProcess::HullWhiteForwardProcess(\n                                          const
      Handle<YieldTermStructure>& h,\n                                          Real
      a,\n                                          Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::x0
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::HullWhiteForwardProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::x0
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:95,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:97,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:98,1
    - Dst: QuantLib::HullWhiteForwardProcess::drift
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:101,1
    - Dst: QuantLib::HullWhiteForwardProcess::B
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: QuantLib::HullWhiteForwardProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::drift
    - forwardRate
    - QuantLib::HullWhiteForwardProcess::B
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::diffusion
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::HullWhiteForwardProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::expectation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:110,1
    - Dst: QuantLib::HullWhiteForwardProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: QuantLib::HullWhiteForwardProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: QuantLib::HullWhiteForwardProcess::M_T
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: QuantLib::HullWhiteForwardProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::HullWhiteForwardProcess::expectation
    - QuantLib::HullWhiteForwardProcess::M_T
    - QuantLib::HullWhiteForwardProcess::alpha
    linkageType: ''
    returnType: Real
    signature: "Real HullWhiteForwardProcess::expectation(Time t0, Real x0,\n                                              Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::HullWhiteForwardProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::stdDeviation
    linkageType: ''
    returnType: Real
    signature: "Real HullWhiteForwardProcess::stdDeviation(Time t0, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::variance
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::HullWhiteForwardProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:126,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:126,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: QuantLib::HullWhiteForwardProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::alpha(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 146
    functionName: QuantLib::HullWhiteForwardProcess::M_T
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::M_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::HullWhiteForwardProcess::B
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::B(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::HullWhiteForwardProcess::a
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::HullWhiteForwardProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:28,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' h'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 32
    functionName: QuantLib::HullWhiteProcess::HullWhiteProcess
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HullWhiteProcess::HullWhiteProcess(const Handle<YieldTermStructure>&
      h,\n                                       Real a,\n                                       Real
      sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::x0
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::HullWhiteProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteProcess::x0
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:39,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:41,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:42,1
    - Dst: QuantLib::HullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: QuantLib::HullWhiteProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - forwardRate
    - QuantLib::HullWhiteProcess::drift
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::diffusion
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::HullWhiteProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::expectation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:53,1
    - Dst: QuantLib::HullWhiteProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    - Dst: QuantLib::HullWhiteProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::HullWhiteProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - QuantLib::HullWhiteProcess::alpha
    - QuantLib::HullWhiteProcess::expectation
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::expectation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::stdDeviation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::HullWhiteProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteProcess::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::stdDeviation(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteProcess::variance
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::HullWhiteProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:67,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: QuantLib::HullWhiteProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::alpha(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::HullWhiteProcess::a
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::HullWhiteProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteProcess::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:87,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' h'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::HullWhiteForwardProcess::HullWhiteForwardProcess
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: "void HullWhiteForwardProcess::HullWhiteForwardProcess(\n                                          const
      Handle<YieldTermStructure>& h,\n                                          Real
      a,\n                                          Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::x0
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::HullWhiteForwardProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::x0
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:95,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:97,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:98,1
    - Dst: QuantLib::HullWhiteForwardProcess::drift
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:101,1
    - Dst: QuantLib::HullWhiteForwardProcess::B
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: QuantLib::HullWhiteForwardProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::drift
    - forwardRate
    - QuantLib::HullWhiteForwardProcess::B
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::diffusion
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::HullWhiteForwardProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::expectation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:110,1
    - Dst: QuantLib::HullWhiteForwardProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: QuantLib::HullWhiteForwardProcess::alpha
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:111,1
    - Dst: QuantLib::HullWhiteForwardProcess::M_T
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: QuantLib::HullWhiteForwardProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - QuantLib::HullWhiteForwardProcess::expectation
    - QuantLib::HullWhiteForwardProcess::M_T
    - QuantLib::HullWhiteForwardProcess::alpha
    linkageType: ''
    returnType: Real
    signature: "Real HullWhiteForwardProcess::expectation(Time t0, Real x0,\n                                              Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: QuantLib::HullWhiteForwardProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::stdDeviation
    linkageType: ''
    returnType: Real
    signature: "Real HullWhiteForwardProcess::stdDeviation(Time t0, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HullWhiteForwardProcess::variance
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::HullWhiteForwardProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HullWhiteForwardProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::variance(Time t0, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:126,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:126,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: QuantLib::HullWhiteForwardProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::alpha(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 146
    functionName: QuantLib::HullWhiteForwardProcess::M_T
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::M_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hullwhiteprocess.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::HullWhiteForwardProcess::B
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - Real
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::B(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::HullWhiteForwardProcess::a
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::HullWhiteForwardProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteForwardProcess::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:40,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:43,1
    - Dst: QuantLib::detail::GsrProcessCore::flushCache
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - times
    - vols
    - reversions
    - T
    argTypes:
    - Array
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::GsrProcessCore::GsrProcessCore
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QuantLib::detail::GsrProcessCore::flushCache
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GsrProcessCore::GsrProcessCore(const Array &times, const Array
      &vols,\n                               const Array &reversions, const Real T)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:51,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:54,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:58,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:59,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:60,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:61,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:62,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::detail::GsrProcessCore::flushCache
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::fabs
    - clear
    linkageType: ''
    returnType: void
    signature: void GsrProcessCore::flushCache() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:70,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:72,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:76,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:76,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - w
    - xw
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::GsrProcessCore::expectation_x0dep_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_x0dep_part(const Time w, const Real
      xw,\n                                            const Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:89,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:92,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:98,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:98,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:105,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:105,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:106,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:106,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:115,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:117,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:118,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:120,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:122,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:130,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:134,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:141,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:142,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:142,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:143,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:143,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:145,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:151,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:151,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 154
    functionName: QuantLib::detail::GsrProcessCore::expectation_rn_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - pow
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_rn_part(const Time w,\n                                         const
      Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:162,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:165,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:170,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:170,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:173,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:180,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:182,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:189,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:191,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:191,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:192,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:196,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:196,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:197,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:205,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:213,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:213,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:214,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:214,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:215,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:215,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:216,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:216,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:217,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:217,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:218,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:219,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:219,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:221,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:226,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:226,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:229,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 232
    functionName: QuantLib::detail::GsrProcessCore::expectation_tf_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - pow
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_tf_part(const Time w,\n                                         const
      Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:239,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:240,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:241,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:245,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:245,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:246,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:246,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:250,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:250,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:251,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:251,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:252,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:254,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:260,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:260,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 262
    functionName: QuantLib::detail::GsrProcessCore::variance
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::variance(const Time w, const Time dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:268,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:272,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:274,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:279,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:279,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:280,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:280,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:284,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 286
    functionName: QuantLib::detail::GsrProcessCore::y
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - QuantLib::detail::GsrProcessCore::time2
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::y(const Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:290,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:291,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:292,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:296,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:296,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:298,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:303,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:304,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:308,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - t
    - w
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 310
    functionName: QuantLib::detail::GsrProcessCore::G
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::G(const Time t, const Time w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionName: QuantLib::detail::GsrProcessCore::lowerIndex
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 5
    functionsReached:
    - static_cast<int>
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: int
    signature: int GsrProcessCore::lowerIndex(const Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:320,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 324
    functionName: QuantLib::detail::GsrProcessCore::upperIndex
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 6
    functionsReached:
    - static_cast<int>
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: int
    signature: int GsrProcessCore::upperIndex(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - cap
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::GsrProcessCore::cappedTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 6
    functionsReached:
    - Null<Real>
    - QuantLib::detail::GsrProcessCore::time2
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::cappedTime(const Size index, const Real cap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - floor
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::detail::GsrProcessCore::flooredTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 5
    functionsReached:
    - std::max
    - Null<Real>
    - QuantLib::detail::GsrProcessCore::time2
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::flooredTime(const Size index,\n                                 const
      Real floor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::GsrProcessCore::time2
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 7
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::time2(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:346,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: QuantLib::detail::GsrProcessCore::vol
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 4
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::vol(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:352,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 355
    functionName: QuantLib::detail::GsrProcessCore::rev
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 6
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::rev(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:358,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 361
    functionName: QuantLib::detail::GsrProcessCore::revZero
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 5
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: bool
    signature: bool GsrProcessCore::revZero(const Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:33,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:37,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:40,1
    - Dst: Array::size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:43,1
    - Dst: QuantLib::detail::GsrProcessCore::flushCache
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - times
    - vols
    - reversions
    - T
    argTypes:
    - Array
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 48
    functionName: QuantLib::detail::GsrProcessCore::GsrProcessCore
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QuantLib::detail::GsrProcessCore::flushCache
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GsrProcessCore::GsrProcessCore(const Array &times, const Array
      &vols,\n                               const Array &reversions, const Real T)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:51,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:54,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:58,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:59,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:60,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:61,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:62,1
    - Dst: clear
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::detail::GsrProcessCore::flushCache
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 2
    functionsReached:
    - size
    - std::fabs
    - clear
    linkageType: ''
    returnType: void
    signature: void GsrProcessCore::flushCache() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:70,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:72,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:76,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:76,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:77,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:79,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - w
    - xw
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::detail::GsrProcessCore::expectation_x0dep_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_x0dep_part(const Time w, const Real
      xw,\n                                            const Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:89,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:92,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:98,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:98,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:103,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:104,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:105,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:105,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:106,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:106,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:109,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:112,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:115,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:116,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:117,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:118,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:118,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:119,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:120,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:121,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:122,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:130,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:131,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:132,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:133,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:134,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:136,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:137,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:138,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:140,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:141,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:142,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:142,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:143,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:143,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:145,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:146,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:151,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:151,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 154
    functionName: QuantLib::detail::GsrProcessCore::expectation_rn_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - pow
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_rn_part(const Time w,\n                                         const
      Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:162,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:165,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:170,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:170,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:173,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:177,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:179,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:180,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:182,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:183,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:186,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:189,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:190,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:191,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:191,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:192,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:194,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:195,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:196,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:196,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:197,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:205,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:206,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:207,1
    - Dst: pow
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:208,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:212,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:213,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:213,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:214,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:214,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:215,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:215,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:216,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:216,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:217,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:217,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:218,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:219,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:219,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:221,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:222,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:226,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:226,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:229,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:229,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 232
    functionName: QuantLib::detail::GsrProcessCore::expectation_tf_part
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - pow
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::expectation_tf_part(const Time w,\n                                         const
      Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:239,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:240,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:241,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:245,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:245,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:246,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:246,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:249,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:250,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:250,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:251,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:251,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:252,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:254,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:255,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:260,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:260,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - w
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 262
    functionName: QuantLib::detail::GsrProcessCore::variance
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::variance(const Time w, const Time dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:268,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:272,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:274,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:275,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:277,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:278,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:279,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:279,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:280,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:280,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:284,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 264
    functionDepth: 2
    functionLinenumber: 264
    functionLinenumberEnd: 286
    functionName: QuantLib::detail::GsrProcessCore::y
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - QuantLib::detail::GsrProcessCore::time2
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::cappedTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::y(const Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:290,1
    - Dst: find
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:291,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:292,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:296,1
    - Dst: QuantLib::detail::GsrProcessCore::upperIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:296,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:298,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:299,1
    - Dst: QuantLib::detail::GsrProcessCore::revZero
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:301,1
    - Dst: exp
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::cappedTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:302,1
    - Dst: QuantLib::detail::GsrProcessCore::flooredTime
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:303,1
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:304,1
    - Dst: insert
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:308,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - t
    - w
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 310
    functionName: QuantLib::detail::GsrProcessCore::G
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - QuantLib::detail::GsrProcessCore::time2
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::upperIndex
    - Real
    - QuantLib::detail::GsrProcessCore::revZero
    - QuantLib::detail::GsrProcessCore::cappedTime
    - QuantLib::detail::GsrProcessCore::flooredTime
    - end
    - insert
    - QuantLib::detail::GsrProcessCore::rev
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::G(const Time t, const Time w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:313,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionName: QuantLib::detail::GsrProcessCore::lowerIndex
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 10
    functionsReached:
    - static_cast<int>
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: int
    signature: int GsrProcessCore::lowerIndex(const Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:320,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: end
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 324
    functionName: QuantLib::detail::GsrProcessCore::upperIndex
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 12
    functionsReached:
    - static_cast<int>
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: int
    signature: int GsrProcessCore::upperIndex(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - cap
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::GsrProcessCore::cappedTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 12
    functionsReached:
    - Null<Real>
    - QuantLib::detail::GsrProcessCore::time2
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::cappedTime(const Size index, const Real cap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    - Dst: QuantLib::detail::GsrProcessCore::time2
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - floor
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::detail::GsrProcessCore::flooredTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 10
    functionsReached:
    - std::max
    - Null<Real>
    - QuantLib::detail::GsrProcessCore::time2
    linkageType: ''
    returnType: Real
    signature: "Real GsrProcessCore::flooredTime(const Size index,\n                                 const
      Real floor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::GsrProcessCore::time2
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 14
    functionsReached:
    - size
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::time2(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:346,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: QuantLib::detail::GsrProcessCore::vol
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 8
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::vol(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:352,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 355
    functionName: QuantLib::detail::GsrProcessCore::rev
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 12
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::rev(const Size index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:358,1
    - Dst: back
      Src: /src/quantlib/ql/processes/gsrprocesscore.cpp:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 361
    functionName: QuantLib::detail::GsrProcessCore::revZero
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.cpp
    functionUses: 10
    functionsReached:
    - size
    - back
    linkageType: ''
    returnType: bool
    signature: bool GsrProcessCore::revZero(const Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BlackScholesMertonProcess::BlackScholesMertonProcess
      Src: /src/quantlib/ql/processes/merton76process.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' stateVariable'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - jumpInt
    - logJMean
    - logJVol
    - ' disc'
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    - Handle<Quote>
    - Handle<Quote>
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Merton76Process::Merton76Process
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - BlackScholesMertonProcess::BlackScholesMertonProcess
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Merton76Process::Merton76Process(const Handle<Quote>& stateVariable,\n
      \                                    const Handle<YieldTermStructure>& dividendTS,\n
      \                                    const Handle<YieldTermStructure>& riskFreeTS,\n
      \                                    const Handle<BlackVolTermStructure>& blackVolTS,\n
      \                                    Handle<Quote> jumpInt,\n                                     Handle<Quote>
      logJMean,\n                                     Handle<Quote> logJVol,\n                                     const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Merton76Process::x0
      Src: /src/quantlib/ql/processes/merton76process.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Merton76Process::x0
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Merton76Process::x0
    linkageType: ''
    returnType: Real
    signature: Real Merton76Process::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Merton76Process::time
      Src: /src/quantlib/ql/processes/merton76process.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Merton76Process::time
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Merton76Process::time
    linkageType: ''
    returnType: Time
    signature: Time Merton76Process::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/processes/merton76process.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& Merton76Process::stateVariable() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - stateVariable
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::stateVariable() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/merton76process.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& Merton76Process::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & Merton76Process::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/merton76process.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& Merton76Process::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & Merton76Process::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/merton76process.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: "&\n    Merton76Process::blackVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Handle<BlackVolTermStructure>
    signature: "Handle<BlackVolTermStructure> &\n    Merton76Process::blackVolatility()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: '& Merton76Process::jumpIntensity() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::jumpIntensity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& Merton76Process::logMeanJump() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::logMeanJump() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: '& Merton76Process::logJumpVolatility() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::logJumpVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BlackScholesMertonProcess::BlackScholesMertonProcess
      Src: /src/quantlib/ql/processes/merton76process.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/merton76process.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/merton76process.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' stateVariable'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - jumpInt
    - logJMean
    - logJVol
    - ' disc'
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    - Handle<Quote>
    - Handle<Quote>
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Merton76Process::Merton76Process
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - BlackScholesMertonProcess::BlackScholesMertonProcess
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Merton76Process::Merton76Process(const Handle<Quote>& stateVariable,\n
      \                                    const Handle<YieldTermStructure>& dividendTS,\n
      \                                    const Handle<YieldTermStructure>& riskFreeTS,\n
      \                                    const Handle<BlackVolTermStructure>& blackVolTS,\n
      \                                    Handle<Quote> jumpInt,\n                                     Handle<Quote>
      logJMean,\n                                     Handle<Quote> logJVol,\n                                     const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Merton76Process::x0
      Src: /src/quantlib/ql/processes/merton76process.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::Merton76Process::x0
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Merton76Process::x0
    linkageType: ''
    returnType: Real
    signature: Real Merton76Process::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Merton76Process::time
      Src: /src/quantlib/ql/processes/merton76process.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Merton76Process::time
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Merton76Process::time
    linkageType: ''
    returnType: Time
    signature: Time Merton76Process::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/processes/merton76process.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '& Merton76Process::stateVariable() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - stateVariable
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::stateVariable() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/merton76process.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& Merton76Process::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & Merton76Process::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/merton76process.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& Merton76Process::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & Merton76Process::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/merton76process.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: "&\n    Merton76Process::blackVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Handle<BlackVolTermStructure>
    signature: "Handle<BlackVolTermStructure> &\n    Merton76Process::blackVolatility()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: '& Merton76Process::jumpIntensity() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::jumpIntensity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: '& Merton76Process::logMeanJump() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::logMeanJump() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: '& Merton76Process::logJumpVolatility() const'
    functionSourceFile: /src/quantlib/ql/processes/merton76process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & Merton76Process::logJumpVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:46,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - riskFreeRate
    - dividendYield
    - s0
    - v0
    - kappa
    - theta
    - sigma
    - rho
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 54
    functionName: QuantLib::HestonProcess::HestonProcess
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonProcess::HestonProcess(Handle<YieldTermStructure> riskFreeRate,\n
      \                                Handle<YieldTermStructure> dividendYield,\n
      \                                Handle<Quote> s0,\n                                 Real
      v0,\n                                 Real kappa,\n                                 Real
      theta,\n                                 Real sigma,\n                                 Real
      rho,\n                                 Discretization d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HestonProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::HestonProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HestonProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::HestonProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Array
    signature: Array HestonProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:72,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:76,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Array
    signature: Array HestonProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 102
    functionName: QuantLib::HestonProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Matrix
    signature: Matrix HestonProcess::diffusion(Time, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::HestonProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array HestonProcess::apply(const Array& x0,\n                               const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:126,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:127,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:131,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:154,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:155,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:156,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - ' a'
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - std::complex<Real>
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 159
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - QuantLib::modifiedBesselFunction_i
    - std::exp
    - std::log
    - theta
    - std::complex<Real>
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Phi(const HestonProcess& process,\n                               const
      std::complex<Real>& a,\n                               Real nu_0, Real nu_t,
      Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:163,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ch
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sin
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ch(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ph(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:176,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:177,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:181,1
    - Dst: QuantLib::ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:183,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - a
    - x
    - y
    - nu_0
    - nu_t
    - t
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 186
    functionName: QuantLib::int_ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - QuantLib::ph
    - std::exp
    - std::log
    - std::sqrt
    - QuantLib::squared
    - gaussLaguerreIntegration
    - rho
    linkageType: ''
    returnType: Real
    signature: "Real int_ph(const HestonProcess& process,\n                    Real
      a, Real x, Real y, Real nu_0, Real nu_t, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - x
    - nominator
    - denominator
    - m
    argTypes:
    - Real
    - Real*
    - Real*
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: QuantLib::pade
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real pade(Real x, const Real* nominator, const Real* denominator, Size
      m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:213,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:229,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:243,1
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 247
    functionName: QuantLib::Si
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sin
    - QuantLib::pade
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:268,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - nu_0
    - nu_t
    - dt
    - eps
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 286
    functionName: QuantLib::cornishFisherEps
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    - std::sqrt
    - QuantLib::Phi
    - InverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: "Real cornishFisherEps(const HestonProcess& process,\n                              Real
      nu_0, Real nu_t, Time dt, Real eps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:292,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: QuantLib::cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:308,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:309,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:310,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:324,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:330,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:337,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:339,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:340,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:343,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 6
    argNames:
    - ' process'
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 350
    functionName: QuantLib::cdf_nu_ds
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::cornishFisherEps
    - QuantLib::Null
    - Real
    - std::complex::real
    - std::max
    - QL_FAIL
    - QuantLib::Si
    - QuantLib::ch
    - QuantLib::Phi
    - gaussLaguerreIntegration
    - std::abs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds(const HestonProcess& process,\n                       Real
      x, Real nu_0, Real nu_t, Time dt,\n                       HestonProcess::Discretization
      discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:126,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:127,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:131,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:154,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:155,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:156,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - ' a'
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - std::complex<Real>
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 159
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 4
    functionsReached:
    - kappa
    - sigma
    - QuantLib::modifiedBesselFunction_i
    - std::exp
    - std::log
    - theta
    - std::complex<Real>
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Phi(const HestonProcess& process,\n                               const
      std::complex<Real>& a,\n                               Real nu_0, Real nu_t,
      Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:163,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ch
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - std::sin
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ch(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - std::cos
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ph(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:176,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:177,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:181,1
    - Dst: QuantLib::ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:183,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - a
    - x
    - y
    - nu_0
    - nu_t
    - t
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 186
    functionName: QuantLib::int_ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - QuantLib::ph
    - std::exp
    - std::log
    - std::sqrt
    - QuantLib::squared
    - gaussLaguerreIntegration
    - rho
    linkageType: ''
    returnType: Real
    signature: "Real int_ph(const HestonProcess& process,\n                    Real
      a, Real x, Real y, Real nu_0, Real nu_t, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - x
    - nominator
    - denominator
    - m
    argTypes:
    - Real
    - Real*
    - Real*
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: QuantLib::pade
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real pade(Real x, const Real* nominator, const Real* denominator, Size
      m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:213,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:229,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:243,1
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 247
    functionName: QuantLib::Si
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - std::cos
    - std::sin
    - QuantLib::pade
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:268,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - nu_0
    - nu_t
    - dt
    - eps
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 286
    functionName: QuantLib::cornishFisherEps
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - std::complex<Real>
    - std::sqrt
    - QuantLib::Phi
    - InverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: "Real cornishFisherEps(const HestonProcess& process,\n                              Real
      nu_0, Real nu_t, Time dt, Real eps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:292,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: QuantLib::cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:308,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:309,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:310,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:324,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:330,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:337,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:339,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:340,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:343,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 6
    argNames:
    - ' process'
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 350
    functionName: QuantLib::cdf_nu_ds
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::cornishFisherEps
    - QuantLib::Null
    - Real
    - std::complex::real
    - std::max
    - QL_FAIL
    - QuantLib::Si
    - QuantLib::ch
    - QuantLib::Phi
    - gaussLaguerreIntegration
    - std::abs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds(const HestonProcess& process,\n                       Real
      x, Real nu_0, Real nu_t, Time dt,\n                       HestonProcess::Discretization
      discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::cdf_nu_ds
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    - x0
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 353
    functionDepth: 3
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionName: QuantLib::cdf_nu_ds_minus_x
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::cdf_nu_ds
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds_minus_x(const HestonProcess &process, Real x, Real
      nu_0,\n                           Real nu_t, Time dt,\n                           HestonProcess::Discretization
      discretization,\n                           Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:361,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:362,1
    - Dst: discount
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:362,1
    - Dst: discount
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:363,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:366,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:366,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:367,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:373,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:374,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:374,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:375,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:375,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:379,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:379,1
    - Dst: cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:383,1
    - Dst: SegmentIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:385,1
    - Dst: int_ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:386,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:388,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:389,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:391,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - x
    - v
    - t
    - eps
    argTypes:
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 394
    functionName: QuantLib::HestonProcess::pdf
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - s0
    - SegmentIntegral
    - std::exp
    - std::log
    - QuantLib::BSMRNDCalculator::pdf
    - int_ph
    - boost::math::non_central_chi_squared_distribution<Real>
    - std::max
    - discount
    - std::sqrt
    - cornishFisherEps
    linkageType: ''
    returnType: Real
    signature: Real HestonProcess::pdf(Real x, Real v, Time t, Real eps) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:401,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:402,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:411,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:411,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:413,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:414,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:422,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:422,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:424,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:425,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:429,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:433,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:433,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:435,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:436,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:440,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:450,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:450,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:451,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:452,1
    - Dst: QuantLib::HestonProcess::varianceDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:455,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:459,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:467,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:484,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:485,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:490,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:491,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:500,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:504,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:505,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:507,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:507,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:510,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:511,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:513,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:514,1
    - Dst: QuantLib::HestonProcess::varianceDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:522,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:524,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:525,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:525,1
    - Dst: Brent
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:527,1
    - Dst: cdf_nu_ds_minus_x
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:528,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:534,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:535,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:538,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:539,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:546,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 66
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 550
    functionName: QuantLib::HestonProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::HestonProcess::varianceDistribution
    - std::exp
    - std::log
    - Brent
    - std::min
    - Real
    - std::max
    - cdf_nu_ds_minus_x
    - std::fabs
    - QL_FAIL
    - std::sqrt
    - CumulativeNormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array HestonProcess::evolve(Time t0, const Array& x0,\n                                Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionName: '& HestonProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & HestonProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionName: '& HestonProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & HestonProcess::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 560
    functionDepth: 0
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionName: '& HestonProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & HestonProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:565,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 567
    functionName: QuantLib::HestonProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time HestonProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:571,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:572,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:574,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:575,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:575,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:577,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - dw
    - dt
    argTypes:
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 579
    functionName: QuantLib::HestonProcess::varianceDistribution
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::max
    - InverseNonCentralCumulativeChiSquareDistribution
    - CumulativeNormalDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real HestonProcess::varianceDistribution(Real v, Real dw, Time dt)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:46,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - riskFreeRate
    - dividendYield
    - s0
    - v0
    - kappa
    - theta
    - sigma
    - rho
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 54
    functionName: QuantLib::HestonProcess::HestonProcess
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonProcess::HestonProcess(Handle<YieldTermStructure> riskFreeRate,\n
      \                                Handle<YieldTermStructure> dividendYield,\n
      \                                Handle<Quote> s0,\n                                 Real
      v0,\n                                 Real kappa,\n                                 Real
      theta,\n                                 Real sigma,\n                                 Real
      rho,\n                                 Discretization d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HestonProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: QuantLib::HestonProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HestonProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::HestonProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Array
    signature: Array HestonProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:71,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:72,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:76,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Array
    signature: Array HestonProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 102
    functionName: QuantLib::HestonProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Matrix
    signature: Matrix HestonProcess::diffusion(Time, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::HestonProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array HestonProcess::apply(const Array& x0,\n                               const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:126,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:127,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:131,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:154,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:155,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:156,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - ' a'
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - std::complex<Real>
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 159
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 8
    functionsReached:
    - kappa
    - sigma
    - QuantLib::modifiedBesselFunction_i
    - std::exp
    - std::log
    - theta
    - std::complex<Real>
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Phi(const HestonProcess& process,\n                               const
      std::complex<Real>& a,\n                               Real nu_0, Real nu_t,
      Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:163,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ch
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached:
    - std::sin
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ch(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached:
    - std::cos
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ph(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:176,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:177,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:181,1
    - Dst: QuantLib::ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:183,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - a
    - x
    - y
    - nu_0
    - nu_t
    - t
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 186
    functionName: QuantLib::int_ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - QuantLib::ph
    - std::exp
    - std::log
    - std::sqrt
    - QuantLib::squared
    - gaussLaguerreIntegration
    - rho
    linkageType: ''
    returnType: Real
    signature: "Real int_ph(const HestonProcess& process,\n                    Real
      a, Real x, Real y, Real nu_0, Real nu_t, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - x
    - nominator
    - denominator
    - m
    argTypes:
    - Real
    - Real*
    - Real*
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: QuantLib::pade
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real pade(Real x, const Real* nominator, const Real* denominator, Size
      m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:213,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:229,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:243,1
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 247
    functionName: QuantLib::Si
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached:
    - std::cos
    - std::sin
    - QuantLib::pade
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:268,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - nu_0
    - nu_t
    - dt
    - eps
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 286
    functionName: QuantLib::cornishFisherEps
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>
    - std::sqrt
    - QuantLib::Phi
    - InverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: "Real cornishFisherEps(const HestonProcess& process,\n                              Real
      nu_0, Real nu_t, Time dt, Real eps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:292,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: QuantLib::cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:308,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:309,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:310,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:324,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:330,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:337,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:339,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:340,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:343,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 6
    argNames:
    - ' process'
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 350
    functionName: QuantLib::cdf_nu_ds
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::cornishFisherEps
    - QuantLib::Null
    - Real
    - std::complex::real
    - std::max
    - QL_FAIL
    - QuantLib::Si
    - QuantLib::ch
    - QuantLib::Phi
    - gaussLaguerreIntegration
    - std::abs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds(const HestonProcess& process,\n                       Real
      x, Real nu_0, Real nu_t, Time dt,\n                       HestonProcess::Discretization
      discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: theta
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:126,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:127,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:128,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:131,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:137,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:139,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:146,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:148,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:150,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:151,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:154,1
    - Dst: QuantLib::modifiedBesselFunction_i
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:155,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:156,1
    - Dst: std::pow
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - ' a'
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - std::complex<Real>
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 159
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 12
    functionsReached:
    - kappa
    - sigma
    - QuantLib::modifiedBesselFunction_i
    - std::exp
    - std::log
    - theta
    - std::complex<Real>
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> Phi(const HestonProcess& process,\n                               const
      std::complex<Real>& a,\n                               Real nu_0, Real nu_t,
      Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:163,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::ch
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 3
    functionsReached:
    - std::sin
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ch(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' process'
    - x
    - u
    - nu_0
    - nu_t
    - dt
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 3
    functionsReached:
    - std::cos
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: "Real ph(const HestonProcess& process,\n                Real x, Real
      u, Real nu_0, Real nu_t, Time dt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rho
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:176,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:177,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:179,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:181,1
    - Dst: QuantLib::ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:183,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' process'
    - a
    - x
    - y
    - nu_0
    - nu_t
    - t
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 186
    functionName: QuantLib::int_ph
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - QuantLib::ph
    - std::exp
    - std::log
    - std::sqrt
    - QuantLib::squared
    - gaussLaguerreIntegration
    - rho
    linkageType: ''
    returnType: Real
    signature: "Real int_ph(const HestonProcess& process,\n                    Real
      a, Real x, Real y, Real nu_0, Real nu_t, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - x
    - nominator
    - denominator
    - m
    argTypes:
    - Real
    - Real*
    - Real*
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: QuantLib::pade
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real pade(Real x, const Real* nominator, const Real* denominator, Size
      m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:213,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:229,1
    - Dst: QuantLib::pade
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:243,1
    - Dst: std::cos
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    - Dst: std::sin
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 247
    functionName: QuantLib::Si
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 3
    functionsReached:
    - std::cos
    - std::sin
    - QuantLib::pade
    linkageType: ''
    returnType: Real
    signature: Real Si(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:254,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:256,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:258,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:260,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:262,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:268,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' process'
    - nu_0
    - nu_t
    - dt
    - eps
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 286
    functionName: QuantLib::cornishFisherEps
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 3
    functionsReached:
    - std::complex<Real>
    - std::sqrt
    - QuantLib::Phi
    - InverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: "Real cornishFisherEps(const HestonProcess& process,\n                              Real
      nu_0, Real nu_t, Time dt, Real eps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:292,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: QuantLib::cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:293,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:303,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:307,1
    - Dst: gaussLaguerreIntegration
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:308,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:309,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:310,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:316,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:320,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:321,1
    - Dst: QuantLib::ch
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:324,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:330,1
    - Dst: QuantLib::Si
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:337,1
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:339,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:340,1
    - Dst: std::abs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:343,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 6
    argNames:
    - ' process'
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 350
    functionName: QuantLib::cdf_nu_ds
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 1
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::cornishFisherEps
    - QuantLib::Null
    - Real
    - std::complex::real
    - std::max
    - QL_FAIL
    - QuantLib::Si
    - QuantLib::ch
    - QuantLib::Phi
    - gaussLaguerreIntegration
    - std::abs
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds(const HestonProcess& process,\n                       Real
      x, Real nu_0, Real nu_t, Time dt,\n                       HestonProcess::Discretization
      discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::cdf_nu_ds
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - x
    - nu_0
    - nu_t
    - dt
    - discretization
    - x0
    argTypes:
    - HestonProcess
    - Real
    - Real
    - Real
    - Time
    - HestonProcess::Discretization
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 353
    functionDepth: 3
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionName: QuantLib::cdf_nu_ds_minus_x
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::cdf_nu_ds
    linkageType: ''
    returnType: Real
    signature: "Real cdf_nu_ds_minus_x(const HestonProcess &process, Real x, Real
      nu_0,\n                           Real nu_t, Time dt,\n                           HestonProcess::Discretization
      discretization,\n                           Real x0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:361,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:362,1
    - Dst: discount
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:362,1
    - Dst: discount
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:363,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:366,1
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:366,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:367,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:373,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:374,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:374,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:375,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:375,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:379,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:379,1
    - Dst: cornishFisherEps
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:383,1
    - Dst: SegmentIntegral
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:385,1
    - Dst: int_ph
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:386,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:388,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:389,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:391,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - x
    - v
    - t
    - eps
    argTypes:
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 394
    functionName: QuantLib::HestonProcess::pdf
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - s0
    - SegmentIntegral
    - std::exp
    - std::log
    - QuantLib::BSMRNDCalculator::pdf
    - int_ph
    - boost::math::non_central_chi_squared_distribution<Real>
    - std::max
    - discount
    - std::sqrt
    - cornishFisherEps
    linkageType: ''
    returnType: Real
    signature: Real HestonProcess::pdf(Real x, Real v, Time t, Real eps) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:401,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:402,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:411,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:411,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:413,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:414,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:422,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:422,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:424,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:425,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:429,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:433,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:433,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:435,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:436,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:440,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:450,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:450,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:451,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:452,1
    - Dst: QuantLib::HestonProcess::varianceDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:455,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:459,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:467,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:484,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:485,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:490,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:491,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:500,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:504,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:505,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:507,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:507,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:510,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:511,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:513,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:514,1
    - Dst: QuantLib::HestonProcess::varianceDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:522,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:524,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:525,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:525,1
    - Dst: Brent
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:527,1
    - Dst: cdf_nu_ds_minus_x
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:528,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:534,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:535,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:538,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:539,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:546,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 66
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 550
    functionName: QuantLib::HestonProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::HestonProcess::varianceDistribution
    - std::exp
    - std::log
    - Brent
    - std::min
    - Real
    - std::max
    - cdf_nu_ds_minus_x
    - std::fabs
    - QL_FAIL
    - std::sqrt
    - CumulativeNormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array HestonProcess::evolve(Time t0, const Array& x0,\n                                Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionName: '& HestonProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & HestonProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionName: '& HestonProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & HestonProcess::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 560
    functionDepth: 0
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionName: '& HestonProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & HestonProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:565,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 567
    functionName: QuantLib::HestonProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time HestonProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:571,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:572,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:574,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:575,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:575,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:577,1
    - Dst: InverseNonCentralCumulativeChiSquareDistribution
      Src: /src/quantlib/ql/processes/hestonprocess.cpp:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - dw
    - dt
    argTypes:
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 579
    functionName: QuantLib::HestonProcess::varianceDistribution
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::max
    - InverseNonCentralCumulativeChiSquareDistribution
    - CumulativeNormalDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real HestonProcess::varianceDistribution(Real v, Real dw, Time dt)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:40,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - riskFreeRate
    - dividendYield
    - s0
    - v0
    - omega
    - alpha
    - beta
    - gamma
    - lambda
    - daysPerYear
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 47
    functionName: QuantLib::GJRGARCHProcess::GJRGARCHProcess
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GJRGARCHProcess::GJRGARCHProcess(Handle<YieldTermStructure> riskFreeRate,\n
      \                                    Handle<YieldTermStructure> dividendYield,\n
      \                                    Handle<Quote> s0,\n                                     Real
      v0,\n                                     Real omega,\n                                     Real
      alpha,\n                                     Real beta,\n                                     Real
      gamma,\n                                     Real lambda,\n                                     Real
      daysPerYear,\n                                     Discretization d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::GJRGARCHProcess::size
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size GJRGARCHProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::GJRGARCHProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Array
    signature: Array GJRGARCHProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:62,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:63,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:67,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionName: QuantLib::GJRGARCHProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: Array GJRGARCHProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:96,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 112
    functionName: QuantLib::GJRGARCHProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    - std::sqrt
    - std::exp
    - Real
    linkageType: ''
    returnType: Matrix
    signature: Matrix GJRGARCHProcess::diffusion(Time, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::GJRGARCHProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array GJRGARCHProcess::apply(const Array& x0,\n                                 const
      Array& dx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:124,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:139,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:150,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:151,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:161,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:161,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:162,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:172,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:172,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:173,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:174,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:184,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 188
    functionName: QuantLib::GJRGARCHProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    - QL_FAIL
    - std::fabs
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: "Array GJRGARCHProcess::evolve(Time t0, const Array& x0,\n                                  Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: '& GJRGARCHProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & GJRGARCHProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: '& GJRGARCHProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & GJRGARCHProcess::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: '& GJRGARCHProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & GJRGARCHProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:203,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::GJRGARCHProcess::time
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time GJRGARCHProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:40,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - riskFreeRate
    - dividendYield
    - s0
    - v0
    - omega
    - alpha
    - beta
    - gamma
    - lambda
    - daysPerYear
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 47
    functionName: QuantLib::GJRGARCHProcess::GJRGARCHProcess
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GJRGARCHProcess::GJRGARCHProcess(Handle<YieldTermStructure> riskFreeRate,\n
      \                                    Handle<YieldTermStructure> dividendYield,\n
      \                                    Handle<Quote> s0,\n                                     Real
      v0,\n                                     Real omega,\n                                     Real
      alpha,\n                                     Real beta,\n                                     Real
      gamma,\n                                     Real lambda,\n                                     Real
      daysPerYear,\n                                     Discretization d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::GJRGARCHProcess::size
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size GJRGARCHProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::GJRGARCHProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Array
    signature: Array GJRGARCHProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:62,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:63,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:67,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionName: QuantLib::GJRGARCHProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: Array GJRGARCHProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:96,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 112
    functionName: QuantLib::GJRGARCHProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    - std::sqrt
    - std::exp
    - Real
    linkageType: ''
    returnType: Matrix
    signature: Matrix GJRGARCHProcess::diffusion(Time, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: QuantLib::GJRGARCHProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: "Array GJRGARCHProcess::apply(const Array& x0,\n                                 const
      Array& dx) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:124,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:139,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:150,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:151,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:152,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:161,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:161,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:162,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:172,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:172,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:173,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:174,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:184,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 188
    functionName: QuantLib::GJRGARCHProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - std::exp
    - Real
    - QL_FAIL
    - std::fabs
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: "Array GJRGARCHProcess::evolve(Time t0, const Array& x0,\n                                  Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: '& GJRGARCHProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & GJRGARCHProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: '& GJRGARCHProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & GJRGARCHProcess::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: '& GJRGARCHProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & GJRGARCHProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:203,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/gjrgarchprocess.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::GJRGARCHProcess::time
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time GJRGARCHProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:37,1
    - Dst: QuantLib::HestonSLVProcess::setParameters
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' hestonProcess'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::HestonSLVProcess::HestonSLVProcess
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::HestonSLVProcess::setParameters
    linkageType: ''
    returnType: void
    signature: "void HestonSLVProcess::HestonSLVProcess(const ext::shared_ptr<HestonProcess>&
      hestonProcess,\n                                       ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                       const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::setParameters
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:42,1
    - Dst: QuantLib::StochasticProcess::update
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::HestonSLVProcess::update
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess::update
    - QuantLib::HestonSLVProcess::setParameters
    linkageType: ''
    returnType: void
    signature: void HestonSLVProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:52,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionName: QuantLib::HestonSLVProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - localVol
    - riskFreeRate
    - std::max
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array HestonSLVProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::HestonSLVProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - localVol
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix HestonSLVProcess::diffusion(Time t, const Array& x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:89,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:99,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:105,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 117
    functionName: QuantLib::HestonSLVProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - std::log
    - localVol
    - riskFreeRate
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: "Array HestonSLVProcess::evolve(\n        Time t0, const Array& x0,
      Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::v0
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:120,1
    - Dst: QuantLib::HestonSLVProcess::kappa
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:121,1
    - Dst: QuantLib::HestonSLVProcess::theta
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:122,1
    - Dst: QuantLib::HestonSLVProcess::sigma
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:123,1
    - Dst: QuantLib::HestonSLVProcess::rho
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::HestonSLVProcess::setParameters
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HestonSLVProcess::rho
    - QuantLib::HestonSLVProcess::sigma
    - QuantLib::HestonSLVProcess::v0
    - QuantLib::HestonSLVProcess::theta
    - QuantLib::HestonSLVProcess::kappa
    linkageType: ''
    returnType: void
    signature: void HestonSLVProcess::setParameters()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:37,1
    - Dst: QuantLib::HestonSLVProcess::setParameters
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' hestonProcess'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: QuantLib::HestonSLVProcess::HestonSLVProcess
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::HestonSLVProcess::setParameters
    linkageType: ''
    returnType: void
    signature: "void HestonSLVProcess::HestonSLVProcess(const ext::shared_ptr<HestonProcess>&
      hestonProcess,\n                                       ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                       const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::setParameters
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:42,1
    - Dst: QuantLib::StochasticProcess::update
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::HestonSLVProcess::update
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcess::update
    - QuantLib::HestonSLVProcess::setParameters
    linkageType: ''
    returnType: void
    signature: void HestonSLVProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:52,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionName: QuantLib::HestonSLVProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - localVol
    - riskFreeRate
    - std::max
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array HestonSLVProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:64,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: QuantLib::HestonSLVProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - localVol
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix HestonSLVProcess::diffusion(Time t, const Array& x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:89,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:97,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:99,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:99,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:105,1
    - Dst: localVol
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:110,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 117
    functionName: QuantLib::HestonSLVProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - std::log
    - localVol
    - riskFreeRate
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Array
    signature: "Array HestonSLVProcess::evolve(\n        Time t0, const Array& x0,
      Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::v0
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:120,1
    - Dst: QuantLib::HestonSLVProcess::kappa
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:121,1
    - Dst: QuantLib::HestonSLVProcess::theta
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:122,1
    - Dst: QuantLib::HestonSLVProcess::sigma
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:123,1
    - Dst: QuantLib::HestonSLVProcess::rho
      Src: /src/quantlib/ql/processes/hestonslvprocess.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::HestonSLVProcess::setParameters
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::HestonSLVProcess::rho
    - QuantLib::HestonSLVProcess::sigma
    - QuantLib::HestonSLVProcess::v0
    - QuantLib::HestonSLVProcess::theta
    - QuantLib::HestonSLVProcess::kappa
    linkageType: ''
    returnType: void
    signature: void HestonSLVProcess::setParameters()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EulerDiscretization>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - x0
    - dividendTS
    - riskFreeTS
    - blackVolTS
    - localVolTS
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: QuantLib::GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<EulerDiscretization>
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess(\n
      \       Handle<Quote> x0,\n        Handle<YieldTermStructure> dividendTS,\n
      \       Handle<YieldTermStructure> riskFreeTS,\n        Handle<BlackVolTermStructure>
      blackVolTS,\n        Handle<LocalVolTermStructure> localVolTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - x0
    - dividendTS
    - riskFreeTS
    - blackVolTS
    - ' disc'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 68
    functionName: QuantLib::GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess(\n
      \       Handle<Quote> x0,\n        Handle<YieldTermStructure> dividendTS,\n
      \       Handle<YieldTermStructure> riskFreeTS,\n        Handle<BlackVolTermStructure>
      blackVolTS,\n        const ext::shared_ptr<discretization>& disc,\n        bool
      forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GeneralizedBlackScholesProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:75,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:79,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionName: QuantLib::GeneralizedBlackScholesProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::GeneralizedBlackScholesProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 1
    functionsReached:
    - localVolatility
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dx
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::GeneralizedBlackScholesProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::apply(Real x0, Real dx) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:99,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:99,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:101,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 106
    functionName: QuantLib::GeneralizedBlackScholesProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - localVolatility
    - forwardRate
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedBlackScholesProcess::expectation(Time t0,\n                                                     Real
      x0,\n                                                     Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:112,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:112,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 117
    functionName: QuantLib::GeneralizedBlackScholesProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - localVolatility
    - std::sqrt
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::stdDeviation(Time t0, Real x0,
      Time dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:120,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:123,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:124,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 129
    functionName: QuantLib::GeneralizedBlackScholesProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - localVolatility
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::variance(Time t0, Real x0, Time
      dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:133,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:136,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:137,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:139,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::apply
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:143,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::apply
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:145,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::drift
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:145,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::stdDeviation
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::GeneralizedBlackScholesProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::GeneralizedBlackScholesProcess::drift
    - QuantLib::GeneralizedBlackScholesProcess::apply
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - std::sqrt
    - QuantLib::GeneralizedBlackScholesProcess::stdDeviation
    - localVolatility
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedBlackScholesProcess::evolve(Time t0, Real x0,\n                                                Time
      dt, Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:150,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: QuantLib::GeneralizedBlackScholesProcess::time
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time GeneralizedBlackScholesProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::GeneralizedBlackScholesProcess::update
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void GeneralizedBlackScholesProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    GeneralizedBlackScholesProcess::stateVariable() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: "Handle<Quote> &\n    GeneralizedBlackScholesProcess::stateVariable()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionName: "&\n    GeneralizedBlackScholesProcess::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    GeneralizedBlackScholesProcess::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: "&\n    GeneralizedBlackScholesProcess::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    GeneralizedBlackScholesProcess::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: "&\n    GeneralizedBlackScholesProcess::blackVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<BlackVolTermStructure>
    signature: "Handle<BlackVolTermStructure> &\n    GeneralizedBlackScholesProcess::blackVolatility()
      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BlackConstantVol>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:189,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:190,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:193,1
    - Dst: ext::make_shared<LocalConstantVol>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:193,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:194,1
    - Dst: ext::shared_ptr::blackVol
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:195,1
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:196,1
    - Dst: ext::dynamic_pointer_cast<BlackVarianceCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:203,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:204,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:207,1
    - Dst: ext::make_shared<LocalVolCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:207,1
    - Dst: Handle<BlackVarianceCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:208,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:214,1
    - Dst: ext::make_shared<LocalVolSurface>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:215,1
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 224
    functionName: "&\n    GeneralizedBlackScholesProcess::localVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - Handle<BlackVarianceCurve>
    - blackVolatility
    - ext::make_shared<LocalVolCurve>
    - ext::shared_ptr::blackVol
    - value
    - ext::shared_ptr::dayCounter
    - ext::make_shared<LocalVolSurface>
    - ext::make_shared<LocalConstantVol>
    - ext::dynamic_pointer_cast<BlackConstantVol>
    - ext::shared_ptr::referenceDate
    - linkTo
    - ext::dynamic_pointer_cast<BlackVarianceCurve>
    linkageType: ''
    returnType: Handle<LocalVolTermStructure>
    signature: "Handle<LocalVolTermStructure> &\n    GeneralizedBlackScholesProcess::localVolatility()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:238,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:238,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' x0'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 242
    functionName: QuantLib::BlackScholesProcess::BlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - FlatForward::FlatForward
    - ext::shared_ptr<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void BlackScholesProcess::BlackScholesProcess(\n                              const
      Handle<Quote>& x0,\n                              const Handle<YieldTermStructure>&
      riskFreeTS,\n                              const Handle<BlackVolTermStructure>&
      blackVolTS,\n                              const ext::shared_ptr<discretization>&
      d,\n                              bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' x0'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 253
    functionName: QuantLib::BlackScholesMertonProcess::BlackScholesMertonProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackScholesMertonProcess::BlackScholesMertonProcess(\n                              const
      Handle<Quote>& x0,\n                              const Handle<YieldTermStructure>&
      dividendTS,\n                              const Handle<YieldTermStructure>&
      riskFreeTS,\n                              const Handle<BlackVolTermStructure>&
      blackVolTS,\n                              const ext::shared_ptr<discretization>&
      d,\n                              bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' x0'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::BlackProcess::BlackProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackProcess::BlackProcess(const Handle<Quote>& x0,\n                               const
      Handle<YieldTermStructure>& riskFreeTS,\n                               const
      Handle<BlackVolTermStructure>& blackVolTS,\n                               const
      ext::shared_ptr<discretization>& d,\n                               bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' x0'
    - ' foreignRiskFreeTS'
    - ' domesticRiskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionName: QuantLib::GarmanKohlagenProcess::GarmanKohlagenProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GarmanKohlagenProcess::GarmanKohlagenProcess(\n                          const
      Handle<Quote>& x0,\n                          const Handle<YieldTermStructure>&
      foreignRiskFreeTS,\n                          const Handle<YieldTermStructure>&
      domesticRiskFreeTS,\n                          const Handle<BlackVolTermStructure>&
      blackVolTS,\n                          const ext::shared_ptr<discretization>&
      d,\n                          bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EulerDiscretization>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - x0
    - dividendTS
    - riskFreeTS
    - blackVolTS
    - localVolTS
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: QuantLib::GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<EulerDiscretization>
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess(\n
      \       Handle<Quote> x0,\n        Handle<YieldTermStructure> dividendTS,\n
      \       Handle<YieldTermStructure> riskFreeTS,\n        Handle<BlackVolTermStructure>
      blackVolTS,\n        Handle<LocalVolTermStructure> localVolTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:61,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:64,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - x0
    - dividendTS
    - riskFreeTS
    - blackVolTS
    - ' disc'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 68
    functionName: QuantLib::GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess(\n
      \       Handle<Quote> x0,\n        Handle<YieldTermStructure> dividendTS,\n
      \       Handle<YieldTermStructure> riskFreeTS,\n        Handle<BlackVolTermStructure>
      blackVolTS,\n        const ext::shared_ptr<discretization>& disc,\n        bool
      forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GeneralizedBlackScholesProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:75,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:79,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionName: QuantLib::GeneralizedBlackScholesProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 1
    functionsReached:
    - forwardRate
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::GeneralizedBlackScholesProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 3
    functionsReached:
    - localVolatility
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dx
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::GeneralizedBlackScholesProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::apply(Real x0, Real dx) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:99,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:99,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:101,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 106
    functionName: QuantLib::GeneralizedBlackScholesProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - localVolatility
    - forwardRate
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedBlackScholesProcess::expectation(Time t0,\n                                                     Real
      x0,\n                                                     Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:112,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:112,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 117
    functionName: QuantLib::GeneralizedBlackScholesProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - localVolatility
    - std::sqrt
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::stdDeviation(Time t0, Real x0,
      Time dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:120,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:123,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:124,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 129
    functionName: QuantLib::GeneralizedBlackScholesProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - localVolatility
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedBlackScholesProcess::variance(Time t0, Real x0, Time
      dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: localVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:133,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::variance
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:136,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:137,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:139,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::apply
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:143,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::apply
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:145,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::drift
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:145,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::stdDeviation
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::GeneralizedBlackScholesProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::GeneralizedBlackScholesProcess::drift
    - QuantLib::GeneralizedBlackScholesProcess::apply
    - QuantLib::GeneralizedBlackScholesProcess::variance
    - std::sqrt
    - QuantLib::GeneralizedBlackScholesProcess::stdDeviation
    - localVolatility
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedBlackScholesProcess::evolve(Time t0, Real x0,\n                                                Time
      dt, Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:150,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: QuantLib::GeneralizedBlackScholesProcess::time
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: Time
    signature: Time GeneralizedBlackScholesProcess::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::GeneralizedBlackScholesProcess::update
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void GeneralizedBlackScholesProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    GeneralizedBlackScholesProcess::stateVariable() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: "Handle<Quote> &\n    GeneralizedBlackScholesProcess::stateVariable()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionName: "&\n    GeneralizedBlackScholesProcess::dividendYield() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    GeneralizedBlackScholesProcess::dividendYield()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: "&\n    GeneralizedBlackScholesProcess::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    GeneralizedBlackScholesProcess::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: "&\n    GeneralizedBlackScholesProcess::blackVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<BlackVolTermStructure>
    signature: "Handle<BlackVolTermStructure> &\n    GeneralizedBlackScholesProcess::blackVolatility()
      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BlackConstantVol>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:189,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:190,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:193,1
    - Dst: ext::make_shared<LocalConstantVol>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:193,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:194,1
    - Dst: ext::shared_ptr::blackVol
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:195,1
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:196,1
    - Dst: ext::dynamic_pointer_cast<BlackVarianceCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:203,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:204,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:207,1
    - Dst: ext::make_shared<LocalVolCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:207,1
    - Dst: Handle<BlackVarianceCurve>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:208,1
    - Dst: linkTo
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:214,1
    - Dst: ext::make_shared<LocalVolSurface>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:215,1
    - Dst: value
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 224
    functionName: "&\n    GeneralizedBlackScholesProcess::localVolatility() const"
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - Handle<BlackVarianceCurve>
    - blackVolatility
    - ext::make_shared<LocalVolCurve>
    - ext::shared_ptr::blackVol
    - value
    - ext::shared_ptr::dayCounter
    - ext::make_shared<LocalVolSurface>
    - ext::make_shared<LocalConstantVol>
    - ext::dynamic_pointer_cast<BlackConstantVol>
    - ext::shared_ptr::referenceDate
    - linkTo
    - ext::dynamic_pointer_cast<BlackVarianceCurve>
    linkageType: ''
    returnType: Handle<LocalVolTermStructure>
    signature: "Handle<LocalVolTermStructure> &\n    GeneralizedBlackScholesProcess::localVolatility()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:238,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:238,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/processes/blackscholesprocess.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' x0'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 242
    functionName: QuantLib::BlackScholesProcess::BlackScholesProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - FlatForward::FlatForward
    - ext::shared_ptr<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void BlackScholesProcess::BlackScholesProcess(\n                              const
      Handle<Quote>& x0,\n                              const Handle<YieldTermStructure>&
      riskFreeTS,\n                              const Handle<BlackVolTermStructure>&
      blackVolTS,\n                              const ext::shared_ptr<discretization>&
      d,\n                              bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' x0'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 253
    functionName: QuantLib::BlackScholesMertonProcess::BlackScholesMertonProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackScholesMertonProcess::BlackScholesMertonProcess(\n                              const
      Handle<Quote>& x0,\n                              const Handle<YieldTermStructure>&
      dividendTS,\n                              const Handle<YieldTermStructure>&
      riskFreeTS,\n                              const Handle<BlackVolTermStructure>&
      blackVolTS,\n                              const ext::shared_ptr<discretization>&
      d,\n                              bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' x0'
    - ' riskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::BlackProcess::BlackProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackProcess::BlackProcess(const Handle<Quote>& x0,\n                               const
      Handle<YieldTermStructure>& riskFreeTS,\n                               const
      Handle<BlackVolTermStructure>& blackVolTS,\n                               const
      ext::shared_ptr<discretization>& d,\n                               bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' x0'
    - ' foreignRiskFreeTS'
    - ' domesticRiskFreeTS'
    - ' blackVolTS'
    - ' d'
    - forceDiscretization
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - ext::shared_ptr<discretization>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionName: QuantLib::GarmanKohlagenProcess::GarmanKohlagenProcess
    functionSourceFile: /src/quantlib/ql/processes/blackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GarmanKohlagenProcess::GarmanKohlagenProcess(\n                          const
      Handle<Quote>& x0,\n                          const Handle<YieldTermStructure>&
      foreignRiskFreeTS,\n                          const Handle<YieldTermStructure>&
      domesticRiskFreeTS,\n                          const Handle<BlackVolTermStructure>&
      blackVolTS,\n                          const ext::shared_ptr<discretization>&
      d,\n                          bool forceDiscretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::OrnsteinUhlenbeckProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::OrnsteinUhlenbeckProcess::speed
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::OrnsteinUhlenbeckProcess::volatility
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::OrnsteinUhlenbeckProcess::level
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::level() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::OrnsteinUhlenbeckProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::OrnsteinUhlenbeckProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::diffusion(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::OrnsteinUhlenbeckProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real OrnsteinUhlenbeckProcess::expectation(Time, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:98,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::variance
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::OrnsteinUhlenbeckProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real OrnsteinUhlenbeckProcess::stdDeviation(Time t, Real x0,\n                                                Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::OrnsteinUhlenbeckProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::OrnsteinUhlenbeckProcess::speed
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::OrnsteinUhlenbeckProcess::volatility
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::OrnsteinUhlenbeckProcess::level
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::level() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::OrnsteinUhlenbeckProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::OrnsteinUhlenbeckProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::diffusion(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::OrnsteinUhlenbeckProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real OrnsteinUhlenbeckProcess::expectation(Time, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:98,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::variance
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::OrnsteinUhlenbeckProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real OrnsteinUhlenbeckProcess::stdDeviation(Time t, Real x0,\n                                                Time
      dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:38,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - reversion
    - ' times'
    - ' vols'
    argTypes:
    - Real
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 40
    functionName: QuantLib::MfStateProcess::MfStateProcess
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MfStateProcess::MfStateProcess(Real reversion, const Array& times,
      const Array& vols)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::MfStateProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::MfStateProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::drift(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::MfStateProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::MfStateProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::expectation(Time, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:57,1
    - Dst: QuantLib::MfStateProcess::variance
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MfStateProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::MfStateProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::stdDeviation(Time t, Real x0, Time dt) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:68,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:95,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - t
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 98
    functionName: QuantLib::MfStateProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - empty
    - begin
    - std::upper_bound
    - std::max
    - end
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::variance(Time t, Real, Time dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:28,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:38,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - reversion
    - ' times'
    - ' vols'
    argTypes:
    - Real
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 40
    functionName: QuantLib::MfStateProcess::MfStateProcess
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MfStateProcess::MfStateProcess(Real reversion, const Array& times,
      const Array& vols)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::MfStateProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::MfStateProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::drift(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::MfStateProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - end
    - std::upper_bound
    - begin
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::MfStateProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::expectation(Time, Real x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:57,1
    - Dst: QuantLib::MfStateProcess::variance
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::MfStateProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QuantLib::MfStateProcess::variance
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::stdDeviation(Time t, Real x0, Time dt) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:67,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:68,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:71,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: end
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:72,1
    - Dst: begin
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/mfstateprocess.cpp:95,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - t
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 98
    functionName: QuantLib::MfStateProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/mfstateprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - empty
    - begin
    - std::upper_bound
    - std::max
    - end
    linkageType: ''
    returnType: Real
    signature: Real MfStateProcess::variance(Time t, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::HestonProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::HestonProcess::rho
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::HestonProcess::kappa
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::HestonProcess::theta
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::HestonProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::HestonProcess::rho
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::HestonProcess::kappa
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::HestonProcess::theta
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::HestonProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hestonprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Merton76Process::drift
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real drift(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Merton76Process::diffusion
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Merton76Process::apply
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real apply(Real, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Merton76Process::drift
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real drift(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Merton76Process::diffusion
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real diffusion(Time, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/merton76process.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Merton76Process::apply
    functionSourceFile: /src/quantlib/ql/processes/merton76process.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real apply(Real, Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:79,1
    - Dst: QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::GsrProcess::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
    - QuantLib::GsrProcess::flushCache
    linkageType: ''
    returnType: void
    signature: void GsrProcess::setForwardMeasureTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::GsrProcess::flushCache
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::GsrProcess::flushCache
    linkageType: ''
    returnType: void
    signature: void GsrProcess::flushCache() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:79,1
    - Dst: QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::GsrProcess::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
    - QuantLib::GsrProcess::flushCache
    linkageType: ''
    returnType: void
    signature: void GsrProcess::setForwardMeasureTime(Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GsrProcess::flushCache
      Src: /src/quantlib/ql/processes/gsrprocess.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::GsrProcess::flushCache
    functionSourceFile: /src/quantlib/ql/processes/gsrprocess.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::GsrProcess::flushCache
    linkageType: ''
    returnType: void
    signature: void GsrProcess::flushCache() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:32,1
    - Dst: empty
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: rows
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' processes'
    - ' correlation'
    argTypes:
    - std::vector<ext::shared_ptr<StochasticProcess1D> >
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::StochasticProcessArray::StochasticProcessArray
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - empty
    - rows
    - QuantLib::StochasticProcessArray::size
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void StochasticProcessArray::StochasticProcessArray(\n        const
      std::vector<ext::shared_ptr<StochasticProcess1D> >& processes,\n        const
      Matrix& correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::StochasticProcessArray::size
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcessArray::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:48,1
    - Dst: x0
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::StochasticProcessArray::initialValues
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - x0
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcessArray::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:56,1
    - Dst: QuantLib::StochasticProcessArray::drift
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::StochasticProcessArray::drift
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::drift
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::drift(Time t,\n                                        const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:64,1
    - Dst: QuantLib::StochasticProcessArray::diffusion
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:65,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: QuantLib::StochasticProcessArray::diffusion
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::diffusion
    - Matrix::row_end
    - QuantLib::StochasticProcessArray::size
    - Matrix::row_begin
    - std::transform
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::diffusion(Time t,\n                                             const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:77,1
    - Dst: QuantLib::StochasticProcessArray::expectation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: QuantLib::StochasticProcessArray::expectation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::expectation
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::expectation(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:86,1
    - Dst: QuantLib::StochasticProcessArray::stdDeviation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:87,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::StochasticProcessArray::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - Matrix::row_end
    - QuantLib::StochasticProcessArray::size
    - Matrix::row_begin
    - std::transform
    - QuantLib::StochasticProcessArray::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::stdDeviation(Time t0,\n                                                const
      Array& x0,\n                                                Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::stdDeviation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:98,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 3
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::StochasticProcessArray::covariance
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::StochasticProcessArray::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::covariance(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:107,1
    - Dst: QuantLib::StochasticProcessArray::evolve
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: QuantLib::StochasticProcessArray::evolve
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::evolve
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::evolve(\n                  Time t0,
      const Array& x0, Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:115,1
    - Dst: QuantLib::StochasticProcessArray::apply
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::StochasticProcessArray::apply
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::apply(const Array& x0,\n                                        const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::time
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::StochasticProcessArray::time
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::StochasticProcessArray::time
    linkageType: ''
    returnType: Time
    signature: Time StochasticProcessArray::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    StochasticProcessArray::process(Size i) const"
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: "ext::shared_ptr<StochasticProcess1D> &\n    StochasticProcessArray::process(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transpose
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::StochasticProcessArray::correlation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - transpose
    linkageType: ''
    returnType: Matrix
    signature: Matrix StochasticProcessArray::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:32,1
    - Dst: empty
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: rows
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' processes'
    - ' correlation'
    argTypes:
    - std::vector<ext::shared_ptr<StochasticProcess1D> >
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::StochasticProcessArray::StochasticProcessArray
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - pseudoSqrt
    - empty
    - rows
    - QuantLib::StochasticProcessArray::size
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void StochasticProcessArray::StochasticProcessArray(\n        const
      std::vector<ext::shared_ptr<StochasticProcess1D> >& processes,\n        const
      Matrix& correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::StochasticProcessArray::size
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    linkageType: ''
    returnType: Size
    signature: Size StochasticProcessArray::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:48,1
    - Dst: x0
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::StochasticProcessArray::initialValues
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - x0
    linkageType: ''
    returnType: Array
    signature: Array StochasticProcessArray::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:56,1
    - Dst: QuantLib::StochasticProcessArray::drift
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::StochasticProcessArray::drift
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::drift
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::drift(Time t,\n                                        const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:64,1
    - Dst: QuantLib::StochasticProcessArray::diffusion
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:65,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:66,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: QuantLib::StochasticProcessArray::diffusion
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::diffusion
    - Matrix::row_end
    - QuantLib::StochasticProcessArray::size
    - Matrix::row_begin
    - std::transform
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::diffusion(Time t,\n                                             const
      Array& x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:77,1
    - Dst: QuantLib::StochasticProcessArray::expectation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: QuantLib::StochasticProcessArray::expectation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::expectation
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::expectation(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:86,1
    - Dst: QuantLib::StochasticProcessArray::stdDeviation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:87,1
    - Dst: std::transform
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:88,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::StochasticProcessArray::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 3
    functionsReached:
    - Matrix::row_end
    - QuantLib::StochasticProcessArray::size
    - Matrix::row_begin
    - std::transform
    - QuantLib::StochasticProcessArray::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::stdDeviation(Time t0,\n                                                const
      Array& x0,\n                                                Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::stdDeviation
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:98,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 3
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::StochasticProcessArray::covariance
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::StochasticProcessArray::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: "Matrix StochasticProcessArray::covariance(Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:107,1
    - Dst: QuantLib::StochasticProcessArray::evolve
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: QuantLib::StochasticProcessArray::evolve
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::evolve
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::evolve(\n                  Time t0,
      const Array& x0, Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::size
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:115,1
    - Dst: QuantLib::StochasticProcessArray::apply
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::StochasticProcessArray::apply
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::size
    - QuantLib::StochasticProcessArray::apply
    linkageType: ''
    returnType: Array
    signature: "Array StochasticProcessArray::apply(const Array& x0,\n                                        const
      Array& dx) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StochasticProcessArray::time
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::StochasticProcessArray::time
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StochasticProcessArray::time
    linkageType: ''
    returnType: Time
    signature: Time StochasticProcessArray::time(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    StochasticProcessArray::process(Size i) const"
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<StochasticProcess1D>
    signature: "ext::shared_ptr<StochasticProcess1D> &\n    StochasticProcessArray::process(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transpose
      Src: /src/quantlib/ql/processes/stochasticprocessarray.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::StochasticProcessArray::correlation
    functionSourceFile: /src/quantlib/ql/processes/stochasticprocessarray.cpp
    functionUses: 0
    functionsReached:
    - transpose
    linkageType: ''
    returnType: Matrix
    signature: Matrix StochasticProcessArray::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::CoxIngersollRossProcess::CoxIngersollRossProcess
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoxIngersollRossProcess::CoxIngersollRossProcess(Real speed,\n
      \                                                      Volatility vol,\n                                                       Real
      x0,\n                                                       Real level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:33,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::CoxIngersollRossProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::variance(Time, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::CoxIngersollRossProcess::CoxIngersollRossProcess
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CoxIngersollRossProcess::CoxIngersollRossProcess(Real speed,\n
      \                                                      Volatility vol,\n                                                       Real
      x0,\n                                                       Real level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:33,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::CoxIngersollRossProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::variance(Time, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t0
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::JointStochasticProcess::CachingKey
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CachingKey(const Time t0, const Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - CachingKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: operator<(const CachingKey& key) const
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const CachingKey& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t0
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: QuantLib::JointStochasticProcess::CachingKey
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CachingKey(const Time t0, const Time dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - CachingKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: operator<(const CachingKey& key) const
    functionSourceFile: /src/quantlib/ql/processes/jointstochasticprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const CachingKey& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:93,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::detail::GsrProcessCore::sigma
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::lowerIndex
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::sigma(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:97,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::GsrProcessCore::reversion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::rev
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::reversion(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::GsrProcessCore::vol
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:93,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::detail::GsrProcessCore::sigma
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::GsrProcessCore::vol
    - QuantLib::detail::GsrProcessCore::lowerIndex
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::sigma(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::GsrProcessCore::rev
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:97,1
    - Dst: QuantLib::detail::GsrProcessCore::lowerIndex
      Src: /src/quantlib/ql/processes/gsrprocesscore.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::detail::GsrProcessCore::reversion
    functionSourceFile: /src/quantlib/ql/processes/gsrprocesscore.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::GsrProcessCore::lowerIndex
    - QuantLib::detail::GsrProcessCore::rev
    linkageType: ''
    returnType: Real
    signature: Real GsrProcessCore::reversion(const Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/batesprocess.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' riskFreeRate'
    - ' dividendYield'
    - ' s0'
    - v0
    - kappa
    - theta
    - sigma
    - rho
    - lambda
    - nu
    - delta
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::BatesProcess::BatesProcess
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: void
    signature: "void BatesProcess::BatesProcess(\n                              const
      Handle<YieldTermStructure>& riskFreeRate,\n                              const
      Handle<YieldTermStructure>& dividendYield,\n                              const
      Handle<Quote>& s0,\n                              Real v0, Real kappa,\n                              Real
      theta, Real sigma, Real rho,\n                              Real lambda, Real
      nu, Real delta, \n                              HestonProcess::Discretization
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::drift
      Src: /src/quantlib/ql/processes/batesprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::BatesProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonProcess::drift
    linkageType: ''
    returnType: Array
    signature: Array BatesProcess::drift(Time t, const Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::factors
      Src: /src/quantlib/ql/processes/batesprocess.cpp:49,1
    - Dst: cumNormalDist_
      Src: /src/quantlib/ql/processes/batesprocess.cpp:51,1
    - Dst: InverseCumulativePoisson
      Src: /src/quantlib/ql/processes/batesprocess.cpp:57,1
    - Dst: QuantLib::HestonProcess::evolve
      Src: /src/quantlib/ql/processes/batesprocess.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/batesprocess.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/batesprocess.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::BatesProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - InverseCumulativePoisson
    - QuantLib::HestonProcess::factors
    - std::exp
    - cumNormalDist_
    - std::sqrt
    - QuantLib::HestonProcess::evolve
    linkageType: ''
    returnType: Array
    signature: "Array BatesProcess::evolve(Time t0, const Array& x0,\n                               Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::factors
      Src: /src/quantlib/ql/processes/batesprocess.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::BatesProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonProcess::factors
    linkageType: ''
    returnType: Size
    signature: Size BatesProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::BatesProcess::lambda
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::BatesProcess::nu
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::BatesProcess::delta
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/batesprocess.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' riskFreeRate'
    - ' dividendYield'
    - ' s0'
    - v0
    - kappa
    - theta
    - sigma
    - rho
    - lambda
    - nu
    - delta
    - d
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - HestonProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::BatesProcess::BatesProcess
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: void
    signature: "void BatesProcess::BatesProcess(\n                              const
      Handle<YieldTermStructure>& riskFreeRate,\n                              const
      Handle<YieldTermStructure>& dividendYield,\n                              const
      Handle<Quote>& s0,\n                              Real v0, Real kappa,\n                              Real
      theta, Real sigma, Real rho,\n                              Real lambda, Real
      nu, Real delta, \n                              HestonProcess::Discretization
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::drift
      Src: /src/quantlib/ql/processes/batesprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::BatesProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonProcess::drift
    linkageType: ''
    returnType: Array
    signature: Array BatesProcess::drift(Time t, const Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::factors
      Src: /src/quantlib/ql/processes/batesprocess.cpp:49,1
    - Dst: cumNormalDist_
      Src: /src/quantlib/ql/processes/batesprocess.cpp:51,1
    - Dst: InverseCumulativePoisson
      Src: /src/quantlib/ql/processes/batesprocess.cpp:57,1
    - Dst: QuantLib::HestonProcess::evolve
      Src: /src/quantlib/ql/processes/batesprocess.cpp:58,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/batesprocess.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/batesprocess.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::BatesProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - InverseCumulativePoisson
    - QuantLib::HestonProcess::factors
    - std::exp
    - cumNormalDist_
    - std::sqrt
    - QuantLib::HestonProcess::evolve
    linkageType: ''
    returnType: Array
    signature: "Array BatesProcess::evolve(Time t0, const Array& x0,\n                               Time
      dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonProcess::factors
      Src: /src/quantlib/ql/processes/batesprocess.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::BatesProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonProcess::factors
    linkageType: ''
    returnType: Size
    signature: Size BatesProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::BatesProcess::lambda
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::BatesProcess::nu
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::BatesProcess::delta
    functionSourceFile: /src/quantlib/ql/processes/batesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BatesProcess::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess(Real speed,\n
      \                                                      Volatility vol,\n                                                       Real
      x0,\n                                                       Real level)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:35,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::OrnsteinUhlenbeckProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::variance(Time, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess(Real speed,\n
      \                                                      Volatility vol,\n                                                       Real
      x0,\n                                                       Real level)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:35,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - dt
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::OrnsteinUhlenbeckProcess::variance
    functionSourceFile: /src/quantlib/ql/processes/ornsteinuhlenbeckprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real OrnsteinUhlenbeckProcess::variance(Time, Real, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::HestonSLVProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: Size size() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::HestonSLVProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: Size factors() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::initialValues
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonSLVProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::HestonSLVProcess::initialValues
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::apply
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::HestonSLVProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::HestonSLVProcess::apply
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x0, const Array& dx) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::HestonSLVProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::HestonSLVProcess::rho
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::HestonSLVProcess::kappa
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonSLVProcess::theta
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::HestonSLVProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::HestonSLVProcess::mixingFactor
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mixingFactor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::HestonSLVProcess::leverageFct
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> leverageFct() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& s0() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - s0
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: '& dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - dividendYield
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: '& riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::time
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::HestonSLVProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::HestonSLVProcess::time
    linkageType: ''
    returnType: Time
    signature: Time time(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::HestonSLVProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: Size size() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::HestonSLVProcess::factors
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: Size factors() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::initialValues
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonSLVProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::HestonSLVProcess::initialValues
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::apply
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::HestonSLVProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::HestonSLVProcess::apply
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& x0, const Array& dx) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::HestonSLVProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::HestonSLVProcess::rho
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::HestonSLVProcess::kappa
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real kappa() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::HestonSLVProcess::theta
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::HestonSLVProcess::sigma
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::HestonSLVProcess::mixingFactor
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real mixingFactor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::HestonSLVProcess::leverageFct
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LocalVolTermStructure>
    signature: ext::shared_ptr<LocalVolTermStructure> leverageFct() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s0
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& s0() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - s0
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: '& dividendYield() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - dividendYield
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: '& riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HestonSLVProcess::time
      Src: /src/quantlib/ql/processes/hestonslvprocess.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::HestonSLVProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hestonslvprocess.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::HestonSLVProcess::time
    linkageType: ''
    returnType: Time
    signature: Time time(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:27,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 2
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::G2Process::G2Process
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: void G2Process::G2Process(Real a, Real sigma, Real b, Real eta, Real
      rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::G2Process::size
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size G2Process::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::G2Process::initialValues
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array G2Process::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:40,1
    - Dst: QuantLib::G2Process::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::G2Process::drift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2Process::drift
    linkageType: ''
    returnType: Array
    signature: Array G2Process::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 59
    functionName: QuantLib::G2Process::diffusion
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::diffusion(Time, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:64,1
    - Dst: QuantLib::G2Process::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionName: QuantLib::G2Process::expectation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2Process::expectation
    linkageType: ''
    returnType: Array
    signature: "Array G2Process::expectation(Time t0, const Array& x0,\n                                 Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:78,1
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 90
    functionName: QuantLib::G2Process::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - std::exp
    - QuantLib::G2Process::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::stdDeviation(Time t0, const Array& x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:93,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/g2process.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::G2Process::covariance
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::G2Process::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::covariance(Time t0, const Array& x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::G2Process::x0
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::G2Process::y0
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::y0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::G2Process::a
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::G2Process::sigma
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::G2Process::b
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::G2Process::eta
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::G2Process::rho
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:129,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::G2ForwardProcess::G2ForwardProcess
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: void G2ForwardProcess::G2ForwardProcess(Real a, Real sigma, Real b,
      Real eta, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::G2ForwardProcess::size
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size G2ForwardProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::G2ForwardProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array G2ForwardProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:142,1
    - Dst: QuantLib::G2ForwardProcess::xForwardDrift
      Src: /src/quantlib/ql/processes/g2process.cpp:142,1
    - Dst: QuantLib::G2ForwardProcess::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:143,1
    - Dst: QuantLib::G2ForwardProcess::yForwardDrift
      Src: /src/quantlib/ql/processes/g2process.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: QuantLib::G2ForwardProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2ForwardProcess::yForwardDrift
    - QuantLib::G2ForwardProcess::drift
    - QuantLib::G2ForwardProcess::xForwardDrift
    linkageType: ''
    returnType: Array
    signature: Array G2ForwardProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: QuantLib::G2ForwardProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::diffusion(Time, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:159,1
    - Dst: QuantLib::G2ForwardProcess::Mx_T
      Src: /src/quantlib/ql/processes/g2process.cpp:159,1
    - Dst: QuantLib::G2ForwardProcess::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:160,1
    - Dst: QuantLib::G2ForwardProcess::My_T
      Src: /src/quantlib/ql/processes/g2process.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: QuantLib::G2ForwardProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::G2ForwardProcess::expectation
    - QuantLib::G2ForwardProcess::My_T
    - QuantLib::G2ForwardProcess::Mx_T
    linkageType: ''
    returnType: Array
    signature: "Array G2ForwardProcess::expectation(Time t0, const Array& x0,\n                                        Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:166,1
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:168,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 178
    functionName: QuantLib::G2ForwardProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - std::exp
    - QuantLib::G2ForwardProcess::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::stdDeviation(Time t0, const Array& x0, Time
      dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:181,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/g2process.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: QuantLib::G2ForwardProcess::covariance
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::G2ForwardProcess::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::covariance(Time t0, const Array& x0, Time
      dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:187,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: QuantLib::G2ForwardProcess::xForwardDrift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::xForwardDrift(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:195,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionName: QuantLib::G2ForwardProcess::yForwardDrift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::yForwardDrift(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 211
    functionName: QuantLib::G2ForwardProcess::Mx_T
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::Mx_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:220,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 222
    functionName: QuantLib::G2ForwardProcess::My_T
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::My_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:27,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 2
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::G2Process::G2Process
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: void G2Process::G2Process(Real a, Real sigma, Real b, Real eta, Real
      rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::G2Process::size
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size G2Process::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::G2Process::initialValues
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array G2Process::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:40,1
    - Dst: QuantLib::G2Process::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::G2Process::drift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2Process::drift
    linkageType: ''
    returnType: Array
    signature: Array G2Process::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 59
    functionName: QuantLib::G2Process::diffusion
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::diffusion(Time, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:64,1
    - Dst: QuantLib::G2Process::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionName: QuantLib::G2Process::expectation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2Process::expectation
    linkageType: ''
    returnType: Array
    signature: "Array G2Process::expectation(Time t0, const Array& x0,\n                                 Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:78,1
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 90
    functionName: QuantLib::G2Process::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    - std::exp
    - QuantLib::G2Process::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::stdDeviation(Time t0, const Array& x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2Process::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:93,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/g2process.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: QuantLib::G2Process::covariance
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::G2Process::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2Process::covariance(Time t0, const Array& x0, Time dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::G2Process::x0
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::G2Process::y0
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::y0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::G2Process::a
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::G2Process::sigma
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::G2Process::b
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::G2Process::eta
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::G2Process::rho
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real G2Process::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:129,1
    - Dst: QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/processes/g2process.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - a
    - sigma
    - b
    - eta
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::G2ForwardProcess::G2ForwardProcess
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    linkageType: ''
    returnType: void
    signature: void G2ForwardProcess::G2ForwardProcess(Real a, Real sigma, Real b,
      Real eta, Real rho)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::G2ForwardProcess::size
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size G2ForwardProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::G2ForwardProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array G2ForwardProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:142,1
    - Dst: QuantLib::G2ForwardProcess::xForwardDrift
      Src: /src/quantlib/ql/processes/g2process.cpp:142,1
    - Dst: QuantLib::G2ForwardProcess::drift
      Src: /src/quantlib/ql/processes/g2process.cpp:143,1
    - Dst: QuantLib::G2ForwardProcess::yForwardDrift
      Src: /src/quantlib/ql/processes/g2process.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: QuantLib::G2ForwardProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2ForwardProcess::yForwardDrift
    - QuantLib::G2ForwardProcess::drift
    - QuantLib::G2ForwardProcess::xForwardDrift
    linkageType: ''
    returnType: Array
    signature: Array G2ForwardProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: QuantLib::G2ForwardProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::diffusion(Time, const Array&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:159,1
    - Dst: QuantLib::G2ForwardProcess::Mx_T
      Src: /src/quantlib/ql/processes/g2process.cpp:159,1
    - Dst: QuantLib::G2ForwardProcess::expectation
      Src: /src/quantlib/ql/processes/g2process.cpp:160,1
    - Dst: QuantLib::G2ForwardProcess::My_T
      Src: /src/quantlib/ql/processes/g2process.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: QuantLib::G2ForwardProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::G2ForwardProcess::expectation
    - QuantLib::G2ForwardProcess::My_T
    - QuantLib::G2ForwardProcess::Mx_T
    linkageType: ''
    returnType: Array
    signature: "Array G2ForwardProcess::expectation(Time t0, const Array& x0,\n                                        Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:166,1
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:168,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/g2process.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 178
    functionName: QuantLib::G2ForwardProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    - std::exp
    - QuantLib::G2ForwardProcess::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::stdDeviation(Time t0, const Array& x0, Time
      dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2ForwardProcess::stdDeviation
      Src: /src/quantlib/ql/processes/g2process.cpp:181,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/g2process.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t0
    - ' x0'
    - dt
    argTypes:
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: QuantLib::G2ForwardProcess::covariance
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::G2ForwardProcess::stdDeviation
    linkageType: ''
    returnType: Matrix
    signature: Matrix G2ForwardProcess::covariance(Time t0, const Array& x0, Time
      dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:187,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: QuantLib::G2ForwardProcess::xForwardDrift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::xForwardDrift(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:195,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionName: QuantLib::G2ForwardProcess::yForwardDrift
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::yForwardDrift(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:207,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 211
    functionName: QuantLib::G2ForwardProcess::Mx_T
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::Mx_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:216,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:220,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/g2process.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - t
    - T
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 222
    functionName: QuantLib::G2ForwardProcess::My_T
    functionSourceFile: /src/quantlib/ql/processes/g2process.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real G2ForwardProcess::My_T(Real s, Real t, Real T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CoxIngersollRossProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::CoxIngersollRossProcess::speed
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CoxIngersollRossProcess::volatility
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CoxIngersollRossProcess::level
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::level() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::CoxIngersollRossProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::CoxIngersollRossProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::diffusion(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::CoxIngersollRossProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::expectation(Time, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:105,1
    - Dst: QuantLib::CoxIngersollRossProcess::variance
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::CoxIngersollRossProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRossProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::stdDeviation(Time t, Real x0,\n                                                Time
      dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:123,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:132,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:134,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 138
    functionName: QuantLib::CoxIngersollRossProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::evolve (Time t0,\n      Real x0,\n                                    Time
      dt,\n                                    Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CoxIngersollRossProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::CoxIngersollRossProcess::speed
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CoxIngersollRossProcess::volatility
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CoxIngersollRossProcess::level
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::level() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::CoxIngersollRossProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::CoxIngersollRossProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CoxIngersollRossProcess::diffusion(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x0
    - dt
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: QuantLib::CoxIngersollRossProcess::expectation
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::expectation(Time, Real x0,\n                                               Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:105,1
    - Dst: QuantLib::CoxIngersollRossProcess::variance
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::CoxIngersollRossProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CoxIngersollRossProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::stdDeviation(Time t, Real x0,\n                                                Time
      dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:123,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:132,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:134,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/coxingersollrossprocess.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 138
    functionName: QuantLib::CoxIngersollRossProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/coxingersollrossprocess.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - Real
    - std::sqrt
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: "Real CoxIngersollRossProcess::evolve (Time t0,\n      Real x0,\n                                    Time
      dt,\n                                    Real dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::GJRGARCHProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()     const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::GJRGARCHProcess::lambda
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::GJRGARCHProcess::omega
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::GJRGARCHProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::GJRGARCHProcess::beta
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::GJRGARCHProcess::gamma
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::GJRGARCHProcess::daysPerYear
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real daysPerYear()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::GJRGARCHProcess::v0
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real v0()     const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::GJRGARCHProcess::lambda
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::GJRGARCHProcess::omega
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real omega()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::GJRGARCHProcess::alpha
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::GJRGARCHProcess::beta
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta()   const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::GJRGARCHProcess::gamma
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::GJRGARCHProcess::daysPerYear
    functionSourceFile: /src/quantlib/ql/processes/gjrgarchprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real daysPerYear()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::drift
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::EndEulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::EndEulerDiscretization::drift
    linkageType: ''
    returnType: Array
    signature: "Array EndEulerDiscretization::drift(const StochasticProcess& process,\n
      \                                       Time t0, const Array& x0,\n                                        Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::drift
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::EndEulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::EndEulerDiscretization::drift
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::drift(const StochasticProcess1D& process,\n
      \                                      Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::EndEulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EndEulerDiscretization::diffusion(const StochasticProcess&
      process,\n                                             Time t0,\n                                             const
      Array& x0,\n                                             Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::EndEulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::diffusion(const StochasticProcess1D&
      process,\n                                           Time t0, Real x0, Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:51,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::EndEulerDiscretization::covariance
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EndEulerDiscretization::covariance(const StochasticProcess&
      process,\n                                              Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::EndEulerDiscretization::variance
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::variance(const StochasticProcess1D& process,\n
      \                                         Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::drift
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::EndEulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::EndEulerDiscretization::drift
    linkageType: ''
    returnType: Array
    signature: "Array EndEulerDiscretization::drift(const StochasticProcess& process,\n
      \                                       Time t0, const Array& x0,\n                                        Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::drift
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::EndEulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::EndEulerDiscretization::drift
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::drift(const StochasticProcess1D& process,\n
      \                                      Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::EndEulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 5
    functionsReached:
    - std::sqrt
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EndEulerDiscretization::diffusion(const StochasticProcess&
      process,\n                                             Time t0,\n                                             const
      Array& x0,\n                                             Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::EndEulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::diffusion(const StochasticProcess1D&
      process,\n                                           Time t0, Real x0, Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:51,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::EndEulerDiscretization::covariance
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EndEulerDiscretization::covariance(const StochasticProcess&
      process,\n                                              Time t0,\n                                              const
      Array& x0,\n                                              Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EndEulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/endeulerdiscretization.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::EndEulerDiscretization::variance
    functionSourceFile: /src/quantlib/ql/processes/endeulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EndEulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EndEulerDiscretization::variance(const StochasticProcess1D& process,\n
      \                                         Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - b
    - a
    - sigma
    - x0
    - ' disc'
    argTypes:
    - Real
    - Real
    - Volatility
    - Real
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::SquareRootProcess::SquareRootProcess
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SquareRootProcess::SquareRootProcess(\n             Real b, Real
      a, Volatility sigma, Real x0,\n             const ext::shared_ptr<discretization>&
      disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::SquareRootProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::SquareRootProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/squarerootprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::SquareRootProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::diffusion(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - b
    - a
    - sigma
    - x0
    - ' disc'
    argTypes:
    - Real
    - Real
    - Volatility
    - Real
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::SquareRootProcess::SquareRootProcess
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SquareRootProcess::SquareRootProcess(\n             Real b, Real
      a, Volatility sigma, Real x0,\n             const ext::shared_ptr<discretization>&
      disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::SquareRootProcess::x0
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::SquareRootProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::drift(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/squarerootprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::SquareRootProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/squarerootprocess.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real SquareRootProcess::diffusion(Time, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' disc'
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardMeasureProcess::ForwardMeasureProcess(\n                                const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/processes/forwardmeasureprocess.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::ForwardMeasureProcess::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess::setForwardMeasureTime(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::ForwardMeasureProcess::getForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time ForwardMeasureProcess::getForwardMeasureTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' disc'
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardMeasureProcess1D::ForwardMeasureProcess1D(\n                                const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/processes/forwardmeasureprocess.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D::setForwardMeasureTime(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ForwardMeasureProcess1D::getForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time ForwardMeasureProcess1D::getForwardMeasureTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' disc'
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::ForwardMeasureProcess::ForwardMeasureProcess
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardMeasureProcess::ForwardMeasureProcess(\n                                const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/processes/forwardmeasureprocess.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::ForwardMeasureProcess::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess::setForwardMeasureTime(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::ForwardMeasureProcess::getForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time ForwardMeasureProcess::getForwardMeasureTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' disc'
    argTypes:
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardMeasureProcess1D::ForwardMeasureProcess1D
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardMeasureProcess1D::ForwardMeasureProcess1D(\n                                const
      ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/processes/forwardmeasureprocess.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - T
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::ForwardMeasureProcess1D::setForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void ForwardMeasureProcess1D::setForwardMeasureTime(Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ForwardMeasureProcess1D::getForwardMeasureTime
    functionSourceFile: /src/quantlib/ql/processes/forwardmeasureprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time ForwardMeasureProcess1D::getForwardMeasureTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::drift
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::EulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::EulerDiscretization::drift
    linkageType: ''
    returnType: Array
    signature: "Array EulerDiscretization::drift(const StochasticProcess& process,\n
      \                                    Time t0, const Array& x0,\n                                     Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::drift
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::EulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::EulerDiscretization::drift
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::drift(const StochasticProcess1D& process,\n
      \                                   Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::EulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EulerDiscretization::diffusion(const StochasticProcess& process,\n
      \                                         Time t0,\n                                          const
      Array& x0,\n                                          Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::EulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::diffusion(const StochasticProcess1D& process,\n
      \                                       Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:51,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::EulerDiscretization::covariance
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EulerDiscretization::covariance(const StochasticProcess& process,\n
      \                                          Time t0,\n                                           const
      Array& x0,\n                                           Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::EulerDiscretization::variance
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::variance(const StochasticProcess1D& process,\n
      \                                      Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::drift
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::EulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::EulerDiscretization::drift
    linkageType: ''
    returnType: Array
    signature: "Array EulerDiscretization::drift(const StochasticProcess& process,\n
      \                                    Time t0, const Array& x0,\n                                     Time
      dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::drift
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::EulerDiscretization::drift
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::EulerDiscretization::drift
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::drift(const StochasticProcess1D& process,\n
      \                                   Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::EulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 5
    functionsReached:
    - std::sqrt
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EulerDiscretization::diffusion(const StochasticProcess& process,\n
      \                                         Time t0,\n                                          const
      Array& x0,\n                                          Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::EulerDiscretization::diffusion
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::diffusion(const StochasticProcess1D& process,\n
      \                                       Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:51,1
    - Dst: transpose
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - ' x0'
    - dt
    argTypes:
    - StochasticProcess
    - Time
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::EulerDiscretization::covariance
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - transpose
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Matrix
    signature: "Matrix EulerDiscretization::covariance(const StochasticProcess& process,\n
      \                                          Time t0,\n                                           const
      Array& x0,\n                                           Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EulerDiscretization::diffusion
      Src: /src/quantlib/ql/processes/eulerdiscretization.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' process'
    - t0
    - x0
    - dt
    argTypes:
    - StochasticProcess1D
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::EulerDiscretization::variance
    functionSourceFile: /src/quantlib/ql/processes/eulerdiscretization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::EulerDiscretization::diffusion
    linkageType: ''
    returnType: Real
    signature: "Real EulerDiscretization::variance(const StochasticProcess1D& process,\n
      \                                      Time t0, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:37,1
    - Dst: a
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:38,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:39,1
    - Dst: HullWhite::HullWhite
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:37,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:43,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:48,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:49,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' hestonProcess'
    - ' hullWhiteProcess'
    - corrEquityShortRate
    - discretization
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<HullWhiteForwardProcess>
    - Real
    - HybridHestonHullWhiteProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: QuantLib::HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - QL_REQUIRE
    - HullWhite::HullWhite
    - a
    - riskFreeRate
    - std::sqrt
    - rho
    - getForwardMeasureTime
    linkageType: ''
    returnType: void
    signature: "void HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess(\n
      \       const ext::shared_ptr<HestonProcess> & hestonProcess,\n        const
      ext::shared_ptr<HullWhiteForwardProcess> & hullWhiteProcess,\n        Real corrEquityShortRate,\n
      \       HybridHestonHullWhiteProcess::Discretization discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::HybridHestonHullWhiteProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HybridHestonHullWhiteProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:62,1
    - Dst: v0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:63,1
    - Dst: x0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::HybridHestonHullWhiteProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - x0
    - v0
    - s0
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:70,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::HybridHestonHullWhiteProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::drift
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::apply
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:81,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::apply
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::HybridHestonHullWhiteProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::apply
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::apply(const Array& x0, const Array&
      dx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::diffusion
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:94,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 105
    functionName: QuantLib::HybridHestonHullWhiteProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - sigma
    - std::sqrt
    - QuantLib::HybridHestonHullWhiteProcess::diffusion
    linkageType: ''
    returnType: Matrix
    signature: Matrix HybridHestonHullWhiteProcess::diffusion(Time t, const Array&
      x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:111,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:112,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:115,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:115,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:120,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:124,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:124,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:129,1
    - Dst: alpha
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:137,1
    - Dst: B
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:138,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:150,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:152,1
    - Dst: theta
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:155,1
    - Dst: variance
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:166,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:176,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:177,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::evolve
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:181,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:185,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:186,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::evolve
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:188,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:191,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 197
    functionName: QuantLib::HybridHestonHullWhiteProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - kappa
    - theta
    - B
    - Real
    - dividendYield
    - QuantLib::HybridHestonHullWhiteProcess::evolve
    - variance
    - rho
    - std::min
    - sigma
    - std::exp
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    - a
    - std::log
    - alpha
    - riskFreeRate
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: "Array HybridHestonHullWhiteProcess::evolve(Time t0, const Array& x0,\n
      \                                              Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: QuantLib::HybridHestonHullWhiteProcess::numeraire
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor HybridHestonHullWhiteProcess::numeraire(Time t, const
      Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: QuantLib::HybridHestonHullWhiteProcess::eta
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HybridHestonHullWhiteProcess::eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: "& \n    HybridHestonHullWhiteProcess::hestonProcess() const"
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: "ext::shared_ptr<HestonProcess> & \n    HybridHestonHullWhiteProcess::hestonProcess()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: "& \n    HybridHestonHullWhiteProcess::hullWhiteProcess() const"
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HullWhiteForwardProcess>
    signature: "ext::shared_ptr<HullWhiteForwardProcess> & \n    HybridHestonHullWhiteProcess::hullWhiteProcess()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::HybridHestonHullWhiteProcess::discretization
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: HybridHestonHullWhiteProcess::Discretization
    signature: HybridHestonHullWhiteProcess::Discretization HybridHestonHullWhiteProcess::discretization()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::time
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::HybridHestonHullWhiteProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::time
    linkageType: ''
    returnType: Time
    signature: Time HybridHestonHullWhiteProcess::time(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: QuantLib::HybridHestonHullWhiteProcess::update
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void HybridHestonHullWhiteProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:37,1
    - Dst: a
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:38,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:39,1
    - Dst: HullWhite::HullWhite
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:37,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:43,1
    - Dst: getForwardMeasureTime
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:48,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:49,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:52,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' hestonProcess'
    - ' hullWhiteProcess'
    - corrEquityShortRate
    - discretization
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - ext::shared_ptr<HullWhiteForwardProcess>
    - Real
    - HybridHestonHullWhiteProcess::Discretization
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: QuantLib::HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - sigma
    - QL_REQUIRE
    - HullWhite::HullWhite
    - a
    - riskFreeRate
    - std::sqrt
    - rho
    - getForwardMeasureTime
    linkageType: ''
    returnType: void
    signature: "void HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess(\n
      \       const ext::shared_ptr<HestonProcess> & hestonProcess,\n        const
      ext::shared_ptr<HullWhiteForwardProcess> & hullWhiteProcess,\n        Real corrEquityShortRate,\n
      \       HybridHestonHullWhiteProcess::Discretization discretization)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::HybridHestonHullWhiteProcess::size
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size HybridHestonHullWhiteProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:62,1
    - Dst: v0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:63,1
    - Dst: x0
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::HybridHestonHullWhiteProcess::initialValues
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - x0
    - v0
    - s0
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:70,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::drift
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::HybridHestonHullWhiteProcess::drift
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::drift
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::apply
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:81,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::apply
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x0'
    - ' dx'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::HybridHestonHullWhiteProcess::apply
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::apply
    linkageType: ''
    returnType: Array
    signature: Array HybridHestonHullWhiteProcess::apply(const Array& x0, const Array&
      dx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::diffusion
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:94,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 105
    functionName: QuantLib::HybridHestonHullWhiteProcess::diffusion
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - sigma
    - std::sqrt
    - QuantLib::HybridHestonHullWhiteProcess::diffusion
    linkageType: ''
    returnType: Matrix
    signature: Matrix HybridHestonHullWhiteProcess::diffusion(Time t, const Array&
      x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:111,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:112,1
    - Dst: rho
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:115,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:115,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:120,1
    - Dst: std::log
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:124,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:124,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:125,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:129,1
    - Dst: alpha
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:137,1
    - Dst: B
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:138,1
    - Dst: sigma
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:150,1
    - Dst: kappa
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:152,1
    - Dst: theta
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:155,1
    - Dst: variance
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:166,1
    - Dst: std::min
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:176,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:177,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::evolve
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:181,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:185,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:186,1
    - Dst: QuantLib::HybridHestonHullWhiteProcess::evolve
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:188,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:191,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 197
    functionName: QuantLib::HybridHestonHullWhiteProcess::evolve
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - kappa
    - theta
    - B
    - Real
    - dividendYield
    - QuantLib::HybridHestonHullWhiteProcess::evolve
    - variance
    - rho
    - std::min
    - sigma
    - std::exp
    - std::max
    - QL_FAIL
    - QL_REQUIRE
    - a
    - std::log
    - alpha
    - riskFreeRate
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: "Array HybridHestonHullWhiteProcess::evolve(Time t0, const Array& x0,\n
      \                                              Time dt, const Array& dw) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: QuantLib::HybridHestonHullWhiteProcess::numeraire
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor HybridHestonHullWhiteProcess::numeraire(Time t, const
      Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: QuantLib::HybridHestonHullWhiteProcess::eta
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HybridHestonHullWhiteProcess::eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: "& \n    HybridHestonHullWhiteProcess::hestonProcess() const"
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HestonProcess>
    signature: "ext::shared_ptr<HestonProcess> & \n    HybridHestonHullWhiteProcess::hestonProcess()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: "& \n    HybridHestonHullWhiteProcess::hullWhiteProcess() const"
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<HullWhiteForwardProcess>
    signature: "ext::shared_ptr<HullWhiteForwardProcess> & \n    HybridHestonHullWhiteProcess::hullWhiteProcess()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::HybridHestonHullWhiteProcess::discretization
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: HybridHestonHullWhiteProcess::Discretization
    signature: HybridHestonHullWhiteProcess::Discretization HybridHestonHullWhiteProcess::discretization()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HybridHestonHullWhiteProcess::time
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::HybridHestonHullWhiteProcess::time
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::HybridHestonHullWhiteProcess::time
    linkageType: ''
    returnType: Time
    signature: Time HybridHestonHullWhiteProcess::time(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: QuantLib::HybridHestonHullWhiteProcess::update
    functionSourceFile: /src/quantlib/ql/processes/hybridhestonhullwhiteprocess.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void HybridHestonHullWhiteProcess::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(BusinessDayConvention
      bdc,\n                                                     const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(const Date&
      referenceDate,\n                                                     const Calendar&
      cal,\n                                                     BusinessDayConvention
      bdc,\n                                                     const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(Natural settlementDays,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention bdc,\n
      \                                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:42,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:42,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:43,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:43,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:45,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - k
    - extrapolate
    argTypes:
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::VolatilityTermStructure::checkStrike
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached:
    - minStrike
    - maxStrike
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::checkStrike(Rate k,\n                                              bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(BusinessDayConvention
      bdc,\n                                                     const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(const Date&
      referenceDate,\n                                                     const Calendar&
      cal,\n                                                     BusinessDayConvention
      bdc,\n                                                     const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::VolatilityTermStructure::VolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::VolatilityTermStructure(Natural settlementDays,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention bdc,\n
      \                                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:42,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:42,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:43,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:43,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:45,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/voltermstructure.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - k
    - extrapolate
    argTypes:
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::VolatilityTermStructure::checkStrike
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.cpp
    functionUses: 0
    functionsReached:
    - minStrike
    - maxStrike
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityTermStructure::checkStrike(Rate k,\n                                              bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BootstrapHelper() override
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BootstrapHelper() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& quote() const'
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & quote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:70,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::BootstrapHelper::quoteError
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - impliedQuote
    - value
    linkageType: ''
    returnType: Real
    signature: Real quoteError() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:136,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:137,1
    - Dst: initializeDates
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:138,1
    - Dst: QuantLib::BootstrapHelper<TS>::update
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: QuantLib::RelativeDateBootstrapHelper::update
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::update
    - initializeDates
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:153,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quote'
    argTypes:
    - std::variant<Spread, Handle<Quote>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::BootstrapHelper<TS>::BootstrapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::BootstrapHelper(const std::variant<Spread,
      Handle<Quote>>& quote)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - TS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: QuantLib::BootstrapHelper<TS>::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::setTermStructure(TS* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::BootstrapHelper<TS>::earliestDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::earliestDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:170,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestRelevantDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 173
    functionName: QuantLib::BootstrapHelper<TS>::maturityDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestRelevantDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::maturityDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:177,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: QuantLib::BootstrapHelper<TS>::latestRelevantDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 1
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::latestRelevantDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:184,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: QuantLib::BootstrapHelper<TS>::pillarDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::pillarDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: QuantLib::BootstrapHelper<TS>::latestDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 2
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::latestDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::BootstrapHelper<TS>::update
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 1
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BootstrapHelper<TS> >*>
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:203,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:205,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 208
    functionName: QuantLib::BootstrapHelper<TS>::accept
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<BootstrapHelper<TS> >*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelativeDateBootstrapHelper<TS>::registerWith
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:216,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:216,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' quote'
    - updateDates
    argTypes:
    - std::variant<Spread, Handle<Quote>>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 219
    functionName: QuantLib::RelativeDateBootstrapHelper<TS>::RelativeDateBootstrapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::RelativeDateBootstrapHelper<TS>::registerWith
    linkageType: ''
    returnType: void
    signature: "void RelativeDateBootstrapHelper<TS>::RelativeDateBootstrapHelper(\n
      \       const std::variant<Spread, Handle<Quote>>& quote, bool updateDates)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:232,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Pillar::Choice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 234
    functionName: "& operator<<(std::ostream& out,\n                                    Pillar::Choice
      t)"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    Pillar::Choice
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h1'
    - ' h2'
    argTypes:
    - ext::shared_ptr<Helper>
    - ext::shared_ptr<Helper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: "operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - pillarDate
    linkageType: ''
    returnType: bool
    signature: "bool operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h1'
    - ' h2'
    argTypes:
    - ext::shared_ptr<Helper>
    - ext::shared_ptr<Helper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: "operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - pillarDate
    linkageType: ''
    returnType: bool
    signature: "bool operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BootstrapHelper() override
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BootstrapHelper() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& quote() const'
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & quote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:70,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::BootstrapHelper::quoteError
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - impliedQuote
    - value
    linkageType: ''
    returnType: Real
    signature: Real quoteError() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:136,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:137,1
    - Dst: initializeDates
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:138,1
    - Dst: QuantLib::BootstrapHelper<TS>::update
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: QuantLib::RelativeDateBootstrapHelper::update
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::update
    - initializeDates
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:153,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quote'
    argTypes:
    - std::variant<Spread, Handle<Quote>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::BootstrapHelper<TS>::BootstrapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::BootstrapHelper(const std::variant<Spread,
      Handle<Quote>>& quote)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - TS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: QuantLib::BootstrapHelper<TS>::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::setTermStructure(TS* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::BootstrapHelper<TS>::earliestDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::earliestDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:170,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestRelevantDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 173
    functionName: QuantLib::BootstrapHelper<TS>::maturityDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestRelevantDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::maturityDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:177,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: QuantLib::BootstrapHelper<TS>::latestRelevantDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 2
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::latestRelevantDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:184,1
    - Dst: QuantLib::BootstrapHelper<TS>::latestDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: QuantLib::BootstrapHelper<TS>::pillarDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::BootstrapHelper<TS>::latestDate
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::pillarDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: QuantLib::BootstrapHelper<TS>::latestDate
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 4
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date BootstrapHelper<TS>::latestDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::BootstrapHelper<TS>::update
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BootstrapHelper<TS> >*>
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:203,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:205,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 208
    functionName: QuantLib::BootstrapHelper<TS>::accept
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<BootstrapHelper<TS> >*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BootstrapHelper<TS>::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RelativeDateBootstrapHelper<TS>::registerWith
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:216,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:216,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' quote'
    - updateDates
    argTypes:
    - std::variant<Spread, Handle<Quote>>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 219
    functionName: QuantLib::RelativeDateBootstrapHelper<TS>::RelativeDateBootstrapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::RelativeDateBootstrapHelper<TS>::registerWith
    linkageType: ''
    returnType: void
    signature: "void RelativeDateBootstrapHelper<TS>::RelativeDateBootstrapHelper(\n
      \       const std::variant<Spread, Handle<Quote>>& quote, bool updateDates)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:232,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - Pillar::Choice
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 234
    functionName: "& operator<<(std::ostream& out,\n                                    Pillar::Choice
      t)"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    Pillar::Choice
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h1'
    - ' h2'
    argTypes:
    - ext::shared_ptr<Helper>
    - ext::shared_ptr<Helper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: "operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - pillarDate
    linkageType: ''
    returnType: bool
    signature: "bool operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/bootstraphelper.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' h1'
    - ' h2'
    argTypes:
    - ext::shared_ptr<Helper>
    - ext::shared_ptr<Helper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: "operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraphelper.hpp
    functionUses: 0
    functionsReached:
    - pillarDate
    linkageType: ''
    returnType: bool
    signature: "bool operator()(\n                    const ext::shared_ptr<Helper>&
      h1,\n                    const ext::shared_ptr<Helper>& h2) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:49,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' error'
    - xMin
    - xMax
    - steps
    argTypes:
    - BootstrapError<Curve>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::dontThrowFallback
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - error
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real dontThrowFallback(const BootstrapError<Curve>& error,\n        Real
      xMin, Real xMax, Size steps)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:49,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' error'
    - xMin
    - xMax
    - steps
    argTypes:
    - BootstrapError<Curve>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::dontThrowFallback
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - error
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real dontThrowFallback(const BootstrapError<Curve>& error,\n        Real
      xMin, Real xMax, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:142,1
    - Dst: setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:143,1
    - Dst: setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - accuracy
    - minValue
    - maxValue
    - maxAttempts
    - maxFactor
    - minFactor
    - dontThrow
    - dontThrowSteps
    - maxEvaluations
    argTypes:
    - Real
    - Real
    - Real
    - Size
    - Real
    - Real
    - bool
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 145
    functionName: QuantLib::IterativeBootstrap<Curve>::IterativeBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - setMaxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IterativeBootstrap<Curve>::IterativeBootstrap(Real accuracy,\n
      \                                                 Real minValue,\n                                                  Real
      maxValue,\n                                                  Size maxAttempts,\n
      \                                                 Real maxFactor,\n                                                  Real
      minFactor,\n                                                  bool dontThrow,\n
      \                                                 Size dontThrowSteps,\n                                                  Size
      maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:151,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::IterativeBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - registerWithObservables
    - instruments_::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::setup(Curve* ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:163,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:166,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:166,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:173,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:181,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:182,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:183,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:185,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:193,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:196,1
    - Dst: latestRelevantDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:202,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:203,1
    - Dst: ext::shared_ptr<BootstrapError<Curve> >
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:215,1
    - Dst: BootstrapError<Curve>::BootstrapError<Curve>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:215,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:221,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:225,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:225,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 160
    functionDepth: 2
    functionLinenumber: 160
    functionLinenumberEnd: 230
    functionName: QuantLib::IterativeBootstrap<Curve>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - timeFromReference
    - std::sort
    - resize
    - QuantLib::io::ordinal
    - std::vector<Real>
    - instruments_::begin
    - pillarDate
    - BootstrapError<Curve>::BootstrapError<Curve>
    - data_::size
    - instruments_::end
    - QuantLib::ZeroInflationTraits::initialDate
    - ext::shared_ptr<BootstrapError<Curve> >
    - latestRelevantDate
    - QuantLib::ZeroInflationTraits::initialValue
    - detail::BootstrapHelperSorter
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::initialize() const
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IterativeBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:241,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:248,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:248,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:249,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:250,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:251,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:255,1
    - Dst: const_cast<Curve*>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:255,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:260,1
    - Dst: QuantLib::ZeroInflationTraits::maxIterations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:262,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:271,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:272,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:282,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:285,1
    - Dst: QuantLib::ZeroInflationTraits::minValueAfter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:286,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:287,1
    - Dst: QuantLib::ZeroInflationTraits::maxValueAfter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:288,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:292,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:292,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:294,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:294,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:296,1
    - Dst: interpolator_::interpolate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: Linear
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:316,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:319,1
    - Dst: solve
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:324,1
    - Dst: solve
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:326,1
    - Dst: QuantLib::IterativeBootstrap<Curve>::calculate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:336,1
    - Dst: QuantLib::detail::dontThrowFallback
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:350,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:354,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:356,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:356,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:357,1
    - Dst: helper
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:358,1
    - Dst: helper
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:359,1
    - Dst: what
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:361,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:370,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:372,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:372,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:381,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 390
    functionName: QuantLib::IterativeBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroInflationTraits::maxValueAfter
    - Real
    - helper
    - solve
    - QuantLib::detail::dontThrowFallback
    - maturityDate
    - setTermStructure
    - QuantLib::IterativeBootstrap<Curve>::calculate
    - quote
    - begin
    - pillarDate
    - std::fabs
    - Linear
    - QuantLib::IterativeBootstrap<Curve>::initialize
    - Null<Real>
    - interpolator_::interpolate
    - interpolation_::update
    - std::max
    - QL_FAIL
    - QuantLib::ZeroInflationTraits::maxIterations
    - QL_REQUIRE
    - QuantLib::ZeroInflationTraits::minValueAfter
    - QuantLib::io::ordinal
    - const_cast<Curve*>
    - what
    - QuantLib::ZeroInflationTraits::guess
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:49,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' error'
    - xMin
    - xMax
    - steps
    argTypes:
    - BootstrapError<Curve>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::dontThrowFallback
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 1
    functionsReached:
    - error
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real dontThrowFallback(const BootstrapError<Curve>& error,\n        Real
      xMin, Real xMax, Size steps)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:49,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:53,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' error'
    - xMin
    - xMax
    - steps
    argTypes:
    - BootstrapError<Curve>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::dontThrowFallback
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 1
    functionsReached:
    - error
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real dontThrowFallback(const BootstrapError<Curve>& error,\n        Real
      xMin, Real xMax, Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:142,1
    - Dst: setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:143,1
    - Dst: setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - accuracy
    - minValue
    - maxValue
    - maxAttempts
    - maxFactor
    - minFactor
    - dontThrow
    - dontThrowSteps
    - maxEvaluations
    argTypes:
    - Real
    - Real
    - Real
    - Size
    - Real
    - Real
    - bool
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 145
    functionName: QuantLib::IterativeBootstrap<Curve>::IterativeBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - setMaxEvaluations
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IterativeBootstrap<Curve>::IterativeBootstrap(Real accuracy,\n
      \                                                 Real minValue,\n                                                  Real
      maxValue,\n                                                  Size maxAttempts,\n
      \                                                 Real maxFactor,\n                                                  Real
      minFactor,\n                                                  bool dontThrow,\n
      \                                                 Size dontThrowSteps,\n                                                  Size
      maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:151,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::IterativeBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 0
    functionsReached:
    - registerWithObservables
    - instruments_::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::setup(Curve* ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:162,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:163,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:166,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:166,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:169,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:173,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:181,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:182,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:183,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:185,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:193,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:196,1
    - Dst: latestRelevantDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:202,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:203,1
    - Dst: ext::shared_ptr<BootstrapError<Curve> >
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:215,1
    - Dst: BootstrapError<Curve>::BootstrapError<Curve>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:215,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:221,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:225,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:225,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 160
    functionDepth: 2
    functionLinenumber: 160
    functionLinenumberEnd: 230
    functionName: QuantLib::IterativeBootstrap<Curve>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - timeFromReference
    - std::sort
    - resize
    - QuantLib::io::ordinal
    - std::vector<Real>
    - instruments_::begin
    - pillarDate
    - BootstrapError<Curve>::BootstrapError<Curve>
    - data_::size
    - instruments_::end
    - QuantLib::ZeroInflationTraits::initialDate
    - ext::shared_ptr<BootstrapError<Curve> >
    - latestRelevantDate
    - QuantLib::ZeroInflationTraits::initialValue
    - detail::BootstrapHelperSorter
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::initialize() const
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IterativeBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:241,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:248,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:248,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:249,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:250,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:251,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:255,1
    - Dst: const_cast<Curve*>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:255,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:260,1
    - Dst: QuantLib::ZeroInflationTraits::maxIterations
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:262,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:271,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:272,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:282,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:285,1
    - Dst: QuantLib::ZeroInflationTraits::minValueAfter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:286,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:287,1
    - Dst: QuantLib::ZeroInflationTraits::maxValueAfter
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:288,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:292,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:292,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:294,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:294,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:296,1
    - Dst: interpolator_::interpolate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:308,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:309,1
    - Dst: Linear
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:316,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:317,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:319,1
    - Dst: solve
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:324,1
    - Dst: solve
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:326,1
    - Dst: QuantLib::IterativeBootstrap<Curve>::calculate
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:336,1
    - Dst: QuantLib::detail::dontThrowFallback
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:350,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:354,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:356,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:356,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:357,1
    - Dst: helper
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:358,1
    - Dst: helper
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:359,1
    - Dst: what
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:361,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:370,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:372,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:372,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/iterativebootstrap.hpp:381,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 390
    functionName: QuantLib::IterativeBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/iterativebootstrap.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroInflationTraits::maxValueAfter
    - Real
    - helper
    - solve
    - QuantLib::detail::dontThrowFallback
    - maturityDate
    - setTermStructure
    - QuantLib::IterativeBootstrap<Curve>::calculate
    - quote
    - begin
    - pillarDate
    - std::fabs
    - Linear
    - QuantLib::IterativeBootstrap<Curve>::initialize
    - Null<Real>
    - interpolator_::interpolate
    - interpolation_::update
    - std::max
    - QL_FAIL
    - QuantLib::ZeroInflationTraits::maxIterations
    - QL_REQUIRE
    - QuantLib::ZeroInflationTraits::minValueAfter
    - QuantLib::io::ordinal
    - const_cast<Curve*>
    - what
    - QuantLib::ZeroInflationTraits::guess
    linkageType: ''
    returnType: void
    signature: void IterativeBootstrap<Curve>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - curve
    - initialIndex
    - rateHelpersStart
    - rateHelpersEnd
    argTypes:
    - Curve*
    - Size
    - helper_iterator
    - helper_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: QuantLib::PenaltyFunction::PenaltyFunction
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void PenaltyFunction(Curve* curve,\n                        Size initialIndex,\n
      \                       helper_iterator rateHelpersStart,\n                        helper_iterator
      rateHelpersEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - localisation
    - forcePositive
    - accuracy
    argTypes:
    - Size
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::LocalBootstrap<Curve>::LocalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::LocalBootstrap(Size localisation, bool
      forcePositive, Real accuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:118,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:122,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: QuantLib::LocalBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - registerWithObservables
    - instruments_::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::setup(Curve* ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:135,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:139,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:143,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:151,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:151,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:152,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:153,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:154,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:162,1
    - Dst: const_cast<Curve*>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:162,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:166,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:166,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:168,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:170,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:171,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:175,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:176,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:177,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:178,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:180,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:186,1
    - Dst: static_cast<Constraint&>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:195,1
    - Dst: static_cast<Constraint&>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:206,1
    - Dst: interpolator_::localInterpolate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:217,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:218,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:219,1
    - Dst: data_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:220,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:227,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:235,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:236,1
    - Dst: LevenbergMarquardt::minimize
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:243,1
    - Dst: QuantLib::EndCriteria::succeeded
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:243,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 248
    functionName: QuantLib::LocalBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - times_::begin
    - interpolator_::localInterpolate
    - maturityDate
    - QL_ENSURE
    - std::sort
    - setTermStructure
    - quote
    - std::vector<Date>
    - pillarDate
    - QuantLib::ZeroInflationTraits::guess
    - data_::begin
    - detail::BootstrapHelperSorter
    - Null<Real>
    - instruments_::begin
    - QuantLib::ZeroInflationTraits::initialDate
    - std::vector<Rate>
    - QuantLib::ZeroInflationTraits::initialValue
    - instruments_::size
    - QL_REQUIRE
    - LevenbergMarquardt::minimize
    - static_cast<Constraint&>
    - timeFromReference
    - QuantLib::EndCriteria::succeeded
    - QuantLib::io::ordinal
    - data_::size
    - const_cast<Curve*>
    - Array::size
    - instruments_::end
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:255,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:256,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:261,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 271
    functionName: QuantLib::PenaltyFunction<Curve>::value
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - interpolation_::update
    - begin
    - QuantLib::ZeroInflationTraits::updateGuess
    - std::fabs
    - end
    linkageType: ''
    returnType: Real
    signature: Real PenaltyFunction<Curve>::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:277,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:278,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:283,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:287,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:289,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 295
    functionName: QuantLib::PenaltyFunction<Curve>::values
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - Array::begin
    - interpolation_::update
    - begin
    - QuantLib::ZeroInflationTraits::updateGuess
    - std::fabs
    - end
    linkageType: ''
    returnType: Array
    signature: Array PenaltyFunction<Curve>::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - curve
    - initialIndex
    - rateHelpersStart
    - rateHelpersEnd
    argTypes:
    - Curve*
    - Size
    - helper_iterator
    - helper_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionName: QuantLib::PenaltyFunction::PenaltyFunction
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::distance
    linkageType: ''
    returnType: void
    signature: "void PenaltyFunction(Curve* curve,\n                        Size initialIndex,\n
      \                       helper_iterator rateHelpersStart,\n                        helper_iterator
      rateHelpersEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - localisation
    - forcePositive
    - accuracy
    argTypes:
    - Size
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::LocalBootstrap<Curve>::LocalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::LocalBootstrap(Size localisation, bool
      forcePositive, Real accuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:118,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:122,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: QuantLib::LocalBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - registerWithObservables
    - instruments_::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::setup(Curve* ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:135,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:138,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:139,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:143,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:151,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:151,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:152,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:153,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:154,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:162,1
    - Dst: const_cast<Curve*>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:162,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:166,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:166,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:168,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:170,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:171,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:175,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:176,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:177,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:178,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:180,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:186,1
    - Dst: static_cast<Constraint&>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:195,1
    - Dst: static_cast<Constraint&>
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:206,1
    - Dst: interpolator_::localInterpolate
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:217,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:218,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:219,1
    - Dst: data_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:220,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:227,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:235,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:236,1
    - Dst: LevenbergMarquardt::minimize
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:243,1
    - Dst: QuantLib::EndCriteria::succeeded
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:243,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 248
    functionName: QuantLib::LocalBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - times_::begin
    - interpolator_::localInterpolate
    - maturityDate
    - QL_ENSURE
    - std::sort
    - setTermStructure
    - quote
    - std::vector<Date>
    - pillarDate
    - QuantLib::ZeroInflationTraits::guess
    - data_::begin
    - detail::BootstrapHelperSorter
    - Null<Real>
    - instruments_::begin
    - QuantLib::ZeroInflationTraits::initialDate
    - std::vector<Rate>
    - QuantLib::ZeroInflationTraits::initialValue
    - instruments_::size
    - QL_REQUIRE
    - LevenbergMarquardt::minimize
    - static_cast<Constraint&>
    - timeFromReference
    - QuantLib::EndCriteria::succeeded
    - QuantLib::io::ordinal
    - data_::size
    - const_cast<Curve*>
    - Array::size
    - instruments_::end
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: void LocalBootstrap<Curve>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:255,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:256,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:261,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:266,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 271
    functionName: QuantLib::PenaltyFunction<Curve>::value
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - interpolation_::update
    - begin
    - QuantLib::ZeroInflationTraits::updateGuess
    - std::fabs
    - end
    linkageType: ''
    returnType: Real
    signature: Real PenaltyFunction<Curve>::value(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:277,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:278,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:283,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:287,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:289,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/localbootstrap.hpp:290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 295
    functionName: QuantLib::PenaltyFunction<Curve>::values
    functionSourceFile: /src/quantlib/ql/termstructures/localbootstrap.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - Array::begin
    - interpolation_::update
    - begin
    - QuantLib::ZeroInflationTraits::updateGuess
    - std::fabs
    - end
    linkageType: ''
    returnType: Array
    signature: Array PenaltyFunction<Curve>::values(const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::YieldTermStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:41,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:42,1
    - Dst: QuantLib::LastFixingQuote::referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LastFixingQuote::referenceDate
    - std::move
    - registerWith
    - QuantLib::YieldTermStructure::setJumps
    - size
    linkageType: ''
    returnType: void
    signature: "void YieldTermStructure::YieldTermStructure(const Date& referenceDate,\n
      \                                          const Calendar& cal,\n                                           const
      DayCounter& dc,\n                                           std::vector<Handle<Quote>
      > jumps,\n                                           const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:53,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:54,1
    - Dst: QuantLib::LastFixingQuote::referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 57
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LastFixingQuote::referenceDate
    - std::move
    - registerWith
    - QuantLib::YieldTermStructure::setJumps
    - size
    linkageType: ''
    returnType: void
    signature: "void YieldTermStructure::YieldTermStructure(Natural settlementDays,\n
      \                                          const Calendar& cal,\n                                           const
      DayCounter& dc,\n                                           std::vector<Handle<Quote>
      > jumps,\n                                           const std::vector<Date>&
      jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:60,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:60,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:61,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:62,1
    - Dst: year
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:63,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:69,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' referenceDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::YieldTermStructure::setJumps
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - empty
    - resize
    - Date
    - size
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::setJumps(const Date& referenceDate)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:80,1
    - Dst: discountImpl
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:86,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:86,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:87,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:89,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:90,1
    - Dst: discountImpl
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:95,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 96
    functionName: QuantLib::YieldTermStructure::discount
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - discountImpl
    - empty
    - value
    - QuantLib::io::ordinal
    - isValid
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor YieldTermStructure::discount(Time t,\n                                                bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:103,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:105,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:108,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:112,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:113,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' d'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::YieldTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - referenceDate
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::zeroRate(const Date& d,\n                                              const
      DayCounter& dayCounter,\n                                              Compounding
      comp,\n                                              Frequency freq,\n                                              bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:123,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - t
    - comp
    - freq
    - extrapolate
    argTypes:
    - Time
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 127
    functionName: QuantLib::YieldTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - dayCounter
    - QuantLib::YieldTermStructure::discount
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::zeroRate(Time t,\n                                              Compounding
      comp,\n                                              Frequency freq,\n                                              bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:136,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:137,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:137,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:140,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:140,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:147,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:148,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:148,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - ' d1'
    - ' d2'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - Date
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 152
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    - QuantLib::InterestRate::impliedRate
    - std::max
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(const Date& d1,\n                                                 const
      Date& d2,\n                                                 const DayCounter&
      dayCounter,\n                                                 Compounding comp,\n
      \                                                Frequency freq,\n                                                 bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:161,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:162,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:164,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:166,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:167,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:167,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:169,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - t1
    - t2
    - comp
    - freq
    - extrapolate
    argTypes:
    - Time
    - Time
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 172
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - dayCounter
    - QuantLib::InterestRate::impliedRate
    - std::max
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(Time t1,\n                                                 Time
      t2,\n                                                 Compounding comp,\n                                                 Frequency
      freq,\n                                                 bool extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:175,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:176,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:178,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:180,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 195
    functionName: QuantLib::YieldTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - Date
    - referenceDate
    - QuantLib::YieldTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::YieldTermStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:41,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:42,1
    - Dst: QuantLib::LastFixingQuote::referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LastFixingQuote::referenceDate
    - std::move
    - registerWith
    - QuantLib::YieldTermStructure::setJumps
    - size
    linkageType: ''
    returnType: void
    signature: "void YieldTermStructure::YieldTermStructure(const Date& referenceDate,\n
      \                                          const Calendar& cal,\n                                           const
      DayCounter& dc,\n                                           std::vector<Handle<Quote>
      > jumps,\n                                           const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:53,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:54,1
    - Dst: QuantLib::LastFixingQuote::referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 57
    functionName: QuantLib::YieldTermStructure::YieldTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LastFixingQuote::referenceDate
    - std::move
    - registerWith
    - QuantLib::YieldTermStructure::setJumps
    - size
    linkageType: ''
    returnType: void
    signature: "void YieldTermStructure::YieldTermStructure(Natural settlementDays,\n
      \                                          const Calendar& cal,\n                                           const
      DayCounter& dc,\n                                           std::vector<Handle<Quote>
      > jumps,\n                                           const std::vector<Date>&
      jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:60,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:60,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:61,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:62,1
    - Dst: year
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:63,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:69,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' referenceDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionName: QuantLib::YieldTermStructure::setJumps
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 5
    functionsReached:
    - timeFromReference
    - empty
    - resize
    - Date
    - size
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::setJumps(const Date& referenceDate)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:80,1
    - Dst: discountImpl
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:86,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:86,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:87,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:89,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:90,1
    - Dst: discountImpl
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:95,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 96
    functionName: QuantLib::YieldTermStructure::discount
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 4
    functionsReached:
    - discountImpl
    - empty
    - value
    - QuantLib::io::ordinal
    - isValid
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor YieldTermStructure::discount(Time t,\n                                                bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:103,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:105,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:108,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:112,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:113,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' d'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionName: QuantLib::YieldTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - referenceDate
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::zeroRate(const Date& d,\n                                              const
      DayCounter& dayCounter,\n                                              Compounding
      comp,\n                                              Frequency freq,\n                                              bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:123,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - t
    - comp
    - freq
    - extrapolate
    argTypes:
    - Time
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 127
    functionName: QuantLib::YieldTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRate::impliedRate
    - dayCounter
    - QuantLib::YieldTermStructure::discount
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::zeroRate(Time t,\n                                              Compounding
      comp,\n                                              Frequency freq,\n                                              bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:136,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:137,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:137,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:140,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:140,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:147,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:148,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:148,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - ' d1'
    - ' d2'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - Date
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 152
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    - QuantLib::InterestRate::impliedRate
    - std::max
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(const Date& d1,\n                                                 const
      Date& d2,\n                                                 const DayCounter&
      dayCounter,\n                                                 Compounding comp,\n
      \                                                Frequency freq,\n                                                 bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:161,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:162,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:164,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:166,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:167,1
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:167,1
    - Dst: QuantLib::InterestRate::impliedRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:169,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - t1
    - t2
    - comp
    - freq
    - extrapolate
    argTypes:
    - Time
    - Time
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 172
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - dayCounter
    - QuantLib::InterestRate::impliedRate
    - std::max
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(Time t1,\n                                                 Time
      t2,\n                                                 Compounding comp,\n                                                 Frequency
      freq,\n                                                 bool extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:175,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:176,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:178,1
    - Dst: QuantLib::YieldTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:180,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.cpp:182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 195
    functionName: QuantLib::YieldTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - Date
    - referenceDate
    - QuantLib::YieldTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: void YieldTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~AdditionalBootstrapVariables()
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AdditionalBootstrapVariables()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:123,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - accuracy
    - optimizer
    - endCriteria
    argTypes:
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    Real accuracy,\n
      \   ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:135,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:136,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:136,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - additionalHelpers
    - additionalDates
    - additionalPenalties
    - accuracy
    - optimizer
    - endCriteria
    - additionalVariables
    argTypes:
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - std::function<std::vector<Date>()>
    - AdditionalPenalties
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<AdditionalBootstrapVariables>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    std::vector<ext::shared_ptr<typename
      Traits::helper> > additionalHelpers,\n    std::function<std::vector<Date>()>
      additionalDates,\n    AdditionalPenalties additionalPenalties,\n    Real accuracy,\n
      \   ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria,\n    ext::shared_ptr<AdditionalBootstrapVariables> additionalVariables)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:151,1
    - Dst: f
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:152,1
    - Dst: AdditionalPenalties
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:154,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - additionalHelpers
    - additionalDates
    - additionalPenalties
    - accuracy
    - optimizer
    - endCriteria
    - additionalVariables
    argTypes:
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - std::function<std::vector<Date>()>
    - std::function<Array()>
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<AdditionalBootstrapVariables>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 156
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - AdditionalPenalties
    - std::move
    - f
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    std::vector<ext::shared_ptr<typename
      Traits::helper> > additionalHelpers,\n    std::function<std::vector<Date>()>
      additionalDates,\n    std::function<Array()> additionalPenalties,\n    Real
      accuracy,\n    ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria,\n    ext::shared_ptr<AdditionalBootstrapVariables> additionalVariables)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:160,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:162,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:166,1
    - Dst: ext::make_shared<LevenbergMarquardt>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:168,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:171,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 176
    functionName: QuantLib::GlobalBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<LevenbergMarquardt>
    - registerWithObservables
    - ext::make_shared<EndCriteria>
    - size
    - instruments_::size
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::setup(Curve *ts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:185,1
    - Dst: instruments_::empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:188,1
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:189,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:189,1
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:192,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:197,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:198,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:201,1
    - Dst: additionalDates_
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:206,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:207,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:208,1
    - Dst: std::remove_if
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:211,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:216,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:226,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:227,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:229,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:229,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:233,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:233,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:236,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:238,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:238,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:241,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:243,1
    - Dst: latestRelevantDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:243,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:248,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:248,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 256
    functionName: QuantLib::GlobalBootstrap<Curve>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - instruments_::empty
    - std::remove_if
    - std::vector::clear
    - std::vector::insert
    - latestRelevantDate
    - std::vector::push_back
    - empty
    - std::sort
    - begin
    - pillarDate
    - size
    - std::vector::erase
    - detail::BootstrapHelperSorter
    - std::vector::back
    - std::vector<Real>
    - instruments_::begin
    - std::max
    - QuantLib::ZeroInflationTraits::initialDate
    - std::vector::size
    - end
    - instruments_::size
    - QuantLib::ZeroInflationTraits::initialValue
    - QL_REQUIRE
    - timeFromReference
    - std::vector::begin
    - std::vector::end
    - std::unique
    - data_::size
    - additionalDates_
    - instruments_::end
    - std::vector::empty
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::initialize() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GlobalBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:273,1
    - Dst: ext::shared_ptr::pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:274,1
    - Dst: ext::shared_ptr::setTermStructure
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:278,1
    - Dst: const_cast<Curve *>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:285,1
    - Dst: ext::shared_ptr::setTermStructure
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:287,1
    - Dst: const_cast<Curve *>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:287,1
    - Dst: interpolator_::interpolate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: data_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:298,1
    - Dst: QuantLib::GlobalBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:303,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:307,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:307,1
    - Dst: QuantLib::SimpleQuoteVariables::transformInverse
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:308,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:317,1
    - Dst: QuantLib::SimpleQuoteVariables::transformDirect
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:317,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:319,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: additionalPenalties_
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:326,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:328,1
    - Dst: std::transform
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:330,1
    - Dst: ext::shared_ptr::quoteError
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:331,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:333,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:342,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:345,1
    - Dst: QuantLib::EndCriteria::succeeded
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:345,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 258
    functionDepth: 2
    functionLinenumber: 258
    functionLinenumberEnd: 350
    functionName: QuantLib::GlobalBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::pillarDate
    - times_::begin
    - ext::shared_ptr::quoteError
    - std::transform
    - times_::size
    - QuantLib::GlobalBootstrap<Curve>::initialize
    - ext::shared_ptr::quote
    - QuantLib::SimpleQuoteVariables::transformDirect
    - Array::begin
    - Array
    - begin
    - times_::end
    - additionalPenalties_
    - ext::shared_ptr::maturityDate
    - minimize
    - data_::begin
    - ext::shared_ptr::setTermStructure
    - const_cast<Curve *>
    - Array::end
    - interpolator_::interpolate
    - interpolation_::update
    - instruments_::begin
    - QuantLib::SimpleQuoteVariables::transformInverse
    - end
    - QL_REQUIRE
    - QuantLib::EndCriteria::succeeded
    - std::copy
    - QuantLib::io::ordinal
    - update
    - QuantLib::ZeroInflationTraits::updateGuess
    - Array::size
    - instruments_::end
    - QuantLib::ZeroInflationTraits::guess
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~AdditionalBootstrapVariables()
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~AdditionalBootstrapVariables()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:123,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - accuracy
    - optimizer
    - endCriteria
    argTypes:
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    Real accuracy,\n
      \   ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:135,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:136,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:136,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - additionalHelpers
    - additionalDates
    - additionalPenalties
    - accuracy
    - optimizer
    - endCriteria
    - additionalVariables
    argTypes:
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - std::function<std::vector<Date>()>
    - AdditionalPenalties
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<AdditionalBootstrapVariables>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    std::vector<ext::shared_ptr<typename
      Traits::helper> > additionalHelpers,\n    std::function<std::vector<Date>()>
      additionalDates,\n    AdditionalPenalties additionalPenalties,\n    Real accuracy,\n
      \   ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria,\n    ext::shared_ptr<AdditionalBootstrapVariables> additionalVariables)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:149,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:151,1
    - Dst: f
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:152,1
    - Dst: AdditionalPenalties
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:154,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - additionalHelpers
    - additionalDates
    - additionalPenalties
    - accuracy
    - optimizer
    - endCriteria
    - additionalVariables
    argTypes:
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - std::function<std::vector<Date>()>
    - std::function<Array()>
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<AdditionalBootstrapVariables>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 156
    functionName: QuantLib::GlobalBootstrap<Curve>::GlobalBootstrap
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - AdditionalPenalties
    - std::move
    - f
    linkageType: ''
    returnType: void
    signature: "void GlobalBootstrap<Curve>::GlobalBootstrap(\n    std::vector<ext::shared_ptr<typename
      Traits::helper> > additionalHelpers,\n    std::function<std::vector<Date>()>
      additionalDates,\n    std::function<Array()> additionalPenalties,\n    Real
      accuracy,\n    ext::shared_ptr<OptimizationMethod> optimizer,\n    ext::shared_ptr<EndCriteria>
      endCriteria,\n    ext::shared_ptr<AdditionalBootstrapVariables> additionalVariables)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:160,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:162,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:166,1
    - Dst: ext::make_shared<LevenbergMarquardt>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:168,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:171,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Curve*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 176
    functionName: QuantLib::GlobalBootstrap<Curve>::setup
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - ext::make_shared<LevenbergMarquardt>
    - registerWithObservables
    - ext::make_shared<EndCriteria>
    - size
    - instruments_::size
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::setup(Curve *ts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:181,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: detail::BootstrapHelperSorter
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:182,1
    - Dst: QuantLib::ZeroInflationTraits::initialDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:185,1
    - Dst: instruments_::empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:188,1
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:189,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:189,1
    - Dst: instruments_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:192,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:197,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:198,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:201,1
    - Dst: additionalDates_
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:206,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:207,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:208,1
    - Dst: std::remove_if
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:209,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:211,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:216,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:226,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:227,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:229,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:229,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:230,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:231,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:233,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:233,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:236,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:238,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:238,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:241,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:243,1
    - Dst: latestRelevantDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:243,1
    - Dst: data_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:248,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:248,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    - Dst: QuantLib::ZeroInflationTraits::initialValue
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:252,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 256
    functionName: QuantLib::GlobalBootstrap<Curve>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 1
    functionsReached:
    - instruments_::empty
    - std::remove_if
    - std::vector::clear
    - std::vector::insert
    - latestRelevantDate
    - std::vector::push_back
    - empty
    - std::sort
    - begin
    - pillarDate
    - size
    - std::vector::erase
    - detail::BootstrapHelperSorter
    - std::vector::back
    - std::vector<Real>
    - instruments_::begin
    - std::max
    - QuantLib::ZeroInflationTraits::initialDate
    - std::vector::size
    - end
    - instruments_::size
    - QuantLib::ZeroInflationTraits::initialValue
    - QL_REQUIRE
    - timeFromReference
    - std::vector::begin
    - std::vector::end
    - std::unique
    - data_::size
    - additionalDates_
    - instruments_::end
    - std::vector::empty
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::initialize() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GlobalBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:272,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:273,1
    - Dst: ext::shared_ptr::pillarDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:274,1
    - Dst: ext::shared_ptr::setTermStructure
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:278,1
    - Dst: const_cast<Curve *>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:284,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:285,1
    - Dst: ext::shared_ptr::setTermStructure
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:287,1
    - Dst: const_cast<Curve *>
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:287,1
    - Dst: interpolator_::interpolate
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: data_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:293,1
    - Dst: times_::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:298,1
    - Dst: QuantLib::GlobalBootstrap<Curve>::initialize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:303,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:307,1
    - Dst: QuantLib::ZeroInflationTraits::guess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:307,1
    - Dst: QuantLib::SimpleQuoteVariables::transformInverse
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:308,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:310,1
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:317,1
    - Dst: QuantLib::SimpleQuoteVariables::transformDirect
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:317,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:319,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:321,1
    - Dst: additionalPenalties_
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:326,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:328,1
    - Dst: std::transform
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: instruments_::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: instruments_::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:329,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:330,1
    - Dst: ext::shared_ptr::quoteError
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:331,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:332,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:333,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:342,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:345,1
    - Dst: QuantLib::EndCriteria::succeeded
      Src: /src/quantlib/ql/termstructures/globalbootstrap.hpp:345,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 258
    functionDepth: 2
    functionLinenumber: 258
    functionLinenumberEnd: 350
    functionName: QuantLib::GlobalBootstrap<Curve>::calculate
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrap.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::pillarDate
    - times_::begin
    - ext::shared_ptr::quoteError
    - std::transform
    - times_::size
    - QuantLib::GlobalBootstrap<Curve>::initialize
    - ext::shared_ptr::quote
    - QuantLib::SimpleQuoteVariables::transformDirect
    - Array::begin
    - Array
    - begin
    - times_::end
    - additionalPenalties_
    - ext::shared_ptr::maturityDate
    - minimize
    - data_::begin
    - ext::shared_ptr::setTermStructure
    - const_cast<Curve *>
    - Array::end
    - interpolator_::interpolate
    - interpolation_::update
    - instruments_::begin
    - QuantLib::SimpleQuoteVariables::transformInverse
    - end
    - QL_REQUIRE
    - QuantLib::EndCriteria::succeeded
    - std::copy
    - QuantLib::io::ordinal
    - update
    - QuantLib::ZeroInflationTraits::updateGuess
    - Array::size
    - instruments_::end
    - QuantLib::ZeroInflationTraits::guess
    linkageType: ''
    returnType: void
    signature: void GlobalBootstrap<Curve>::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:52,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - seasonality
    - baseRate
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - std::move
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::InflationTermStructure(\n                                        const
      Date& referenceDate,\n                                        Date baseDate,\n
      \                                       Frequency frequency,\n                                        const
      DayCounter& dayCounter,\n                                        ext::shared_ptr<Seasonality>
      seasonality,\n                                        Rate baseRate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:68,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - frequency
    - ' dayCounter'
    - seasonality
    - baseRate
    argTypes:
    - Natural
    - Calendar
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 71
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::InflationTermStructure(\n                                        Natural
      settlementDays,\n                                        const Calendar& calendar,\n
      \                                       Date baseDate,\n                                        Frequency
      frequency,\n                                        const DayCounter& dayCounter,\n
      \                                       ext::shared_ptr<Seasonality> seasonality,\n
      \                                       Rate baseRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::InflationTermStructure::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING InflationTermStructure::baseDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:84,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:84,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' seasonality'
    argTypes:
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::InflationTermStructure::setSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::setSeasonality(\n                          const
      ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:93,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:93,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 98
    functionName: QuantLib::InflationTermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - allowsExtrapolation
    - QuantLib::InflationTermStructure::baseDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::checkRange(const Date& d,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::InflationTermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - maxTime
    - allowsExtrapolation
    - QuantLib::InflationTermStructure::baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::checkRange(Time t,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   Date
      baseDate,\n                                   Frequency frequency,\n                                   const
      DayCounter& dayCounter,\n                                   const ext::shared_ptr<Seasonality>&
      seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   const
      Date& referenceDate,\n                                   Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Natural
    - Calendar
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   Natural
      settlementDays,\n                                   const Calendar& calendar,\n
      \                                  Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:139,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:140,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:145,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:146,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:151,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:152,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:153,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:154,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:155,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:158,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:158,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:159,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:160,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:161,1
    - Dst: hasSeasonality
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:164,1
    - Dst: seasonality
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - d
    - ' instObsLag'
    - forceLinearInterpolation
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 168
    functionName: QuantLib::ZeroInflationTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - Period
    - inflationPeriod
    - zeroRateImpl
    - frequency
    - QuantLib::InflationTermStructure::checkRange
    - hasSeasonality
    - seasonality
    linkageType: ''
    returnType: Rate
    signature: "Rate ZeroInflationTermStructure::zeroRate(const Date &d, const Period&
      instObsLag,\n                                              bool forceLinearInterpolation,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:172,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::ZeroInflationTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - zeroRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: "Rate ZeroInflationTermStructure::zeroRate(Time t,\n                                              bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    const
      Date& referenceDate,\n                                    Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    const
      DayCounter& dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - seasonality
    argTypes:
    - Natural
    - Calendar
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 204
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    const
      DayCounter& dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Date
      baseDate,\n                                    Rate baseYoYRate,\n                                    Frequency
      frequency,\n                                    bool indexIsInterpolated,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      ext::shared_ptr<Seasonality> &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 228
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    const
      Date& referenceDate,\n                                    Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    bool
      indexIsInterpolated,\n                                    const DayCounter&
      dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Natural
    - Calendar
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 242
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    bool
      indexIsInterpolated,\n                                    const DayCounter&
      dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:251,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:252,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:257,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:257,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:258,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:263,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:264,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:265,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:266,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:267,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:272,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:273,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:274,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:276,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:276,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:277,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:278,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - d
    - ' instObsLag'
    - forceLinearInterpolation
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 282
    functionName: QuantLib::YoYInflationTermStructure::yoyRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - yoyRateImpl
    - timeFromReference
    - Period
    - inflationPeriod
    - frequency
    - QuantLib::InflationTermStructure::checkRange
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: "QL_DEPRECATED_ENABLE_WARNING YoYInflationTermStructure::yoyRate(const
      Date &d, const Period& instObsLag,\n                                            bool
      forceLinearInterpolation,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:272,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:273,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: QuantLib::if
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InflationTermStructure::checkRange
    - yoyRateImpl
    - timeFromReference
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING if (indexIsInterpolated())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:52,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - seasonality
    - baseRate
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - std::move
    - Calendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::InflationTermStructure(\n                                        const
      Date& referenceDate,\n                                        Date baseDate,\n
      \                                       Frequency frequency,\n                                        const
      DayCounter& dayCounter,\n                                        ext::shared_ptr<Seasonality>
      seasonality,\n                                        Rate baseRate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:68,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - frequency
    - ' dayCounter'
    - seasonality
    - baseRate
    argTypes:
    - Natural
    - Calendar
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 71
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::InflationTermStructure(\n                                        Natural
      settlementDays,\n                                        const Calendar& calendar,\n
      \                                       Date baseDate,\n                                        Frequency
      frequency,\n                                        const DayCounter& dayCounter,\n
      \                                       ext::shared_ptr<Seasonality> seasonality,\n
      \                                       Rate baseRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionName: QuantLib::InflationTermStructure::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING InflationTermStructure::baseDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:84,1
    - Dst: isConsistent
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:84,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' seasonality'
    argTypes:
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::InflationTermStructure::setSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - isConsistent
    - update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::setSeasonality(\n                          const
      ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:93,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:93,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:95,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 98
    functionName: QuantLib::InflationTermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 3
    functionsReached:
    - allowsExtrapolation
    - QuantLib::InflationTermStructure::baseDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::checkRange(const Date& d,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:104,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::InflationTermStructure::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 3
    functionsReached:
    - timeFromReference
    - maxTime
    - allowsExtrapolation
    - QuantLib::InflationTermStructure::baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InflationTermStructure::checkRange(Time t,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   Date
      baseDate,\n                                   Frequency frequency,\n                                   const
      DayCounter& dayCounter,\n                                   const ext::shared_ptr<Seasonality>&
      seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   const
      Date& referenceDate,\n                                   Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    argTypes:
    - Natural
    - Calendar
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: QuantLib::ZeroInflationTermStructure::ZeroInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationTermStructure::ZeroInflationTermStructure(\n                                   Natural
      settlementDays,\n                                   const Calendar& calendar,\n
      \                                  Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:139,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:140,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:145,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:145,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:146,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:151,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:152,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:153,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:154,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:155,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:158,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:158,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:159,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:160,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:161,1
    - Dst: hasSeasonality
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:164,1
    - Dst: seasonality
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - d
    - ' instObsLag'
    - forceLinearInterpolation
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 168
    functionName: QuantLib::ZeroInflationTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - Period
    - inflationPeriod
    - zeroRateImpl
    - frequency
    - QuantLib::InflationTermStructure::checkRange
    - hasSeasonality
    - seasonality
    linkageType: ''
    returnType: Rate
    signature: "Rate ZeroInflationTermStructure::zeroRate(const Date &d, const Period&
      instObsLag,\n                                              bool forceLinearInterpolation,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:172,1
    - Dst: zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: QuantLib::ZeroInflationTermStructure::zeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - zeroRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: "Rate ZeroInflationTermStructure::zeroRate(Time t,\n                                              bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    const
      Date& referenceDate,\n                                    Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    const
      DayCounter& dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - seasonality
    argTypes:
    - Natural
    - Calendar
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 204
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    const
      DayCounter& dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Date
      baseDate,\n                                    Rate baseYoYRate,\n                                    Frequency
      frequency,\n                                    bool indexIsInterpolated,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      ext::shared_ptr<Seasonality> &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 228
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    const
      Date& referenceDate,\n                                    Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    bool
      indexIsInterpolated,\n                                    const DayCounter&
      dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - settlementDays
    - ' calendar'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - seasonality
    argTypes:
    - Natural
    - Calendar
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 242
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationTermStructure::YoYInflationTermStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   Date baseDate,\n                                    Rate
      baseYoYRate,\n                                    Frequency frequency,\n                                    bool
      indexIsInterpolated,\n                                    const DayCounter&
      dayCounter,\n                                    const ext::shared_ptr<Seasonality>
      &seasonality)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:251,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:252,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:257,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:257,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:258,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:263,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:264,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:265,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:266,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:267,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:272,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:273,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:274,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:276,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:276,1
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:277,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:278,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - d
    - ' instObsLag'
    - forceLinearInterpolation
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 282
    functionName: QuantLib::YoYInflationTermStructure::yoyRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - yoyRateImpl
    - timeFromReference
    - Period
    - inflationPeriod
    - frequency
    - QuantLib::InflationTermStructure::checkRange
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: "QL_DEPRECATED_ENABLE_WARNING YoYInflationTermStructure::yoyRate(const
      Date &d, const Period& instObsLag,\n                                            bool
      forceLinearInterpolation,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationTermStructure::checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:272,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:273,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: QuantLib::if
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InflationTermStructure::checkRange
    - yoyRateImpl
    - timeFromReference
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING if (indexIsInterpolated())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:292,1
    - Dst: yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 294
    functionName: YoYInflationTermStructure::yoyRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 0
    functionsReached:
    - yoyRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYInflationTermStructure::yoyRate(Time t,\n                                            bool
      extrapolate) const"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: month
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:302,1
    - Dst: year
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:303,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:339,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:343,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:344,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:344,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:346,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - ' d'
    - frequency
    argTypes:
    - Date
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 347
    functionName: inflationPeriod
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 28
    functionsReached:
    - std::make_pair
    - month
    - QuantLib::Date::endOfMonth
    - QL_FAIL
    - Date
    - year
    linkageType: ''
    returnType: std::pair<Date,Date>
    signature: "std::pair<Date,Date> inflationPeriod(const Date& d,\n                                         Frequency
      frequency)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:359,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:364,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:365,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.cpp:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - f
    - indexIsInterpolated
    - dayCounter
    - d1
    - d2
    argTypes:
    - Frequency
    - bool
    - DayCounter
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 370
    functionName: inflationYearFraction
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.cpp
    functionUses: 6
    functionsReached:
    - inflationPeriod
    - DayCounter::yearFraction
    linkageType: ''
    returnType: Time
    signature: "Time inflationYearFraction(Frequency f, bool indexIsInterpolated,\n
      \                              const DayCounter &dayCounter,\n                               const
      Date &d1, const Date &d2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:32,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       const DayCounter& dc, std::vector<Handle<Quote> > jumps, const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:45,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       const Date& referenceDate,\n        const Calendar& cal,\n        const
      DayCounter& dc,\n        std::vector<Handle<Quote> > jumps,\n        const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:58,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 62
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       Natural settlementDays,\n        const Calendar& cal,\n        const
      DayCounter& dc,\n        std::vector<Handle<Quote> > jumps,\n        const std::vector<Date>&
      jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:66,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:67,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:74,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:77,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 79
    functionName: QuantLib::DefaultProbabilityTermStructure::setJumps
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 3
    functionsReached:
    - referenceDate
    - timeFromReference
    - empty
    - resize
    - Date
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DefaultProbabilityTermStructure::setJumps()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:89,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:89,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:90,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:92,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:93,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:97,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: QuantLib::DefaultProbabilityTermStructure::survivalProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - QuantLib::io::ordinal
    - isValid
    - checkRange
    - survivalProbabilityImpl
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::survivalProbability(\n
      \                                                    Time t,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:107,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:110,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:111,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d1'
    - ' d2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::defaultProbability
    - referenceDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    const Date& d1,\n                                                     const
      Date& d2,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:120,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:123,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t1
    - t2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 126
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    Time t1,\n                                                     Time
      t2,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:32,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       const DayCounter& dc, std::vector<Handle<Quote> > jumps, const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:45,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       const Date& referenceDate,\n        const Calendar& cal,\n        const
      DayCounter& dc,\n        std::vector<Handle<Quote> > jumps,\n        const std::vector<Date>&
      jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:57,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:58,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - jumps
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 62
    functionName: QuantLib::DefaultProbabilityTermStructure::DefaultProbabilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - std::move
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: "void DefaultProbabilityTermStructure::DefaultProbabilityTermStructure(\n
      \       Natural settlementDays,\n        const Calendar& cal,\n        const
      DayCounter& dc,\n        std::vector<Handle<Quote> > jumps,\n        const std::vector<Date>&
      jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:66,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:67,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:74,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:77,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 79
    functionName: QuantLib::DefaultProbabilityTermStructure::setJumps
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 6
    functionsReached:
    - referenceDate
    - timeFromReference
    - empty
    - resize
    - Date
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DefaultProbabilityTermStructure::setJumps()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:89,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:89,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:90,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:92,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:93,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:97,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: QuantLib::DefaultProbabilityTermStructure::survivalProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - QuantLib::io::ordinal
    - isValid
    - checkRange
    - survivalProbabilityImpl
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::survivalProbability(\n
      \                                                    Time t,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:107,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:110,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:111,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d1'
    - ' d2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::defaultProbability
    - referenceDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    const Date& d1,\n                                                     const
      Date& d2,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:120,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:123,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - t1
    - t2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 126
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    Time t1,\n                                                     Time
      t2,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& helper()'
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<typename Traits::helper>
    signature: ext::shared_ptr<typename Traits::helper> & helper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - curve
    - helper
    - segment
    argTypes:
    - Curve*
    - ext::shared_ptr<typename Traits::helper>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::BootstrapError<Curve>::BootstrapError
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BootstrapError<Curve>::BootstrapError(const Curve* curve,\n                                          ext::shared_ptr<typename
      Traits::helper> helper,\n                                          Size segment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:65,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:66,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: BootstrapError<Curve>::operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - interpolation_::update
    - QuantLib::ZeroInflationTraits::updateGuess
    linkageType: ''
    returnType: Real
    signature: Real BootstrapError<Curve>::operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& helper()'
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<typename Traits::helper>
    signature: ext::shared_ptr<typename Traits::helper> & helper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - curve
    - helper
    - segment
    argTypes:
    - Curve*
    - ext::shared_ptr<typename Traits::helper>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::BootstrapError<Curve>::BootstrapError
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BootstrapError<Curve>::BootstrapError(const Curve* curve,\n                                          ext::shared_ptr<typename
      Traits::helper> helper,\n                                          Size segment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroInflationTraits::updateGuess
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:65,1
    - Dst: interpolation_::update
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:66,1
    - Dst: quoteError
      Src: /src/quantlib/ql/termstructures/bootstraperror.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: BootstrapError<Curve>::operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/termstructures/bootstraperror.hpp
    functionUses: 0
    functionsReached:
    - quoteError
    - interpolation_::update
    - QuantLib::ZeroInflationTraits::updateGuess
    linkageType: ''
    returnType: Real
    signature: Real BootstrapError<Curve>::operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:185,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: QuantLib::YieldTermStructure::discount
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 9
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor YieldTermStructure::discount(const Date& d,\n                                                bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::forwardRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - ' p'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - Period
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::YieldTermStructure::forwardRate
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(const Date& d,\n                                                 const
      Period& p,\n                                                 const DayCounter&
      dayCounter,\n                                                 Compounding comp,\n
      \                                                Frequency freq,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: '& YieldTermStructure::jumpDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & YieldTermStructure::jumpDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: '& YieldTermStructure::jumpTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & YieldTermStructure::jumpTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::discount
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:185,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: QuantLib::YieldTermStructure::discount
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::YieldTermStructure::discount
    - timeFromReference
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor YieldTermStructure::discount(const Date& d,\n                                                bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::forwardRate
      Src: /src/quantlib/ql/termstructures/yieldtermstructure.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - ' p'
    - ' dayCounter'
    - comp
    - freq
    - extrapolate
    argTypes:
    - Date
    - Period
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: QuantLib::YieldTermStructure::forwardRate
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::YieldTermStructure::forwardRate
    linkageType: ''
    returnType: InterestRate
    signature: "InterestRate YieldTermStructure::forwardRate(const Date& d,\n                                                 const
      Period& p,\n                                                 const DayCounter&
      dayCounter,\n                                                 Compounding comp,\n
      \                                                Frequency freq,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: '& YieldTermStructure::jumpDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & YieldTermStructure::jumpDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: '& YieldTermStructure::jumpTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yieldtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & YieldTermStructure::jumpTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:181,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::DefaultProbabilityTermStructure::survivalProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    - timeFromReference
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::survivalProbability(\n
      \                                                    const Date& d,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 189
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    const Date& d,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 196
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    Time t,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultDensity
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:202,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 203
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultDensity
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - QuantLib::DefaultProbabilityTermStructure::defaultDensity
    linkageType: ''
    returnType: Real
    signature: "Real DefaultProbabilityTermStructure::defaultDensity(\n                                                     const
      Date& d,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:209,1
    - Dst: defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 211
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultDensity
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - checkRange
    - defaultDensityImpl
    linkageType: ''
    returnType: Real
    signature: "Real DefaultProbabilityTermStructure::defaultDensity(\n                                                     Time
      t,\n                                                     bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:216,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - QuantLib::DefaultProbabilityTermStructure::hazardRate
    linkageType: ''
    returnType: Rate
    signature: "Rate DefaultProbabilityTermStructure::hazardRate(const Date& d,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:221,1
    - Dst: Rate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:222,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultDensity
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    - QuantLib::DefaultProbabilityTermStructure::defaultDensity
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DefaultProbabilityTermStructure::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:227,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 3
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: "Rate DefaultProbabilityTermStructure::hazardRate(Time t,\n                                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    DefaultProbabilityTermStructure::jumpDates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    DefaultProbabilityTermStructure::jumpDates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    DefaultProbabilityTermStructure::jumpTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    DefaultProbabilityTermStructure::jumpTimes()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:244,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:245,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 247
    functionName: QuantLib::DefaultProbabilityTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - referenceDate
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: void DefaultProbabilityTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:181,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::DefaultProbabilityTermStructure::survivalProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    - timeFromReference
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::survivalProbability(\n
      \                                                    const Date& d,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 189
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    const Date& d,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 196
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultProbability
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability DefaultProbabilityTermStructure::defaultProbability(\n
      \                                                    Time t,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultDensity
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:202,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 203
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultDensity
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 3
    functionsReached:
    - timeFromReference
    - QuantLib::DefaultProbabilityTermStructure::defaultDensity
    linkageType: ''
    returnType: Real
    signature: "Real DefaultProbabilityTermStructure::defaultDensity(\n                                                     const
      Date& d,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:209,1
    - Dst: defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 211
    functionName: QuantLib::DefaultProbabilityTermStructure::defaultDensity
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 3
    functionsReached:
    - checkRange
    - defaultDensityImpl
    linkageType: ''
    returnType: Real
    signature: "Real DefaultProbabilityTermStructure::defaultDensity(\n                                                     Time
      t,\n                                                     bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:216,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::DefaultProbabilityTermStructure::hazardRate
    linkageType: ''
    returnType: Rate
    signature: "Rate DefaultProbabilityTermStructure::hazardRate(const Date& d,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbabilityTermStructure::survivalProbability
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:221,1
    - Dst: Rate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:222,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::defaultDensity
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::survivalProbability
    - QuantLib::DefaultProbabilityTermStructure::defaultDensity
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DefaultProbabilityTermStructure::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:227,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 3
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: QuantLib::DefaultProbabilityTermStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: "Rate DefaultProbabilityTermStructure::hazardRate(Time t,\n                                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    DefaultProbabilityTermStructure::jumpDates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    DefaultProbabilityTermStructure::jumpDates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    DefaultProbabilityTermStructure::jumpTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    DefaultProbabilityTermStructure::jumpTimes()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:244,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:245,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::setJumps
      Src: /src/quantlib/ql/termstructures/defaulttermstructure.hpp:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 247
    functionName: QuantLib::DefaultProbabilityTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/defaulttermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - referenceDate
    - QuantLib::DefaultProbabilityTermStructure::setJumps
    linkageType: ''
    returnType: void
    signature: void DefaultProbabilityTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~InterpolatedCurve()
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatedCurve()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - data
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(std::vector<Time> times,\n                          std::vector<Real>
      data,\n                          const Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(std::vector<Time> times,\n                          const
      Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(Size n,\n                          const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedCurve::setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCurve::setupInterpolation
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(const InterpolatedCurve& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: '& operator=(const InterpolatedCurve& c)'
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    linkageType: ''
    returnType: InterpolatedCurve
    signature: InterpolatedCurve & operator=(const InterpolatedCurve& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: QuantLib::InterpolatedCurve::setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCurve::setupInterpolation
    - std::move
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(InterpolatedCurve&& c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:91,1
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: '& operator=(InterpolatedCurve&& c) noexcept'
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    - std::move
    linkageType: ''
    returnType: InterpolatedCurve
    signature: InterpolatedCurve & operator=(InterpolatedCurve&& c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:102,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:105,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:109,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' dates'
    - referenceDate
    - ' dayCounter'
    argTypes:
    - std::vector<Date>
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 114
    functionName: QuantLib::InterpolatedCurve::setupTimes
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - close
    - yearFraction
    - resize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setupTimes(const std::vector<Date>& dates,\n                        Date
      referenceDate,\n                        const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::InterpolatedCurve::setupInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 2
    functionsReached:
    - interpolate
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: ~InterpolatedCurve()
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatedCurve()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - times
    - data
    argTypes:
    - std::vector<Time>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(std::vector<Time> times,\n                          std::vector<Real>
      data,\n                          const Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - times
    argTypes:
    - std::vector<Time>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(std::vector<Time> times,\n                          const
      Interpolator& i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCurve(Size n,\n                          const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedCurve::setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCurve::setupInterpolation
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(const InterpolatedCurve& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: '& operator=(const InterpolatedCurve& c)'
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    linkageType: ''
    returnType: InterpolatedCurve
    signature: InterpolatedCurve & operator=(const InterpolatedCurve& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:84,1
    - Dst: QuantLib::InterpolatedCurve::setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::InterpolatedCurve::InterpolatedCurve
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCurve::setupInterpolation
    - std::move
    linkageType: ''
    returnType: void
    signature: void InterpolatedCurve(InterpolatedCurve&& c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:91,1
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - InterpolatedCurve
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: '& operator=(InterpolatedCurve&& c) noexcept'
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    - std::move
    linkageType: ''
    returnType: InterpolatedCurve
    signature: InterpolatedCurve & operator=(InterpolatedCurve&& c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:102,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:105,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:109,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' dates'
    - referenceDate
    - ' dayCounter'
    argTypes:
    - std::vector<Date>
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 114
    functionName: QuantLib::InterpolatedCurve::setupTimes
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 0
    functionsReached:
    - close
    - yearFraction
    - resize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setupTimes(const std::vector<Date>& dates,\n                        Date
      referenceDate,\n                        const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/interpolatedcurve.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::InterpolatedCurve::setupInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/interpolatedcurve.hpp
    functionUses: 4
    functionsReached:
    - interpolate
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::VolatilityTermStructure::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention VolatilityTermStructure::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:86,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:86,1
    - Dst: QuantLib::VolatilityTermStructure::businessDayConvention
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::VolatilityTermStructure::optionDateFromTenor
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.hpp
    functionUses: 0
    functionsReached:
    - calendar
    - QuantLib::VolatilityTermStructure::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date VolatilityTermStructure::optionDateFromTenor(const Period& p)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: QuantLib::VolatilityTermStructure::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention VolatilityTermStructure::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:86,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:86,1
    - Dst: QuantLib::VolatilityTermStructure::businessDayConvention
      Src: /src/quantlib/ql/termstructures/voltermstructure.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::VolatilityTermStructure::optionDateFromTenor
    functionSourceFile: /src/quantlib/ql/termstructures/voltermstructure.hpp
    functionUses: 0
    functionsReached:
    - calendar
    - QuantLib::VolatilityTermStructure::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date VolatilityTermStructure::optionDateFromTenor(const Period& p)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING InflationTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::InflationTermStructure::hasExplicitBaseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasExplicitBaseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 244
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING YoYInflationTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionName: QuantLib::InflationTermStructure::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period InflationTermStructure::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionName: QuantLib::InflationTermStructure::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency InflationTermStructure::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:311,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 313
    functionName: QuantLib::InflationTermStructure::baseRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate InflationTermStructure::baseRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::InflationTermStructure::seasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Seasonality>
    signature: ext::shared_ptr<Seasonality> InflationTermStructure::seasonality()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: QuantLib::InflationTermStructure::hasSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool InflationTermStructure::hasSeasonality() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 327
    functionName: QuantLib::YoYInflationTermStructure::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationTermStructure::indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::InflationTermStructure::InflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING InflationTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::InflationTermStructure::hasExplicitBaseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasExplicitBaseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 244
    functionName: QuantLib::YoYInflationTermStructure::YoYInflationTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING YoYInflationTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionName: QuantLib::InflationTermStructure::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period InflationTermStructure::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionName: QuantLib::InflationTermStructure::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency InflationTermStructure::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:311,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 313
    functionName: QuantLib::InflationTermStructure::baseRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate InflationTermStructure::baseRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::InflationTermStructure::seasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Seasonality>
    signature: ext::shared_ptr<Seasonality> InflationTermStructure::seasonality()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/termstructures/inflationtermstructure.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: QuantLib::InflationTermStructure::hasSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool InflationTermStructure::hasSeasonality() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 327
    functionName: QuantLib::YoYInflationTermStructure::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/inflationtermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYInflationTermStructure::indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:13,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:13,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:14,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - quotes
    - initialGuesses
    - lowerBounds
    argTypes:
    - std::vector<ext::shared_ptr<SimpleQuote>>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 17
    functionName: QuantLib::SimpleQuoteVariables::SimpleQuoteVariables
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SimpleQuoteVariables::SimpleQuoteVariables(std::vector<ext::shared_ptr<SimpleQuote>>
      quotes,\n                                               std::vector<Real> initialGuesses,\n
      \                                              std::vector<Real> lowerBounds)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:20,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:21,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:24,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:26,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:27,1
    - Dst: QuantLib::SimpleQuoteVariables::transformInverse
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:29,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - validData
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 19
    functionDepth: 2
    functionLinenumber: 19
    functionLinenumberEnd: 32
    functionName: QuantLib::SimpleQuoteVariables::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - setValue
    - value
    - QuantLib::detail::get
    - Array::size
    - size
    - QuantLib::SimpleQuoteVariables::transformInverse
    linkageType: ''
    returnType: Array
    signature: Array SimpleQuoteVariables::initialize(bool validData)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:35,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:36,1
    - Dst: QuantLib::SimpleQuoteVariables::transformDirect
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::SimpleQuoteVariables::update
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::SimpleQuoteVariables::transformDirect
    - setValue
    linkageType: ''
    returnType: void
    signature: void SimpleQuoteVariables::update(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - i
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::SimpleQuoteVariables::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::get
    - Null<Real>
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SimpleQuoteVariables::transformDirect(Real x, Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - i
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::SimpleQuoteVariables::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::get
    - Null<Real>
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real SimpleQuoteVariables::transformInverse(Real x, Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:13,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:13,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:14,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:15,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:16,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - quotes
    - initialGuesses
    - lowerBounds
    argTypes:
    - std::vector<ext::shared_ptr<SimpleQuote>>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 17
    functionName: QuantLib::SimpleQuoteVariables::SimpleQuoteVariables
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SimpleQuoteVariables::SimpleQuoteVariables(std::vector<ext::shared_ptr<SimpleQuote>>
      quotes,\n                                               std::vector<Real> initialGuesses,\n
      \                                              std::vector<Real> lowerBounds)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:20,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:21,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:24,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:26,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:27,1
    - Dst: QuantLib::SimpleQuoteVariables::transformInverse
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:29,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - validData
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 19
    functionDepth: 3
    functionLinenumber: 19
    functionLinenumberEnd: 32
    functionName: QuantLib::SimpleQuoteVariables::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - setValue
    - value
    - QuantLib::detail::get
    - Array::size
    - size
    - QuantLib::SimpleQuoteVariables::transformInverse
    linkageType: ''
    returnType: Array
    signature: Array SimpleQuoteVariables::initialize(bool validData)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:35,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:36,1
    - Dst: QuantLib::SimpleQuoteVariables::transformDirect
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::SimpleQuoteVariables::update
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::SimpleQuoteVariables::transformDirect
    - setValue
    linkageType: ''
    returnType: void
    signature: void SimpleQuoteVariables::update(const Array& x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:42,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - i
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::SimpleQuoteVariables::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::get
    - Null<Real>
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SimpleQuoteVariables::transformDirect(Real x, Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:46,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - i
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::SimpleQuoteVariables::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/globalbootstrapvars.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::get
    - Null<Real>
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real SimpleQuoteVariables::transformInverse(Real x, Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:130,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:144,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupTimes
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:148,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:149,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 151
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupTimes
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::interpolation_::update
    - std::move
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupInterpolation
    - std::vector<Date>::at
    - std::vector<Time>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        const DayCounter&
      dayCounter,\n        const ext::shared_ptr<Seasonality>& seasonality,\n        const
      Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 168
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        bool indexIsInterpolated,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<Seasonality>&
      seasonality,\n        const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::\n    InterpolatedYoYInflationCurve(const
      Date& referenceDate,\n                                  Date baseDate,\n                                  Rate
      baseYoYRate,\n                                  Frequency frequency,\n                                  const
      DayCounter& dayCounter,\n                                  const ext::shared_ptr<Seasonality>&
      seasonality,\n                                  const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 198
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::\n    InterpolatedYoYInflationCurve(const
      Date& referenceDate,\n                                  Date baseDate,\n                                  Rate
      baseYoYRate,\n                                  Frequency frequency,\n                                  bool
      indexIsInterpolated,\n                                  const DayCounter& dayCounter,\n
      \                                 const ext::shared_ptr<Seasonality>& seasonality,\n
      \                                 const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedYoYInflationCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYInflationCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<T>::interpolation_
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedYoYInflationCurve<T>::yoyRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedYoYInflationCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedYoYInflationCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::rates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedYoYInflationCurve<T>::rates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedYoYInflationCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:240,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 243
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Rate> >
    signature: std::vector<std::pair<Date,Rate> > InterpolatedYoYInflationCurve<T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:130,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:137,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:144,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupTimes
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:148,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:149,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 151
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::data_::size
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupTimes
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::interpolation_::update
    - std::move
    - QuantLib::InterpolatedYoYInflationCurve<Interpolator>::setupInterpolation
    - std::vector<Date>::at
    - std::vector<Time>
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        const DayCounter&
      dayCounter,\n        const ext::shared_ptr<Seasonality>& seasonality,\n        const
      Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 168
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        bool indexIsInterpolated,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<Seasonality>&
      seasonality,\n        const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::\n    InterpolatedYoYInflationCurve(const
      Date& referenceDate,\n                                  Date baseDate,\n                                  Rate
      baseYoYRate,\n                                  Frequency frequency,\n                                  const
      DayCounter& dayCounter,\n                                  const ext::shared_ptr<Seasonality>&
      seasonality,\n                                  const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 198
    functionName: QuantLib::InterpolatedYoYInflationCurve<Interpolator>::InterpolatedYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYInflationCurve<Interpolator>::\n    InterpolatedYoYInflationCurve(const
      Date& referenceDate,\n                                  Date baseDate,\n                                  Rate
      baseYoYRate,\n                                  Frequency frequency,\n                                  bool
      indexIsInterpolated,\n                                  const DayCounter& dayCounter,\n
      \                                 const ext::shared_ptr<Seasonality>& seasonality,\n
      \                                 const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedYoYInflationCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYInflationCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<T>::interpolation_
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedYoYInflationCurve<T>::yoyRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedYoYInflationCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedYoYInflationCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::rates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedYoYInflationCurve<T>::rates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: "&\n    InterpolatedYoYInflationCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedYoYInflationCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:240,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 243
    functionName: QuantLib::InterpolatedYoYInflationCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Rate> >
    signature: std::vector<std::pair<Date,Rate> > InterpolatedYoYInflationCurve<T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZeroInflationTermStructure*::baseDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - ZeroInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::ZeroInflationTraits::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached:
    - ZeroInflationTermStructure*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const ZeroInflationTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::ZeroInflationTraits::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate initialValue(const ZeroInflationTermStructure*)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::ZeroInflationTraits::guess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Rate
    signature: "Rate guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::ZeroInflationTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Rate
    signature: "Rate minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroInflationTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Rate
    signature: "Rate maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - level
    - i
    argTypes:
    - std::vector<Rate>
    - Rate
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: QuantLib::ZeroInflationTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Rate>& data,\n                                Rate
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::ZeroInflationTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYInflationTermStructure*::baseDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::YoYInflationTraits::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - YoYInflationTermStructure*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YoYInflationTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYInflationTermStructure*::baseRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYInflationTraits::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - YoYInflationTermStructure*::baseRate
    linkageType: ''
    returnType: Rate
    signature: Rate initialValue(const YoYInflationTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYInflationTraits::guess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Rate
    signature: "Rate guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: QuantLib::YoYInflationTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Rate
    signature: "Rate minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 164
    functionName: QuantLib::YoYInflationTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Rate
    signature: "Rate maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - level
    - i
    argTypes:
    - std::vector<Rate>
    - Rate
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::YoYInflationTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Rate>& data,\n                                Rate
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::YoYInflationTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZeroInflationTermStructure*::baseDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - ZeroInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::ZeroInflationTraits::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached:
    - ZeroInflationTermStructure*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const ZeroInflationTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::ZeroInflationTraits::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate initialValue(const ZeroInflationTermStructure*)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::ZeroInflationTraits::guess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 6
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Rate
    signature: "Rate guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:76,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: QuantLib::ZeroInflationTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Rate
    signature: "Rate minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:88,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroInflationTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Rate
    signature: "Rate maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - level
    - i
    argTypes:
    - std::vector<Rate>
    - Rate
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: QuantLib::ZeroInflationTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Rate>& data,\n                                Rate
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::ZeroInflationTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYInflationTermStructure*::baseDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::YoYInflationTraits::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - YoYInflationTermStructure*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YoYInflationTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYInflationTermStructure*::baseRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYInflationTraits::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - YoYInflationTermStructure*::baseRate
    linkageType: ''
    returnType: Rate
    signature: Rate initialValue(const YoYInflationTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYInflationTraits::guess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Rate
    signature: "Rate guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:146,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: QuantLib::YoYInflationTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Rate
    signature: "Rate minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:158,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 164
    functionName: QuantLib::YoYInflationTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Rate
    signature: "Rate maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - level
    - i
    argTypes:
    - std::vector<Rate>
    - Rate
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::YoYInflationTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Rate>& data,\n                                Rate
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::YoYInflationTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationtraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:71,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 73
    functionName: QuantLib::PiecewiseYoYInflationCurve::PiecewiseYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Rate baseYoYRate,\n            Frequency
      frequency,\n            const DayCounter& dayCounter,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            const ext::shared_ptr<Seasonality>&
      seasonality = {},\n            Real accuracy = 1.0e-12,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 95
    functionName: QuantLib::PiecewiseYoYInflationCurve::PiecewiseYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Rate baseYoYRate,\n            Frequency
      frequency,\n            bool indexIsInterpolated,\n            const DayCounter&
      dayCounter,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const ext::shared_ptr<Seasonality>& seasonality
      = {},\n            Real accuracy = 1.0e-12,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:131,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseYoYInflationCurve<I,B,T>::calculate
    - QuantLib::FdmAffineModelTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYInflationCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:137,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseYoYInflationCurve<I,B,T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:143,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseYoYInflationCurve<I,B,T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:149,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseYoYInflationCurve<I,B,T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:156,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYoYInflationCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYInflationCurve<I,B,T>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:167,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::yoyRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate PiecewiseYoYInflationCurve<I,B,T>::yoyRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:173,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYInflationCurve<I,B,T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:71,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 73
    functionName: QuantLib::PiecewiseYoYInflationCurve::PiecewiseYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Rate baseYoYRate,\n            Frequency
      frequency,\n            const DayCounter& dayCounter,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            const ext::shared_ptr<Seasonality>&
      seasonality = {},\n            Real accuracy = 1.0e-12,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - baseDate
    - baseYoYRate
    - frequency
    - indexIsInterpolated
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Rate
    - Frequency
    - bool
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 95
    functionName: QuantLib::PiecewiseYoYInflationCurve::PiecewiseYoYInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Rate baseYoYRate,\n            Frequency
      frequency,\n            bool indexIsInterpolated,\n            const DayCounter&
      dayCounter,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const ext::shared_ptr<Seasonality>& seasonality
      = {},\n            Real accuracy = 1.0e-12,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:131,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseYoYInflationCurve<I,B,T>::calculate
    - QuantLib::FdmAffineModelTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYInflationCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:137,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseYoYInflationCurve<I,B,T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:143,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseYoYInflationCurve<I,B,T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:149,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: '& PiecewiseYoYInflationCurve<I,B,T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseYoYInflationCurve<I,B,T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:156,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYoYInflationCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYInflationCurve<I,B,T>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:167,1
    - Dst: QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::yoyRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYInflationCurve<T>::yoyRateImpl
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate PiecewiseYoYInflationCurve<I,B,T>::yoyRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:173,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::PiecewiseYoYInflationCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYInflationCurve<I,B,T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: ~Seasonality()
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Seasonality()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::MultiplicativePriceSeasonality::MultiplicativePriceSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiplicativePriceSeasonality()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: ~MultiplicativePriceSeasonality() override
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MultiplicativePriceSeasonality() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' seasonalityBaseDate'
    - ' seasonalityFactors'
    argTypes:
    - Date
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::KerkhofSeasonality::KerkhofSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KerkhofSeasonality(const Date& seasonalityBaseDate,\n                           const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: ~Seasonality()
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Seasonality()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::MultiplicativePriceSeasonality::MultiplicativePriceSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultiplicativePriceSeasonality()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: ~MultiplicativePriceSeasonality() override
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MultiplicativePriceSeasonality() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' seasonalityBaseDate'
    - ' seasonalityFactors'
    argTypes:
    - Date
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::KerkhofSeasonality::KerkhofSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void KerkhofSeasonality(const Date& seasonalityBaseDate,\n                           const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - ' dayCounter'
    - zii
    - observationInterpolation
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: QuantLib::ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - Handle<YieldTermStructure>
    - ext::make_shared<FlatForward>
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: "QL_DEPRECATED_DISABLE_WARNING ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       const DayCounter& dayCounter,\n        ext::shared_ptr<ZeroInflationIndex>
      zii,\n        CPI::InterpolationType observationInterpolation)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:66,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:68,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:68,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:69,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:69,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:71,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:84,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:86,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:86,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:92,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:93,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 9
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - zii
    - observationInterpolation
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - availabilityLag
    - inflationPeriod
    - registerWith
    - QuantLib::detail::instance
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<ZeroInflationIndex>
      zii,\n        CPI::InterpolationType observationInterpolation,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:100,1
    - Dst: fairRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 102
    functionName: QuantLib::ZeroCouponInflationSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairRate
    - deepUpdate
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING ZeroCouponInflationSwapHelper::impliedQuote()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:107,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:112,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:119,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:122,1
    - Dst: ext::make_shared<ZeroCouponInflationSwap>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:123,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:129,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:130,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - z
    argTypes:
    - ZeroInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 131
    functionName: QuantLib::ZeroCouponInflationSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - ext::make_shared<ZeroCouponInflationSwap>
    - clone
    - quote
    - DiscountingSwapEngine::DiscountingSwapEngine
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    linkageType: ''
    returnType: void
    signature: void ZeroCouponInflationSwapHelper::setTermStructure(ZeroInflationTermStructure*
      z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:146,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:146,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:147,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:149,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:149,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:150,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:150,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:152,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:165,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:167,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:167,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:170,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:173,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:173,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 9
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - yii
    - interpolation
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 175
    functionName: QuantLib::YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - availabilityLag
    - inflationPeriod
    - registerWith
    - QuantLib::detail::instance
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<YoYInflationIndex> yii,\n
      \       CPI::InterpolationType interpolation,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:186,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - yii
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 187
    functionName: QuantLib::YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<YoYInflationIndex> yii,\n
      \       Handle<YieldTermStructure> nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:191,1
    - Dst: fairRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::YearOnYearInflationSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairRate
    - deepUpdate
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwapHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:198,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:209,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:213,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:215,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:224,1
    - Dst: ext::make_shared<YearOnYearInflationSwap>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:227,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:235,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:236,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - y
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 237
    functionName: QuantLib::YearOnYearInflationSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - quote
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ext::shared_ptr<PricingEngine>
    - QuantLib::detail::instance
    - setPricingEngine
    - MakeSchedule
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - ext::make_shared<YearOnYearInflationSwap>
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwapHelper::setTermStructure(YoYInflationTermStructure*
      y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - ' dayCounter'
    - zii
    - observationInterpolation
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: QuantLib::ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - Handle<YieldTermStructure>
    - ext::make_shared<FlatForward>
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: "QL_DEPRECATED_DISABLE_WARNING ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       const DayCounter& dayCounter,\n        ext::shared_ptr<ZeroInflationIndex>
      zii,\n        CPI::InterpolationType observationInterpolation)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:66,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:68,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:68,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:69,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:69,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:71,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:84,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:86,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:86,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:92,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:93,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 9
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - zii
    - observationInterpolation
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 94
    functionName: QuantLib::ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - availabilityLag
    - inflationPeriod
    - registerWith
    - QuantLib::detail::instance
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZeroCouponInflationSwapHelper::ZeroCouponInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<ZeroInflationIndex>
      zii,\n        CPI::InterpolationType observationInterpolation,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:100,1
    - Dst: fairRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 102
    functionName: QuantLib::ZeroCouponInflationSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairRate
    - deepUpdate
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING ZeroCouponInflationSwapHelper::impliedQuote()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:107,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:112,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:119,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:122,1
    - Dst: ext::make_shared<ZeroCouponInflationSwap>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:123,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:129,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:130,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - z
    argTypes:
    - ZeroInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 131
    functionName: QuantLib::ZeroCouponInflationSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - ext::make_shared<ZeroCouponInflationSwap>
    - clone
    - quote
    - DiscountingSwapEngine::DiscountingSwapEngine
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    linkageType: ''
    returnType: void
    signature: void ZeroCouponInflationSwapHelper::setTermStructure(ZeroInflationTermStructure*
      z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:145,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:146,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:146,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:147,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:149,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:149,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:150,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:150,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:152,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:165,1
    - Dst: frequency
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:167,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:167,1
    - Dst: availabilityLag
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:170,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:173,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:173,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 9
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - yii
    - interpolation
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 175
    functionName: QuantLib::YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - availabilityLag
    - inflationPeriod
    - registerWith
    - QuantLib::detail::instance
    - frequency
    - detail::CPI::isInterpolated
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<YoYInflationIndex> yii,\n
      \       CPI::InterpolationType interpolation,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:186,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' quote'
    - ' swapObsLag'
    - ' maturity'
    - calendar
    - paymentConvention
    - dayCounter
    - yii
    - nominalTermStructure
    argTypes:
    - Handle<Quote>
    - Period
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 187
    functionName: QuantLib::YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YearOnYearInflationSwapHelper::YearOnYearInflationSwapHelper(\n
      \       const Handle<Quote>& quote,\n        const Period& swapObsLag,\n        const
      Date& maturity,\n        Calendar calendar,\n        BusinessDayConvention paymentConvention,\n
      \       DayCounter dayCounter,\n        ext::shared_ptr<YoYInflationIndex> yii,\n
      \       Handle<YieldTermStructure> nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:191,1
    - Dst: fairRate
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::YearOnYearInflationSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairRate
    - deepUpdate
    linkageType: ''
    returnType: Real
    signature: Real YearOnYearInflationSwapHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:198,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:209,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:213,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:215,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:224,1
    - Dst: ext::make_shared<YearOnYearInflationSwap>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:227,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:235,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:236,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - y
    argTypes:
    - YoYInflationTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 237
    functionName: QuantLib::YearOnYearInflationSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/inflationhelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - quote
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ext::shared_ptr<PricingEngine>
    - QuantLib::detail::instance
    - setPricingEngine
    - MakeSchedule
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - ext::make_shared<YearOnYearInflationSwap>
    linkageType: ''
    returnType: void
    signature: void YearOnYearInflationSwapHelper::setTermStructure(YoYInflationTermStructure*
      y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:68,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 70
    functionName: QuantLib::PiecewiseZeroInflationCurve::PiecewiseZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseZeroInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Frequency frequency,\n            const
      DayCounter& dayCounter,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const ext::shared_ptr<Seasonality>& seasonality
      = {},\n            Real accuracy = 1.0e-14,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:106,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - QuantLib::PiecewiseZeroInflationCurve<I,B,T>::calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseZeroInflationCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:112,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseZeroInflationCurve<I,B,T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:118,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseZeroInflationCurve<I,B,T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:124,1
    - Dst: base_curve::rates
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::rates
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseZeroInflationCurve<I,B,T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:131,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseZeroInflationCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseZeroInflationCurve<I,B,T>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:142,1
    - Dst: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:148,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseZeroInflationCurve<I,B,T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:68,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - instruments
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 70
    functionName: QuantLib::PiecewiseZeroInflationCurve::PiecewiseZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseZeroInflationCurve(\n            const Date& referenceDate,\n
      \           Date baseDate,\n            Frequency frequency,\n            const
      DayCounter& dayCounter,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const ext::shared_ptr<Seasonality>& seasonality
      = {},\n            Real accuracy = 1.0e-14,\n            const Interpolator&
      i = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:106,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - QuantLib::PiecewiseZeroInflationCurve<I,B,T>::calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseZeroInflationCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:112,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseZeroInflationCurve<I,B,T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:118,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseZeroInflationCurve<I,B,T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:124,1
    - Dst: base_curve::rates
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: '& PiecewiseZeroInflationCurve<I,B,T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::rates
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseZeroInflationCurve<I,B,T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:131,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseZeroInflationCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseZeroInflationCurve<I,B,T>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:142,1
    - Dst: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate PiecewiseZeroInflationCurve<I,B,T>::zeroRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:148,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::PiecewiseZeroInflationCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/piecewisezeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseZeroInflationCurve<I,B,T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:99,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:110,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupTimes
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:113,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:114,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
    - std::move
    - std::vector<Date>::at
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::interpolation_::update
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupTimes
    - std::vector<Time>
    - size
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        const DayCounter&
      dayCounter,\n        const ext::shared_ptr<Seasonality>& seasonality,\n        const
      Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroInflationCurve<Interpolator>::\n    InterpolatedZeroInflationCurve(const
      Date& referenceDate,\n                                   Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality,\n
      \                                  const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedZeroInflationCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedZeroInflationCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::zeroRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroInflationCurve<T>::interpolation_
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedZeroInflationCurve<T>::zeroRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedZeroInflationCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedZeroInflationCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::rates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedZeroInflationCurve<T>::rates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedZeroInflationCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:168,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 171
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Rate> >
    signature: std::vector<std::pair<Date,Rate> > InterpolatedZeroInflationCurve<T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:99,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:105,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:110,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupTimes
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:113,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:114,1
    - Dst: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - ' referenceDate'
    - dates
    - ' rates'
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Rate>
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::data_::size
    - std::move
    - std::vector<Date>::at
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::interpolation_::update
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupTimes
    - std::vector<Time>
    - size
    - QuantLib::InterpolatedZeroInflationCurve<Interpolator>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve(\n
      \       const Date& referenceDate,\n        std::vector<Date> dates,\n        const
      std::vector<Rate>& rates,\n        Frequency frequency,\n        const DayCounter&
      dayCounter,\n        const ext::shared_ptr<Seasonality>& seasonality,\n        const
      Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - baseDate
    - frequency
    - ' dayCounter'
    - ' seasonality'
    - ' interpolator'
    argTypes:
    - Date
    - Date
    - Frequency
    - DayCounter
    - ext::shared_ptr<Seasonality>
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: QuantLib::InterpolatedZeroInflationCurve<Interpolator>::InterpolatedZeroInflationCurve
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroInflationCurve<Interpolator>::\n    InterpolatedZeroInflationCurve(const
      Date& referenceDate,\n                                   Date baseDate,\n                                   Frequency
      frequency,\n                                   const DayCounter& dayCounter,\n
      \                                  const ext::shared_ptr<Seasonality>& seasonality,\n
      \                                  const Interpolator& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedZeroInflationCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedZeroInflationCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::zeroRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroInflationCurve<T>::interpolation_
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedZeroInflationCurve<T>::zeroRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedZeroInflationCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedZeroInflationCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::rates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedZeroInflationCurve<T>::rates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: "&\n    InterpolatedZeroInflationCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedZeroInflationCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:168,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 171
    functionName: QuantLib::InterpolatedZeroInflationCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/interpolatedzeroinflationcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Rate> >
    signature: std::vector<std::pair<Date,Rate> > InterpolatedZeroInflationCurve<T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::Seasonality::isConsistent
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Seasonality::isConsistent(const InflationTermStructure&) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:48,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:49,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:49,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:50,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:51,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:52,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:53,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:56,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:56,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::MultiplicativePriceSeasonality::validate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiplicativePriceSeasonality::validate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:69,1
    - Dst: Size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:73,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:73,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:77,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:81,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' iTS'
    argTypes:
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 88
    functionName: QuantLib::MultiplicativePriceSeasonality::isConsistent
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    - Size
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - Period
    - inflationPeriod
    - std::fabs
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool MultiplicativePriceSeasonality::isConsistent(const InflationTermStructure&
      iTS) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::set
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' seasonalityBaseDate'
    - frequency
    - ' seasonalityFactors'
    argTypes:
    - Date
    - Frequency
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::MultiplicativePriceSeasonality::MultiplicativePriceSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::set
    linkageType: ''
    returnType: void
    signature: "void MultiplicativePriceSeasonality::MultiplicativePriceSeasonality(const
      Date& seasonalityBaseDate, const Frequency frequency,\n                                                                   const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:102,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::validate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' seasonalityBaseDate'
    - frequency
    - ' seasonalityFactors'
    argTypes:
    - Date
    - Frequency
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 108
    functionName: QuantLib::MultiplicativePriceSeasonality::set
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::MultiplicativePriceSeasonality::validate
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void MultiplicativePriceSeasonality::set(const Date& seasonalityBaseDate,
      const Frequency frequency,\n                                             const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date MultiplicativePriceSeasonality::seasonalityBaseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::MultiplicativePriceSeasonality::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency MultiplicativePriceSeasonality::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> MultiplicativePriceSeasonality::seasonalityFactors()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:129,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:130,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:130,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:132,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - r
    - ' iTS'
    argTypes:
    - Date
    - Rate
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 133
    functionName: QuantLib::MultiplicativePriceSeasonality::correctZeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    - dayCounter
    - inflationPeriod
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::correctZeroRate(const Date &d,\n
      \                                                        const Rate r,\n                                                         const
      InflationTermStructure& iTS) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:141,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - r
    - ' iTS'
    argTypes:
    - Date
    - Rate
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionName: QuantLib::MultiplicativePriceSeasonality::correctYoYRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    - dayCounter
    - inflationPeriod
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::correctYoYRate(const Date &d,\n
      \                                                       const Rate r,\n                                                        const
      InflationTermStructure& iTS) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:147,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:148,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:149,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:156,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:160,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:162,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:164,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:165,1
    - Dst: Period::length
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:166,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:173,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:174,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:174,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:176,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:176,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:187,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - to
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 188
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 1
    functionsReached:
    - Period::length
    - QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - QL_FAIL
    - inflationPeriod
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - std::abs
    - Period::units
    linkageType: ''
    returnType: Real
    signature: Real MultiplicativePriceSeasonality::seasonalityFactor(const Date &to)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:200,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:205,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:207,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:207,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:209,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:212,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - rate
    - ' atDate'
    - ' dc'
    - ' curveBaseDate'
    - isZeroRate
    argTypes:
    - Rate
    - Date
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 191
    functionDepth: 3
    functionLinenumber: 191
    functionLinenumberEnd: 217
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    - yearFraction
    - Period
    - std::pow
    - inflationPeriod
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::seasonalityCorrection(Rate rate,\n
      \                                                              const Date& atDate,\n
      \                                                              const DayCounter&
      dc,\n                                                               const Date&
      curveBaseDate,\n                                                               const
      bool isZeroRate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: seasonalityBaseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:223,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:224,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:237,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:237,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:238,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:240,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - to
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 255
    functionName: QuantLib::KerkhofSeasonality::seasonalityFactor
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - seasonalityFactors
    - seasonalityBaseDate
    - Date::month
    - Period::units
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real KerkhofSeasonality::seasonalityFactor(const Date &to) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KerkhofSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:263,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:268,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:269,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:270,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - rate
    - ' atDate'
    - ' dc'
    - ' curveBaseDate'
    - isZeroRate
    argTypes:
    - Rate
    - Date
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 277
    functionName: QuantLib::KerkhofSeasonality::seasonalityCorrection
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::KerkhofSeasonality::seasonalityFactor
    - QL_FAIL
    - std::pow
    - inflationPeriod
    linkageType: ''
    returnType: Rate
    signature: "Rate KerkhofSeasonality::seasonalityCorrection(Rate rate,\n                                                   const
      Date& atDate,\n                                                   const DayCounter&
      dc,\n                                                   const Date& curveBaseDate,\n
      \                                                  const bool isZeroRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::Seasonality::isConsistent
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Seasonality::isConsistent(const InflationTermStructure&) const
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:48,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:49,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:49,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:50,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:51,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:52,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:53,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:56,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:56,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 61
    functionName: QuantLib::MultiplicativePriceSeasonality::validate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultiplicativePriceSeasonality::validate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:69,1
    - Dst: Size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:70,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:73,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:73,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:75,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:77,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:81,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' iTS'
    argTypes:
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 64
    functionDepth: 3
    functionLinenumber: 64
    functionLinenumberEnd: 88
    functionName: QuantLib::MultiplicativePriceSeasonality::isConsistent
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    - Size
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - Period
    - inflationPeriod
    - std::fabs
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool MultiplicativePriceSeasonality::isConsistent(const InflationTermStructure&
      iTS) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::set
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' seasonalityBaseDate'
    - frequency
    - ' seasonalityFactors'
    argTypes:
    - Date
    - Frequency
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 3
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::MultiplicativePriceSeasonality::MultiplicativePriceSeasonality
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::set
    linkageType: ''
    returnType: void
    signature: "void MultiplicativePriceSeasonality::MultiplicativePriceSeasonality(const
      Date& seasonalityBaseDate, const Frequency frequency,\n                                                                   const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:101,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:102,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::validate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' seasonalityBaseDate'
    - frequency
    - ' seasonalityFactors'
    argTypes:
    - Date
    - Frequency
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 108
    functionName: QuantLib::MultiplicativePriceSeasonality::set
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::MultiplicativePriceSeasonality::validate
    - std::vector<Rate>
    linkageType: ''
    returnType: void
    signature: "void MultiplicativePriceSeasonality::set(const Date& seasonalityBaseDate,
      const Frequency frequency,\n                                             const
      std::vector<Rate>& seasonalityFactors)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date MultiplicativePriceSeasonality::seasonalityBaseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::MultiplicativePriceSeasonality::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency MultiplicativePriceSeasonality::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> MultiplicativePriceSeasonality::seasonalityFactors()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:129,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:130,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:130,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:132,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - r
    - ' iTS'
    argTypes:
    - Date
    - Rate
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 123
    functionDepth: 4
    functionLinenumber: 123
    functionLinenumberEnd: 133
    functionName: QuantLib::MultiplicativePriceSeasonality::correctZeroRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    - dayCounter
    - inflationPeriod
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::correctZeroRate(const Date &d,\n
      \                                                        const Rate r,\n                                                         const
      InflationTermStructure& iTS) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: baseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:139,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:141,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - r
    - ' iTS'
    argTypes:
    - Date
    - Rate
    - InflationTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 136
    functionDepth: 4
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionName: QuantLib::MultiplicativePriceSeasonality::correctYoYRate
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    - dayCounter
    - inflationPeriod
    - baseDate
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::correctYoYRate(const Date &d,\n
      \                                                       const Rate r,\n                                                        const
      InflationTermStructure& iTS) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:147,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:148,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:149,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:156,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:160,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:162,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:164,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:165,1
    - Dst: Period::length
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:166,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:173,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:174,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:174,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:176,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:176,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:187,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - to
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 188
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 3
    functionsReached:
    - Period::length
    - QuantLib::MultiplicativePriceSeasonality::seasonalityBaseDate
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactors
    - QL_FAIL
    - inflationPeriod
    - QuantLib::MultiplicativePriceSeasonality::frequency
    - std::abs
    - Period::units
    linkageType: ''
    returnType: Real
    signature: Real MultiplicativePriceSeasonality::seasonalityFactor(const Date &to)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:200,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:205,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:207,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::frequency
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:207,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:209,1
    - Dst: QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:212,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - rate
    - ' atDate'
    - ' dc'
    - ' curveBaseDate'
    - isZeroRate
    argTypes:
    - Rate
    - Date
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 191
    functionDepth: 3
    functionLinenumber: 191
    functionLinenumberEnd: 217
    functionName: QuantLib::MultiplicativePriceSeasonality::seasonalityCorrection
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::MultiplicativePriceSeasonality::seasonalityFactor
    - yearFraction
    - Period
    - std::pow
    - inflationPeriod
    - QuantLib::MultiplicativePriceSeasonality::frequency
    linkageType: ''
    returnType: Rate
    signature: "Rate MultiplicativePriceSeasonality::seasonalityCorrection(Rate rate,\n
      \                                                              const Date& atDate,\n
      \                                                              const DayCounter&
      dc,\n                                                               const Date&
      curveBaseDate,\n                                                               const
      bool isZeroRate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: seasonalityBaseDate
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:223,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:224,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:237,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:237,1
    - Dst: Period::units
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:238,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:240,1
    - Dst: seasonalityFactors
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - to
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 255
    functionName: QuantLib::KerkhofSeasonality::seasonalityFactor
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 1
    functionsReached:
    - seasonalityFactors
    - seasonalityBaseDate
    - Date::month
    - Period::units
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real KerkhofSeasonality::seasonalityFactor(const Date &to) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KerkhofSeasonality::seasonalityFactor
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:263,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:268,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:269,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:270,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/inflation/seasonality.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - rate
    - ' atDate'
    - ' dc'
    - ' curveBaseDate'
    - isZeroRate
    argTypes:
    - Rate
    - Date
    - DayCounter
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 277
    functionName: QuantLib::KerkhofSeasonality::seasonalityCorrection
    functionSourceFile: /src/quantlib/ql/termstructures/inflation/seasonality.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::KerkhofSeasonality::seasonalityFactor
    - QL_FAIL
    - std::pow
    - inflationPeriod
    linkageType: ''
    returnType: Rate
    signature: "Rate KerkhofSeasonality::seasonalityCorrection(Rate rate,\n                                                   const
      Date& atDate,\n                                                   const DayCounter&
      dc,\n                                                   const Date& curveBaseDate,\n
      \                                                  const bool isZeroRate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(const Date& referenceDate,\n                                   Handle<Quote>
      hazardRate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:38,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:39,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Date
    - Rate
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(const Date& referenceDate,\n                                   Rate
      hazardRate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Handle<Quote> hazardRate,\n
      \                                  const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:55,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - Rate
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Rate hazardRate,\n                                   const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(const Date& referenceDate,\n                                   Handle<Quote>
      hazardRate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:38,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:39,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Date
    - Rate
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(const Date& referenceDate,\n                                   Rate
      hazardRate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Handle<Quote> hazardRate,\n
      \                                  const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:55,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - hazardRate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - Rate
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatHazardRate::FlatHazardRate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void FlatHazardRate::FlatHazardRate(Natural settlementDays,\n                                   const
      Calendar& calendar,\n                                   Rate hazardRate,\n                                   const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   const DayCounter& dc,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   const Date& refDate,\n                                    const
      Calendar& cal,\n                                    const DayCounter& dc,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   Natural settlDays,\n                                    const
      Calendar& cal,\n                                    const DayCounter& dc,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:48,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:51,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - survivalProbabilityImpl
    linkageType: ''
    returnType: Real
    signature: Real SurvivalProbabilityStructure::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   const DayCounter& dc,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   const Date& refDate,\n                                    const
      Calendar& cal,\n                                    const DayCounter& dc,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::SurvivalProbabilityStructure::SurvivalProbabilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SurvivalProbabilityStructure::SurvivalProbabilityStructure(\n
      \                                   Natural settlDays,\n                                    const
      Calendar& cal,\n                                    const DayCounter& dc,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:48,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:51,1
    - Dst: survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/survivalprobabilitystructure.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - survivalProbabilityImpl
    linkageType: ''
    returnType: Real
    signature: Real SurvivalProbabilityStructure::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:70,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:76,1
    - Dst: C*::survivalProbability
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::survivalProbability
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:87,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:89,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:89,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - p
    - i
    argTypes:
    - std::vector<Real>
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Probability
      p,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:141,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:147,1
    - Dst: C*::hazardRate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 149
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::hazardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 163
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 177
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:217,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:223,1
    - Dst: C*::defaultDensity
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 225
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::data
    - C*::dates
    - C*::defaultDensity
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 239
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 253
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - density
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      density,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 264
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:70,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:76,1
    - Dst: C*::survivalProbability
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::survivalProbability
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:87,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:89,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:89,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - p
    - i
    argTypes:
    - std::vector<Real>
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Probability
      p,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:141,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:147,1
    - Dst: C*::hazardRate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 149
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::hazardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 163
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 177
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:217,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:223,1
    - Dst: C*::defaultDensity
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 225
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 2
    functionsReached:
    - C*::data
    - C*::dates
    - C*::defaultDensity
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 239
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 253
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - density
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      density,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 264
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/probabilitytraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:78,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            const Date& referenceDate,\n
      \           std::vector<ext::shared_ptr<typename Traits::helper> > instruments,\n
      \           const DayCounter& dayCounter,\n            const std::vector<Handle<Quote>
      >& jumps = {},\n            const std::vector<Date>& jumpDates = {},\n            const
      Interpolator& i = {},\n            bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:88,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' i'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               const Date& referenceDate,\n
      \              const std::vector<ext::shared_ptr<typename Traits::helper> >&\n
      \                                                                 instruments,\n
      \              const DayCounter& dayCounter,\n               const Interpolator&
      i,\n               const bootstrap_type& bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:102,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - bootstrap
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(const Date& referenceDate,\n                              std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                              const DayCounter&
      dayCounter,\n                              bootstrap_type bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:116,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:117,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 119
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            Natural settlementDays,\n
      \           const Calendar& calendar,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            const DayCounter& dayCounter,\n
      \           const std::vector<Handle<Quote> >& jumps = {},\n            const
      std::vector<Date>& jumpDates = {},\n            const Interpolator& i = {},\n
      \           bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:128,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' i'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const Interpolator&
      i,\n               const bootstrap_type& bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' bootstrap'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const bootstrap_type&
      bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' instruments'
    - ' dayCounter'
    - ' model'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 172
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            const Date& referenceDate,\n
      \           const std::vector<ext::shared_ptr<typename Traits::helper> >& instruments,\n
      \           const DayCounter& dayCounter,\n            const ext::shared_ptr<OneFactorAffineModel>&
      model,\n            const Interpolator& i = {},\n            const bootstrap_type&
      bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:216,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseDefaultCurve<C,I,B>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:223,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    PiecewiseDefaultCurve<C,I,B>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:230,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    PiecewiseDefaultCurve<C,I,B>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    PiecewiseDefaultCurve<C,I,B>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:244,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 246
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseDefaultCurve<C,I,B>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::update
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseDefaultCurve<C,I,B>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:263,1
    - Dst: QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
    - calculate
    linkageType: ''
    returnType: Probability
    signature: Probability PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:269,1
    - Dst: QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseDefaultCurve<C,I,B>::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:275,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 3
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseDefaultCurve<C,I,B>::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseDefaultCurve<C,I,B>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:78,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            const Date& referenceDate,\n
      \           std::vector<ext::shared_ptr<typename Traits::helper> > instruments,\n
      \           const DayCounter& dayCounter,\n            const std::vector<Handle<Quote>
      >& jumps = {},\n            const std::vector<Date>& jumpDates = {},\n            const
      Interpolator& i = {},\n            bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:88,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' i'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               const Date& referenceDate,\n
      \              const std::vector<ext::shared_ptr<typename Traits::helper> >&\n
      \                                                                 instruments,\n
      \              const DayCounter& dayCounter,\n               const Interpolator&
      i,\n               const bootstrap_type& bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:102,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - bootstrap
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(const Date& referenceDate,\n                              std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                              const DayCounter&
      dayCounter,\n                              bootstrap_type bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:116,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:117,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 119
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            Natural settlementDays,\n
      \           const Calendar& calendar,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            const DayCounter& dayCounter,\n
      \           const std::vector<Handle<Quote> >& jumps = {},\n            const
      std::vector<Date>& jumpDates = {},\n            const Interpolator& i = {},\n
      \           bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:128,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' i'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const Interpolator&
      i,\n               const bootstrap_type& bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' bootstrap'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const bootstrap_type&
      bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' instruments'
    - ' dayCounter'
    - ' model'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 172
    functionName: QuantLib::PiecewiseDefaultCurve::PiecewiseDefaultCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseDefaultCurve(\n            const Date& referenceDate,\n
      \           const std::vector<ext::shared_ptr<typename Traits::helper> >& instruments,\n
      \           const DayCounter& dayCounter,\n            const ext::shared_ptr<OneFactorAffineModel>&
      model,\n            const Interpolator& i = {},\n            const bootstrap_type&
      bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:216,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseDefaultCurve<C,I,B>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:223,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    PiecewiseDefaultCurve<C,I,B>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:230,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    PiecewiseDefaultCurve<C,I,B>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionName: "&\n    PiecewiseDefaultCurve<C,I,B>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    PiecewiseDefaultCurve<C,I,B>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:244,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 246
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseDefaultCurve<C,I,B>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::update
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseDefaultCurve<C,I,B>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:263,1
    - Dst: QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl
    - calculate
    linkageType: ''
    returnType: Probability
    signature: Probability PiecewiseDefaultCurve<C,I,B>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:269,1
    - Dst: QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SurvivalProbabilityStructure::defaultDensityImpl
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseDefaultCurve<C,I,B>::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:275,1
    - Dst: QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 3
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultProbabilityTermStructure::hazardRateImpl
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real PiecewiseDefaultCurve<C,I,B>::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 283
    functionName: QuantLib::PiecewiseDefaultCurve<C,I,B>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/credit/piecewisedefaultcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseDefaultCurve<C,I,B>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::FlatHazardRate::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::FlatHazardRate::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate hazardRateImpl(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:73,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::FlatHazardRate::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    linkageType: ''
    returnType: Probability
    signature: Probability FlatHazardRate::survivalProbabilityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::FlatHazardRate::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::FlatHazardRate::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate hazardRateImpl(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:73,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::FlatHazardRate::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/flathazardrate.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    linkageType: ''
    returnType: Probability
    signature: Probability FlatHazardRate::survivalProbabilityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedHazardRateCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: "&\n    InterpolatedHazardRateCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedHazardRateCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: "&\n    InterpolatedHazardRateCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedHazardRateCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    InterpolatedHazardRateCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedHazardRateCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: "&\n    InterpolatedHazardRateCurve<T>::hazardRates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedHazardRateCurve<T>::hazardRates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:139,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedHazardRateCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:150,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:151,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedHazardRateCurve<T>::hazardRateImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:164,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:165,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:168,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:168,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:169,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:169,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
    - std::exp
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Probability
    signature: Probability InterpolatedHazardRateCurve<T>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:213,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:214,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 218
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Rate>& hazardRates,\n                                    const DayCounter&
      dayCounter,\n                                    const Calendar& calendar,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:227,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:228,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 232
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Rate>&
      hazardRates,\n            const DayCounter& dayCounter,\n            const Calendar&
      calendar,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:240,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:240,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:241,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 245
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Rate>&
      hazardRates,\n            const DayCounter& dayCounter,\n            const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:252,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:257,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:258,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:261,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:261,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:262,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 264
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::update
    - QuantLib::InterpolatedHazardRateCurve<T>::setupInterpolation
    - dayCounter
    - QuantLib::InterpolatedHazardRateCurve<T>::setupTimes
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::size
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedHazardRateCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedHazardRateCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: "&\n    InterpolatedHazardRateCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedHazardRateCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: "&\n    InterpolatedHazardRateCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedHazardRateCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    InterpolatedHazardRateCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedHazardRateCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: "&\n    InterpolatedHazardRateCurve<T>::hazardRates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedHazardRateCurve<T>::hazardRates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:139,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedHazardRateCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:150,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:151,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedHazardRateCurve<T>::hazardRateImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:164,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:165,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:168,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:168,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:169,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:169,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 172
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::primitive
    - std::exp
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Probability
    signature: Probability InterpolatedHazardRateCurve<T>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:213,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:214,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 218
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Rate>& hazardRates,\n                                    const DayCounter&
      dayCounter,\n                                    const Calendar& calendar,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:227,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:228,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 232
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Rate>&
      hazardRates,\n            const DayCounter& dayCounter,\n            const Calendar&
      calendar,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:240,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:240,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:241,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 245
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedHazardRateCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedHazardRateCurve<T>::InterpolatedHazardRateCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Rate>&
      hazardRates,\n            const DayCounter& dayCounter,\n            const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:252,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:257,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:258,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:261,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:261,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:262,1
    - Dst: QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp:263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 264
    functionName: QuantLib::InterpolatedHazardRateCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedhazardratecurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedHazardRateCurve<T>::interpolation_::update
    - QuantLib::InterpolatedHazardRateCurve<T>::setupInterpolation
    - dayCounter
    - QuantLib::InterpolatedHazardRateCurve<T>::setupTimes
    - QuantLib::InterpolatedHazardRateCurve<T>::data_::size
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedHazardRateCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedDefaultDensityCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedDefaultDensityCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedDefaultDensityCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDefaultDensityCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::defaultDensities() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDefaultDensityCurve<T>::defaultDensities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:137,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedDefaultDensityCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:148,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:149,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_
    - QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedDefaultDensityCurve<T>::defaultDensityImpl(Time t)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:162,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:163,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:167,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:167,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 172
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
    - QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
    - std::max<Real>
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
    linkageType: ''
    returnType: Probability
    signature: Probability InterpolatedDefaultDensityCurve<T>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:213,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:214,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 218
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Real>& densities,\n                                    const DayCounter&
      dayCounter,\n                                    const Calendar& calendar,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:227,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:228,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 232
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Real>&
      densities,\n            const DayCounter& dayCounter,\n            const Calendar&
      calendar,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:240,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:240,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:241,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 245
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Real>&
      densities,\n            const DayCounter& dayCounter,\n            const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:253,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:259,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:262,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:263,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 265
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::update
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::size
    - QuantLib::InterpolatedDefaultDensityCurve<T>::setupTimes
    - size
    - QuantLib::InterpolatedDefaultDensityCurve<T>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedDefaultDensityCurve<T>::initialize(const DayCounter&
      dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedDefaultDensityCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedDefaultDensityCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedDefaultDensityCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDefaultDensityCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: "&\n    InterpolatedDefaultDensityCurve<T>::defaultDensities() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDefaultDensityCurve<T>::defaultDensities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:136,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:137,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedDefaultDensityCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:148,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:149,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_
    - QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedDefaultDensityCurve<T>::defaultDensityImpl(Time t)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:162,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:163,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:167,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:167,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 172
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::primitive
    - QuantLib::InterpolatedDefaultDensityCurve<T>::times_::back
    - std::max<Real>
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::back
    linkageType: ''
    returnType: Probability
    signature: Probability InterpolatedDefaultDensityCurve<T>::survivalProbabilityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 181
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:213,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:214,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 218
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Real>& densities,\n                                    const DayCounter&
      dayCounter,\n                                    const Calendar& calendar,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:227,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:228,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 232
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Real>&
      densities,\n            const DayCounter& dayCounter,\n            const Calendar&
      calendar,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:240,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:240,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:241,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' densities'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 245
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDefaultDensityCurve<T>::InterpolatedDefaultDensityCurve(\n
      \           const std::vector<Date>& dates,\n            const std::vector<Real>&
      densities,\n            const DayCounter& dayCounter,\n            const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:253,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:259,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:262,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:263,1
    - Dst: QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 265
    functionName: QuantLib::InterpolatedDefaultDensityCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolateddefaultdensitycurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedDefaultDensityCurve<T>::interpolation_::update
    - QuantLib::InterpolatedDefaultDensityCurve<T>::data_::size
    - QuantLib::InterpolatedDefaultDensityCurve<T>::setupTimes
    - size
    - QuantLib::InterpolatedDefaultDensityCurve<T>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedDefaultDensityCurve<T>::initialize(const DayCounter&
      dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::remapper
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::remap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::remapper
    linkageType: ''
    returnType: remapper<F>
    signature: remapper<F> remap(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 1
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::remapper
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::remap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::remapper
    linkageType: ''
    returnType: remapper<F>
    signature: remapper<F> remap(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::HazardRateStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real HazardRateStructure::hazardRateImpl(Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: integral
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: remap
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: QuantLib::HazardRateStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::HazardRateStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - integral
    - remap
    - std::exp
    - QuantLib::HazardRateStructure::hazardRateImpl
    linkageType: ''
    returnType: Probability
    signature: Probability HazardRateStructure::survivalProbabilityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 2
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::remapper
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::remap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::remapper
    linkageType: ''
    returnType: remapper<F>
    signature: remapper<F> remap(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 3
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::remapper
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::remap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::remapper
    linkageType: ''
    returnType: remapper<F>
    signature: remapper<F> remap(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::HazardRateStructure::HazardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HazardRateStructure::HazardRateStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::HazardRateStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real HazardRateStructure::hazardRateImpl(Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: integral
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: remap
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    - Dst: QuantLib::HazardRateStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::HazardRateStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.cpp
    functionUses: 0
    functionsReached:
    - integral
    - remap
    - std::exp
    - QuantLib::HazardRateStructure::hazardRateImpl
    linkageType: ''
    returnType: Probability
    signature: Probability HazardRateStructure::survivalProbabilityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::CdsHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CreditDefaultSwap>
    signature: ext::shared_ptr<CreditDefaultSwap> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::CdsHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CreditDefaultSwap>
    signature: ext::shared_ptr<CreditDefaultSwap> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:52,1
    - Dst: QuantLib::CdsHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 16
    argNames:
    - ' quote'
    - ' tenor'
    - settlementDays
    - calendar
    - frequency
    - paymentConvention
    - rule
    - dayCounter
    - recoveryRate
    - ' discountCurve'
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - lastPeriodDayCounter
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 58
    functionName: QuantLib::CdsHelper::CdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CdsHelper::initializeDates
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CdsHelper::CdsHelper(const std::variant<Rate, Handle<Quote>>&
      quote,\n                         const Period& tenor,\n                         Integer
      settlementDays,\n                         Calendar calendar,\n                         Frequency
      frequency,\n                         BusinessDayConvention paymentConvention,\n
      \                        DateGeneration::Rule rule,\n                         DayCounter
      dayCounter,\n                         Real recoveryRate,\n                         const
      Handle<YieldTermStructure>& discountCurve,\n                         bool settlesAccrual,\n
      \                        bool paysAtDefaultTime,\n                         const
      Date& startDate,\n                         DayCounter lastPeriodDayCounter,\n
      \                        const bool rebatesAccrual,\n                         const
      CreditDefaultSwap::PricingModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:61,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:63,1
    - Dst: ext::shared_ptr<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:64,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:64,1
    - Dst: resetEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ts
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::CdsHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - ext::shared_ptr<DefaultProbabilityTermStructure>
    - linkTo
    - resetEngine
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    linkageType: ''
    returnType: void
    signature: void CdsHelper::setTermStructure(DefaultProbabilityTermStructure* ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:71,1
    - Dst: resetEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::CdsHelper::update
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - resetEngine
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void CdsHelper::update()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:79,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:82,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:87,1
    - Dst: cdsMaturity
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:91,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:96,1
    - Dst: dates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:103,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:104,1
    - Dst: dates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 108
    functionName: QuantLib::CdsHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 1
    functionsReached:
    - cdsMaturity
    - dates
    - MakeSchedule
    - Date
    - adjust
    linkageType: ''
    returnType: void
    signature: void CdsHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 16
    argNames:
    - ' runningSpread'
    - ' tenor'
    - settlementDays
    - ' calendar'
    - frequency
    - paymentConvention
    - rule
    - ' dayCounter'
    - recoveryRate
    - ' discountCurve'
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 130
    functionName: QuantLib::SpreadCdsHelper::SpreadCdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SpreadCdsHelper::SpreadCdsHelper(\n                              const
      std::variant<Rate, Handle<Quote>>& runningSpread,\n                              const
      Period& tenor,\n                              Integer settlementDays,\n                              const
      Calendar& calendar,\n                              Frequency frequency,\n                              BusinessDayConvention
      paymentConvention,\n                              DateGeneration::Rule rule,\n
      \                             const DayCounter& dayCounter,\n                              Real
      recoveryRate,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              bool settlesAccrual,\n                              bool
      paysAtDefaultTime,\n                              const Date& startDate,\n                              const
      DayCounter& lastPeriodDayCounter,\n                              const bool
      rebatesAccrual,\n                              const CreditDefaultSwap::PricingModel
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:133,1
    - Dst: fairSpread
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::SpreadCdsHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real SpreadCdsHelper::impliedQuote() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:138,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:141,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:145,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:145,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:151,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:151,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 157
    functionName: QuantLib::SpreadCdsHelper::resetEngine
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CreditDefaultSwap>
    - QL_FAIL
    - setPricingEngine
    - ext::shared_ptr<Claim>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: void
    signature: void SpreadCdsHelper::resetEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UpfrontCdsHelper::upfrontDate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 18
    argNames:
    - ' upfront'
    - runningSpread
    - ' tenor'
    - settlementDays
    - ' calendar'
    - frequency
    - paymentConvention
    - rule
    - ' dayCounter'
    - recoveryRate
    - ' discountCurve'
    - upfrontSettlementDays
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Rate
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - Natural
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 184
    functionName: QuantLib::UpfrontCdsHelper::UpfrontCdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::UpfrontCdsHelper::upfrontDate
    linkageType: ''
    returnType: void
    signature: "void UpfrontCdsHelper::UpfrontCdsHelper(\n                              const
      std::variant<Rate, Handle<Quote>>& upfront,\n                              Rate
      runningSpread,\n                              const Period& tenor,\n                              Integer
      settlementDays,\n                              const Calendar& calendar,\n                              Frequency
      frequency,\n                              BusinessDayConvention paymentConvention,\n
      \                             DateGeneration::Rule rule,\n                              const
      DayCounter& dayCounter,\n                              Real recoveryRate,\n
      \                             const Handle<YieldTermStructure>& discountCurve,\n
      \                             Natural upfrontSettlementDays,\n                              bool
      settlesAccrual,\n                              bool paysAtDefaultTime,\n                              const
      Date& startDate,\n                              const DayCounter& lastPeriodDayCounter,\n
      \                             const bool rebatesAccrual,\n                              const
      CreditDefaultSwap::PricingModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::UpfrontCdsHelper::upfrontDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 1
    functionsReached:
    - advance
    linkageType: ''
    returnType: Date
    signature: Date UpfrontCdsHelper::upfrontDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CdsHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:191,1
    - Dst: QuantLib::UpfrontCdsHelper::upfrontDate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::UpfrontCdsHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CdsHelper::initializeDates
    - QuantLib::UpfrontCdsHelper::upfrontDate
    linkageType: ''
    returnType: void
    signature: void UpfrontCdsHelper::initializeDates()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:196,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:200,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:205,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:205,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:211,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:211,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 217
    functionName: QuantLib::UpfrontCdsHelper::resetEngine
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CreditDefaultSwap>
    - QL_FAIL
    - setPricingEngine
    - ext::shared_ptr<Claim>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: void
    signature: void UpfrontCdsHelper::resetEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:221,1
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:222,1
    - Dst: fairUpfront
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: QuantLib::UpfrontCdsHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - fairUpfront
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real UpfrontCdsHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:52,1
    - Dst: QuantLib::CdsHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 16
    argNames:
    - ' quote'
    - ' tenor'
    - settlementDays
    - calendar
    - frequency
    - paymentConvention
    - rule
    - dayCounter
    - recoveryRate
    - ' discountCurve'
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - lastPeriodDayCounter
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 58
    functionName: QuantLib::CdsHelper::CdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CdsHelper::initializeDates
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CdsHelper::CdsHelper(const std::variant<Rate, Handle<Quote>>&
      quote,\n                         const Period& tenor,\n                         Integer
      settlementDays,\n                         Calendar calendar,\n                         Frequency
      frequency,\n                         BusinessDayConvention paymentConvention,\n
      \                        DateGeneration::Rule rule,\n                         DayCounter
      dayCounter,\n                         Real recoveryRate,\n                         const
      Handle<YieldTermStructure>& discountCurve,\n                         bool settlesAccrual,\n
      \                        bool paysAtDefaultTime,\n                         const
      Date& startDate,\n                         DayCounter lastPeriodDayCounter,\n
      \                        const bool rebatesAccrual,\n                         const
      CreditDefaultSwap::PricingModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:61,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:63,1
    - Dst: ext::shared_ptr<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:64,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:64,1
    - Dst: resetEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ts
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::CdsHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - ext::shared_ptr<DefaultProbabilityTermStructure>
    - linkTo
    - resetEngine
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    linkageType: ''
    returnType: void
    signature: void CdsHelper::setTermStructure(DefaultProbabilityTermStructure* ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:71,1
    - Dst: resetEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::CdsHelper::update
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - resetEngine
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void CdsHelper::update()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:79,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:82,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:87,1
    - Dst: cdsMaturity
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:91,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:96,1
    - Dst: dates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:103,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:104,1
    - Dst: dates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 108
    functionName: QuantLib::CdsHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 3
    functionsReached:
    - cdsMaturity
    - dates
    - MakeSchedule
    - Date
    - adjust
    linkageType: ''
    returnType: void
    signature: void CdsHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 16
    argNames:
    - ' runningSpread'
    - ' tenor'
    - settlementDays
    - ' calendar'
    - frequency
    - paymentConvention
    - rule
    - ' dayCounter'
    - recoveryRate
    - ' discountCurve'
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 130
    functionName: QuantLib::SpreadCdsHelper::SpreadCdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SpreadCdsHelper::SpreadCdsHelper(\n                              const
      std::variant<Rate, Handle<Quote>>& runningSpread,\n                              const
      Period& tenor,\n                              Integer settlementDays,\n                              const
      Calendar& calendar,\n                              Frequency frequency,\n                              BusinessDayConvention
      paymentConvention,\n                              DateGeneration::Rule rule,\n
      \                             const DayCounter& dayCounter,\n                              Real
      recoveryRate,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              bool settlesAccrual,\n                              bool
      paysAtDefaultTime,\n                              const Date& startDate,\n                              const
      DayCounter& lastPeriodDayCounter,\n                              const bool
      rebatesAccrual,\n                              const CreditDefaultSwap::PricingModel
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:133,1
    - Dst: fairSpread
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::SpreadCdsHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real SpreadCdsHelper::impliedQuote() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:138,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:141,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:145,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:145,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:151,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:151,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 157
    functionName: QuantLib::SpreadCdsHelper::resetEngine
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CreditDefaultSwap>
    - QL_FAIL
    - setPricingEngine
    - ext::shared_ptr<Claim>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: void
    signature: void SpreadCdsHelper::resetEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UpfrontCdsHelper::upfrontDate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 18
    argNames:
    - ' upfront'
    - runningSpread
    - ' tenor'
    - settlementDays
    - ' calendar'
    - frequency
    - paymentConvention
    - rule
    - ' dayCounter'
    - recoveryRate
    - ' discountCurve'
    - upfrontSettlementDays
    - settlesAccrual
    - paysAtDefaultTime
    - ' startDate'
    - ' lastPeriodDayCounter'
    - rebatesAccrual
    - model
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Rate
    - Period
    - Integer
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DateGeneration::Rule
    - DayCounter
    - Real
    - Handle<YieldTermStructure>
    - Natural
    - bool
    - bool
    - Date
    - DayCounter
    - bool
    - CreditDefaultSwap::PricingModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 184
    functionName: QuantLib::UpfrontCdsHelper::UpfrontCdsHelper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::UpfrontCdsHelper::upfrontDate
    linkageType: ''
    returnType: void
    signature: "void UpfrontCdsHelper::UpfrontCdsHelper(\n                              const
      std::variant<Rate, Handle<Quote>>& upfront,\n                              Rate
      runningSpread,\n                              const Period& tenor,\n                              Integer
      settlementDays,\n                              const Calendar& calendar,\n                              Frequency
      frequency,\n                              BusinessDayConvention paymentConvention,\n
      \                             DateGeneration::Rule rule,\n                              const
      DayCounter& dayCounter,\n                              Real recoveryRate,\n
      \                             const Handle<YieldTermStructure>& discountCurve,\n
      \                             Natural upfrontSettlementDays,\n                              bool
      settlesAccrual,\n                              bool paysAtDefaultTime,\n                              const
      Date& startDate,\n                              const DayCounter& lastPeriodDayCounter,\n
      \                             const bool rebatesAccrual,\n                              const
      CreditDefaultSwap::PricingModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: QuantLib::UpfrontCdsHelper::upfrontDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 3
    functionsReached:
    - advance
    linkageType: ''
    returnType: Date
    signature: Date UpfrontCdsHelper::upfrontDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CdsHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:191,1
    - Dst: QuantLib::UpfrontCdsHelper::upfrontDate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::UpfrontCdsHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CdsHelper::initializeDates
    - QuantLib::UpfrontCdsHelper::upfrontDate
    linkageType: ''
    returnType: void
    signature: void UpfrontCdsHelper::initializeDates()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CreditDefaultSwap>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:196,1
    - Dst: ext::shared_ptr<Claim>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:200,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:205,1
    - Dst: ext::make_shared<IsdaCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:205,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:211,1
    - Dst: ext::make_shared<MidPointCdsEngine>
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:211,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 217
    functionName: QuantLib::UpfrontCdsHelper::resetEngine
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<CreditDefaultSwap>
    - QL_FAIL
    - setPricingEngine
    - ext::shared_ptr<Claim>
    - ext::make_shared<IsdaCdsEngine>
    - ext::make_shared<MidPointCdsEngine>
    linkageType: ''
    returnType: void
    signature: void UpfrontCdsHelper::resetEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:221,1
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:222,1
    - Dst: fairUpfront
      Src: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: QuantLib::UpfrontCdsHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultprobabilityhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - fairUpfront
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real UpfrontCdsHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::t_remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void t_remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::t_remapper
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::remap_t
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::t_remapper
    linkageType: ''
    returnType: t_remapper<F>
    signature: t_remapper<F> remap_t(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::t_remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 1
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void t_remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::t_remapper
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::remap_t
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::t_remapper
    linkageType: ''
    returnType: t_remapper<F>
    signature: t_remapper<F> remap_t(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: remap_t
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::DefaultDensityStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - integral
    - defaultDensityImpl
    - std::max<Real>
    - remap_t
    linkageType: ''
    returnType: Probability
    signature: Probability DefaultDensityStructure::survivalProbabilityImpl(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::t_remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 2
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void t_remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::t_remapper
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::remap_t
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::t_remapper
    linkageType: ''
    returnType: t_remapper<F>
    signature: t_remapper<F> remap_t(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::t_remapper
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 3
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void t_remapper(F f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::t_remapper
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' f'
    - T
    argTypes:
    - F
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::remap_t
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::t_remapper
    linkageType: ''
    returnType: t_remapper<F>
    signature: t_remapper<F> remap_t(const F& f, Time T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: QuantLib::DefaultDensityStructure::DefaultDensityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DefaultDensityStructure::DefaultDensityStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: remap_t
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: defaultDensityImpl
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:75,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::DefaultDensityStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/defaultdensitystructure.cpp
    functionUses: 0
    functionsReached:
    - integral
    - defaultDensityImpl
    - std::max<Real>
    - remap_t
    linkageType: ''
    returnType: Probability
    signature: Probability DefaultDensityStructure::survivalProbabilityImpl(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedSurvivalProbabilityCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedSurvivalProbabilityCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedSurvivalProbabilityCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedSurvivalProbabilityCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilities()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Probability>
    signature: "std::vector<Probability> &\n    InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:135,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 138
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Real> >
    signature: std::vector<std::pair<Date,Real> > InterpolatedSurvivalProbabilityCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:148,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:149,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:152,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:153,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:154,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 156
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilityImpl(Time
      t)\n                                                                        const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:161,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:162,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:165,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSurvivalProbabilityCurve<T>::defaultDensityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 188
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:210,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:211,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const Calendar&
      calendar,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:224,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:225,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 229
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const Calendar&
      calendar,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:237,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:237,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:238,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 242
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:255,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:263,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:273,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupTimes
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::update
    - dayCounter
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::size
    - size
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedSurvivalProbabilityCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedSurvivalProbabilityCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedSurvivalProbabilityCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedSurvivalProbabilityCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedSurvivalProbabilityCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilities()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Probability>
    signature: "std::vector<Probability> &\n    InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilities()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:135,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 138
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date,Real> >
    signature: std::vector<std::pair<Date,Real> > InterpolatedSurvivalProbabilityCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:148,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:149,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:152,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:153,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:154,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 156
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedSurvivalProbabilityCurve<T>::survivalProbabilityImpl(Time
      t)\n                                                                        const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:161,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:162,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:165,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:166,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::times_::back
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::derivative
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSurvivalProbabilityCurve<T>::defaultDensityImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 188
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const Date& referenceDate,\n                                    const
      DayCounter& dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   Natural settlementDays,\n                                    const
      Calendar& calendar,\n                                    const DayCounter& dayCounter,\n
      \                                   const std::vector<Handle<Quote> >& jumps,\n
      \                                   const std::vector<Date>& jumpDates,\n                                    const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:210,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:211,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const Calendar&
      calendar,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:224,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:225,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 229
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const Calendar&
      calendar,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:237,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:237,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:238,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' probabilities'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Probability>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 242
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSurvivalProbabilityCurve<T>::InterpolatedSurvivalProbabilityCurve(\n
      \                                   const std::vector<Date>& dates,\n                                    const
      std::vector<Probability>& probabilities,\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:253,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:255,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:263,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:273,1
    - Dst: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedSurvivalProbabilityCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/credit/interpolatedsurvivalprobabilitycurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupTimes
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::interpolation_::update
    - dayCounter
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::data_::size
    - size
    - QuantLib::InterpolatedSurvivalProbabilityCurve<T>::setupInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedSurvivalProbabilityCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HazardRateStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp:107,1
    - Dst: QuantLib::HazardRateStructure::survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::HazardRateStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::HazardRateStructure::survivalProbabilityImpl
    - QuantLib::HazardRateStructure::hazardRateImpl
    linkageType: ''
    returnType: Real
    signature: Real HazardRateStructure::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HazardRateStructure::hazardRateImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp:107,1
    - Dst: QuantLib::HazardRateStructure::survivalProbabilityImpl
      Src: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::HazardRateStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/credit/hazardratestructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::HazardRateStructure::survivalProbabilityImpl
    - QuantLib::HazardRateStructure::hazardRateImpl
    linkageType: ''
    returnType: Real
    signature: Real HazardRateStructure::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::AtmSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::AtmSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::AtmSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::AtmSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::AtmSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::AtmSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AtmSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - volatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::AtmSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - variance
    linkageType: ''
    returnType: Real
    signature: Real varianceImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::AtmSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: QuantLib::AtmSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::AtmSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::AtmSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::AtmSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::AtmSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AtmSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - volatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::AtmSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.hpp
    functionUses: 0
    functionsReached:
    - variance
    linkageType: ''
    returnType: Real
    signature: Real varianceImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::AtmAdjustedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::AtmAdjustedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::AtmAdjustedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::AtmAdjustedSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AtmAdjustedSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::AtmAdjustedSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:52,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::AtmAdjustedSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::optionPrice
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: "Real optionPrice(Rate strike,\n                         Option::Type
      type = Option::Call,\n                         Real discount = 1.0) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:59,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real digitalOptionPrice(Rate strike,\n                                Option::Type
      type = Option::Call,\n                                Real discount = 1.0,\n
      \                               Real gap = 1.0e-5) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::vega
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:64,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::AtmAdjustedSmileSection::vega
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::vega
    linkageType: ''
    returnType: Real
    signature: Real vega(Rate strike, Real discount = 1.0) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::density
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:68,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::AtmAdjustedSmileSection::density
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::density
    linkageType: ''
    returnType: Real
    signature: Real density(Rate strike, Real discount = 1.0, Real gap = 1.0E-4) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::AtmAdjustedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::AtmAdjustedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::AtmAdjustedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::AtmAdjustedSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AtmAdjustedSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::AtmAdjustedSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:52,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::AtmAdjustedSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::optionPrice
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: "Real optionPrice(Rate strike,\n                         Option::Type
      type = Option::Call,\n                         Real discount = 1.0) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:59,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionName: QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real digitalOptionPrice(Rate strike,\n                                Option::Type
      type = Option::Call,\n                                Real discount = 1.0,\n
      \                               Real gap = 1.0e-5) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::vega
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:64,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::AtmAdjustedSmileSection::vega
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::vega
    linkageType: ''
    returnType: Real
    signature: Real vega(Rate strike, Real discount = 1.0) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::density
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:68,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::AtmAdjustedSmileSection::density
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    - QuantLib::AtmAdjustedSmileSection::density
    linkageType: ''
    returnType: Real
    signature: Real density(Rate strike, Real discount = 1.0, Real gap = 1.0E-4) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:55,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:57,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:58,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 19
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    - shift
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 61
    functionName: QuantLib::SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - std::move
    - QuantLib::detail::instance
    - Date
    - size
    linkageType: ''
    returnType: void
    signature: "void SabrInterpolatedSmileSection::SabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        Handle<Quote> forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote>
      atmVolatility,\n        const std::vector<Handle<Quote> >& volHandles,\n        Real
      alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n        bool
      isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n        bool
      isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:83,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:90,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 19
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    - shift
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 95
    functionName: QuantLib::SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - QuantLib::detail::instance
    - Date
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void SabrInterpolatedSmileSection::SabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        const Rate& forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        const
      Volatility& atmVolatility,\n        const std::vector<Volatility>& volHandles,\n
      \       Real alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n
      \       bool isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n
      \       bool isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:100,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:103,1
    - Dst: SABRInterpolation::SABRInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:98,1
    - Dst: swap
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::SabrInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - shift
    - exerciseTime
    - begin
    - SABRInterpolation::SABRInterpolation
    - swap
    - end
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:108,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:109,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:112,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:119,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:125,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 127
    functionName: QuantLib::SabrInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - QuantLib::SabrInterpolatedSmileSection::createInterpolation
    - isValid
    - size
    - clear
    - QuantLib::SabrInterpolatedSmileSection::update
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:130,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::SabrInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:55,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:57,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:58,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 19
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    - shift
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 61
    functionName: QuantLib::SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - std::move
    - QuantLib::detail::instance
    - Date
    - size
    linkageType: ''
    returnType: void
    signature: "void SabrInterpolatedSmileSection::SabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        Handle<Quote> forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote>
      atmVolatility,\n        const std::vector<Handle<Quote> >& volHandles,\n        Real
      alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n        bool
      isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n        bool
      isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:83,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:84,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:90,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 19
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    - shift
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 95
    functionName: QuantLib::SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - QuantLib::detail::instance
    - Date
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void SabrInterpolatedSmileSection::SabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        const Rate& forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        const
      Volatility& atmVolatility,\n        const std::vector<Volatility>& volHandles,\n
      \       Real alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n
      \       bool isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n
      \       bool isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:99,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:100,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:103,1
    - Dst: SABRInterpolation::SABRInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:98,1
    - Dst: swap
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::SabrInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 1
    functionsReached:
    - shift
    - exerciseTime
    - begin
    - SABRInterpolation::SABRInterpolation
    - swap
    - end
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:108,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:109,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:110,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:112,1
    - Dst: isValid
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:119,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:125,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 127
    functionName: QuantLib::SabrInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - QuantLib::SabrInterpolatedSmileSection::createInterpolation
    - isValid
    - size
    - clear
    - QuantLib::SabrInterpolatedSmileSection::update
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:130,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::SabrInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - f
    - s
    - a
    - b
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::KahaleSmileSection::cFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cFunction(Real f, Real s, Real a, Real b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::KahaleSmileSection::cFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cFunction(Real a, Real b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:68,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:70,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::BSMRNDCalculator::cdf
    - std::exp
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - k0
    - k1
    - c0
    - c1
    - c0p
    - c1p
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::KahaleSmileSection::aHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void aHelper(Real k0, Real k1, Real c0, Real c1, Real c0p, Real c1p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:82,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:88,1
    - Dst: cTmp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:90,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: operator()(Real a) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::log
    - cTmp
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - k0
    - c0
    - c0p
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::KahaleSmileSection::sHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sHelper(Real k0, Real c0, Real c0p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:101,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:105,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: operator()(Real s) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::max
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - k1
    - c0
    - c1
    - c1p
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: QuantLib::KahaleSmileSection::sHelper1
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sHelper1(Real k1, Real c0, Real c1, Real c1p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:117,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:119,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:121,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 125
    functionName: operator()(Real s) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::max
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::KahaleSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::shift
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::KahaleSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::KahaleSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 143
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::KahaleSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::KahaleSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::KahaleSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::KahaleSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::KahaleSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::KahaleSmileSection::shift
    linkageType: ''
    returnType: Real
    signature: Real shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::KahaleSmileSection::leftCoreStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real leftCoreStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::KahaleSmileSection::rightCoreStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rightCoreStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::KahaleSmileSection::coreIndices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    linkageType: ''
    returnType: std::pair<Size, Size>
    signature: std::pair<Size, Size> coreIndices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - f
    - s
    - a
    - b
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: QuantLib::KahaleSmileSection::cFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cFunction(Real f, Real s, Real a, Real b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::KahaleSmileSection::cFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cFunction(Real a, Real b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:68,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:70,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::BSMRNDCalculator::cdf
    - std::exp
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - k0
    - k1
    - c0
    - c1
    - c0p
    - c1p
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: QuantLib::KahaleSmileSection::aHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void aHelper(Real k0, Real k1, Real c0, Real c1, Real c0p, Real c1p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:82,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:88,1
    - Dst: cTmp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:90,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: operator()(Real a) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::log
    - cTmp
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - k0
    - c0
    - c0p
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::KahaleSmileSection::sHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sHelper(Real k0, Real c0, Real c0p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:101,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:105,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: operator()(Real s) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::max
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - k1
    - c0
    - c1
    - c1p
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: QuantLib::KahaleSmileSection::sHelper1
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sHelper1(Real k1, Real c0, Real c1, Real c1p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:117,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:119,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:121,1
    - Dst: c
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 125
    functionName: operator()(Real s) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - c
    - std::exp
    - std::max
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::KahaleSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::shift
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::KahaleSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 142
    functionName: QuantLib::KahaleSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 143
    functionName: '& exerciseDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::KahaleSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::KahaleSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: '& dayCounter() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::KahaleSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::KahaleSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::KahaleSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::KahaleSmileSection::shift
    linkageType: ''
    returnType: Real
    signature: Real shift() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::KahaleSmileSection::leftCoreStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real leftCoreStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::KahaleSmileSection::rightCoreStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rightCoreStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::KahaleSmileSection::coreIndices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    linkageType: ''
    returnType: std::pair<Size, Size>
    signature: std::pair<Size, Size> coreIndices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::InterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::InterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::InterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:108,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:110,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:111,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 8
    argNames:
    - timeToExpiry
    - strikes
    - ' stdDevHandles'
    - atmLevel
    - ' interpolator'
    - ' dc'
    - type
    - shift
    argTypes:
    - Time
    - std::vector<Rate>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - Interpolator
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - interpolate
    - exerciseTime
    - std::move
    - begin
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       Time timeToExpiry,\n        std::vector<Rate> strikes,\n        const
      std::vector<Handle<Quote> >& stdDevHandles,\n        Handle<Quote> atmLevel,\n
      \       const Interpolator& interpolator,\n        const DayCounter& dc,\n        const
      VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:133,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:136,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:137,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:137,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:139,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 8
    argNames:
    - timeToExpiry
    - strikes
    - ' stdDevs'
    - atmLevel
    - ' interpolator'
    - ' dc'
    - type
    - shift
    argTypes:
    - Time
    - std::vector<Rate>
    - std::vector<Real>
    - Real
    - Interpolator
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 142
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - exerciseTime
    - std::move
    - ext::shared_ptr<Quote>
    - begin
    - SimpleQuote::SimpleQuote
    - std::sqrt
    - size
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       Time timeToExpiry,\n        std::vector<Rate> strikes,\n        const
      std::vector<Real>& stdDevs,\n        Real atmLevel,\n        const Interpolator&
      interpolator,\n        const DayCounter& dc,\n        const VolatilityType type,\n
      \       const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:157,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:159,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:160,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:162,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 9
    argNames:
    - ' d'
    - strikes
    - ' stdDevHandles'
    - atmLevel
    - ' dc'
    - ' interpolator'
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - std::vector<Rate>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - DayCounter
    - Interpolator
    - Date
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 165
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - interpolate
    - exerciseTime
    - std::move
    - begin
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       const Date& d,\n        std::vector<Rate> strikes,\n        const std::vector<Handle<Quote>
      >& stdDevHandles,\n        Handle<Quote> atmLevel,\n        const DayCounter&
      dc,\n        const Interpolator& interpolator,\n        const Date& referenceDate,\n
      \       const VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:183,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:186,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:187,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:187,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:189,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 9
    argNames:
    - ' d'
    - strikes
    - ' stdDevs'
    - atmLevel
    - ' dc'
    - ' interpolator'
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - std::vector<Rate>
    - std::vector<Real>
    - Real
    - DayCounter
    - Interpolator
    - Date
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 192
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - exerciseTime
    - std::move
    - ext::shared_ptr<Quote>
    - begin
    - SimpleQuote::SimpleQuote
    - std::sqrt
    - size
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       const Date& d,\n        std::vector<Rate> strikes,\n        const std::vector<Real>&
      stdDevs,\n        Real atmLevel,\n        const DayCounter& dc,\n        const
      Interpolator& interpolator,\n        const Date& referenceDate,\n        const
      VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:198,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:199,1
    - Dst: QuantLib::InterpolatedSmileSection<Interpolator>::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::InterpolatedSmileSection<Interpolator>::update
    - value
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::performCalculations()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:206,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:207,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSmileSection<Interpolator>::varianceImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:213,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSmileSection<Interpolator>::volatilityImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:219,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void InterpolatedSmileSection<Interpolator>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::InterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::InterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::InterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:107,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:108,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:110,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:111,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:114,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 8
    argNames:
    - timeToExpiry
    - strikes
    - ' stdDevHandles'
    - atmLevel
    - ' interpolator'
    - ' dc'
    - type
    - shift
    argTypes:
    - Time
    - std::vector<Rate>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - Interpolator
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - interpolate
    - exerciseTime
    - std::move
    - begin
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       Time timeToExpiry,\n        std::vector<Rate> strikes,\n        const
      std::vector<Handle<Quote> >& stdDevHandles,\n        Handle<Quote> atmLevel,\n
      \       const Interpolator& interpolator,\n        const DayCounter& dc,\n        const
      VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:129,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:133,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:134,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:136,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:137,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:137,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:139,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:139,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:140,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 8
    argNames:
    - timeToExpiry
    - strikes
    - ' stdDevs'
    - atmLevel
    - ' interpolator'
    - ' dc'
    - type
    - shift
    argTypes:
    - Time
    - std::vector<Rate>
    - std::vector<Real>
    - Real
    - Interpolator
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 142
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - exerciseTime
    - std::move
    - ext::shared_ptr<Quote>
    - begin
    - SimpleQuote::SimpleQuote
    - std::sqrt
    - size
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       Time timeToExpiry,\n        std::vector<Rate> strikes,\n        const
      std::vector<Real>& stdDevs,\n        Real atmLevel,\n        const Interpolator&
      interpolator,\n        const DayCounter& dc,\n        const VolatilityType type,\n
      \       const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:156,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:157,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:159,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:160,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:162,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 9
    argNames:
    - ' d'
    - strikes
    - ' stdDevHandles'
    - atmLevel
    - ' dc'
    - ' interpolator'
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - std::vector<Rate>
    - std::vector<Handle<Quote> >
    - Handle<Quote>
    - DayCounter
    - Interpolator
    - Date
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 165
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Observer::registerWith
    - interpolate
    - exerciseTime
    - std::move
    - begin
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       const Date& d,\n        std::vector<Rate> strikes,\n        const std::vector<Handle<Quote>
      >& stdDevHandles,\n        Handle<Quote> atmLevel,\n        const DayCounter&
      dc,\n        const Interpolator& interpolator,\n        const Date& referenceDate,\n
      \       const VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:180,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:183,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:184,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:186,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:187,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:187,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:189,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 9
    argNames:
    - ' d'
    - strikes
    - ' stdDevs'
    - atmLevel
    - ' dc'
    - ' interpolator'
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - std::vector<Rate>
    - std::vector<Real>
    - Real
    - DayCounter
    - Interpolator
    - Date
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 192
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - interpolate
    - exerciseTime
    - std::move
    - ext::shared_ptr<Quote>
    - begin
    - SimpleQuote::SimpleQuote
    - std::sqrt
    - size
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::InterpolatedSmileSection(\n
      \       const Date& d,\n        std::vector<Rate> strikes,\n        const std::vector<Real>&
      stdDevs,\n        Real atmLevel,\n        const DayCounter& dc,\n        const
      Interpolator& interpolator,\n        const Date& referenceDate,\n        const
      VolatilityType type,\n        const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:198,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:199,1
    - Dst: QuantLib::InterpolatedSmileSection<Interpolator>::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::InterpolatedSmileSection<Interpolator>::update
    - value
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSmileSection<Interpolator>::performCalculations()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:206,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:207,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSmileSection<Interpolator>::varianceImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:213,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedSmileSection<Interpolator>::volatilityImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:219,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: QuantLib::InterpolatedSmileSection<Interpolator>::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/interpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void InterpolatedSmileSection<Interpolator>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: QuantLib::AbcdFunction::AbcdFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdFunction::AbcdFunction(Real a, Real b, Real c, Real d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::instantaneousVolatility
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:35,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:36,1
    - Dst: QuantLib::AbcdFunction::variance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - tMin
    - tMax
    - T
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::AbcdFunction::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdFunction::variance
    - std::sqrt
    - QuantLib::AbcdFunction::instantaneousVolatility
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::volatility(Time tMin, Time tMax, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::covariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tMin
    - tMax
    - T
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::AbcdFunction::variance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdFunction::covariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::variance(Time tMin, Time tMax, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::AbcdFunction::covariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::covariance(Time t, Time T, Time S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:48,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:51,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:55,1
    - Dst: QuantLib::AbcdFunction::primitive
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:56,1
    - Dst: QuantLib::AbcdFunction::primitive
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - t1
    - t2
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::AbcdFunction::covariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdFunction::primitive
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::covariance(Time t1, Time t2, Time T, Time S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:62,1
    - Dst: QuantLib::AbcdFunction::instantaneousVariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::AbcdFunction::instantaneousVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdFunction::instantaneousVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousVolatility(Time u, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::instantaneousCovariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AbcdFunction::instantaneousVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdFunction::instantaneousCovariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousVariance(Time u, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - u
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::AbcdFunction::instantaneousCovariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousCovariance(Time u, Time T, Time S)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - t
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 93
    functionName: QuantLib::AbcdFunction::primitive
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 1
    functionsReached:
    - close
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::primitive(Time t, Time T, Time S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdFunction::AbcdFunction
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - a
    - b
    - c
    - d
    - T
    - S
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::AbcdSquared::AbcdSquared
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::AbcdFunction
    linkageType: ''
    returnType: void
    signature: void AbcdSquared::AbcdSquared(Real a, Real b, Real c, Real d, Time
      T, Time S)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: covariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: AbcdSquared::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - covariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdSquared::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: QuantLib::AbcdFunction::AbcdFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdFunction::AbcdFunction(Real a, Real b, Real c, Real d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::instantaneousVolatility
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:35,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:36,1
    - Dst: QuantLib::AbcdFunction::variance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - tMin
    - tMax
    - T
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::AbcdFunction::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdFunction::variance
    - std::sqrt
    - QuantLib::AbcdFunction::instantaneousVolatility
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::volatility(Time tMin, Time tMax, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::covariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tMin
    - tMax
    - T
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: QuantLib::AbcdFunction::variance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdFunction::covariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::variance(Time tMin, Time tMax, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: QuantLib::AbcdFunction::covariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::covariance(Time t, Time T, Time S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:48,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:51,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:55,1
    - Dst: QuantLib::AbcdFunction::primitive
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:56,1
    - Dst: QuantLib::AbcdFunction::primitive
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - t1
    - t2
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::AbcdFunction::covariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdFunction::primitive
    - std::min
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::covariance(Time t1, Time t2, Time T, Time S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:62,1
    - Dst: QuantLib::AbcdFunction::instantaneousVariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::AbcdFunction::instantaneousVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdFunction::instantaneousVariance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousVolatility(Time u, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdFunction::instantaneousCovariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AbcdFunction::instantaneousVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdFunction::instantaneousCovariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousVariance(Time u, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - u
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::AbcdFunction::instantaneousCovariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::instantaneousCovariance(Time u, Time T, Time S)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:81,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - t
    - T
    - S
    argTypes:
    - Time
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 93
    functionName: QuantLib::AbcdFunction::primitive
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 2
    functionsReached:
    - close
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AbcdFunction::primitive(Time t, Time T, Time S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdFunction::AbcdFunction
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - a
    - b
    - c
    - d
    - T
    - S
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::AbcdSquared::AbcdSquared
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::AbcdFunction
    linkageType: ''
    returnType: void
    signature: void AbcdSquared::AbcdSquared(Real a, Real b, Real c, Real d, Time
      T, Time S)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: covariance
      Src: /src/quantlib/ql/termstructures/volatility/abcd.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: AbcdSquared::operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.cpp
    functionUses: 0
    functionsReached:
    - covariance
    linkageType: ''
    returnType: Real
    signature: Real AbcdSquared::operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - abcd
    argTypes:
    - AbcdCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AbcdCalibration::AbcdError::AbcdError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdError(AbcdCalibration* abcd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformation_::direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:49,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::AbcdCalibration::AbcdError::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - error
    - transformation_::direct
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformation_::direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:57,1
    - Dst: errors
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::AbcdCalibration::AbcdError::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - transformation_::direct
    - errors
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::AbcdCalibration::AbcdParametersTransformation::AbcdParametersTransformation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void AbcdParametersTransformation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::AbcdCalibration::AbcdCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdCalibration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::AbcdCalibration::a
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::AbcdCalibration::b
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::AbcdCalibration::c
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::AbcdCalibration::d
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - abcd
    argTypes:
    - AbcdCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AbcdCalibration::AbcdError::AbcdError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdError(AbcdCalibration* abcd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformation_::direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:49,1
    - Dst: error
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::AbcdCalibration::AbcdError::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - error
    - transformation_::direct
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: transformation_::direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:57,1
    - Dst: errors
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::AbcdCalibration::AbcdError::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - transformation_::direct
    - errors
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::AbcdCalibration::AbcdParametersTransformation::AbcdParametersTransformation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void AbcdParametersTransformation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::AbcdCalibration::AbcdCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AbcdCalibration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::AbcdCalibration::a
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::AbcdCalibration::b
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::AbcdCalibration::c
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::AbcdCalibration::d
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real d() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:33,1
    - Dst: QuantLib::SmileSection::initializeExerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::SmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SmileSection::initializeExerciseTime
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:39,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::SmileSection::initializeExerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 1
    functionsReached:
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SmileSection::initializeExerciseTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:51,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:55,1
    - Dst: QuantLib::SmileSection::initializeExerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ' d'
    - dc
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - DayCounter
    - Date
    - VolatilityType
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - registerWith
    - Date
    - QuantLib::detail::instance
    - QuantLib::SmileSection::initializeExerciseTime
    linkageType: ''
    returnType: void
    signature: "void SmileSection::SmileSection(const Date& d,\n                               DayCounter
      dc,\n                               const Date& referenceDate,\n                               const
      VolatilityType type,\n                               const Rate shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - exerciseTime
    - dc
    - type
    - shift
    argTypes:
    - Time
    - DayCounter
    - VolatilityType
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SmileSection::SmileSection(Time exerciseTime,\n                               DayCounter
      dc,\n                               const VolatilityType type,\n                               const
      Rate shift)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:76,1
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:81,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 86
    functionName: QuantLib::SmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::shift
    - Null<Real>
    - Real
    - QuantLib::SmileSection::variance
    - bachelierBlackFormula
    - blackFormula
    - std::fabs
    - atmLevel
    - QuantLib::SmileSection::volatilityType
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::optionPrice(Rate strike,\n                                   Option::Type
      type,\n                                   Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:93,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:96,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - type
    - discount
    - gap
    argTypes:
    - Rate
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 97
    functionName: QuantLib::SmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::shift
    - Real
    - std::max
    - QuantLib::SmileSection::volatilityType
    - QuantLib::SmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::digitalOptionPrice(Rate strike,\n                                          Option::Type
      type,\n                                          Real discount,\n                                          Real
      gap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:101,1
    - Dst: QuantLib::SmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:103,1
    - Dst: QuantLib::SmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - discount
    - gap
    argTypes:
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::SmileSection::density
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::shift
    - Real
    - std::max
    - QuantLib::SmileSection::digitalOptionPrice
    - QuantLib::SmileSection::volatilityType
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::density(Rate strike, Real discount, Real gap) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:109,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:109,1
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:111,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:112,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:112,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:113,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:113,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:114,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:114,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - strike
    - discount
    argTypes:
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 117
    functionName: QuantLib::SmileSection::vega
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - blackFormulaVolDerivative
    - QuantLib::SmileSection::shift
    - Null<Real>
    - QuantLib::SmileSection::variance
    - QL_FAIL
    - atmLevel
    - QuantLib::SmileSection::volatilityType
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::vega(Rate strike, Real discount) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:121,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:121,1
    - Dst: QuantLib::SmileSection::volatility
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:122,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:124,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:124,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:127,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:128,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:133,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:133,1
    - Dst: blackFormulaImpliedStdDevChambers
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:137,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:137,1
    - Dst: bachelierBlackFormulaImpliedVol
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:140,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - strike
    - volatilityType
    - shift
    argTypes:
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 143
    functionName: QuantLib::SmileSection::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - close
    - QuantLib::SmileSection::shift
    - blackFormulaImpliedStdDevChambers
    - Null<Real>
    - bachelierBlackFormulaImpliedVol
    - atmLevel
    - std::sqrt
    - QuantLib::SmileSection::volatility
    - blackFormulaImpliedStdDev
    - QuantLib::SmileSection::optionPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::volatility(Rate strike, VolatilityType volatilityType,\n
      \                                 Real shift) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:33,1
    - Dst: QuantLib::SmileSection::initializeExerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::SmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SmileSection::initializeExerciseTime
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:39,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: QuantLib::SmileSection::initializeExerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 3
    functionsReached:
    - yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SmileSection::initializeExerciseTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:51,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:55,1
    - Dst: QuantLib::SmileSection::initializeExerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ' d'
    - dc
    - ' referenceDate'
    - type
    - shift
    argTypes:
    - Date
    - DayCounter
    - Date
    - VolatilityType
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - registerWith
    - Date
    - QuantLib::detail::instance
    - QuantLib::SmileSection::initializeExerciseTime
    linkageType: ''
    returnType: void
    signature: "void SmileSection::SmileSection(const Date& d,\n                               DayCounter
      dc,\n                               const Date& referenceDate,\n                               const
      VolatilityType type,\n                               const Rate shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - exerciseTime
    - dc
    - type
    - shift
    argTypes:
    - Time
    - DayCounter
    - VolatilityType
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SmileSection::SmileSection(Time exerciseTime,\n                               DayCounter
      dc,\n                               const VolatilityType type,\n                               const
      Rate shift)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:76,1
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:81,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:82,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:83,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 86
    functionName: QuantLib::SmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SmileSection::shift
    - Null<Real>
    - Real
    - QuantLib::SmileSection::variance
    - bachelierBlackFormula
    - blackFormula
    - std::fabs
    - atmLevel
    - QuantLib::SmileSection::volatilityType
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::optionPrice(Rate strike,\n                                   Option::Type
      type,\n                                   Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:93,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:96,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - type
    - discount
    - gap
    argTypes:
    - Rate
    - Option::Type
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 97
    functionName: QuantLib::SmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SmileSection::shift
    - Real
    - std::max
    - QuantLib::SmileSection::volatilityType
    - QuantLib::SmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::digitalOptionPrice(Rate strike,\n                                          Option::Type
      type,\n                                          Real discount,\n                                          Real
      gap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:100,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:101,1
    - Dst: QuantLib::SmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:103,1
    - Dst: QuantLib::SmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - discount
    - gap
    argTypes:
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::SmileSection::density
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::shift
    - Real
    - std::max
    - QuantLib::SmileSection::digitalOptionPrice
    - QuantLib::SmileSection::volatilityType
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::density(Rate strike, Real discount, Real gap) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:109,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:109,1
    - Dst: QuantLib::SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:111,1
    - Dst: blackFormulaVolDerivative
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:112,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:112,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:113,1
    - Dst: QuantLib::SmileSection::variance
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:113,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:114,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:114,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - strike
    - discount
    argTypes:
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 117
    functionName: QuantLib::SmileSection::vega
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - blackFormulaVolDerivative
    - QuantLib::SmileSection::shift
    - Null<Real>
    - QuantLib::SmileSection::variance
    - QL_FAIL
    - atmLevel
    - QuantLib::SmileSection::volatilityType
    - sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::vega(Rate strike, Real discount) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:121,1
    - Dst: QuantLib::SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:121,1
    - Dst: QuantLib::SmileSection::volatility
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:122,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:124,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:124,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:127,1
    - Dst: QuantLib::SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:128,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:133,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:133,1
    - Dst: blackFormulaImpliedStdDevChambers
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:137,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:137,1
    - Dst: bachelierBlackFormulaImpliedVol
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:140,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.cpp:141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - strike
    - volatilityType
    - shift
    argTypes:
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 143
    functionName: QuantLib::SmileSection::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - close
    - QuantLib::SmileSection::shift
    - blackFormulaImpliedStdDevChambers
    - Null<Real>
    - bachelierBlackFormulaImpliedVol
    - atmLevel
    - std::sqrt
    - QuantLib::SmileSection::volatility
    - blackFormulaImpliedStdDev
    - QuantLib::SmileSection::optionPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real SmileSection::volatility(Rate strike, VolatilityType volatilityType,\n
      \                                 Real shift) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:139,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::SabrInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::SabrInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:149,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::alpha
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::SabrInterpolatedSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::alpha
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:154,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::beta
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::SabrInterpolatedSmileSection::beta
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::beta
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:159,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::nu
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: QuantLib::SabrInterpolatedSmileSection::nu
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::nu
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:164,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: QuantLib::SabrInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:169,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: QuantLib::SabrInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::SabrInterpolatedSmileSection::rmsError
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:174,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::SabrInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:179,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::SabrInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type SabrInterpolatedSmileSection::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:184,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: QuantLib::SabrInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:190,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: QuantLib::SabrInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::SabrInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:139,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::SabrInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void SabrInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::SabrInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:149,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::alpha
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::SabrInterpolatedSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::alpha
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:154,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::beta
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: QuantLib::SabrInterpolatedSmileSection::beta
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::beta
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:159,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::nu
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: QuantLib::SabrInterpolatedSmileSection::nu
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::nu
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:164,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: QuantLib::SabrInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:169,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: QuantLib::SabrInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::SabrInterpolatedSmileSection::rmsError
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:174,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::SabrInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:179,1
    - Dst: QuantLib::SabrInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: QuantLib::SabrInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type SabrInterpolatedSmileSection::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:184,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: QuantLib::SabrInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:190,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: QuantLib::SabrInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: QuantLib::SabrInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SabrInterpolatedSmileSection::atmLevel() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:47,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:59,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 76
    functionName: QuantLib::unsafeSabrLogNormalVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QuantLib::close
    - std::pow
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrLogNormalVolatility(\n                              Rate
      strike,\n                              Rate forward,\n                              Time
      expiryTime,\n                              Real alpha,\n                              Real
      beta,\n                              Real nu,\n                              Real
      rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::unsafeSabrNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:88,1
    - Dst: QuantLib::unsafeSabrLogNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 9
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - shift
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: QuantLib::unsafeShiftedSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::unsafeSabrNormalVolatility
    - QuantLib::unsafeSabrLogNormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real unsafeShiftedSabrVolatility(Rate strike,\n                              Rate
      forward,\n                              Time expiryTime,\n                              Real
      alpha,\n                              Real beta,\n                              Real
      nu,\n                              Real rho,\n                              Real
      shift,\n                              VolatilityType volatilityType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:99,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:112,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:124,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 132
    functionName: QuantLib::unsafeSabrNormalVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - std::log
    - QuantLib::close
    - std::pow
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrNormalVolatility(\n        Rate strike, Rate forward,
      Time expiryTime, Real alpha, Real beta, Real nu, Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::unsafeSabrNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:143,1
    - Dst: QuantLib::unsafeSabrLogNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 8
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 147
    functionName: QuantLib::unsafeSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::unsafeSabrNormalVolatility
    - QuantLib::unsafeSabrLogNormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrVolatility(Rate strike,\n                              Rate
      forward,\n                              Time expiryTime,\n                              Real
      alpha,\n                              Real beta,\n                              Real
      nu,\n                              Real rho,\n                              VolatilityType
      volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 161
    functionName: QuantLib::validateSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void validateSabrParameters(Real alpha,\n                                Real
      beta,\n                                Real nu,\n                                Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:171,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:173,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:175,1
    - Dst: QuantLib::validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:177,1
    - Dst: QuantLib::unsafeSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 180
    functionName: QuantLib::sabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::rate
    - QuantLib::unsafeSabrVolatility
    - QuantLib::validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real sabrVolatility(Rate strike,\n                        Rate forward,\n
      \                       Time expiryTime,\n                        Real alpha,\n
      \                       Real beta,\n                        Real nu,\n                        Real
      rho,\n                        VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:191,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:192,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:193,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:194,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:195,1
    - Dst: QuantLib::validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:197,1
    - Dst: QuantLib::unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 9
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - shift
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: QuantLib::shiftedSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::unsafeShiftedSabrVolatility
    - QuantLib::io::rate
    - QuantLib::validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real shiftedSabrVolatility(Rate strike,\n                               Rate
      forward,\n                               Time expiryTime,\n                               Real
      alpha,\n                               Real beta,\n                               Real
      nu,\n                               Real rho,\n                               Real
      shift,\n                               VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: QuantLib::y
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real y(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: QuantLib::Dint
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::squared
    - QuantLib::y
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Dint(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: QuantLib::D
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::y
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real D(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::omega0
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Dint
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real omega0(Real k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::taylorExpansion
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 3
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QuantLib::Dint
    - QuantLib::taylorExpansion
    - QuantLib::omega0
    - std::pow
    - QuantLib::squared
    - QuantLib::D
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:246,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 252
    functionName: QuantLib::taylorExpansion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real taylorExpansion(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: QuantLib::y
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real y(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: QuantLib::Dint
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::squared
    - QuantLib::y
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Dint(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: QuantLib::D
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - QuantLib::y
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real D(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::omega0
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Dint
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real omega0(Real k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: QuantLib::omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: QuantLib::taylorExpansion
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 3
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QuantLib::Dint
    - QuantLib::taylorExpansion
    - QuantLib::omega0
    - std::pow
    - QuantLib::squared
    - QuantLib::D
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:246,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 252
    functionName: QuantLib::taylorExpansion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real taylorExpansion(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::v
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 267
    functionName: QuantLib::sabrFlochKennedyVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::v
    linkageType: ''
    returnType: Real
    signature: "Real sabrFlochKennedyVolatility(Rate strike,\n                                Rate
      forward,\n                                Time expiryTime,\n                                Real
      alpha,\n                                Real beta,\n                                Real
      nu,\n                                Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::tools::cubic_roots
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:275,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - c1
    - c2
    - c3
    - c4
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionName: QuantLib::smallest_positive_root
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::tools::cubic_roots
    - std::isnan
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real smallest_positive_root(Real c1, Real c2, Real c3, Real c4)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::tools::cubic_roots
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:275,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - c1
    - c2
    - c3
    - c4
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionName: QuantLib::smallest_positive_root
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::tools::cubic_roots
    - std::isnan
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real smallest_positive_root(Real c1, Real c2, Real c3, Real c4)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:304,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:305,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:322,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:325,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:326,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:329,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:332,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:338,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:338,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:339,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:341,1
    - Dst: QuantLib::smallest_positive_root
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:344,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:353,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:354,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:358,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:362,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:365,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:371,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:372,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:374,1
    - Dst: QuantLib::smallest_positive_root
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:377,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:383,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:383,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 11
    argNames:
    - k_m
    - vol_m
    - k_0
    - vol_0
    - k_p
    - vol_p
    - forward
    - expiryTime
    - beta
    - shift
    - volatilityType
    argTypes:
    - Real
    - Volatility
    - Real
    - Volatility
    - Real
    - Volatility
    - Rate
    - Time
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 289
    functionDepth: 2
    functionLinenumber: 289
    functionLinenumberEnd: 385
    functionName: QuantLib::sabrGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - Integer
    - QL_FAIL
    - std::pow
    - QuantLib::Ridder::sign
    - std::sqrt
    - QuantLib::squared
    - QuantLib::smallest_positive_root
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: "std::array<Real, 4> sabrGuess(Real k_m, Volatility vol_m,\n                                  Real
      k_0, Volatility vol_0,\n                                  Real k_p, Volatility
      vol_p,\n                                  Rate forward,\n                                  Time
      expiryTime,\n                                  Real beta,\n                                  Real
      shift,\n                                  VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 398
    functionName: QuantLib::sabrGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: "std::array<Real, 4> sabrGuess(Real, Volatility,\n                                  Real,
      Volatility,\n                                  Real, Volatility,\n                                  Rate,\n
      \                                 Time,\n                                  Real,\n
      \                                 Real,\n                                  VolatilityType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:46,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:47,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:59,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 76
    functionName: QuantLib::unsafeSabrLogNormalVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::log
    - QuantLib::close
    - std::pow
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrLogNormalVolatility(\n                              Rate
      strike,\n                              Rate forward,\n                              Time
      expiryTime,\n                              Real alpha,\n                              Real
      beta,\n                              Real nu,\n                              Real
      rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::unsafeSabrNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:88,1
    - Dst: QuantLib::unsafeSabrLogNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 9
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - shift
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: QuantLib::unsafeShiftedSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::unsafeSabrNormalVolatility
    - QuantLib::unsafeSabrLogNormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real unsafeShiftedSabrVolatility(Rate strike,\n                              Rate
      forward,\n                              Time expiryTime,\n                              Real
      alpha,\n                              Real beta,\n                              Real
      nu,\n                              Real rho,\n                              Real
      shift,\n                              VolatilityType volatilityType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:99,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:112,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:124,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 132
    functionName: QuantLib::unsafeSabrNormalVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 3
    functionsReached:
    - std::log
    - QuantLib::close
    - std::pow
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrNormalVolatility(\n        Rate strike, Rate forward,
      Time expiryTime, Real alpha, Real beta, Real nu, Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::unsafeSabrNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:143,1
    - Dst: QuantLib::unsafeSabrLogNormalVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 8
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 147
    functionName: QuantLib::unsafeSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::unsafeSabrNormalVolatility
    - QuantLib::unsafeSabrLogNormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real unsafeSabrVolatility(Rate strike,\n                              Rate
      forward,\n                              Time expiryTime,\n                              Real
      alpha,\n                              Real beta,\n                              Real
      nu,\n                              Real rho,\n                              VolatilityType
      volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 161
    functionName: QuantLib::validateSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void validateSabrParameters(Real alpha,\n                                Real
      beta,\n                                Real nu,\n                                Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:171,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:173,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:175,1
    - Dst: QuantLib::validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:177,1
    - Dst: QuantLib::unsafeSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 180
    functionName: QuantLib::sabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::rate
    - QuantLib::unsafeSabrVolatility
    - QuantLib::validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real sabrVolatility(Rate strike,\n                        Rate forward,\n
      \                       Time expiryTime,\n                        Real alpha,\n
      \                       Real beta,\n                        Real nu,\n                        Real
      rho,\n                        VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:191,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:192,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:192,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:193,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:194,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:195,1
    - Dst: QuantLib::validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:197,1
    - Dst: QuantLib::unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 9
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    - shift
    - volatilityType
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: QuantLib::shiftedSabrVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::unsafeShiftedSabrVolatility
    - QuantLib::io::rate
    - QuantLib::validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real shiftedSabrVolatility(Rate strike,\n                               Rate
      forward,\n                               Time expiryTime,\n                               Real
      alpha,\n                               Real beta,\n                               Real
      nu,\n                               Real rho,\n                               Real
      shift,\n                               VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: QuantLib::y
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 4
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real y(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: QuantLib::Dint
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::squared
    - QuantLib::y
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Dint(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: QuantLib::D
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::y
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real D(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::omega0
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Dint
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real omega0(Real k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: taylorExpansion
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - squared
    - std::log
    - std::pow
    - taylorExpansion
    - Dint
    - D
    - omega0
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:246,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 252
    functionName: QuantLib::taylorExpansion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real taylorExpansion(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: QuantLib::y
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 6
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real y(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:211,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:212,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: QuantLib::Dint
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::squared
    - QuantLib::y
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real Dint(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:217,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: QuantLib::y
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: QuantLib::D
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::y
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real D(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    - Dst: QuantLib::Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::omega0
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Dint
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real omega0(Real k) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:229,1
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: Dint
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:230,1
    - Dst: omega0
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: D
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:231,1
    - Dst: taylorExpansion
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: operator()(Real k) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - squared
    - std::log
    - std::pow
    - taylorExpansion
    - Dint
    - D
    - omega0
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:243,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:245,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:246,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 252
    functionName: QuantLib::taylorExpansion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real taylorExpansion(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::v
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - strike
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Rate
    - Rate
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 267
    functionName: QuantLib::sabrFlochKennedyVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::v
    linkageType: ''
    returnType: Real
    signature: "Real sabrFlochKennedyVolatility(Rate strike,\n                                Rate
      forward,\n                                Time expiryTime,\n                                Real
      alpha,\n                                Real beta,\n                                Real
      nu,\n                                Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::tools::cubic_roots
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:275,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - c1
    - c2
    - c3
    - c4
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionName: QuantLib::smallest_positive_root
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - boost::math::tools::cubic_roots
    - std::isnan
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real smallest_positive_root(Real c1, Real c2, Real c3, Real c4)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::tools::cubic_roots
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:275,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - c1
    - c2
    - c3
    - c4
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionName: QuantLib::smallest_positive_root
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 1
    functionsReached:
    - boost::math::tools::cubic_roots
    - std::isnan
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real smallest_positive_root(Real c1, Real c2, Real c3, Real c4)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:304,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:305,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:322,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:325,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:326,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:329,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:332,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:338,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:338,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:339,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:341,1
    - Dst: QuantLib::smallest_positive_root
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:344,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:353,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:354,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:358,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:362,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:365,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:371,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:372,1
    - Dst: std::pow
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:374,1
    - Dst: QuantLib::smallest_positive_root
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:377,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:383,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:383,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 11
    argNames:
    - k_m
    - vol_m
    - k_0
    - vol_0
    - k_p
    - vol_p
    - forward
    - expiryTime
    - beta
    - shift
    - volatilityType
    argTypes:
    - Real
    - Volatility
    - Real
    - Volatility
    - Real
    - Volatility
    - Rate
    - Time
    - Real
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 289
    functionDepth: 2
    functionLinenumber: 289
    functionLinenumberEnd: 385
    functionName: QuantLib::sabrGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - Integer
    - QL_FAIL
    - std::pow
    - QuantLib::Ridder::sign
    - std::sqrt
    - QuantLib::squared
    - QuantLib::smallest_positive_root
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: "std::array<Real, 4> sabrGuess(Real k_m, Volatility vol_m,\n                                  Real
      k_0, Volatility vol_0,\n                                  Real k_p, Volatility
      vol_p,\n                                  Rate forward,\n                                  Time
      expiryTime,\n                                  Real beta,\n                                  Real
      shift,\n                                  VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/sabr.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 398
    functionName: QuantLib::sabrGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabr.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: "std::array<Real, 4> sabrGuess(Real, Volatility,\n                                  Real,
      Volatility,\n                                  Real, Volatility,\n                                  Rate,\n
      \                                 Time,\n                                  Real,\n
      \                                 Real,\n                                  VolatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '&moneyGrid() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &moneyGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '&strikeGrid() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &strikeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '&callPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &callPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::SmileSectionUtils::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '&moneyGrid() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &moneyGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '&strikeGrid() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &strikeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '&callPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &callPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::SmileSectionUtils::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' d'
    - vol
    - ' dc'
    - ' referenceDate'
    - atmLevel
    - type
    - shift
    argTypes:
    - Date
    - Volatility
    - DayCounter
    - Date
    - Real
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::FlatSmileSection::FlatSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FlatSmileSection::FlatSmileSection(const Date& d,\n                                       Volatility
      vol,\n                                       const DayCounter& dc,\n                                       const
      Date& referenceDate,\n                                       Real atmLevel,\n
      \                                      VolatilityType type,\n                                       Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - exerciseTime
    - vol
    - ' dc'
    - atmLevel
    - type
    - shift
    argTypes:
    - Time
    - Volatility
    - DayCounter
    - Real
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::FlatSmileSection::FlatSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FlatSmileSection::FlatSmileSection(Time exerciseTime,\n                                       Volatility
      vol,\n                                       const DayCounter& dc,\n                                       Real
      atmLevel,\n                                       VolatilityType type,\n                                       Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' d'
    - vol
    - ' dc'
    - ' referenceDate'
    - atmLevel
    - type
    - shift
    argTypes:
    - Date
    - Volatility
    - DayCounter
    - Date
    - Real
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::FlatSmileSection::FlatSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FlatSmileSection::FlatSmileSection(const Date& d,\n                                       Volatility
      vol,\n                                       const DayCounter& dc,\n                                       const
      Date& referenceDate,\n                                       Real atmLevel,\n
      \                                      VolatilityType type,\n                                       Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - exerciseTime
    - vol
    - ' dc'
    - atmLevel
    - type
    - shift
    argTypes:
    - Time
    - Volatility
    - DayCounter
    - Real
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::FlatSmileSection::FlatSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FlatSmileSection::FlatSmileSection(Time exerciseTime,\n                                       Volatility
      vol,\n                                       const DayCounter& dc,\n                                       Real
      atmLevel,\n                                       VolatilityType type,\n                                       Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Gaussian1dSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Gaussian1dSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Gaussian1dSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Gaussian1dSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::SpreadedSmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::SpreadedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::SpreadedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::SpreadedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::atmLevel
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: '& SpreadedSmileSection::exerciseDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSmileSection::exerciseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedSmileSection::exerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: '& SpreadedSmileSection::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & SpreadedSmileSection::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: '& SpreadedSmileSection::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSmileSection::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::SpreadedSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedSmileSection::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSmileSection::shift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::SpreadedSmileSection::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::SpreadedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::SpreadedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::SpreadedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::atmLevel
    linkageType: ''
    returnType: Real
    signature: Real SpreadedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exerciseDate
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: '& SpreadedSmileSection::exerciseDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSmileSection::exerciseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedSmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::exerciseTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedSmileSection::exerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: '& SpreadedSmileSection::dayCounter() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & SpreadedSmileSection::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: '& SpreadedSmileSection::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSmileSection::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::SpreadedSmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedSmileSection::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedSmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSmileSection::shift
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSmileSection::shift() const
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:32,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:33,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:37,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:46,1
    - Dst: SmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:48,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:68,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:69,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:70,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:72,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:75,1
    - Dst: SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:77,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:80,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:81,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:87,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:88,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:88,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:89,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:89,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:91,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:93,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:93,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:99,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:100,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:100,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:101,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:102,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:102,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:105,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:106,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:107,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:108,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:109,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:109,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:118,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:122,1
    - Dst: SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:122,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:127,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:130,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:153,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:155,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:156,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:164,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:165,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:174,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:175,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:175,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:176,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:181,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:182,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:182,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:183,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:183,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:184,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:190,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 86
    argCount: 4
    argNames:
    - section
    - moneynessGrid
    - atm
    - deleteArbitragePoints
    argTypes:
    - SmileSection
    - std::vector<Real>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 195
    functionName: QuantLib::SmileSectionUtils::SmileSectionUtils
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached:
    - close
    - Real
    - std::vector<Real>::size
    - SmileSection::shift
    - begin
    - SmileSection::minStrike
    - std::vector<Real>::empty
    - QuantLib::SmileSectionUtils::af
    - size
    - std::upper_bound
    - SmileSection::maxStrike
    - Null<Real>
    - std::vector<Real>
    - push_back
    - end
    - SmileSection::optionPrice
    - QL_REQUIRE
    - SmileSection::atmLevel
    - erase
    - SmileSection::volatilityType
    linkageType: ''
    returnType: void
    signature: "void SmileSectionUtils::SmileSectionUtils(const SmileSection &section,\n
      \                                        const std::vector<Real> &moneynessGrid,\n
      \                                        const Real atm,\n                                         const
      bool deleteArbitragePoints)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::SmileSectionUtils::arbitragefreeRegion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> SmileSectionUtils::arbitragefreeRegion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::SmileSectionUtils::arbitragefreeIndices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<Size, Size>
    signature: std::pair<Size, Size> SmileSectionUtils::arbitragefreeIndices() const
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - i0
    - i
    - i1
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 217
    functionName: QuantLib::SmileSectionUtils::af
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool SmileSectionUtils::af(const Size i0, const Size i,\n                               const
      Size i1) const"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:32,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:33,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:37,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:46,1
    - Dst: SmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:48,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:68,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:69,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:70,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:72,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:75,1
    - Dst: SmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:77,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:80,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:81,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:86,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:87,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:88,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:88,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:89,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:89,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:90,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:91,1
    - Dst: close
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:93,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:93,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:99,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:100,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:100,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:101,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:102,1
    - Dst: SmileSection::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:102,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:105,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:106,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:106,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:107,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:108,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:109,1
    - Dst: SmileSection::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:109,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:117,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:118,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:122,1
    - Dst: SmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:122,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:126,1
    - Dst: SmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:127,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:130,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:153,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:155,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:156,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:164,1
    - Dst: QuantLib::SmileSectionUtils::af
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:165,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:174,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:174,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:175,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:175,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:176,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:181,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:182,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:182,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:183,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:183,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:184,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp:190,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 86
    argCount: 4
    argNames:
    - section
    - moneynessGrid
    - atm
    - deleteArbitragePoints
    argTypes:
    - SmileSection
    - std::vector<Real>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 195
    functionName: QuantLib::SmileSectionUtils::SmileSectionUtils
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached:
    - close
    - Real
    - std::vector<Real>::size
    - SmileSection::shift
    - begin
    - SmileSection::minStrike
    - std::vector<Real>::empty
    - QuantLib::SmileSectionUtils::af
    - size
    - std::upper_bound
    - SmileSection::maxStrike
    - Null<Real>
    - std::vector<Real>
    - push_back
    - end
    - SmileSection::optionPrice
    - QL_REQUIRE
    - SmileSection::atmLevel
    - erase
    - SmileSection::volatilityType
    linkageType: ''
    returnType: void
    signature: "void SmileSectionUtils::SmileSectionUtils(const SmileSection &section,\n
      \                                        const std::vector<Real> &moneynessGrid,\n
      \                                        const Real atm,\n                                         const
      bool deleteArbitragePoints)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: QuantLib::SmileSectionUtils::arbitragefreeRegion
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> SmileSectionUtils::arbitragefreeRegion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: QuantLib::SmileSectionUtils::arbitragefreeIndices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<Size, Size>
    signature: std::pair<Size, Size> SmileSectionUtils::arbitragefreeIndices() const
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - i0
    - i
    - i1
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 217
    functionName: QuantLib::SmileSectionUtils::af
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesectionutils.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool SmileSectionUtils::af(const Size i0, const Size i,\n                               const
      Size i1) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maximumValue
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::AbcdFunction::maximumVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - maximumValue
    linkageType: ''
    returnType: Real
    signature: Real maximumVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AbcdFunction::shortTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortTermVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: longTermValue
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::AbcdFunction::longTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - longTermValue
    linkageType: ''
    returnType: Real
    signature: Real longTermVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdFunction::volatility
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - u
    - a
    - b
    - c
    - d
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::abcdBlackVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::volatility
    linkageType: ''
    returnType: Real
    signature: Real abcdBlackVolatility(Time u, Real a, Real b, Real c, Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maximumValue
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::AbcdFunction::maximumVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - maximumValue
    linkageType: ''
    returnType: Real
    signature: Real maximumVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::AbcdFunction::shortTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real shortTermVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: longTermValue
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::AbcdFunction::longTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - longTermValue
    linkageType: ''
    returnType: Real
    signature: Real longTermVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AbcdFunction::volatility
      Src: /src/quantlib/ql/termstructures/volatility/abcd.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - u
    - a
    - b
    - c
    - d
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::abcdBlackVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcd.hpp
    functionUses: 0
    functionsReached:
    - AbcdFunction::volatility
    linkageType: ''
    returnType: Real
    signature: Real abcdBlackVolatility(Time u, Real a, Real b, Real c, Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FlatSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::minStrike () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FlatSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::maxStrike () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FlatSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FlatSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Volatility
    signature: Volatility FlatSmileSection::volatilityImpl(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FlatSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::minStrike () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::FlatSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::maxStrike () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FlatSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FlatSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FlatSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/flatsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Volatility
    signature: Volatility FlatSmileSection::volatilityImpl(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::SabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::SabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::SabrSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SabrSmileSection::beta
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SabrSmileSection::nu
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::SabrSmileSection::rho
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::SabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::SabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::SabrSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SabrSmileSection::beta
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SabrSmileSection::nu
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::SabrSmileSection::rho
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:28,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - underlyingSection
    - spread
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::SpreadedSmileSection::SpreadedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedSmileSection::SpreadedSmileSection(ext::shared_ptr<SmileSection>
      underlyingSection,\n                                               Handle<Quote>
      spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:34,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::SpreadedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility SpreadedSmileSection::volatilityImpl(Rate k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:28,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - underlyingSection
    - spread
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::SpreadedSmileSection::SpreadedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedSmileSection::SpreadedSmileSection(ext::shared_ptr<SmileSection>
      underlyingSection,\n                                               Handle<Quote>
      spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:34,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::SpreadedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/spreadedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility SpreadedSmileSection::volatilityImpl(Rate k) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:30,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:31,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:32,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:33,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:33,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:34,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ' source'
    - atm
    - recenterSmile
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 38
    functionName: QuantLib::AtmAdjustedSmileSection::AtmAdjustedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::atmLevel
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void AtmAdjustedSmileSection::AtmAdjustedSmileSection(const ext::shared_ptr<SmileSection>&
      source,\n                                                     const Real atm,\n
      \                                                    const bool recenterSmile)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::AtmAdjustedSmileSection::adjustedStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::adjustedStrike(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:45,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::AtmAdjustedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - variance
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::varianceImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:49,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AtmAdjustedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:30,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:31,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:32,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:33,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:33,1
    - Dst: QuantLib::AtmAdjustedSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:34,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ' source'
    - atm
    - recenterSmile
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 38
    functionName: QuantLib::AtmAdjustedSmileSection::AtmAdjustedSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::atmLevel
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void AtmAdjustedSmileSection::AtmAdjustedSmileSection(const ext::shared_ptr<SmileSection>&
      source,\n                                                     const Real atm,\n
      \                                                    const bool recenterSmile)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::AtmAdjustedSmileSection::adjustedStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::adjustedStrike(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:45,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::AtmAdjustedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - variance
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::varianceImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:49,1
    - Dst: QuantLib::AtmAdjustedSmileSection::adjustedStrike
      Src: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AtmAdjustedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmadjustedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - QuantLib::AtmAdjustedSmileSection::adjustedStrike
    linkageType: ''
    returnType: Real
    signature: Real AtmAdjustedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:32,1
    - Dst: QuantLib::SabrSmileSection::initialise
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - ' sabrParams'
    - shift
    - volatilityType
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionName: QuantLib::SabrSmileSection::SabrSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - QuantLib::SabrSmileSection::initialise
    linkageType: ''
    returnType: void
    signature: "void SabrSmileSection::SabrSmileSection(Time timeToExpiry,\n                                       Rate
      forward,\n                                       const std::vector<Real>& sabrParams,\n
      \                                      const Real shift,\n                                       VolatilityType
      volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrSmileSection::initialise
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' d'
    - forward
    - ' sabrParams'
    - ' referenceDate'
    - ' dc'
    - shift
    - volatilityType
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - Date
    - DayCounter
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: QuantLib::SabrSmileSection::SabrSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SabrSmileSection::initialise
    linkageType: ''
    returnType: void
    signature: "void SabrSmileSection::SabrSmileSection(const Date& d,\n                                       Rate
      forward,\n                                       const std::vector<Real>& sabrParams,\n
      \                                      const Date& referenceDate,\n                                       const
      DayCounter& dc,\n                                       const Real shift,\n
      \                                      VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:57,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:60,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:61,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' sabrParams'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionName: QuantLib::SabrSmileSection::initialise
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::io::rate
    - validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SabrSmileSection::initialise(const std::vector<Real>& sabrParams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:66,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:66,1
    - Dst: unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:67,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:68,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:68,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::SabrSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - shift
    - exerciseTime
    - std::max
    - volatilityType
    - unsafeShiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real SabrSmileSection::varianceImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:73,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:73,1
    - Dst: unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:74,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:74,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: QuantLib::SabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - shift
    - exerciseTime
    - std::max
    - volatilityType
    - unsafeShiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real SabrSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:32,1
    - Dst: QuantLib::SabrSmileSection::initialise
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - ' sabrParams'
    - shift
    - volatilityType
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 27
    functionDepth: 3
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionName: QuantLib::SabrSmileSection::SabrSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - QuantLib::SabrSmileSection::initialise
    linkageType: ''
    returnType: void
    signature: "void SabrSmileSection::SabrSmileSection(Time timeToExpiry,\n                                       Rate
      forward,\n                                       const std::vector<Real>& sabrParams,\n
      \                                      const Real shift,\n                                       VolatilityType
      volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrSmileSection::initialise
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' d'
    - forward
    - ' sabrParams'
    - ' referenceDate'
    - ' dc'
    - shift
    - volatilityType
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - Date
    - DayCounter
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: QuantLib::SabrSmileSection::SabrSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SabrSmileSection::initialise
    linkageType: ''
    returnType: void
    signature: "void SabrSmileSection::SabrSmileSection(const Date& d,\n                                       Rate
      forward,\n                                       const std::vector<Real>& sabrParams,\n
      \                                      const Date& referenceDate,\n                                       const
      DayCounter& dc,\n                                       const Real shift,\n
      \                                      VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:57,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:60,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:61,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' sabrParams'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionName: QuantLib::SabrSmileSection::initialise
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::io::rate
    - validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SabrSmileSection::initialise(const std::vector<Real>& sabrParams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:66,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:66,1
    - Dst: unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:67,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:68,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:68,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::SabrSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - shift
    - exerciseTime
    - std::max
    - volatilityType
    - unsafeShiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real SabrSmileSection::varianceImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:73,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:73,1
    - Dst: unsafeShiftedSabrVolatility
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:74,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:74,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: QuantLib::SabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/sabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - shift
    - exerciseTime
    - std::max
    - volatilityType
    - unsafeShiftedSabrVolatility
    linkageType: ''
    returnType: Real
    signature: Real SabrSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp:28,1
    - Dst: QuantLib::AtmSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' source'
    - atm
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::AtmSmileSection::AtmSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AtmSmileSection::atmLevel
    linkageType: ''
    returnType: void
    signature: void AtmSmileSection::AtmSmileSection(const ext::shared_ptr<SmileSection>&
      source, const Real atm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp:28,1
    - Dst: QuantLib::AtmSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' source'
    - atm
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::AtmSmileSection::AtmSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/atmsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::AtmSmileSection::atmLevel
    linkageType: ''
    returnType: void
    signature: void AtmSmileSection::AtmSmileSection(const ext::shared_ptr<SmileSection>&
      source, const Real atm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SmileSection()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~SmileSection() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SmileSection() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& exerciseDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::SmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::SmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::SmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::varianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::SmileSection::variance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SmileSection::varianceImpl
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::variance(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SmileSection::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 2
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility SmileSection::volatility(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:107,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: '& SmileSection::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & SmileSection::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:113,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::SmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - volatilityImpl
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::varianceImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SmileSection::SmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SmileSection()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~SmileSection() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SmileSection() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& exerciseDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & exerciseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::SmileSection::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::SmileSection::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate shift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::SmileSection::exerciseTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Time
    signature: Time exerciseTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& dayCounter() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SmileSection::varianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::SmileSection::variance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SmileSection::varianceImpl
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::variance(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SmileSection::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 2
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility SmileSection::volatility(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:107,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: '& SmileSection::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & SmileSection::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:113,1
    - Dst: QuantLib::SmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/smilesection.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: QuantLib::SmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/smilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SmileSection::exerciseTime
    - volatilityImpl
    linkageType: ''
    returnType: Real
    signature: Real SmileSection::varianceImpl(Rate strike) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:37,1
    - Dst: swapRate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: swapAnnuity
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: ext::make_shared<Gaussian1dSwaptionEngine>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:45,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ' fixingDate'
    - swapIndex
    - ' model'
    - ' dc'
    - ' swaptionEngine'
    argTypes:
    - Date
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dSwaptionEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 48
    functionName: QuantLib::Gaussian1dSmileSection::Gaussian1dSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - swapAnnuity
    - discountingTermStructure
    - swapRate
    - std::move
    - termStructure
    - Date
    - ext::make_shared<Gaussian1dSwaptionEngine>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSmileSection::Gaussian1dSmileSection(\n        const
      Date& fixingDate,\n        ext::shared_ptr<SwapIndex> swapIndex,\n        const
      ext::shared_ptr<Gaussian1dModel>& model,\n        const DayCounter& dc,\n        const
      ext::shared_ptr<Gaussian1dSwaptionEngine>& swaptionEngine)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:57,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:59,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:59,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: CapFloor::startDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: CapFloor::maturityDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: zerobond
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:64,1
    - Dst: CapFloor::maturityDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:64,1
    - Dst: ext::make_shared<Gaussian1dCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ' fixingDate'
    - iborIndex
    - ' model'
    - ' dc'
    - ' capEngine'
    argTypes:
    - Date
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 71
    functionName: QuantLib::Gaussian1dSmileSection::Gaussian1dSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - CapFloor::startDate
    - forwardRate
    - MakeCapFloor
    - tenor
    - ext::make_shared<Gaussian1dCapFloorEngine>
    - CapFloor::maturityDate
    - Null<Real>
    - dayCounter
    - std::move
    - termStructure
    - Date
    - zerobond
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSmileSection::Gaussian1dSmileSection(\n        const
      Date& fixingDate,\n        ext::shared_ptr<IborIndex> iborIndex,\n        const
      ext::shared_ptr<Gaussian1dModel>& model,\n        const DayCounter& dc,\n        const
      ext::shared_ptr<Gaussian1dCapFloorEngine>& capEngine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Gaussian1dSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Gaussian1dSmileSection::atmLevel() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MakeSwaption
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:79,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:84,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:88,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:89,1
    - Dst: CapFloor::NPV
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 95
    functionName: QuantLib::Gaussian1dSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - MakeCapFloor
    - Swaption::NPV
    - tenor
    - CapFloor::NPV
    - MakeSwaption
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dSmileSection::optionPrice(Rate strike, Option::Type
      type,\n                                         Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:101,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:102,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:103,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionName: QuantLib::Gaussian1dSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSmileSection::optionPrice
    - exerciseTime
    - blackFormulaImpliedStdDev
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real Gaussian1dSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:37,1
    - Dst: swapRate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:40,1
    - Dst: swapAnnuity
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:42,1
    - Dst: ext::make_shared<Gaussian1dSwaptionEngine>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:45,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ' fixingDate'
    - swapIndex
    - ' model'
    - ' dc'
    - ' swaptionEngine'
    argTypes:
    - Date
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dSwaptionEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 48
    functionName: QuantLib::Gaussian1dSmileSection::Gaussian1dSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - swapAnnuity
    - discountingTermStructure
    - swapRate
    - std::move
    - termStructure
    - Date
    - ext::make_shared<Gaussian1dSwaptionEngine>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSmileSection::Gaussian1dSmileSection(\n        const
      Date& fixingDate,\n        ext::shared_ptr<SwapIndex> swapIndex,\n        const
      ext::shared_ptr<Gaussian1dModel>& model,\n        const DayCounter& dc,\n        const
      ext::shared_ptr<Gaussian1dSwaptionEngine>& swaptionEngine)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:57,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:59,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:59,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: CapFloor::startDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: CapFloor::maturityDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:63,1
    - Dst: zerobond
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:64,1
    - Dst: CapFloor::maturityDate
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:64,1
    - Dst: ext::make_shared<Gaussian1dCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ' fixingDate'
    - iborIndex
    - ' model'
    - ' dc'
    - ' capEngine'
    argTypes:
    - Date
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 71
    functionName: QuantLib::Gaussian1dSmileSection::Gaussian1dSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - CapFloor::startDate
    - forwardRate
    - MakeCapFloor
    - tenor
    - ext::make_shared<Gaussian1dCapFloorEngine>
    - CapFloor::maturityDate
    - Null<Real>
    - dayCounter
    - std::move
    - termStructure
    - Date
    - zerobond
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSmileSection::Gaussian1dSmileSection(\n        const
      Date& fixingDate,\n        ext::shared_ptr<IborIndex> iborIndex,\n        const
      ext::shared_ptr<Gaussian1dModel>& model,\n        const DayCounter& dc,\n        const
      ext::shared_ptr<Gaussian1dCapFloorEngine>& capEngine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Gaussian1dSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Gaussian1dSmileSection::atmLevel() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MakeSwaption
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:79,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:84,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:88,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:89,1
    - Dst: CapFloor::NPV
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 95
    functionName: QuantLib::Gaussian1dSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 1
    functionsReached:
    - MakeCapFloor
    - Swaption::NPV
    - tenor
    - CapFloor::NPV
    - MakeSwaption
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dSmileSection::optionPrice(Rate strike, Option::Type
      type,\n                                         Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:101,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:102,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:103,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionName: QuantLib::Gaussian1dSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/gaussian1dsmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSmileSection::optionPrice
    - exerciseTime
    - blackFormulaImpliedStdDev
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real Gaussian1dSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/volatilitytype.hpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' t'
    argTypes:
    - std::ostream
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: "& operator<<(std::ostream& out,\n                                    const
      VolatilityType& t)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/volatilitytype.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    const
      VolatilityType& t)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/volatilitytype.hpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' t'
    argTypes:
    - std::ostream
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: "& operator<<(std::ostream& out,\n                                    const
      VolatilityType& t)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/volatilitytype.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    const
      VolatilityType& t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:39,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:40,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: AbcdCalibration::AbcdParametersTransformation::direct(const Array&
      x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::AbcdParametersTransformation::direct(const Array&
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:48,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: AbcdCalibration::AbcdParametersTransformation::inverse(const Array&
      x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::AbcdParametersTransformation::inverse(const
      Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:72,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:79,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:87,1
    - Dst: LevenbergMarquardt::LevenbergMarquardt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:87,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 13
    argNames:
    - ' t'
    - ' blackVols'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 99
    functionName: QuantLib::AbcdCalibration::AbcdCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::validate
    - ext::shared_ptr<OptimizationMethod>
    - std::move
    - ext::make_shared<EndCriteria>
    - size
    - LevenbergMarquardt::LevenbergMarquardt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdCalibration::AbcdCalibration(const std::vector<Real>& t,\n
      \                                    const std::vector<Real>& blackVols,\n                                     Real
      a,\n                                     Real b,\n                                     Real
      c,\n                                     Real d,\n                                     bool
      aIsFixed,\n                                     bool bIsFixed,\n                                     bool
      cIsFixed,\n                                     bool dIsFixed,\n                                     bool
      vegaWeighted,\n                                     ext::shared_ptr<EndCriteria>
      endCriteria,\n                                     ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:105,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:111,1
    - Dst: ext::shared_ptr<ParametersTransformation>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:125,1
    - Dst: AbcdParametersTransformation::AbcdParametersTransformation
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:125,1
    - Dst: inverse
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:140,1
    - Dst: ProjectedCostFunction::project
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:146,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:150,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:151,1
    - Dst: ProjectedCostFunction::include
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:152,1
    - Dst: direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:154,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:155,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 162
    functionName: QuantLib::AbcdCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - AbcdParametersTransformation::AbcdParametersTransformation
    - ProjectedCostFunction::include
    - direct
    - QuantLib::AbcdMathFunction::validate
    - ext::shared_ptr<ParametersTransformation>
    - ProjectedCostFunction::project
    - inverse
    - std::sqrt
    - minimize
    - size
    - CumulativeNormalDistribution
    - Problem::currentValue
    linkageType: ''
    returnType: void
    signature: void AbcdCalibration::compute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: abcdBlackVolatility
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::AbcdCalibration::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - abcdBlackVolatility
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:171,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:173,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:174,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' t'
    - ' blackVols'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: QuantLib::AbcdCalibration::k
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::AbcdCalibration::value
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdCalibration::k(const std::vector<Real>& t,\n
      \                                        const std::vector<Real>& blackVols)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:181,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:183,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:184,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 188
    functionName: QuantLib::AbcdCalibration::error
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::error() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:192,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:193,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:193,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdCalibration::maxError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::fabs
    - std::max
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:202,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:203,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionName: QuantLib::AbcdCalibration::errors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::errors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::AbcdCalibration::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type AbcdCalibration::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:39,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:40,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: AbcdCalibration::AbcdParametersTransformation::direct(const Array&
      x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::AbcdParametersTransformation::direct(const Array&
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:48,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: AbcdCalibration::AbcdParametersTransformation::inverse(const Array&
      x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::AbcdParametersTransformation::inverse(const
      Array& x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:71,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:72,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:78,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:79,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:87,1
    - Dst: LevenbergMarquardt::LevenbergMarquardt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:87,1
    - Dst: ext::make_shared<EndCriteria>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 13
    argNames:
    - ' t'
    - ' blackVols'
    - a
    - b
    - c
    - d
    - aIsFixed
    - bIsFixed
    - cIsFixed
    - dIsFixed
    - vegaWeighted
    - endCriteria
    - optMethod
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 99
    functionName: QuantLib::AbcdCalibration::AbcdCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdMathFunction::validate
    - ext::shared_ptr<OptimizationMethod>
    - std::move
    - ext::make_shared<EndCriteria>
    - size
    - LevenbergMarquardt::LevenbergMarquardt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AbcdCalibration::AbcdCalibration(const std::vector<Real>& t,\n
      \                                    const std::vector<Real>& blackVols,\n                                     Real
      a,\n                                     Real b,\n                                     Real
      c,\n                                     Real d,\n                                     bool
      aIsFixed,\n                                     bool bIsFixed,\n                                     bool
      cIsFixed,\n                                     bool dIsFixed,\n                                     bool
      vegaWeighted,\n                                     ext::shared_ptr<EndCriteria>
      endCriteria,\n                                     ext::shared_ptr<OptimizationMethod>
      optMethod)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:105,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:111,1
    - Dst: ext::shared_ptr<ParametersTransformation>
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:125,1
    - Dst: AbcdParametersTransformation::AbcdParametersTransformation
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:125,1
    - Dst: inverse
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:140,1
    - Dst: ProjectedCostFunction::project
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:146,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:150,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:151,1
    - Dst: ProjectedCostFunction::include
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:152,1
    - Dst: direct
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:154,1
    - Dst: QuantLib::AbcdMathFunction::validate
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:155,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 162
    functionName: QuantLib::AbcdCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - AbcdParametersTransformation::AbcdParametersTransformation
    - ProjectedCostFunction::include
    - direct
    - QuantLib::AbcdMathFunction::validate
    - ext::shared_ptr<ParametersTransformation>
    - ProjectedCostFunction::project
    - inverse
    - std::sqrt
    - minimize
    - size
    - CumulativeNormalDistribution
    - Problem::currentValue
    linkageType: ''
    returnType: void
    signature: void AbcdCalibration::compute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: abcdBlackVolatility
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::AbcdCalibration::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 4
    functionsReached:
    - abcdBlackVolatility
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:170,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:171,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:172,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:173,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:174,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' t'
    - ' blackVols'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: QuantLib::AbcdCalibration::k
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::AbcdCalibration::value
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> AbcdCalibration::k(const std::vector<Real>& t,\n
      \                                        const std::vector<Real>& blackVols)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:181,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:183,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:184,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 188
    functionName: QuantLib::AbcdCalibration::error
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::error() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:192,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:193,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:193,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdCalibration::maxError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::fabs
    - std::max
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Real
    signature: Real AbcdCalibration::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:202,1
    - Dst: QuantLib::AbcdCalibration::value
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:203,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionName: QuantLib::AbcdCalibration::errors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::sqrt
    - QuantLib::AbcdCalibration::value
    linkageType: ''
    returnType: Array
    signature: Array AbcdCalibration::errors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::AbcdCalibration::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/abcdcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type AbcdCalibration::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:41,1
    - Dst: QuantLib::KahaleSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:41,1
    - Dst: ext::make_shared<SmileSectionUtils>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:44,1
    - Dst: moneyGrid
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:47,1
    - Dst: strikeGrid
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:48,1
    - Dst: callPrices
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:49,1
    - Dst: QuantLib::KahaleSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:50,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:56,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:59,1
    - Dst: QuantLib::KahaleSmileSection::compute
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 9
    argNames:
    - ' source'
    - atm
    - interpolate
    - exponentialExtrapolation
    - deleteArbitragePoints
    - ' moneynessGrid'
    - gap
    - forcedLeftIndex
    - forcedRightIndex
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    - bool
    - bool
    - bool
    - std::vector<Real>
    - Real
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 62
    functionName: QuantLib::KahaleSmileSection::KahaleSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::volatilityType
    - moneyGrid
    - QuantLib::KahaleSmileSection::compute
    - QuantLib::KahaleSmileSection::shift
    - QuantLib::KahaleSmileSection::atmLevel
    - ext::make_shared<SmileSectionUtils>
    - strikeGrid
    - callPrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KahaleSmileSection::KahaleSmileSection(const ext::shared_ptr<SmileSection>&
      source,\n                                           const Real atm,\n                                           const
      bool interpolate,\n                                           const bool exponentialExtrapolation,\n
      \                                          const bool deleteArbitragePoints,\n
      \                                          const std::vector<Real>& moneynessGrid,\n
      \                                          const Real gap,\n                                           const
      int forcedLeftIndex,\n                                           const int forcedRightIndex)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: arbitragefreeIndices
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:66,1
    - Dst: std::vector<ext::shared_ptr<cFunction> >
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:70,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:92,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:93,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:98,1
    - Dst: sh1
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:101,1
    - Dst: cFunction::cFunction
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:103,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:109,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:110,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:122,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:151,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:160,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:160,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:161,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:161,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:162,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:163,1
    - Dst: ah
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:168,1
    - Dst: cFunction::cFunction
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:170,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:189,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:194,1
    - Dst: ext::make_shared<cFunction>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:196,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:197,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:201,1
    - Dst: sh
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:204,1
    - Dst: ext::make_shared<cFunction>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:205,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:220,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 78
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 224
    functionName: QuantLib::KahaleSmileSection::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 1
    functionsReached:
    - sh1
    - static_cast<int>
    - sh
    - ah
    - arbitragefreeIndices
    - std::vector<ext::shared_ptr<cFunction> >
    - ext::make_shared<cFunction>
    - cFunction::cFunction
    - std::log
    - begin
    - digitalOptionPrice
    - QuantLib::KahaleSmileSection::shift
    - Brent::solve
    - erase
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void KahaleSmileSection::compute()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:231,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:231,1
    - Dst: QuantLib::KahaleSmileSection::index
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:232,1
    - Dst: QuantLib::KahaleSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 241
    functionName: QuantLib::KahaleSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::KahaleSmileSection::shift
    - QuantLib::KahaleSmileSection::optionPrice
    - QuantLib::KahaleSmileSection::index
    linkageType: ''
    returnType: Real
    signature: "Real KahaleSmileSection::optionPrice(Rate strike, Option::Type type,\n
      \                                        Real discount) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:244,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:244,1
    - Dst: QuantLib::KahaleSmileSection::index
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:245,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:248,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:253,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:256,1
    - Dst: QuantLib::KahaleSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 261
    functionName: QuantLib::KahaleSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::index
    - QuantLib::KahaleSmileSection::exerciseTime
    - std::max
    - QuantLib::KahaleSmileSection::shift
    - volatility
    - blackFormulaImpliedStdDev
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real KahaleSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:266,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:267,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:268,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:269,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 270
    functionName: QuantLib::KahaleSmileSection::index
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 2
    functionsReached:
    - static_cast<int>
    - begin
    - std::upper_bound
    - std::max
    - end
    - std::min
    linkageType: ''
    returnType: Size
    signature: Size KahaleSmileSection::index(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:41,1
    - Dst: QuantLib::KahaleSmileSection::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:41,1
    - Dst: ext::make_shared<SmileSectionUtils>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:44,1
    - Dst: moneyGrid
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:47,1
    - Dst: strikeGrid
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:48,1
    - Dst: callPrices
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:49,1
    - Dst: QuantLib::KahaleSmileSection::atmLevel
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:50,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:56,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:59,1
    - Dst: QuantLib::KahaleSmileSection::compute
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 9
    argNames:
    - ' source'
    - atm
    - interpolate
    - exponentialExtrapolation
    - deleteArbitragePoints
    - ' moneynessGrid'
    - gap
    - forcedLeftIndex
    - forcedRightIndex
    argTypes:
    - ext::shared_ptr<SmileSection>
    - Real
    - bool
    - bool
    - bool
    - std::vector<Real>
    - Real
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 26
    functionDepth: 3
    functionLinenumber: 26
    functionLinenumberEnd: 62
    functionName: QuantLib::KahaleSmileSection::KahaleSmileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::volatilityType
    - moneyGrid
    - QuantLib::KahaleSmileSection::compute
    - QuantLib::KahaleSmileSection::shift
    - QuantLib::KahaleSmileSection::atmLevel
    - ext::make_shared<SmileSectionUtils>
    - strikeGrid
    - callPrices
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void KahaleSmileSection::KahaleSmileSection(const ext::shared_ptr<SmileSection>&
      source,\n                                           const Real atm,\n                                           const
      bool interpolate,\n                                           const bool exponentialExtrapolation,\n
      \                                          const bool deleteArbitragePoints,\n
      \                                          const std::vector<Real>& moneynessGrid,\n
      \                                          const Real gap,\n                                           const
      int forcedLeftIndex,\n                                           const int forcedRightIndex)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: arbitragefreeIndices
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:66,1
    - Dst: std::vector<ext::shared_ptr<cFunction> >
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:70,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:92,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:93,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:98,1
    - Dst: sh1
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:101,1
    - Dst: cFunction::cFunction
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:103,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:109,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:110,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:122,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:151,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:160,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:160,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:161,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:161,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:162,1
    - Dst: erase
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:163,1
    - Dst: ah
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:168,1
    - Dst: cFunction::cFunction
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:170,1
    - Dst: digitalOptionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:189,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:194,1
    - Dst: ext::make_shared<cFunction>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:196,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:197,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:201,1
    - Dst: sh
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:204,1
    - Dst: ext::make_shared<cFunction>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:205,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:220,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 78
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 224
    functionName: QuantLib::KahaleSmileSection::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 2
    functionsReached:
    - sh1
    - static_cast<int>
    - sh
    - ah
    - arbitragefreeIndices
    - std::vector<ext::shared_ptr<cFunction> >
    - ext::make_shared<cFunction>
    - cFunction::cFunction
    - std::log
    - begin
    - digitalOptionPrice
    - QuantLib::KahaleSmileSection::shift
    - Brent::solve
    - erase
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void KahaleSmileSection::compute()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:231,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:231,1
    - Dst: QuantLib::KahaleSmileSection::index
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:232,1
    - Dst: QuantLib::KahaleSmileSection::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 241
    functionName: QuantLib::KahaleSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::KahaleSmileSection::shift
    - QuantLib::KahaleSmileSection::optionPrice
    - QuantLib::KahaleSmileSection::index
    linkageType: ''
    returnType: Real
    signature: "Real KahaleSmileSection::optionPrice(Rate strike, Option::Type type,\n
      \                                        Real discount) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:244,1
    - Dst: QuantLib::KahaleSmileSection::shift
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:244,1
    - Dst: QuantLib::KahaleSmileSection::index
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:245,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:248,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:253,1
    - Dst: sqrt
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:256,1
    - Dst: QuantLib::KahaleSmileSection::exerciseTime
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 261
    functionName: QuantLib::KahaleSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::KahaleSmileSection::index
    - QuantLib::KahaleSmileSection::exerciseTime
    - std::max
    - QuantLib::KahaleSmileSection::shift
    - volatility
    - blackFormulaImpliedStdDev
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real KahaleSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:266,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:267,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:268,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:269,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 270
    functionName: QuantLib::KahaleSmileSection::index
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/kahalesmilesection.cpp
    functionUses: 4
    functionsReached:
    - static_cast<int>
    - begin
    - std::upper_bound
    - std::max
    - end
    - std::min
    linkageType: ''
    returnType: Size
    signature: Size KahaleSmileSection::index(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' vol'
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Handle<Quote>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::ConstantCPIVolatility::ConstantCPIVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantCPIVolatility:: ConstantCPIVolatility(const Handle<Quote>&
      vol,\n                                                  Natural settlementDays,\n
      \                                                 const Calendar& cal,\n                                                  BusinessDayConvention
      bdc,\n                                                  const DayCounter& dc,\n
      \                                                 const Period& observationLag,\n
      \                                                 Frequency frequency,\n                                                  bool
      indexIsInterpolated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - vol
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Volatility
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 47
    functionName: QuantLib::ConstantCPIVolatility::ConstantCPIVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCPIVolatility:: ConstantCPIVolatility(Volatility vol,\n
      \                                                 Natural settlementDays,\n
      \                                                 const Calendar& cal,\n                                                  BusinessDayConvention
      bdc,\n                                                  const DayCounter& dc,\n
      \                                                 const Period& observationLag,\n
      \                                                 Frequency frequency,\n                                                  bool
      indexIsInterpolated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ConstantCPIVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility ConstantCPIVolatility::volatilityImpl(Time, Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' vol'
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Handle<Quote>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::ConstantCPIVolatility::ConstantCPIVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ConstantCPIVolatility:: ConstantCPIVolatility(const Handle<Quote>&
      vol,\n                                                  Natural settlementDays,\n
      \                                                 const Calendar& cal,\n                                                  BusinessDayConvention
      bdc,\n                                                  const DayCounter& dc,\n
      \                                                 const Period& observationLag,\n
      \                                                 Frequency frequency,\n                                                  bool
      indexIsInterpolated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - vol
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Volatility
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 47
    functionName: QuantLib::ConstantCPIVolatility::ConstantCPIVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCPIVolatility:: ConstantCPIVolatility(Volatility vol,\n
      \                                                 Natural settlementDays,\n
      \                                                 const Calendar& cal,\n                                                  BusinessDayConvention
      bdc,\n                                                  const DayCounter& dc,\n
      \                                                 const Period& observationLag,\n
      \                                                 Frequency frequency,\n                                                  bool
      indexIsInterpolated)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ConstantCPIVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility ConstantCPIVolatility::volatilityImpl(Time, Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ConstantCPIVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ConstantCPIVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ConstantCPIVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ConstantCPIVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ConstantCPIVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ConstantCPIVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/constantcpivolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::CPIVolatilitySurface::CPIVolatilitySurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::CPIVolatilitySurface(Natural settlementDays,\n
      \                                              const Calendar& cal,\n                                               BusinessDayConvention
      bdc,\n                                               const DayCounter& dc,\n
      \                                              const Period& observationLag,\n
      \                                              Frequency frequency,\n                                               bool
      indexIsInterpolated)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:44,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:44,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::CPIVolatilitySurface::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - inflationPeriod
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Date
    signature: Date CPIVolatilitySurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:54,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:59,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:59,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:60,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:60,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:62,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:62,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 63
    functionName: QuantLib::CPIVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - minStrike
    - allowsExtrapolation
    - QuantLib::CPIVolatilitySurface::baseDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::checkRange(const Date& d, Rate strike,\n
      \                                         bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:73,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:73,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:74,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:74,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:76,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 77
    functionName: QuantLib::CPIVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - timeFromReference
    - maxTime
    - minStrike
    - allowsExtrapolation
    - QuantLib::CPIVolatilitySurface::baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::checkRange(Time t, Rate strike,\n                                          bool
      extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:86,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:87,1
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:90,1
    - Dst: QuantLib::CPIVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:91,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:92,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:93,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:96,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:96,1
    - Dst: QuantLib::CPIVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:97,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:98,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 80
    functionDepth: 4
    functionLinenumber: 80
    functionLinenumberEnd: 101
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - Period
    - inflationPeriod
    - volatilityImpl
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::checkRange
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::volatility(const Date& maturityDate,\n
      \                                               Rate strike,\n                                                const
      Period& obsLag,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:108,1
    - Dst: QuantLib::CPIVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::CPIVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::volatility(const Period& optionTenor,\n
      \                                               Rate strike,\n                                                const
      Period& obsLag,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - time
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility CPIVolatilitySurface::volatility(Time time, Rate strike)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:120,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:121,1
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:125,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:128,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:129,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:135,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' maturityDate'
    - ' obsLag'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 136
    functionName: QuantLib::CPIVolatilitySurface::timeFromBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - QuantLib::CPIVolatilitySurface::baseDate
    - dayCounter
    - Period
    - inflationPeriod
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Time
    signature: "Time CPIVolatilitySurface::timeFromBase(const Date& maturityDate,\n
      \                                           const Period& obsLag) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPIVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:143,1
    - Dst: QuantLib::CPIVolatilitySurface::timeFromBase
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 5
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::CPIVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPIVolatilitySurface::timeFromBase
    - QuantLib::CPIVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::totalVariance(const Date& maturityDate,\n
      \                                                  Rate strike,\n                                                   const
      Period& obsLag,\n                                                   bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:153,1
    - Dst: QuantLib::CPIVolatilitySurface::totalVariance
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' tenor'
    - strike
    - ' obsLag'
    - extrap
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: QuantLib::CPIVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPIVolatilitySurface::totalVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::totalVariance(const Period& tenor,\n
      \                                                  Rate strike,\n                                                   const
      Period& obsLag,\n                                                   bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::CPIVolatilitySurface::CPIVolatilitySurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::CPIVolatilitySurface(Natural settlementDays,\n
      \                                              const Calendar& cal,\n                                               BusinessDayConvention
      bdc,\n                                               const DayCounter& dc,\n
      \                                              const Period& observationLag,\n
      \                                              Frequency frequency,\n                                               bool
      indexIsInterpolated)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:44,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:44,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:46,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: QuantLib::CPIVolatilitySurface::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - referenceDate
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - inflationPeriod
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Date
    signature: Date CPIVolatilitySurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:54,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:56,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:59,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:59,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:60,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:60,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:62,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:62,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 63
    functionName: QuantLib::CPIVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - minStrike
    - allowsExtrapolation
    - QuantLib::CPIVolatilitySurface::baseDate
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::checkRange(const Date& d, Rate strike,\n
      \                                         bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:70,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:73,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:73,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:74,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:74,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:76,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 77
    functionName: QuantLib::CPIVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - timeFromReference
    - maxTime
    - minStrike
    - allowsExtrapolation
    - QuantLib::CPIVolatilitySurface::baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPIVolatilitySurface::checkRange(Time t, Rate strike,\n                                          bool
      extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:86,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:87,1
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:90,1
    - Dst: QuantLib::CPIVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:91,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:92,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:93,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:96,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:96,1
    - Dst: QuantLib::CPIVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:97,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:98,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 80
    functionDepth: 4
    functionLinenumber: 80
    functionLinenumberEnd: 101
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - Period
    - inflationPeriod
    - volatilityImpl
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::checkRange
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::volatility(const Date& maturityDate,\n
      \                                               Rate strike,\n                                                const
      Period& obsLag,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:108,1
    - Dst: QuantLib::CPIVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - optionDateFromTenor
    - QuantLib::CPIVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::volatility(const Period& optionTenor,\n
      \                                               Rate strike,\n                                                const
      Period& obsLag,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - time
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::CPIVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility CPIVolatilitySurface::volatility(Time time, Rate strike)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:120,1
    - Dst: QuantLib::CPIVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:121,1
    - Dst: QuantLib::CPIVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:125,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:128,1
    - Dst: QuantLib::CPIVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:129,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:135,1
    - Dst: QuantLib::CPIVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' maturityDate'
    - ' obsLag'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 136
    functionName: QuantLib::CPIVolatilitySurface::timeFromBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPIVolatilitySurface::indexIsInterpolated
    - QuantLib::CPIVolatilitySurface::baseDate
    - dayCounter
    - Period
    - inflationPeriod
    - QuantLib::CPIVolatilitySurface::observationLag
    - QuantLib::CPIVolatilitySurface::frequency
    linkageType: ''
    returnType: Time
    signature: "Time CPIVolatilitySurface::timeFromBase(const Date& maturityDate,\n
      \                                           const Period& obsLag) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPIVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:143,1
    - Dst: QuantLib::CPIVolatilitySurface::timeFromBase
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - ' obsLag'
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 5
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::CPIVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPIVolatilitySurface::timeFromBase
    - QuantLib::CPIVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::totalVariance(const Date& maturityDate,\n
      \                                                  Rate strike,\n                                                   const
      Period& obsLag,\n                                                   bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:153,1
    - Dst: QuantLib::CPIVolatilitySurface::totalVariance
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' tenor'
    - strike
    - ' obsLag'
    - extrap
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: QuantLib::CPIVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPIVolatilitySurface::totalVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CPIVolatilitySurface::totalVariance(const Period& tenor,\n
      \                                                  Rate strike,\n                                                   const
      Period& obsLag,\n                                                   bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: ~YoYOptionletVolatilitySurface() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YoYOptionletVolatilitySurface() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::YoYOptionletVolatilitySurface::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::YoYOptionletVolatilitySurface::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYOptionletVolatilitySurface::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:125,1
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYOptionletVolatilitySurface::baseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility baseLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::YoYOptionletVolatilitySurface::setBaseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setBaseLevel(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 190
    functionName: QuantLib::ConstantYoYOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::ConstantYoYOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::ConstantYoYOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: ~YoYOptionletVolatilitySurface() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YoYOptionletVolatilitySurface() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::YoYOptionletVolatilitySurface::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::YoYOptionletVolatilitySurface::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::YoYOptionletVolatilitySurface::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:125,1
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYOptionletVolatilitySurface::baseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility baseLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::YoYOptionletVolatilitySurface::setBaseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setBaseLevel(Volatility v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 190
    functionName: QuantLib::ConstantYoYOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::ConstantYoYOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: QuantLib::ConstantYoYOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 9
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    - volType
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 48
    functionName: QuantLib::YoYOptionletVolatilitySurface::YoYOptionletVolatilitySurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::\n    YoYOptionletVolatilitySurface(Natural
      settlementDays,\n                                  const Calendar &cal,\n                                  BusinessDayConvention
      bdc,\n                                  const DayCounter& dc,\n                                  const
      Period& observationLag,\n                                  Frequency frequency,\n
      \                                 bool indexIsInterpolated,\n                                  VolatilityType
      volType,\n                                  Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:59,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:59,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 64
    functionName: QuantLib::YoYOptionletVolatilitySurface::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - inflationPeriod
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Date
    signature: Date YoYOptionletVolatilitySurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:69,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:74,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:74,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:75,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:75,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:77,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:77,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 67
    functionDepth: 3
    functionLinenumber: 67
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYOptionletVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - minStrike
    - allowsExtrapolation
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::checkRange(const Date& d, Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:88,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:88,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:89,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:89,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:91,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::YoYOptionletVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - timeFromReference
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - maxTime
    - minStrike
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::checkRange(Time t, Rate strike,\n
      \                                           bool extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:102,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:103,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:106,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:107,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:108,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:109,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:111,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:111,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:112,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:113,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 95
    functionDepth: 4
    functionLinenumber: 95
    functionLinenumberEnd: 116
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - QuantLib::YoYOptionletVolatilitySurface::checkRange
    - Period
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - inflationPeriod
    - volatilityImpl
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::volatility(const Date& maturityDate,\n
      \                                             Rate strike,\n                                              const
      Period &obsLag,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:124,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::YoYOptionletVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::volatility(const Period&
      optionTenor,\n                                              Rate strike,\n                                              const
      Period &obsLag,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - time
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility YoYOptionletVolatilitySurface::volatility(Time time, Rate
      strike) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:138,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:139,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:143,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:146,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:147,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:153,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - maturityDate
    - ' obsLag'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 133
    functionDepth: 3
    functionLinenumber: 133
    functionLinenumberEnd: 154
    functionName: QuantLib::YoYOptionletVolatilitySurface::timeFromBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - dayCounter
    - Period
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - inflationPeriod
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Time
    signature: "Time YoYOptionletVolatilitySurface::timeFromBase(const Date &maturityDate,\n
      \                                               const Period& obsLag) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYOptionletVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:163,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::timeFromBase
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 157
    functionDepth: 5
    functionLinenumber: 157
    functionLinenumberEnd: 166
    functionName: QuantLib::YoYOptionletVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::timeFromBase
    - QuantLib::YoYOptionletVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::totalVariance(const Date&
      maturityDate,\n                                                 Rate strike,\n
      \                                                const Period &obsLag,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:174,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::totalVariance
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' tenor'
    - strike
    - obsLag
    - extrap
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 176
    functionName: QuantLib::YoYOptionletVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::totalVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::totalVariance(const Period&
      tenor,\n                                                 Rate strike,\n                                                 const
      Period &obsLag,\n                                                 bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - v
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - observationLag
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - volType
    - displacement
    argTypes:
    - Volatility
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 200
    functionName: QuantLib::ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantYoYOptionletVolatility::\n    ConstantYoYOptionletVolatility(const
      Volatility v,\n                                   Natural settlementDays,\n
      \                                  const Calendar& cal,\n                                   BusinessDayConvention
      bdc,\n                                   const DayCounter& dc,\n                                   const
      Period &observationLag,\n                                   Frequency frequency,\n
      \                                  bool indexIsInterpolated,\n                                   Rate
      minStrike,\n                                   Rate maxStrike,\n                                   VolatilityType
      volType,\n                                   Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - v
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - volType
    - displacement
    argTypes:
    - Handle<Quote>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 223
    functionName: QuantLib::ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility(Handle<Quote>
      v,\n                                                                   Natural
      settlementDays,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   const
      DayCounter& dc,\n                                                                   const
      Period& observationLag,\n                                                                   Frequency
      frequency,\n                                                                   bool
      indexIsInterpolated,\n                                                                   Rate
      minStrike,\n                                                                   Rate
      maxStrike,\n                                                                   VolatilityType
      volType,\n                                                                   Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: QuantLib::ConstantYoYOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility ConstantYoYOptionletVolatility::volatilityImpl(Time, Rate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 9
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    - volType
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 48
    functionName: QuantLib::YoYOptionletVolatilitySurface::YoYOptionletVolatilitySurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::\n    YoYOptionletVolatilitySurface(Natural
      settlementDays,\n                                  const Calendar &cal,\n                                  BusinessDayConvention
      bdc,\n                                  const DayCounter& dc,\n                                  const
      Period& observationLag,\n                                  Frequency frequency,\n
      \                                 bool indexIsInterpolated,\n                                  VolatilityType
      volType,\n                                  Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:59,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:59,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:61,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 64
    functionName: QuantLib::YoYOptionletVolatilitySurface::baseDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - referenceDate
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - inflationPeriod
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Date
    signature: Date YoYOptionletVolatilitySurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:69,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:71,1
    - Dst: maxDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:74,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:74,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:75,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:75,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:77,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:77,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 67
    functionDepth: 3
    functionLinenumber: 67
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYOptionletVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - minStrike
    - allowsExtrapolation
    - maxDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::checkRange(const Date& d, Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:85,1
    - Dst: maxTime
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:88,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:88,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:89,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:89,1
    - Dst: minStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:91,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:91,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::YoYOptionletVolatilitySurface::checkRange
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - timeFromReference
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - maxTime
    - minStrike
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletVolatilitySurface::checkRange(Time t, Rate strike,\n
      \                                           bool extrapolate) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:102,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:103,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:106,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:107,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:108,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:109,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:111,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:111,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::checkRange
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:112,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:113,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 95
    functionDepth: 4
    functionLinenumber: 95
    functionLinenumberEnd: 116
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - QuantLib::YoYOptionletVolatilitySurface::checkRange
    - Period
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - inflationPeriod
    - volatilityImpl
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::volatility(const Date& maturityDate,\n
      \                                             Rate strike,\n                                              const
      Period &obsLag,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:124,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - optionDateFromTenor
    - QuantLib::YoYOptionletVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::volatility(const Period&
      optionTenor,\n                                              Rate strike,\n                                              const
      Period &obsLag,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - time
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::YoYOptionletVolatilitySurface::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 3
    functionsReached:
    - volatilityImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility YoYOptionletVolatilitySurface::volatility(Time time, Rate
      strike) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:138,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::observationLag
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:139,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:143,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:146,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::frequency
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:147,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:153,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::baseDate
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - maturityDate
    - ' obsLag'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 133
    functionDepth: 3
    functionLinenumber: 133
    functionLinenumberEnd: 154
    functionName: QuantLib::YoYOptionletVolatilitySurface::timeFromBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::frequency
    - dayCounter
    - Period
    - QuantLib::YoYOptionletVolatilitySurface::observationLag
    - QuantLib::YoYOptionletVolatilitySurface::baseDate
    - inflationPeriod
    - QuantLib::YoYOptionletVolatilitySurface::indexIsInterpolated
    linkageType: ''
    returnType: Time
    signature: "Time YoYOptionletVolatilitySurface::timeFromBase(const Date &maturityDate,\n
      \                                               const Period& obsLag) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYOptionletVolatilitySurface::volatility
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:163,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::timeFromBase
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' maturityDate'
    - strike
    - obsLag
    - extrapolate
    argTypes:
    - Date
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 157
    functionDepth: 5
    functionLinenumber: 157
    functionLinenumberEnd: 166
    functionName: QuantLib::YoYOptionletVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::timeFromBase
    - QuantLib::YoYOptionletVolatilitySurface::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::totalVariance(const Date&
      maturityDate,\n                                                 Rate strike,\n
      \                                                const Period &obsLag,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:174,1
    - Dst: QuantLib::YoYOptionletVolatilitySurface::totalVariance
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' tenor'
    - strike
    - obsLag
    - extrap
    argTypes:
    - Period
    - Rate
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 176
    functionName: QuantLib::YoYOptionletVolatilitySurface::totalVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYOptionletVolatilitySurface::totalVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility YoYOptionletVolatilitySurface::totalVariance(const Period&
      tenor,\n                                                 Rate strike,\n                                                 const
      Period &obsLag,\n                                                 bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - v
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - observationLag
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - volType
    - displacement
    argTypes:
    - Volatility
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 200
    functionName: QuantLib::ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantYoYOptionletVolatility::\n    ConstantYoYOptionletVolatility(const
      Volatility v,\n                                   Natural settlementDays,\n
      \                                  const Calendar& cal,\n                                   BusinessDayConvention
      bdc,\n                                   const DayCounter& dc,\n                                   const
      Period &observationLag,\n                                   Frequency frequency,\n
      \                                  bool indexIsInterpolated,\n                                   Rate
      minStrike,\n                                   Rate maxStrike,\n                                   VolatilityType
      volType,\n                                   Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - v
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' observationLag'
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - volType
    - displacement
    argTypes:
    - Handle<Quote>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 223
    functionName: QuantLib::ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility(Handle<Quote>
      v,\n                                                                   Natural
      settlementDays,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   const
      DayCounter& dc,\n                                                                   const
      Period& observationLag,\n                                                                   Frequency
      frequency,\n                                                                   bool
      indexIsInterpolated,\n                                                                   Rate
      minStrike,\n                                                                   Rate
      maxStrike,\n                                                                   VolatilityType
      volType,\n                                                                   Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: QuantLib::ConstantYoYOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/yoyinflationoptionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility ConstantYoYOptionletVolatility::volatilityImpl(Time, Rate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::CPIVolatilitySurface::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::CPIVolatilitySurface::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CPIVolatilitySurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp:111,1
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::CPIVolatilitySurface::baseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility baseLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::CPIVolatilitySurface::observationLag
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::CPIVolatilitySurface::frequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CPIVolatilitySurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp:111,1
    - Dst: Null<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::CPIVolatilitySurface::baseLevel
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/inflation/cpivolatilitystructure.hpp
    functionUses: 0
    functionsReached:
    - Null<Volatility>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: Volatility baseLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termVolSurface
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:39,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:40,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:41,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:42,1
    - Dst: displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:43,1
    - Dst: optionletFrequency
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:44,1
    - Dst: termVolSurface
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:46,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' optionletStripper1'
    - ' atmCapFloorTermVolCurve'
    argTypes:
    - ext::shared_ptr<OptionletStripper1>
    - Handle<CapFloorTermVolCurve>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 55
    functionName: QuantLib::OptionletStripper2::OptionletStripper2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - optionletFrequency
    - iborIndex
    - optionTenors
    - dayCounter
    - termVolSurface
    - volatilityType
    - registerWith
    - displacement
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper2::OptionletStripper2(\n        const ext::shared_ptr<OptionletStripper1>&
      optionletStripper1,\n        const Handle<CapFloorTermVolCurve>& atmCapFloorTermVolCurve)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionletFixingDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:60,1
    - Dst: optionletPaymentDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:61,1
    - Dst: optionletAccrualPeriods
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:62,1
    - Dst: optionletFixingTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:63,1
    - Dst: atmOptionletRates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:65,1
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:66,1
    - Dst: optionletVolatilities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:67,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:72,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:74,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:77,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:80,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:79,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:82,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:85,1
    - Dst: atmRate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:88,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:88,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:89,1
    - Dst: QuantLib::OptionletStripper2::spreadsVolImplied
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:92,1
    - Dst: StrippedOptionletAdapter::enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:99,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:100,1
    - Dst: StrippedOptionletAdapter::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:101,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:110,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:113,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 121
    functionName: QuantLib::OptionletStripper2::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - optionletPaymentDates
    - optionletFixingTimes
    - BlackCapFloorEngine::BlackCapFloorEngine
    - NPV
    - StrippedOptionletAdapter::volatility
    - optionletVolatilities
    - floatingLeg
    - optionTenors
    - Null<Rate>
    - atmOptionletRates
    - begin
    - optionTimes
    - size
    - MakeCapFloor
    - atmRate
    - optionletFixingDates
    - optionletAccrualPeriods
    - forwardingTermStructure
    - end
    - insert
    - std::lower_bound
    - StrippedOptionletAdapter::enableExtrapolation
    - QuantLib::OptionletStripper2::spreadsVolImplied
    - optionletStrikes
    - volatility
    linkageType: ''
    returnType: void
    signature: void OptionletStripper2::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:130,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 136
    functionName: QuantLib::OptionletStripper2::spreadsVolImplied
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 1
    functionsReached:
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> OptionletStripper2::spreadsVolImplied() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::OptionletStripper2::spreadsVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> OptionletStripper2::spreadsVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::OptionletStripper2::atmCapFloorStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> OptionletStripper2::atmCapFloorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::OptionletStripper2::atmCapFloorPrices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> OptionletStripper2::atmCapFloorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:161,1
    - Dst: StrippedOptionletAdapter::StrippedOptionletAdapter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:162,1
    - Dst: ext::shared_ptr::enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:164,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:168,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:171,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:172,1
    - Dst: SpreadedOptionletVolatility::SpreadedOptionletVolatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:170,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:176,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:177,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:174,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionletStripper1'
    - cap
    - targetValue
    argTypes:
    - ext::shared_ptr<OptionletStripper1>
    - ext::shared_ptr<CapFloor>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 180
    functionName: "OptionletStripper2::ObjectiveFunction::ObjectiveFunction(\n        const
      ext::shared_ptr<OptionletStripper1>& optionletStripper1,\n        ext::shared_ptr<CapFloor>
      cap,\n        Real targetValue)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - SpreadedOptionletVolatility::SpreadedOptionletVolatility
    - ext::shared_ptr::enableExtrapolation
    - std::move
    - Handle<OptionletVolatilityStructure>
    - BlackCapFloorEngine::BlackCapFloorEngine
    - setPricingEngine
    - StrippedOptionletAdapter::StrippedOptionletAdapter
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper2::ObjectiveFunction::ObjectiveFunction(\n        const
      ext::shared_ptr<OptionletStripper1>& optionletStripper1,\n        ext::shared_ptr<CapFloor>
      cap,\n        Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:184,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:185,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: OptionletStripper2::ObjectiveFunction::operator()(Volatility s)
      const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real OptionletStripper2::ObjectiveFunction::operator()(Volatility s)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termVolSurface
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:39,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:40,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:41,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:42,1
    - Dst: displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:43,1
    - Dst: optionletFrequency
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:44,1
    - Dst: termVolSurface
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:46,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' optionletStripper1'
    - ' atmCapFloorTermVolCurve'
    argTypes:
    - ext::shared_ptr<OptionletStripper1>
    - Handle<CapFloorTermVolCurve>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 55
    functionName: QuantLib::OptionletStripper2::OptionletStripper2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - optionletFrequency
    - iborIndex
    - optionTenors
    - dayCounter
    - termVolSurface
    - volatilityType
    - registerWith
    - displacement
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper2::OptionletStripper2(\n        const ext::shared_ptr<OptionletStripper1>&
      optionletStripper1,\n        const Handle<CapFloorTermVolCurve>& atmCapFloorTermVolCurve)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionletFixingDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:60,1
    - Dst: optionletPaymentDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:61,1
    - Dst: optionletAccrualPeriods
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:62,1
    - Dst: optionletFixingTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:63,1
    - Dst: atmOptionletRates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:65,1
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:66,1
    - Dst: optionletVolatilities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:67,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:72,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:74,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:77,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:80,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:79,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:82,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:85,1
    - Dst: atmRate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:88,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:88,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:89,1
    - Dst: QuantLib::OptionletStripper2::spreadsVolImplied
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:92,1
    - Dst: StrippedOptionletAdapter::enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:99,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:100,1
    - Dst: StrippedOptionletAdapter::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:101,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:110,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:112,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:113,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:115,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 121
    functionName: QuantLib::OptionletStripper2::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - optionletPaymentDates
    - optionletFixingTimes
    - BlackCapFloorEngine::BlackCapFloorEngine
    - NPV
    - StrippedOptionletAdapter::volatility
    - optionletVolatilities
    - floatingLeg
    - optionTenors
    - Null<Rate>
    - atmOptionletRates
    - begin
    - optionTimes
    - size
    - MakeCapFloor
    - atmRate
    - optionletFixingDates
    - optionletAccrualPeriods
    - forwardingTermStructure
    - end
    - insert
    - std::lower_bound
    - StrippedOptionletAdapter::enableExtrapolation
    - QuantLib::OptionletStripper2::spreadsVolImplied
    - optionletStrikes
    - volatility
    linkageType: ''
    returnType: void
    signature: void OptionletStripper2::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:130,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 136
    functionName: QuantLib::OptionletStripper2::spreadsVolImplied
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 2
    functionsReached:
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> OptionletStripper2::spreadsVolImplied() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::OptionletStripper2::spreadsVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> OptionletStripper2::spreadsVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::OptionletStripper2::atmCapFloorStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> OptionletStripper2::atmCapFloorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::OptionletStripper2::atmCapFloorPrices
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> OptionletStripper2::atmCapFloorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:161,1
    - Dst: StrippedOptionletAdapter::StrippedOptionletAdapter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:162,1
    - Dst: ext::shared_ptr::enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:164,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:168,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:171,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:172,1
    - Dst: SpreadedOptionletVolatility::SpreadedOptionletVolatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:170,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:176,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:177,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:174,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionletStripper1'
    - cap
    - targetValue
    argTypes:
    - ext::shared_ptr<OptionletStripper1>
    - ext::shared_ptr<CapFloor>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 180
    functionName: "OptionletStripper2::ObjectiveFunction::ObjectiveFunction(\n        const
      ext::shared_ptr<OptionletStripper1>& optionletStripper1,\n        ext::shared_ptr<CapFloor>
      cap,\n        Real targetValue)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - SpreadedOptionletVolatility::SpreadedOptionletVolatility
    - ext::shared_ptr::enableExtrapolation
    - std::move
    - Handle<OptionletVolatilityStructure>
    - BlackCapFloorEngine::BlackCapFloorEngine
    - setPricingEngine
    - StrippedOptionletAdapter::StrippedOptionletAdapter
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper2::ObjectiveFunction::ObjectiveFunction(\n        const
      ext::shared_ptr<OptionletStripper1>& optionletStripper1,\n        ext::shared_ptr<CapFloor>
      cap,\n        Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:184,1
    - Dst: setValue
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:185,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: OptionletStripper2::ObjectiveFunction::operator()(Volatility s)
      const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper2.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real OptionletStripper2::ObjectiveFunction::operator()(Volatility s)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - referenceDate
    - dates
    - capletVolCurve
    - dayCounter
    - type
    - displacement
    argTypes:
    - Date
    - std::vector< Date >
    - std::vector< Volatility >
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: QuantLib::CapletVarianceCurve::CapletVarianceCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void CapletVarianceCurve::CapletVarianceCurve(\n        const Date
      &referenceDate, const std::vector< Date > &dates,\n        const std::vector<
      Volatility > &capletVolCurve,\n        const DayCounter &dayCounter, VolatilityType
      type, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::CapletVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapletVarianceCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter CapletVarianceCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CapletVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapletVarianceCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date CapletVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::CapletVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapletVarianceCurve::minStrike
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CapletVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapletVarianceCurve::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:89,1
    - Dst: ext::make_shared<FlatSmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:90,1
    - Dst: QuantLib::CapletVarianceCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: QuantLib::CapletVarianceCurve::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapletVarianceCurve::dayCounter
    - blackVol
    - ext::make_shared<FlatSmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> CapletVarianceCurve::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::CapletVarianceCurve::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - blackVol
    linkageType: ''
    returnType: Volatility
    signature: Volatility CapletVarianceCurve::volatilityImpl(Time t, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CapletVarianceCurve::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType CapletVarianceCurve::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CapletVarianceCurve::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - referenceDate
    - dates
    - capletVolCurve
    - dayCounter
    - type
    - displacement
    argTypes:
    - Date
    - std::vector< Date >
    - std::vector< Volatility >
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: QuantLib::CapletVarianceCurve::CapletVarianceCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void CapletVarianceCurve::CapletVarianceCurve(\n        const Date
      &referenceDate, const std::vector< Date > &dates,\n        const std::vector<
      Volatility > &capletVolCurve,\n        const DayCounter &dayCounter, VolatilityType
      type, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::CapletVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::CapletVarianceCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter CapletVarianceCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::CapletVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CapletVarianceCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date CapletVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::CapletVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CapletVarianceCurve::minStrike
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CapletVarianceCurve::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::CapletVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CapletVarianceCurve::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:89,1
    - Dst: ext::make_shared<FlatSmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:90,1
    - Dst: QuantLib::CapletVarianceCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: QuantLib::CapletVarianceCurve::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapletVarianceCurve::dayCounter
    - blackVol
    - ext::make_shared<FlatSmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> CapletVarianceCurve::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::CapletVarianceCurve::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - blackVol
    linkageType: ''
    returnType: Volatility
    signature: Volatility CapletVarianceCurve::volatilityImpl(Time t, Rate r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::CapletVarianceCurve::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType CapletVarianceCurve::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CapletVarianceCurve::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/capletvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapletVarianceCurve::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:82,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::StrippedOptionletAdapter::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:87,1
    - Dst: QuantLib::StrippedOptionletAdapter::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 3
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::StrippedOptionletAdapter::deepUpdate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::update
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast< OptionletStripper >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::StrippedOptionletAdapter::optionletStripper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast< OptionletStripper >
    linkageType: ''
    returnType: ext::shared_ptr< OptionletStripper >
    signature: ext::shared_ptr< OptionletStripper > StrippedOptionletAdapter::optionletStripper()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:82,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::StrippedOptionletAdapter::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:87,1
    - Dst: QuantLib::StrippedOptionletAdapter::update
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 3
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::StrippedOptionletAdapter::deepUpdate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::update
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::deepUpdate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast< OptionletStripper >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::StrippedOptionletAdapter::optionletStripper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast< OptionletStripper >
    linkageType: ''
    returnType: ext::shared_ptr< OptionletStripper >
    signature: ext::shared_ptr< OptionletStripper > StrippedOptionletAdapter::optionletStripper()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(Natural
      settlementDays,\n                                                             const
      Calendar& cal,\n                                                             BusinessDayConvention
      bdc,\n                                                             Handle<Quote>
      vol,\n                                                             const DayCounter&
      dc,\n                                                             VolatilityType
      type,\n                                                             Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - displacement
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(const
      Date& referenceDate,\n                                                             const
      Calendar& cal,\n                                                             BusinessDayConvention
      bdc,\n                                                             Handle<Quote>
      vol,\n                                                             const DayCounter&
      dc,\n                                                             VolatilityType
      type,\n                                                             Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr< Quote >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:61,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - cal
    - bdc
    - vol
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr< Quote >
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(\n        Natural
      settlementDays, const Calendar &cal, BusinessDayConvention bdc,\n        Volatility
      vol, const DayCounter &dc, VolatilityType type,\n        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr< Quote >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:70,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - referenceDate
    - cal
    - bdc
    - vol
    - dc
    - type
    - displacement
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr< Quote >
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(\n        const
      Date &referenceDate, const Calendar &cal,\n        BusinessDayConvention bdc,
      Volatility vol, const DayCounter &dc,\n        VolatilityType type, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:75,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:76,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:77,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:77,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: QuantLib::ConstantOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - value
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> ConstantOptionletVolatility::smileSectionImpl(const
      Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:82,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:83,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:84,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - ext::shared_ptr<SmileSection>
    - FlatSmileSection::FlatSmileSection
    - value
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> ConstantOptionletVolatility::smileSectionImpl(Time
      optionTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::ConstantOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantOptionletVolatility::volatilityImpl(Time,\n                                                    Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(Natural
      settlementDays,\n                                                             const
      Calendar& cal,\n                                                             BusinessDayConvention
      bdc,\n                                                             Handle<Quote>
      vol,\n                                                             const DayCounter&
      dc,\n                                                             VolatilityType
      type,\n                                                             Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - displacement
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(const
      Date& referenceDate,\n                                                             const
      Calendar& cal,\n                                                             BusinessDayConvention
      bdc,\n                                                             Handle<Quote>
      vol,\n                                                             const DayCounter&
      dc,\n                                                             VolatilityType
      type,\n                                                             Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr< Quote >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:61,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - cal
    - bdc
    - vol
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr< Quote >
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(\n        Natural
      settlementDays, const Calendar &cal, BusinessDayConvention bdc,\n        Volatility
      vol, const DayCounter &dc, VolatilityType type,\n        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr< Quote >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:70,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - referenceDate
    - cal
    - bdc
    - vol
    - dc
    - type
    - displacement
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: QuantLib::ConstantOptionletVolatility::ConstantOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr< Quote >
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ConstantOptionletVolatility::ConstantOptionletVolatility(\n        const
      Date &referenceDate, const Calendar &cal,\n        BusinessDayConvention bdc,
      Volatility vol, const DayCounter &dc,\n        VolatilityType type, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:75,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:76,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:77,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:77,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: QuantLib::ConstantOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - value
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> ConstantOptionletVolatility::smileSectionImpl(const
      Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:82,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:83,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:84,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - ext::shared_ptr<SmileSection>
    - FlatSmileSection::FlatSmileSection
    - value
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> ConstantOptionletVolatility::smileSectionImpl(Time
      optionTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::ConstantOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantOptionletVolatility::volatilityImpl(Time,\n                                                    Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:45,1
    - Dst: vector<vector<Rate>>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - iborIndex
    - ' optionletDates'
    - ' strikes'
    - v
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<IborIndex>
    - vector<Date>
    - vector<Rate>
    - vector<vector<Handle<Quote>>>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::StrippedOptionlet::StrippedOptionlet
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - vector<vector<Rate>>
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionlet::StrippedOptionlet(Natural settlementDays,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      bdc,\n                                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                                        const vector<Date>& optionletDates,\n
      \                                        const vector<Rate>& strikes,\n                                         vector<vector<Handle<Quote>>>
      v,\n                                         DayCounter dc,\n                                         VolatilityType
      type,\n                                         Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:68,1
    - Dst: QuantLib::StrippedOptionlet::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:69,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:74,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:74,1
    - Dst: QuantLib::StrippedOptionlet::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:75,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:77,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:77,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - iborIndex
    - ' optionletDates'
    - ' strikes'
    - v
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<IborIndex>
    - vector<Date>
    - vector<vector<Rate>>
    - vector<vector<Handle<Quote>>>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 82
    functionName: QuantLib::StrippedOptionlet::StrippedOptionlet
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionlet::checkInputs
    - yearFraction
    - advance
    - std::move
    - emplace_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - QuantLib::StrippedOptionlet::registerWithMarketData
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionlet::StrippedOptionlet(Natural settlementDays,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      bdc,\n                                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                                        const vector<Date>& optionletDates,\n
      \                                        const vector<vector<Rate>>& strikes,\n
      \                                        vector<vector<Handle<Quote>>> v,\n
      \                                        DayCounter dc,\n                                         VolatilityType
      type,\n                                         Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:86,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:94,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:95,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:108,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:110,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:111,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:112,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 115
    functionName: QuantLib::StrippedOptionlet::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 1
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - QuantLib::io::rate
    - QuantLib::detail::instance
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: QuantLib::StrippedOptionlet::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 1
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:125,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::StrippedOptionlet::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - value
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: '& StrippedOptionlet::optionletStrikes(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & StrippedOptionlet::optionletStrikes(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionName: "&\n    StrippedOptionlet::optionletVolatilities(Size i) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Volatility>
    signature: "vector<Volatility> &\n    StrippedOptionlet::optionletVolatilities(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: '& StrippedOptionlet::optionletFixingDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & StrippedOptionlet::optionletFixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: '& StrippedOptionlet::optionletFixingTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & StrippedOptionlet::optionletFixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::StrippedOptionlet::optionletMaturities
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size StrippedOptionlet::optionletMaturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:162,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: '& StrippedOptionlet::atmOptionletRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - fixing
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & StrippedOptionlet::atmOptionletRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::StrippedOptionlet::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter StrippedOptionlet::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::StrippedOptionlet::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar StrippedOptionlet::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::StrippedOptionlet::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural StrippedOptionlet::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::StrippedOptionlet::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention StrippedOptionlet::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::StrippedOptionlet::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType StrippedOptionlet::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::StrippedOptionlet::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real StrippedOptionlet::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:45,1
    - Dst: vector<vector<Rate>>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - iborIndex
    - ' optionletDates'
    - ' strikes'
    - v
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<IborIndex>
    - vector<Date>
    - vector<Rate>
    - vector<vector<Handle<Quote>>>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: QuantLib::StrippedOptionlet::StrippedOptionlet
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - vector<vector<Rate>>
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionlet::StrippedOptionlet(Natural settlementDays,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      bdc,\n                                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                                        const vector<Date>& optionletDates,\n
      \                                        const vector<Rate>& strikes,\n                                         vector<vector<Handle<Quote>>>
      v,\n                                         DayCounter dc,\n                                         VolatilityType
      type,\n                                         Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:68,1
    - Dst: QuantLib::StrippedOptionlet::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:69,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:74,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:74,1
    - Dst: QuantLib::StrippedOptionlet::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:75,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:77,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:77,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - iborIndex
    - ' optionletDates'
    - ' strikes'
    - v
    - dc
    - type
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<IborIndex>
    - vector<Date>
    - vector<vector<Rate>>
    - vector<vector<Handle<Quote>>>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 82
    functionName: QuantLib::StrippedOptionlet::StrippedOptionlet
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionlet::checkInputs
    - yearFraction
    - advance
    - std::move
    - emplace_back
    - registerWith
    - QuantLib::detail::instance
    - size
    - QuantLib::StrippedOptionlet::registerWithMarketData
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionlet::StrippedOptionlet(Natural settlementDays,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      bdc,\n                                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                                        const vector<Date>& optionletDates,\n
      \                                        const vector<vector<Rate>>& strikes,\n
      \                                        vector<vector<Handle<Quote>>> v,\n
      \                                        DayCounter dc,\n                                         VolatilityType
      type,\n                                         Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:86,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:91,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:94,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:95,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:108,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:110,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:111,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:112,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 115
    functionName: QuantLib::StrippedOptionlet::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - QuantLib::io::rate
    - QuantLib::detail::instance
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: QuantLib::StrippedOptionlet::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:125,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::StrippedOptionlet::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - value
    linkageType: ''
    returnType: void
    signature: void StrippedOptionlet::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:130,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: '& StrippedOptionlet::optionletStrikes(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & StrippedOptionlet::optionletStrikes(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionName: "&\n    StrippedOptionlet::optionletVolatilities(Size i) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Volatility>
    signature: "vector<Volatility> &\n    StrippedOptionlet::optionletVolatilities(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: '& StrippedOptionlet::optionletFixingDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & StrippedOptionlet::optionletFixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: '& StrippedOptionlet::optionletFixingTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & StrippedOptionlet::optionletFixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::StrippedOptionlet::optionletMaturities
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size StrippedOptionlet::optionletMaturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:162,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: '& StrippedOptionlet::atmOptionletRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - fixing
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & StrippedOptionlet::atmOptionletRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::StrippedOptionlet::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter StrippedOptionlet::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::StrippedOptionlet::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar StrippedOptionlet::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::StrippedOptionlet::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural StrippedOptionlet::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::StrippedOptionlet::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention StrippedOptionlet::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::StrippedOptionlet::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType StrippedOptionlet::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::StrippedOptionlet::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionlet.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real StrippedOptionlet::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   const Date& referenceDate,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   const Date& referenceDate,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::OptionletVolatilityStructure::OptionletVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void OptionletVolatilityStructure::OptionletVolatilityStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::ConstantOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantOptionletVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::ConstantOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::ConstantOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::ConstantOptionletVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType ConstantOptionletVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::ConstantOptionletVolatility::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::ConstantOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantOptionletVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::ConstantOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::ConstantOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::ConstantOptionletVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType ConstantOptionletVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::ConstantOptionletVolatility::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/constantoptionletvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantOptionletVolatility::displacement() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:39,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:56,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:58,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:63,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:67,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:73,1
    - Dst: vector<vector<Volatility> >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:76,1
    - Dst: vector<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:77,1
    - Dst: vector<vector<Rate> >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:78,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:79,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:80,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:81,1
    - Dst: vector<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:82,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:83,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 6
    argNames:
    - ' termVolSurface'
    - iborIndex
    - discount
    - type
    - displacement
    - optionletFrequency
    argTypes:
    - ext::shared_ptr<CapFloorTermVolSurface>
    - ext::shared_ptr<IborIndex>
    - Handle<YieldTermStructure>
    - VolatilityType
    - Real
    - ext::optional<Period>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 85
    functionName: QuantLib::OptionletStripper::OptionletStripper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - vector<Time>
    - optionTenors
    - std::move
    - ext::dynamic_pointer_cast<OvernightIndex>
    - push_back
    - vector<vector<Rate> >
    - vector<Rate>
    - registerWith
    - QuantLib::detail::instance
    - strikes
    - vector<Volatility>
    - vector<vector<Volatility> >
    - size
    - vector<Date>
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper::OptionletStripper(\n        const ext::shared_ptr<CapFloorTermVolSurface>&
      termVolSurface,\n        ext::shared_ptr<IborIndex> iborIndex,\n        Handle<YieldTermStructure>
      discount,\n        const VolatilityType type,\n        const Real displacement,\n
      \       ext::optional<Period> optionletFrequency\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionName: '& OptionletStripper::optionletStrikes(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OptionletStripper::optionletStrikes(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: "&\n    OptionletStripper::optionletVolatilities(Size i) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Volatility>
    signature: "vector<Volatility> &\n    OptionletStripper::optionletVolatilities(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& OptionletStripper::optionletFixingTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: vector<Period>
    signature: vector<Period> & OptionletStripper::optionletFixingTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& OptionletStripper::optionletFixingDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & OptionletStripper::optionletFixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& OptionletStripper::optionletFixingTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & OptionletStripper::optionletFixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::OptionletStripper::optionletMaturities
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OptionletStripper::optionletMaturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: '& OptionletStripper::optionletPaymentDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & OptionletStripper::optionletPaymentDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& OptionletStripper::optionletAccrualPeriods() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & OptionletStripper::optionletAccrualPeriods() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& OptionletStripper::atmOptionletRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OptionletStripper::atmOptionletRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::OptionletStripper::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletStripper::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter OptionletStripper::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::OptionletStripper::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletStripper::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar OptionletStripper::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::OptionletStripper::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletStripper::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural OptionletStripper::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::OptionletStripper::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletStripper::businessDayConvention
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention OptionletStripper::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::OptionletStripper::termVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CapFloorTermVolSurface>
    signature: ext::shared_ptr<CapFloorTermVolSurface> OptionletStripper::termVolSurface()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::OptionletStripper::iborIndex
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> OptionletStripper::iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::OptionletStripper::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OptionletStripper::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: QuantLib::OptionletStripper::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType OptionletStripper::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::OptionletStripper::optionletFrequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<Period>
    signature: ext::optional<Period> OptionletStripper::optionletFrequency() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:39,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:56,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:58,1
    - Dst: optionTenors
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:59,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:63,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:64,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:67,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:69,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:73,1
    - Dst: vector<vector<Volatility> >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:76,1
    - Dst: vector<Volatility>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:77,1
    - Dst: vector<vector<Rate> >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:78,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:79,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:80,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:81,1
    - Dst: vector<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:82,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:83,1
    - Dst: vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 6
    argNames:
    - ' termVolSurface'
    - iborIndex
    - discount
    - type
    - displacement
    - optionletFrequency
    argTypes:
    - ext::shared_ptr<CapFloorTermVolSurface>
    - ext::shared_ptr<IborIndex>
    - Handle<YieldTermStructure>
    - VolatilityType
    - Real
    - ext::optional<Period>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 85
    functionName: QuantLib::OptionletStripper::OptionletStripper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - vector<Time>
    - optionTenors
    - std::move
    - ext::dynamic_pointer_cast<OvernightIndex>
    - push_back
    - vector<vector<Rate> >
    - vector<Rate>
    - registerWith
    - QuantLib::detail::instance
    - strikes
    - vector<Volatility>
    - vector<vector<Volatility> >
    - size
    - vector<Date>
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper::OptionletStripper(\n        const ext::shared_ptr<CapFloorTermVolSurface>&
      termVolSurface,\n        ext::shared_ptr<IborIndex> iborIndex,\n        Handle<YieldTermStructure>
      discount,\n        const VolatilityType type,\n        const Real displacement,\n
      \       ext::optional<Period> optionletFrequency\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionName: '& OptionletStripper::optionletStrikes(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OptionletStripper::optionletStrikes(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: "&\n    OptionletStripper::optionletVolatilities(Size i) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Volatility>
    signature: "vector<Volatility> &\n    OptionletStripper::optionletVolatilities(Size
      i) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& OptionletStripper::optionletFixingTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: vector<Period>
    signature: vector<Period> & OptionletStripper::optionletFixingTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& OptionletStripper::optionletFixingDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & OptionletStripper::optionletFixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& OptionletStripper::optionletFixingTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & OptionletStripper::optionletFixingTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::OptionletStripper::optionletMaturities
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size OptionletStripper::optionletMaturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: '& OptionletStripper::optionletPaymentDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Date>
    signature: vector<Date> & OptionletStripper::optionletPaymentDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& OptionletStripper::optionletAccrualPeriods() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Time>
    signature: vector<Time> & OptionletStripper::optionletAccrualPeriods() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& OptionletStripper::atmOptionletRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OptionletStripper::atmOptionletRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::OptionletStripper::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletStripper::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter OptionletStripper::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::OptionletStripper::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletStripper::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar OptionletStripper::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::OptionletStripper::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletStripper::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural OptionletStripper::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletStripper::businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::OptionletStripper::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletStripper::businessDayConvention
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention OptionletStripper::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::OptionletStripper::termVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CapFloorTermVolSurface>
    signature: ext::shared_ptr<CapFloorTermVolSurface> OptionletStripper::termVolSurface()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::OptionletStripper::iborIndex
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> OptionletStripper::iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::OptionletStripper::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OptionletStripper::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: QuantLib::OptionletStripper::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType OptionletStripper::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::OptionletStripper::optionletFrequency
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::optional<Period>
    signature: ext::optional<Period> OptionletStripper::optionletFrequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::SpreadedOptionletVolatility::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedOptionletVolatility::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedOptionletVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::SpreadedOptionletVolatility::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedOptionletVolatility::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: '& SpreadedOptionletVolatility::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedOptionletVolatility::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::SpreadedOptionletVolatility::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedOptionletVolatility::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedOptionletVolatility::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SpreadedOptionletVolatility::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::SpreadedOptionletVolatility::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::businessDayConvention
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention SpreadedOptionletVolatility::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SpreadedOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedOptionletVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::SpreadedOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedOptionletVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::SpreadedOptionletVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedOptionletVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::SpreadedOptionletVolatility::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::displacement
    linkageType: ''
    returnType: Real
    signature: Real SpreadedOptionletVolatility::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::SpreadedOptionletVolatility::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedOptionletVolatility::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedOptionletVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedOptionletVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::SpreadedOptionletVolatility::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedOptionletVolatility::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: '& SpreadedOptionletVolatility::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedOptionletVolatility::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::SpreadedOptionletVolatility::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedOptionletVolatility::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedOptionletVolatility::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SpreadedOptionletVolatility::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::SpreadedOptionletVolatility::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::businessDayConvention
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention SpreadedOptionletVolatility::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SpreadedOptionletVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedOptionletVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::SpreadedOptionletVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedOptionletVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: QuantLib::SpreadedOptionletVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedOptionletVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedOptionletVolatility::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::SpreadedOptionletVolatility::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedOptionletVolatility::displacement
    linkageType: ''
    returnType: Real
    signature: Real SpreadedOptionletVolatility::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:34,1
    - Dst: calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:35,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:36,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:37,1
    - Dst: optionletMaturities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - ext::shared_ptr<StrippedOptionletBase>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::StrippedOptionletAdapter::StrippedOptionletAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - dayCounter
    - optionletMaturities
    - registerWith
    - calendar
    - settlementDays
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionletAdapter::StrippedOptionletAdapter(\n                const
      ext::shared_ptr<StrippedOptionletBase>& s)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:47,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:50,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:58,1
    - Dst: ext::make_shared< InterpolatedSmileSection< Cubic > >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:60,1
    - Dst: Null< Real >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:61,1
    - Dst: Cubic
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:62,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    - Dst: QuantLib::StrippedOptionletAdapter::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 64
    functionName: QuantLib::StrippedOptionletAdapter::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::displacement
    - std::vector::reserve
    - optionletStrikes
    - QuantLib::StrippedOptionletAdapter::volatilityType
    - Cubic
    - Null< Real >
    - std::sqrt
    - Actual365Fixed
    - QuantLib::StrippedOptionletAdapter::volatilityImpl
    - ext::make_shared< InterpolatedSmileSection< Cubic > >
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> StrippedOptionletAdapter::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:68,1
    - Dst: optionletFixingTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:78,1
    - Dst: LinearInterpolation::LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - length
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 80
    functionName: QuantLib::StrippedOptionletAdapter::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 1
    functionsReached:
    - calculate
    - std::vector::begin
    - begin
    - optionletFixingTimes
    - LinearInterpolation::LinearInterpolation
    - end
    linkageType: ''
    returnType: Volatility
    signature: "Volatility StrippedOptionletAdapter::volatilityImpl(Time length,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:89,1
    - Dst: optionletVolatilities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:91,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:109,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 125
    functionName: QuantLib::StrippedOptionletAdapter::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    - begin
    - ext::make_shared<LinearInterpolation>
    - end
    - optionletVolatilities
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::StrippedOptionletAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    linkageType: ''
    returnType: Rate
    signature: Rate StrippedOptionletAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::StrippedOptionletAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    linkageType: ''
    returnType: Rate
    signature: Rate StrippedOptionletAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletFixingDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::StrippedOptionletAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletFixingDates
    linkageType: ''
    returnType: Date
    signature: Date StrippedOptionletAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: QuantLib::StrippedOptionletAdapter::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType StrippedOptionletAdapter::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::StrippedOptionletAdapter::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::displacement
    linkageType: ''
    returnType: Real
    signature: Real StrippedOptionletAdapter::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:34,1
    - Dst: calendar
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:35,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:36,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:37,1
    - Dst: optionletMaturities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - ext::shared_ptr<StrippedOptionletBase>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: QuantLib::StrippedOptionletAdapter::StrippedOptionletAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - dayCounter
    - optionletMaturities
    - registerWith
    - calendar
    - settlementDays
    linkageType: ''
    returnType: void
    signature: "void StrippedOptionletAdapter::StrippedOptionletAdapter(\n                const
      ext::shared_ptr<StrippedOptionletBase>& s)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:47,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:50,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:52,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:58,1
    - Dst: ext::make_shared< InterpolatedSmileSection< Cubic > >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:60,1
    - Dst: Null< Real >
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:61,1
    - Dst: Cubic
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:62,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    - Dst: QuantLib::StrippedOptionletAdapter::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 64
    functionName: QuantLib::StrippedOptionletAdapter::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::displacement
    - std::vector::reserve
    - optionletStrikes
    - QuantLib::StrippedOptionletAdapter::volatilityType
    - Cubic
    - Null< Real >
    - std::sqrt
    - Actual365Fixed
    - QuantLib::StrippedOptionletAdapter::volatilityImpl
    - ext::make_shared< InterpolatedSmileSection< Cubic > >
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> StrippedOptionletAdapter::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:68,1
    - Dst: optionletFixingTimes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:78,1
    - Dst: LinearInterpolation::LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - length
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 80
    functionName: QuantLib::StrippedOptionletAdapter::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 2
    functionsReached:
    - calculate
    - std::vector::begin
    - begin
    - optionletFixingTimes
    - LinearInterpolation::LinearInterpolation
    - end
    linkageType: ''
    returnType: Volatility
    signature: "Volatility StrippedOptionletAdapter::volatilityImpl(Time length,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:89,1
    - Dst: optionletVolatilities
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:91,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:109,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:110,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 125
    functionName: QuantLib::StrippedOptionletAdapter::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    - begin
    - ext::make_shared<LinearInterpolation>
    - end
    - optionletVolatilities
    linkageType: ''
    returnType: void
    signature: void StrippedOptionletAdapter::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::StrippedOptionletAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    linkageType: ''
    returnType: Rate
    signature: Rate StrippedOptionletAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletStrikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::StrippedOptionletAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletStrikes
    linkageType: ''
    returnType: Rate
    signature: Rate StrippedOptionletAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionletFixingDates
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::StrippedOptionletAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 0
    functionsReached:
    - optionletFixingDates
    linkageType: ''
    returnType: Date
    signature: Date StrippedOptionletAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: QuantLib::StrippedOptionletAdapter::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType StrippedOptionletAdapter::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::StrippedOptionletAdapter::displacement
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::StrippedOptionletAdapter::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/strippedoptionletadapter.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::StrippedOptionletAdapter::displacement
    linkageType: ''
    returnType: Real
    signature: Real StrippedOptionletAdapter::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:49,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:53,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:54,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:55,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 10
    argNames:
    - ' termVolSurface'
    - ' index'
    - switchStrike
    - accuracy
    - maxIter
    - ' discount'
    - type
    - displacement
    - dontThrow
    - optionletFrequency
    argTypes:
    - ext::shared_ptr<CapFloorTermVolSurface>
    - ext::shared_ptr<IborIndex>
    - Rate
    - Real
    - Natural
    - Handle<YieldTermStructure>
    - VolatilityType
    - Real
    - bool
    - ext::optional<Period>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 59
    functionName: QuantLib::OptionletStripper1::OptionletStripper1
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Matrix
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper1::OptionletStripper1(\n        const ext::shared_ptr<CapFloorTermVolSurface>&
      termVolSurface,\n        const ext::shared_ptr<IborIndex>& index,\n        Rate
      switchStrike,\n        Real accuracy,\n        Natural maxIter,\n        const
      Handle<YieldTermStructure>& discount,\n        const VolatilityType type,\n
      \       const Real displacement,\n        bool dontThrow,\n        ext::optional<Period>
      optionletFrequency)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:64,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:65,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:68,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:66,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:71,1
    - Dst: CapFloor::lastFloatingRateCoupon
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:78,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:79,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:80,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:81,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:82,1
    - Dst: ext::shared_ptr::indexFixing
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:96,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:97,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:100,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:103,1
    - Dst: ext::make_shared<BlackCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:106,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:108,1
    - Dst: ext::make_shared<BachelierCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:111,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:113,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:116,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:129,1
    - Dst: ext::shared_ptr::setValue
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:131,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:133,1
    - Dst: ext::shared_ptr::NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:136,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:141,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:145,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:151,1
    - Dst: bachelierBlackFormulaImpliedVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:152,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:157,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:164,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:166,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:167,1
    - Dst: what
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:174,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 178
    functionName: QuantLib::OptionletStripper1::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - CapFloor::lastFloatingRateCoupon
    - yearFraction
    - dayCounter
    - bachelierBlackFormulaImpliedVol
    - ext::shared_ptr::indexFixing
    - BlackCapFloorEngine::BlackCapFloorEngine
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::make_shared<BachelierCapFloorEngine>
    - referenceDate
    - empty
    - ext::shared_ptr::setValue
    - Handle<Quote>
    - ext::make_shared<BlackCapFloorEngine>
    - MakeCapFloor
    - QuantLib::io::rate
    - QL_FAIL
    - strikes
    - ext::shared_ptr::NPV
    - forwardingTermStructure
    - SimpleQuote::SimpleQuote
    - discount
    - volatility
    - what
    - std::sqrt
    - blackFormulaImpliedStdDev
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: void
    signature: void OptionletStripper1::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: '&OptionletStripper1::capletVols() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix &OptionletStripper1::capletVols() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: '& OptionletStripper1::capFloorPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::capFloorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: '& OptionletStripper1::capFloorVolatilities() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::capFloorVolatilities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: '& OptionletStripper1::optionletPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::optionletPrices() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 204
    functionName: QuantLib::OptionletStripper1::switchStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate OptionletStripper1::switchStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:49,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:53,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:54,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:55,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 10
    argNames:
    - ' termVolSurface'
    - ' index'
    - switchStrike
    - accuracy
    - maxIter
    - ' discount'
    - type
    - displacement
    - dontThrow
    - optionletFrequency
    argTypes:
    - ext::shared_ptr<CapFloorTermVolSurface>
    - ext::shared_ptr<IborIndex>
    - Rate
    - Real
    - Natural
    - Handle<YieldTermStructure>
    - VolatilityType
    - Real
    - bool
    - ext::optional<Period>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 59
    functionName: QuantLib::OptionletStripper1::OptionletStripper1
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Matrix
    linkageType: ''
    returnType: void
    signature: "void OptionletStripper1::OptionletStripper1(\n        const ext::shared_ptr<CapFloorTermVolSurface>&
      termVolSurface,\n        const ext::shared_ptr<IborIndex>& index,\n        Rate
      switchStrike,\n        Real accuracy,\n        Natural maxIter,\n        const
      Handle<YieldTermStructure>& discount,\n        const VolatilityType type,\n
      \       const Real displacement,\n        bool dontThrow,\n        ext::optional<Period>
      optionletFrequency)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:64,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:65,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:68,1
    - Dst: BlackCapFloorEngine::BlackCapFloorEngine
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:66,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:71,1
    - Dst: CapFloor::lastFloatingRateCoupon
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:78,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:79,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:80,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:81,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:82,1
    - Dst: ext::shared_ptr::indexFixing
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:96,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:97,1
    - Dst: strikes
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:100,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:103,1
    - Dst: ext::make_shared<BlackCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:106,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:108,1
    - Dst: ext::make_shared<BachelierCapFloorEngine>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:111,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:113,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:116,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:129,1
    - Dst: ext::shared_ptr::setValue
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:131,1
    - Dst: MakeCapFloor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:133,1
    - Dst: ext::shared_ptr::NPV
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:136,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:141,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:145,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:151,1
    - Dst: bachelierBlackFormulaImpliedVol
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:152,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:157,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:164,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:166,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:167,1
    - Dst: what
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:174,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 178
    functionName: QuantLib::OptionletStripper1::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - CapFloor::lastFloatingRateCoupon
    - yearFraction
    - dayCounter
    - bachelierBlackFormulaImpliedVol
    - ext::shared_ptr::indexFixing
    - BlackCapFloorEngine::BlackCapFloorEngine
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::make_shared<BachelierCapFloorEngine>
    - referenceDate
    - empty
    - ext::shared_ptr::setValue
    - Handle<Quote>
    - ext::make_shared<BlackCapFloorEngine>
    - MakeCapFloor
    - QuantLib::io::rate
    - QL_FAIL
    - strikes
    - ext::shared_ptr::NPV
    - forwardingTermStructure
    - SimpleQuote::SimpleQuote
    - discount
    - volatility
    - what
    - std::sqrt
    - blackFormulaImpliedStdDev
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: void
    signature: void OptionletStripper1::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: '&OptionletStripper1::capletVols() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix &OptionletStripper1::capletVols() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: '& OptionletStripper1::capFloorPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::capFloorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: '& OptionletStripper1::capFloorVolatilities() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::capFloorVolatilities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: '& OptionletStripper1::optionletPrices() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix & OptionletStripper1::optionletPrices() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 204
    functionName: QuantLib::OptionletStripper1::switchStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletstripper1.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate OptionletStripper1::switchStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:30,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:31,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' baseVol'
    - spread
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::SpreadedOptionletVolatility::SpreadedOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - allowsExtrapolation
    - enableExtrapolation
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedOptionletVolatility::SpreadedOptionletVolatility(\n        const
      Handle<OptionletVolatilityStructure>& baseVol, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:39,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:40,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: QuantLib::SpreadedOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SpreadedOptionletVolatility::smileSectionImpl(const
      Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:47,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:48,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::SpreadedOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SpreadedOptionletVolatility::smileSectionImpl(Time
      optionTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:54,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::SpreadedOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedOptionletVolatility::volatilityImpl(Time t,\n                                                           Rate
      s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:30,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:31,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' baseVol'
    - spread
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::SpreadedOptionletVolatility::SpreadedOptionletVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - allowsExtrapolation
    - enableExtrapolation
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedOptionletVolatility::SpreadedOptionletVolatility(\n        const
      Handle<OptionletVolatilityStructure>& baseVol, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:39,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:40,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: QuantLib::SpreadedOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SpreadedOptionletVolatility::smileSectionImpl(const
      Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:47,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:48,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::SpreadedOptionletVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SpreadedOptionletVolatility::smileSectionImpl(Time
      optionTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:54,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::SpreadedOptionletVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/spreadedoptionletvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedOptionletVolatility::volatilityImpl(Time t,\n                                                           Rate
      s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: ~OptionletVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OptionletVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:130,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(const Period&
      optionTenor,\n                                             Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:138,1
    - Dst: QuantLib::OptionletVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::OptionletVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:145,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::smileSection
    - optionDateFromTenor
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:154,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 157
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:172,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:173,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 3
    functionsReached:
    - checkStrike
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(const Date& optionDate,\n
      \                                            Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:181,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:182,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 3
    functionsReached:
    - checkStrike
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(Time optionTime,\n
      \                                            Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:189,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' optionDate'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - checkRange
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(const
      Date& optionDate,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:196,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - checkRange
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(Time
      optionTime,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:204,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' optionDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::OptionletVolatilityStructure::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 3
    functionsReached:
    - timeFromReference
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSectionImpl(const
      Date& optionDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:210,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - strike
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: QuantLib::OptionletVolatilityStructure::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - timeFromReference
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatilityImpl(const Date&
      optionDate,\n                                                 Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: QuantLib::OptionletVolatilityStructure::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType OptionletVolatilityStructure::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: QuantLib::OptionletVolatilityStructure::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OptionletVolatilityStructure::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: ~OptionletVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~OptionletVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:130,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 4
    functionsReached:
    - optionDateFromTenor
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(const Period&
      optionTenor,\n                                             Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:138,1
    - Dst: QuantLib::OptionletVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - optionDateFromTenor
    - QuantLib::OptionletVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:145,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::smileSection
    - optionDateFromTenor
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:154,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 157
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionName: QuantLib::OptionletVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real OptionletVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                    Rate strike,\n                                                     bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:172,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:173,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 6
    functionsReached:
    - checkStrike
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(const Date& optionDate,\n
      \                                            Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:181,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:182,1
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - strike
    - extrapolate
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionName: QuantLib::OptionletVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 6
    functionsReached:
    - checkStrike
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatility(Time optionTime,\n
      \                                            Rate strike,\n                                             bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:189,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' optionDate'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - checkRange
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(const
      Date& optionDate,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:196,1
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 2
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: QuantLib::OptionletVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - checkRange
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSection(Time
      optionTime,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:204,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' optionDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::OptionletVolatilityStructure::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 6
    functionsReached:
    - timeFromReference
    - QuantLib::OptionletVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> OptionletVolatilityStructure::smileSectionImpl(const
      Date& optionDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OptionletVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:210,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - strike
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: QuantLib::OptionletVolatilityStructure::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::OptionletVolatilityStructure::volatilityImpl
    - timeFromReference
    linkageType: ''
    returnType: Volatility
    signature: "Volatility OptionletVolatilityStructure::volatilityImpl(const Date&
      optionDate,\n                                                 Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: QuantLib::OptionletVolatilityStructure::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType OptionletVolatilityStructure::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: QuantLib::OptionletVolatilityStructure::displacement
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/optionlet/optionletvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OptionletVolatilityStructure::displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:30,1
    - Dst: QuantLib::SpreadedSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:31,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:32,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' baseVol'
    - spread
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::SpreadedSwaptionVolatility::SpreadedSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::dayCounter
    - std::move
    - registerWith
    - businessDayConvention
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void SpreadedSwaptionVolatility::SpreadedSwaptionVolatility(\n        const
      Handle<SwaptionVolatilityStructure>& baseVol, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:41,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:42,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' swapT'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::SpreadedSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SpreadedSwaptionVolatility::smileSectionImpl(const
      Date& d,\n                                                 const Period& swapT)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:50,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:51,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 53
    functionName: QuantLib::SpreadedSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SpreadedSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                                 Time swapLength)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:58,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - ' p'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedSwaptionVolatility::volatilityImpl(const Date&
      d,\n                                                          const Period&
      p,\n                                                          Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:64,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - l
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedSwaptionVolatility::volatilityImpl(Time t,\n                                                          Time
      l,\n                                                          Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:30,1
    - Dst: QuantLib::SpreadedSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:31,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:32,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' baseVol'
    - spread
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::SpreadedSwaptionVolatility::SpreadedSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::dayCounter
    - std::move
    - registerWith
    - businessDayConvention
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void SpreadedSwaptionVolatility::SpreadedSwaptionVolatility(\n        const
      Handle<SwaptionVolatilityStructure>& baseVol, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:41,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:42,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' swapT'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::SpreadedSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SpreadedSwaptionVolatility::smileSectionImpl(const
      Date& d,\n                                                 const Period& swapT)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:50,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:51,1
    - Dst: SpreadedSmileSection::SpreadedSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 53
    functionName: QuantLib::SpreadedSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - SpreadedSmileSection::SpreadedSmileSection
    - smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SpreadedSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                                 Time swapLength)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:58,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - ' p'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedSwaptionVolatility::volatilityImpl(const Date&
      d,\n                                                          const Period&
      p,\n                                                          Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:64,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - l
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.cpp
    functionUses: 0
    functionsReached:
    - volatility
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SpreadedSwaptionVolatility::volatilityImpl(Time t,\n                                                          Time
      l,\n                                                          Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedSwaptionVolatility::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedSwaptionVolatility::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::SpreadedSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedSwaptionVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::SpreadedSwaptionVolatility::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedSwaptionVolatility::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& SpreadedSwaptionVolatility::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSwaptionVolatility::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedSwaptionVolatility::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedSwaptionVolatility::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::SpreadedSwaptionVolatility::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SpreadedSwaptionVolatility::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::SpreadedSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSwaptionVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::SpreadedSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSwaptionVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: '& SpreadedSwaptionVolatility::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & SpreadedSwaptionVolatility::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::SpreadedSwaptionVolatility::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: "Real SpreadedSwaptionVolatility::shiftImpl(Time optionTime,\n                                                  Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedSwaptionVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::SpreadedSwaptionVolatility::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedSwaptionVolatility::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::SpreadedSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedSwaptionVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::SpreadedSwaptionVolatility::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedSwaptionVolatility::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: '& SpreadedSwaptionVolatility::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedSwaptionVolatility::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::SpreadedSwaptionVolatility::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedSwaptionVolatility::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::SpreadedSwaptionVolatility::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SpreadedSwaptionVolatility::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::SpreadedSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSwaptionVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::SpreadedSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate SpreadedSwaptionVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: '& SpreadedSwaptionVolatility::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & SpreadedSwaptionVolatility::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: QuantLib::SpreadedSwaptionVolatility::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: "Real SpreadedSwaptionVolatility::shiftImpl(Time optionTime,\n                                                  Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedSwaptionVolatility::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::SpreadedSwaptionVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/spreadedswaptionvol.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedSwaptionVolatility::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SpreadedSwaptionVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::ConstantSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantSwaptionVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::ConstantSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::ConstantSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: '& ConstantSwaptionVolatility::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & ConstantSwaptionVolatility::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType ConstantSwaptionVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::ConstantSwaptionVolatility::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::shiftImpl(Time optionTime, Time swapLength)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::ConstantSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantSwaptionVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::ConstantSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::ConstantSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: '& ConstantSwaptionVolatility::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & ConstantSwaptionVolatility::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType ConstantSwaptionVolatility::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::ConstantSwaptionVolatility::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    linkageType: ''
    returnType: Real
    signature: Real ConstantSwaptionVolatility::shiftImpl(Time optionTime, Time swapLength)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: ObjectiveFunction2::ObjectiveFunction2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction2(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: ObjectiveFunction3::ObjectiveFunction3
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction3(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: ObjectiveFunction4::ObjectiveFunction4
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction4(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: ObjectiveFunction5::ObjectiveFunction5
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction5(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: ObjectiveFunction6::ObjectiveFunction6
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction6(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:115,1
    - Dst: ObjectiveFunction::switchErrorFunctionOnCalibrationType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: ObjectiveFunction::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    - ObjectiveFunction::switchErrorFunctionOnCalibrationType
    linkageType: ''
    returnType: Real
    signature: Real ObjectiveFunction::value(const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:120,1
    - Dst: ObjectiveFunction::switchErrorsFunctionOnCalibrationType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: ObjectiveFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    - ObjectiveFunction::switchErrorsFunctionOnCalibrationType
    linkageType: ''
    returnType: Array
    signature: Array ObjectiveFunction::values(const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:126,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:128,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:131,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:133,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:133,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:136,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 2
    functionsReached:
    - reprice
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weightedSpreadError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:143,1
    - Dst: weightedSpotNpvError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:145,1
    - Dst: weightedFwdNpvError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:147,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: ObjectiveFunction::switchErrorFunctionOnCalibrationType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - weightedSpotNpvError
    - weightedSpreadError
    - weightedFwdNpvError
    linkageType: ''
    returnType: Real
    signature: Real ObjectiveFunction::switchErrorFunctionOnCalibrationType() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weightedSpreadErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:156,1
    - Dst: weightedSpotNpvErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:158,1
    - Dst: weightedFwdNpvErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:160,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 164
    functionName: ObjectiveFunction::switchErrorsFunctionOnCalibrationType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 1
    functionsReached:
    - weightedSpotNpvErrors
    - weightedFwdNpvErrors
    - weightedSpreadErrors
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array ObjectiveFunction::switchErrorsFunctionOnCalibrationType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:174,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:174,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:177,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:179,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:179,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:182,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 185
    functionName: ObjectiveFunction2::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction2::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:193,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:194,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:195,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:197,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:198,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:201,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:203,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:204,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:206,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:207,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:210,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 212
    functionName: ObjectiveFunction3::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Array::begin
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction3::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:220,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:221,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:222,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:223,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:224,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:225,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:228,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:230,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:231,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:233,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:234,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:236,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:236,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:237,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 240
    functionName: ObjectiveFunction4::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Array::begin
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction4::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:248,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:249,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:250,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:252,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:252,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:255,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:257,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:258,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:261,1
    - Dst: volCube_::timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:262,1
    - Dst: volCube_::optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:264,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:266,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:268,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:268,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:269,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:270,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 272
    functionName: ObjectiveFunction5::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - std::exp
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - volCube_::timeFromReference
    - ext::shared_ptr::recalibration
    - Array::size
    - volCube_::optionDateFromTenor
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction5::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:280,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:281,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:282,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:284,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:284,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:287,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:289,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:290,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:293,1
    - Dst: volCube_::timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:294,1
    - Dst: volCube_::optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:295,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:296,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:298,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:301,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 303
    functionName: ObjectiveFunction6::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - std::exp
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - volCube_::timeFromReference
    - ext::shared_ptr::recalibration
    - Array::size
    - volCube_::optionDateFromTenor
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction6::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: ObjectiveFunction2::ObjectiveFunction2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction2(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: ObjectiveFunction3::ObjectiveFunction3
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction3(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: ObjectiveFunction4::ObjectiveFunction4
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction4(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - smileAndCms
    - fixedMeanReversion
    argTypes:
    - CmsMarketCalibration*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: ObjectiveFunction5::ObjectiveFunction5
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction5(CmsMarketCalibration *smileAndCms,\n                           Real
      fixedMeanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - smileAndCms
    argTypes:
    - CmsMarketCalibration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: ObjectiveFunction6::ObjectiveFunction6
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction6(CmsMarketCalibration *smileAndCms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:115,1
    - Dst: ObjectiveFunction::switchErrorFunctionOnCalibrationType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: ObjectiveFunction::value
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    - ObjectiveFunction::switchErrorFunctionOnCalibrationType
    linkageType: ''
    returnType: Real
    signature: Real ObjectiveFunction::value(const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:120,1
    - Dst: ObjectiveFunction::switchErrorsFunctionOnCalibrationType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: ObjectiveFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    - ObjectiveFunction::switchErrorsFunctionOnCalibrationType
    linkageType: ''
    returnType: Array
    signature: Array ObjectiveFunction::values(const Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:126,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:128,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:131,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:133,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:133,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:136,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: ObjectiveFunction::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 4
    functionsReached:
    - reprice
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weightedSpreadError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:143,1
    - Dst: weightedSpotNpvError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:145,1
    - Dst: weightedFwdNpvError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:147,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: ObjectiveFunction::switchErrorFunctionOnCalibrationType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - weightedSpotNpvError
    - weightedSpreadError
    - weightedFwdNpvError
    linkageType: ''
    returnType: Real
    signature: Real ObjectiveFunction::switchErrorFunctionOnCalibrationType() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weightedSpreadErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:156,1
    - Dst: weightedSpotNpvErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:158,1
    - Dst: weightedFwdNpvErrors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:160,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 164
    functionName: ObjectiveFunction::switchErrorsFunctionOnCalibrationType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 2
    functionsReached:
    - weightedSpotNpvErrors
    - weightedFwdNpvErrors
    - weightedSpreadErrors
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array ObjectiveFunction::switchErrorsFunctionOnCalibrationType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:174,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:174,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:177,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:179,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:179,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:182,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 185
    functionName: ObjectiveFunction2::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction2::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:193,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:194,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:195,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:197,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:198,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:201,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:203,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:204,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:206,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:207,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:210,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 212
    functionName: ObjectiveFunction3::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Array::begin
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction3::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:220,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:221,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:222,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:223,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:224,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:225,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:228,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:230,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:231,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:233,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:234,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:236,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:236,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:237,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 240
    functionName: ObjectiveFunction4::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - Array::begin
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ext::shared_ptr::recalibration
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction4::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:248,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:249,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:250,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:252,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:252,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:255,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:257,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:258,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:261,1
    - Dst: volCube_::timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:262,1
    - Dst: volCube_::optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:264,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:266,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:268,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:268,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:269,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:270,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 272
    functionName: ObjectiveFunction5::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - std::exp
    - Null<Real>
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - volCube_::timeFromReference
    - ext::shared_ptr::recalibration
    - Array::size
    - volCube_::optionDateFromTenor
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction5::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:280,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:281,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:282,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:284,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:284,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:287,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:289,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:290,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:293,1
    - Dst: volCube_::timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:294,1
    - Dst: volCube_::optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:295,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:296,1
    - Dst: ext::shared_ptr::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:298,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:301,1
    - Dst: reprice
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 303
    functionName: ObjectiveFunction6::updateVolatilityCubeAndCmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - reprice
    - std::exp
    - swapTenors
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - volCube_::timeFromReference
    - ext::shared_ptr::recalibration
    - Array::size
    - volCube_::optionDateFromTenor
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - swapLengths
    - std::vector::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction6::updateVolatilityCubeAndCmsMarket(const Array
      &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:321,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:323,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:326,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - volCube
    - cmsMarket
    - weights
    - calibrationType
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - ext::shared_ptr<CmsMarket>
    - Matrix
    - CalibrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 329
    functionName: QuantLib::CmsMarketCalibration::CmsMarketCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - swapTenors
    - swapLengths
    - Matrix::columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarketCalibration::CmsMarketCalibration(\n        Handle<SwaptionVolatilityStructure>
      &volCube,\n        ext::shared_ptr<CmsMarket> &cmsMarket, const Matrix &weights,\n
      \       CalibrationType calibrationType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:336,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:336,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:338,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:338,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:339,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:340,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:345,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:346,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:351,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:356,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:357,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:358,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:360,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:361,1
    - Dst: ObjectiveFunction2::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:362,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:363,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:365,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:373,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:374,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:376,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:377,1
    - Dst: ObjectiveFunction::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:378,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:380,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:381,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:384,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:385,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:386,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:387,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:388,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 4
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 331
    functionDepth: 2
    functionLinenumber: 331
    functionLinenumberEnd: 391
    functionName: QuantLib::CmsMarketCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ObjectiveFunction::value
    - ext::shared_ptr<OptimizationMethod>::minimize
    - Null<Real>
    - Array
    - swapTenors
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - ObjectiveFunction2::value
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array CmsMarketCalibration::compute(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method, const
      Array &guess,\n        bool isMeanReversionFixed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:398,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:399,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:400,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:402,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:402,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:407,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:407,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:411,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:420,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:424,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:426,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:428,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:429,1
    - Dst: ObjectiveFunction4::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:430,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:431,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:433,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:437,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:440,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:451,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:455,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:458,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:459,1
    - Dst: ObjectiveFunction3::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:460,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:461,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:465,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:469,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:473,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:474,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:475,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:476,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:477,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 5
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    - meanReversionGuess
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Matrix
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 480
    functionName: QuantLib::CmsMarketCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ext::shared_ptr<OptimizationMethod>::minimize
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - swapTenors
    - ObjectiveFunction4::value
    - swapLengths
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - Null<Real>
    - Matrix
    - Matrix::columns
    - QL_REQUIRE
    - Matrix::rows
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ObjectiveFunction3::value
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    linkageType: ''
    returnType: Matrix
    signature: "Matrix CmsMarketCalibration::compute(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method,\n
      \       const Matrix &guess, bool isMeanReversionFixed,\n        const Real
      meanReversionGuess)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:488,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:489,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:490,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:490,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:492,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:492,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:496,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:497,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:497,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:500,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:510,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:511,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:515,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:517,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:519,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:520,1
    - Dst: ObjectiveFunction5::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:521,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:522,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:523,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:527,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:531,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:542,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:543,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:547,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:550,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:551,1
    - Dst: ObjectiveFunction6::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:552,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:553,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:558,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:563,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:568,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:569,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:570,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:571,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:572,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 5
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    - meanReversionGuess
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Matrix
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 575
    functionName: QuantLib::CmsMarketCalibration::computeParametric
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ext::shared_ptr<OptimizationMethod>::minimize
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - swapTenors
    - ObjectiveFunction6::value
    - swapLengths
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - Null<Real>
    - Matrix
    - Matrix::columns
    - QL_REQUIRE
    - Matrix::rows
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ObjectiveFunction5::value
    - std::sqrt
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    linkageType: ''
    returnType: Matrix
    signature: "Matrix CmsMarketCalibration::computeParametric(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method,\n
      \       const Matrix &guess, bool isMeanReversionFixed,\n        const Real
      meanReversionGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:319,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:321,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:323,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:324,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:326,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - volCube
    - cmsMarket
    - weights
    - calibrationType
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - ext::shared_ptr<CmsMarket>
    - Matrix
    - CalibrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 329
    functionName: QuantLib::CmsMarketCalibration::CmsMarketCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - Matrix::rows
    - swapTenors
    - swapLengths
    - Matrix::columns
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarketCalibration::CmsMarketCalibration(\n        Handle<SwaptionVolatilityStructure>
      &volCube,\n        ext::shared_ptr<CmsMarket> &cmsMarket, const Matrix &weights,\n
      \       CalibrationType calibrationType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:336,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:336,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:338,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:338,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:339,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:340,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:345,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:346,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:351,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:356,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:357,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:358,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:360,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:361,1
    - Dst: ObjectiveFunction2::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:362,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:363,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:365,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:373,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:374,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:376,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:377,1
    - Dst: ObjectiveFunction::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:378,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:380,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:381,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:384,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:385,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:386,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:387,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:388,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 4
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 331
    functionDepth: 2
    functionLinenumber: 331
    functionLinenumberEnd: 391
    functionName: QuantLib::CmsMarketCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ObjectiveFunction::value
    - ext::shared_ptr<OptimizationMethod>::minimize
    - Null<Real>
    - Array
    - swapTenors
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - Array::size
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - ObjectiveFunction2::value
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array CmsMarketCalibration::compute(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method, const
      Array &guess,\n        bool isMeanReversionFixed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:398,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:399,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:400,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:402,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:402,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:407,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:407,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:411,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:420,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:424,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:426,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:428,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:429,1
    - Dst: ObjectiveFunction4::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:430,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:431,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:433,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:437,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:440,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:451,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:455,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:458,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:459,1
    - Dst: ObjectiveFunction3::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:460,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:461,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:465,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:469,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:473,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:474,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:475,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:476,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:477,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 5
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    - meanReversionGuess
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Matrix
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 480
    functionName: QuantLib::CmsMarketCalibration::compute
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ext::shared_ptr<OptimizationMethod>::minimize
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - swapTenors
    - ObjectiveFunction4::value
    - swapLengths
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - Null<Real>
    - Matrix
    - Matrix::columns
    - QL_REQUIRE
    - Matrix::rows
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ObjectiveFunction3::value
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    linkageType: ''
    returnType: Matrix
    signature: "Matrix CmsMarketCalibration::compute(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method,\n
      \       const Matrix &guess, bool isMeanReversionFixed,\n        const Real
      meanReversionGuess)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:488,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:489,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:490,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:490,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:492,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:492,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:496,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:497,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:497,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:500,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:510,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:511,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:515,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:517,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:519,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:520,1
    - Dst: ObjectiveFunction5::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:521,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:522,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:523,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:527,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:531,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:542,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:543,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformInverse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:547,1
    - Dst: ext::shared_ptr<OptimizationMethod>::minimize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:550,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:551,1
    - Dst: ObjectiveFunction6::value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:552,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:553,1
    - Dst: QuantLib::CmsMarketCalibration::betaTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:558,1
    - Dst: QuantLib::CmsMarketCalibration::reversionTransformDirect
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:563,1
    - Dst: ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:568,1
    - Dst: ext::shared_ptr::updateAfterRecalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:569,1
    - Dst: ext::shared_ptr::sparseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:570,1
    - Dst: ext::shared_ptr::denseSabrParameters
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:571,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp:572,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 5
    argNames:
    - endCriteria
    - method
    - guess
    - isMeanReversionFixed
    - meanReversionGuess
    argTypes:
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - Matrix
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 575
    functionName: QuantLib::CmsMarketCalibration::computeParametric
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarketCalibration::reversionTransformInverse
    - ext::shared_ptr<OptimizationMethod>::minimize
    - browse
    - QuantLib::CmsMarketCalibration::reversionTransformDirect
    - ext::shared_ptr::sparseSabrParameters
    - Problem::currentValue
    - ext::shared_ptr::denseSabrParameters
    - swapTenors
    - ObjectiveFunction6::value
    - swapLengths
    - QuantLib::CmsMarketCalibration::betaTransformInverse
    - Null<Real>
    - Matrix
    - Matrix::columns
    - QL_REQUIRE
    - Matrix::rows
    - ext::shared_ptr::updateAfterRecalibration
    - ext::dynamic_pointer_cast<SabrSwaptionVolatilityCube>
    - ObjectiveFunction5::value
    - std::sqrt
    - QuantLib::CmsMarketCalibration::betaTransformDirect
    linkageType: ''
    returnType: Matrix
    signature: "Matrix CmsMarketCalibration::computeParametric(\n        const ext::shared_ptr<EndCriteria>
      &endCriteria,\n        const ext::shared_ptr<OptimizationMethod> &method,\n
      \       const Matrix &guess, bool isMeanReversionFixed,\n        const Real
      meanReversionGuess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::SwaptionVolatilityCube::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SwaptionVolatilityCube::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SwaptionVolatilityCube::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::maxTime
    linkageType: ''
    returnType: Time
    signature: Time maxTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::SwaptionVolatilityCube::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SwaptionVolatilityCube::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural settlementDays() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::SwaptionVolatilityCube::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::SwaptionVolatilityCube::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:73,1
    - Dst: QuantLib::SwaptionVolatilityCube::atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::SwaptionVolatilityCube::atmStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::atmStrike
    - optionDateFromTenor
    linkageType: ''
    returnType: Rate
    signature: "Rate atmStrike(const Period& optionTenor,\n                       const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::SwaptionVolatilityCube::atmVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> atmVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& strikeSpreads() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & strikeSpreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& volSpreads() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Handle<Quote> > >
    signature: std::vector<std::vector<Handle<Quote> > > & volSpreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::SwaptionVolatilityCube::swapIndexBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> swapIndexBase() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::SwaptionVolatilityCube::shortSwapIndexBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> shortSwapIndexBase() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::SwaptionVolatilityCube::vegaWeightedSmileFit
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool vegaWeightedSmileFit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:86,1
    - Dst: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:86,1
    - Dst: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:89,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::SwaptionVolatilityCube::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
    - QuantLib::SwaptionVolatilityDiscrete::performCalculations
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size requiredNumberOfStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::SwaptionVolatilityCube::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SwaptionVolatilityCube::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionName: QuantLib::SwaptionVolatilityCube::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityCube::volatilityImpl(\n                                                        Time
      optionTime,\n                                                        Time swapLength,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: QuantLib::SwaptionVolatilityCube::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityCube::volatilityImpl(\n                                                    const
      Date& optionDate,\n                                                    const
      Period& swapTenor,\n                                                    Rate
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::SwaptionVolatilityCube::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityCube::shiftImpl(Time optionTime,\n                                                  Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::SwaptionVolatilityCube::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::SwaptionVolatilityCube::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SwaptionVolatilityCube::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::maxTime
    linkageType: ''
    returnType: Time
    signature: Time maxTime() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::SwaptionVolatilityCube::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::settlementDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SwaptionVolatilityCube::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural settlementDays() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::SwaptionVolatilityCube::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::SwaptionVolatilityCube::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:73,1
    - Dst: QuantLib::SwaptionVolatilityCube::atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::SwaptionVolatilityCube::atmStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::atmStrike
    - optionDateFromTenor
    linkageType: ''
    returnType: Rate
    signature: "Rate atmStrike(const Period& optionTenor,\n                       const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::SwaptionVolatilityCube::atmVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> atmVol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& strikeSpreads() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Spread>
    signature: std::vector<Spread> & strikeSpreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& volSpreads() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Handle<Quote> > >
    signature: std::vector<std::vector<Handle<Quote> > > & volSpreads() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::SwaptionVolatilityCube::swapIndexBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> swapIndexBase() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::SwaptionVolatilityCube::shortSwapIndexBase
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> shortSwapIndexBase() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::SwaptionVolatilityCube::vegaWeightedSmileFit
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool vegaWeightedSmileFit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:86,1
    - Dst: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:86,1
    - Dst: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:89,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::SwaptionVolatilityCube::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
    - QuantLib::SwaptionVolatilityDiscrete::performCalculations
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::SwaptionVolatilityCube::requiredNumberOfStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size requiredNumberOfStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::SwaptionVolatilityCube::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::volatilityType
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SwaptionVolatilityCube::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionName: QuantLib::SwaptionVolatilityCube::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityCube::volatilityImpl(\n                                                        Time
      optionTime,\n                                                        Time swapLength,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: QuantLib::SwaptionVolatilityCube::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityCube::volatilityImpl(\n                                                    const
      Date& optionDate,\n                                                    const
      Period& swapTenor,\n                                                    Rate
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::SwaptionVolatilityCube::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.hpp
    functionUses: 0
    functionsReached:
    - shift
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityCube::shiftImpl(Time optionTime,\n                                                  Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:42,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:46,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:47,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:49,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:50,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:54,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:55,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 6
    argNames:
    - ' optionTenors'
    - ' swapTenors'
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Period>
    - std::vector<Period>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - referenceDate
    - QuantLib::SwaptionVolatilityDiscrete::update
    - enableExtrapolation
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - size
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                    const
      std::vector<Period>& optionTenors,\n                                    const
      std::vector<Period>& swapTenors,\n                                    Natural
      settlementDays,\n                                    const Calendar& cal,\n
      \                                   BusinessDayConvention bdc,\n                                    const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:75,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:79,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:80,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:82,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:83,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:87,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:88,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' optionTenors'
    - ' swapTenors'
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Period>
    - std::vector<Period>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 90
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - QuantLib::SwaptionVolatilityDiscrete::update
    - enableExtrapolation
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - size
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                    const
      std::vector<Period>& optionTenors,\n                                    const
      std::vector<Period>& swapTenors,\n                                    const
      Date& referenceDate,\n                                    const Calendar& cal,\n
      \                                   BusinessDayConvention bdc,\n                                    const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:107,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:111,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:112,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:114,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:115,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:119,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:120,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' optionDates'
    - ' swapTenors'
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Date>
    - std::vector<Period>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 122
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - QuantLib::SwaptionVolatilityDiscrete::update
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    - size
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                        const
      std::vector<Date>& optionDates,\n                                        const
      std::vector<Period>& swapTenors,\n                                        const
      Date& referenceDate,\n                                        const Calendar&
      cal,\n                                        BusinessDayConvention bdc,\n                                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:129,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:130,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' reference'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkOptionDates(const Date& reference)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:141,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:142,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkOptionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:152,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:153,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkSwapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:159,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:159,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:161,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:163,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:163,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 166
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - optionDateFromTenor
    - referenceDate
    - serialNumber
    - static_cast<Real>
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 173
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeOptionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 3
    functionsReached:
    - swapLength
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeSwapLengths() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:183,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:184,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:185,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:186,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: QuantLib::SwaptionVolatilityDiscrete::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - referenceDate
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - QuantLib::SwaptionVolatilityDiscrete::update
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:193,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::SwaptionVolatilityDiscrete::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:42,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:46,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:47,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:49,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:50,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:54,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:55,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:56,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 6
    argNames:
    - ' optionTenors'
    - ' swapTenors'
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Period>
    - std::vector<Period>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 27
    functionDepth: 3
    functionLinenumber: 27
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - referenceDate
    - QuantLib::SwaptionVolatilityDiscrete::update
    - enableExtrapolation
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - size
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                    const
      std::vector<Period>& optionTenors,\n                                    const
      std::vector<Period>& swapTenors,\n                                    Natural
      settlementDays,\n                                    const Calendar& cal,\n
      \                                   BusinessDayConvention bdc,\n                                    const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:75,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:79,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:80,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:82,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:83,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:85,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:87,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:88,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' optionTenors'
    - ' swapTenors'
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Period>
    - std::vector<Period>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 60
    functionDepth: 3
    functionLinenumber: 60
    functionLinenumberEnd: 90
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - QuantLib::SwaptionVolatilityDiscrete::update
    - enableExtrapolation
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - size
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                    const
      std::vector<Period>& optionTenors,\n                                    const
      std::vector<Period>& swapTenors,\n                                    const
      Date& referenceDate,\n                                    const Calendar& cal,\n
      \                                   BusinessDayConvention bdc,\n                                    const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:107,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:111,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:112,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:114,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:115,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:117,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:117,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:118,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:119,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:120,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - ' optionDates'
    - ' swapTenors'
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - std::vector<Date>
    - std::vector<Period>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 92
    functionDepth: 3
    functionLinenumber: 92
    functionLinenumberEnd: 122
    functionName: QuantLib::SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    - QuantLib::SwaptionVolatilityDiscrete::update
    - begin
    - LinearInterpolation
    - QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    - size
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityDiscrete::SwaptionVolatilityDiscrete(\n                                        const
      std::vector<Date>& optionDates,\n                                        const
      std::vector<Period>& swapTenors,\n                                        const
      Date& referenceDate,\n                                        const Calendar&
      cal,\n                                        BusinessDayConvention bdc,\n                                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:129,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:130,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' reference'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkOptionDates
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkOptionDates(const Date& reference)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:141,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:142,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkOptionTenors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkOptionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:152,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:153,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: QuantLib::SwaptionVolatilityDiscrete::checkSwapTenors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::checkSwapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:159,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:159,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:161,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:163,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:163,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 166
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 5
    functionsReached:
    - optionDateFromTenor
    - referenceDate
    - serialNumber
    - static_cast<Real>
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 173
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeOptionTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 4
    functionsReached:
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeOptionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 7
    functionsReached:
    - swapLength
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::initializeSwapLengths() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:183,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:184,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:185,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:186,1
    - Dst: QuantLib::SwaptionVolatilityDiscrete::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 3
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: QuantLib::SwaptionVolatilityDiscrete::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityDiscrete::initializeOptionDatesAndTimes
    - referenceDate
    - QuantLib::SwaptionVolatilityDiscrete::initializeSwapLengths
    - QuantLib::SwaptionVolatilityDiscrete::update
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:193,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: QuantLib::SwaptionVolatilityDiscrete::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityDiscrete::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' cal'
    - bdc
    - indexBase
    - ' model'
    - ' dc'
    - swaptionEngine
    argTypes:
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dSwaptionEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionName: QuantLib::Gaussian1dSwaptionVolatility::Gaussian1dSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - termStructure
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionVolatility::Gaussian1dSwaptionVolatility(\n
      \       const Calendar& cal,\n        BusinessDayConvention bdc,\n        ext::shared_ptr<SwapIndex>
      indexBase,\n        const ext::shared_ptr<Gaussian1dModel>& model,\n        const
      DayCounter& dc,\n        ext::shared_ptr<Gaussian1dSwaptionEngine> swaptionEngine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Gaussian1dSmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:40,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:41,1
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' tenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - clone
    - ext::make_shared<Gaussian1dSmileSection>
    - QuantLib::Gaussian1dSwaptionVolatility::dayCounter
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> Gaussian1dSwaptionVolatility::smileSectionImpl(const
      Date& d, const Period& tenor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:50,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:50,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:52,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:52,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:55,1
    - Dst: Rounding
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:55,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:57,1
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 59
    functionName: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 1
    functionsReached:
    - referenceDate
    - static_cast<Date::serial_type>
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    - static_cast<Real>
    - static_cast<Integer>
    - NewtonSafe::solve
    - fixingCalendar
    - Rounding
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> Gaussian1dSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                               Time swapLength)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - tenor
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::Gaussian1dSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Gaussian1dSwaptionVolatility::volatilityImpl(const Date
      &d,\n                                                        const Period &tenor,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::Gaussian1dSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Gaussian1dSwaptionVolatility::volatilityImpl(Time optionTime,\n
      \                                                       Time swapLength,\n                                                        Rate
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' cal'
    - bdc
    - indexBase
    - ' model'
    - ' dc'
    - swaptionEngine
    argTypes:
    - Calendar
    - BusinessDayConvention
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<Gaussian1dModel>
    - DayCounter
    - ext::shared_ptr<Gaussian1dSwaptionEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionName: QuantLib::Gaussian1dSwaptionVolatility::Gaussian1dSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - termStructure
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionVolatility::Gaussian1dSwaptionVolatility(\n
      \       const Calendar& cal,\n        BusinessDayConvention bdc,\n        ext::shared_ptr<SwapIndex>
      indexBase,\n        const ext::shared_ptr<Gaussian1dModel>& model,\n        const
      DayCounter& dc,\n        ext::shared_ptr<Gaussian1dSwaptionEngine> swaptionEngine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Gaussian1dSmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:40,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:41,1
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' tenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 3
    functionsReached:
    - clone
    - ext::make_shared<Gaussian1dSmileSection>
    - QuantLib::Gaussian1dSwaptionVolatility::dayCounter
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> Gaussian1dSwaptionVolatility::smileSectionImpl(const
      Date& d, const Period& tenor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:50,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:50,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:52,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:52,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:55,1
    - Dst: Rounding
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:55,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:57,1
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 59
    functionName: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 4
    functionsReached:
    - referenceDate
    - static_cast<Date::serial_type>
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    - static_cast<Real>
    - static_cast<Integer>
    - NewtonSafe::solve
    - fixingCalendar
    - Rounding
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> Gaussian1dSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                               Time swapLength)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - tenor
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::Gaussian1dSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Gaussian1dSwaptionVolatility::volatilityImpl(const Date
      &d,\n                                                        const Period &tenor,\n
      \                                                       Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::Gaussian1dSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dSwaptionVolatility::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility Gaussian1dSwaptionVolatility::volatilityImpl(Time optionTime,\n
      \                                                       Time swapLength,\n                                                        Rate
      strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:45,1
    - Dst: vector<ext::shared_ptr<Swap> >
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:61,1
    - Dst: vector<ext::shared_ptr<Swap> >
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:72,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:75,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:81,1
    - Dst: MakeCms
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:93,1
    - Dst: MakeCms
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:95,1
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:105,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 6
    argNames:
    - swapLengths
    - swapIndexes
    - iborIndex
    - ' bidAskSpreads'
    - ' pricers'
    - discountingTS
    argTypes:
    - vector<Period>
    - vector<ext::shared_ptr<SwapIndex> >
    - ext::shared_ptr<IborIndex>
    - vector<vector<Handle<Quote> > >
    - vector<ext::shared_ptr<CmsCouponPricer> >
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 106
    functionName: QuantLib::CmsMarket::CmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - vector<ext::shared_ptr<Swap> >
    - tenor
    - MakeCms
    - QuantLib::CmsMarket::performCalculations
    - std::move
    - Period
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarket::CmsMarket(vector<Period> swapLengths,\n                         vector<ext::shared_ptr<SwapIndex>
      > swapIndexes,\n                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                        const vector<vector<Handle<Quote> > >& bidAskSpreads,\n
      \                        const vector<ext::shared_ptr<CmsCouponPricer> >& pricers,\n
      \                        Handle<YieldTermStructure> discountingTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:116,1
    - Dst: leg
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:119,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:122,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:123,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:125,1
    - Dst: legNPV
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 153
    functionName: QuantLib::CmsMarket::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 1
    functionsReached:
    - referenceDate
    - value
    - QuantLib::CashFlows::bps
    - QuantLib::CashFlows::npv
    - leg
    - legNPV
    linkageType: ''
    returnType: void
    signature: void CmsMarket::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setSwaptionVolatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:163,1
    - Dst: ext::dynamic_pointer_cast<MeanRevertingPricer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:167,1
    - Dst: ext::shared_ptr::setMeanReversion
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:168,1
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - v
    - meanReversion
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 172
    functionName: QuantLib::CmsMarket::reprice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MeanRevertingPricer>
    - Null<Real>
    - QuantLib::CmsMarket::performCalculations
    - setSwaptionVolatility
    - ext::shared_ptr::setMeanReversion
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarket::reprice(const Handle<SwaptionVolatilityStructure>
      &v,\n                            Real meanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:175,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: QuantLib::CmsMarket::weightedFwdNpvError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedFwdNpvError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:180,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::CmsMarket::weightedSpotNpvError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedSpotNpvError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:185,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: QuantLib::CmsMarket::weightedSpreadError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedSpreadError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:192,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: QuantLib::CmsMarket::weightedFwdNpvErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedFwdNpvErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:197,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::CmsMarket::weightedSpotNpvErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedSpotNpvErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:202,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: QuantLib::CmsMarket::weightedSpreadErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedSpreadErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' var'
    - ' w'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: QuantLib::CmsMarket::weightedMean
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedMean(const Matrix& var, const Matrix& w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' var'
    - ' w'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 225
    functionName: QuantLib::CmsMarket::weightedMeans
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedMeans(const Matrix& var, const Matrix& w)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:228,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:233,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:234,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 263
    functionName: QuantLib::CmsMarket::browse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - length
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix CmsMarket::browse() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:45,1
    - Dst: vector<ext::shared_ptr<Swap> >
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:61,1
    - Dst: vector<ext::shared_ptr<Swap> >
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:72,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:75,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:81,1
    - Dst: MakeCms
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:90,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:93,1
    - Dst: MakeCms
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:95,1
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:105,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 6
    argNames:
    - swapLengths
    - swapIndexes
    - iborIndex
    - ' bidAskSpreads'
    - ' pricers'
    - discountingTS
    argTypes:
    - vector<Period>
    - vector<ext::shared_ptr<SwapIndex> >
    - ext::shared_ptr<IborIndex>
    - vector<vector<Handle<Quote> > >
    - vector<ext::shared_ptr<CmsCouponPricer> >
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 106
    functionName: QuantLib::CmsMarket::CmsMarket
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - vector<ext::shared_ptr<Swap> >
    - tenor
    - MakeCms
    - QuantLib::CmsMarket::performCalculations
    - std::move
    - Period
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarket::CmsMarket(vector<Period> swapLengths,\n                         vector<ext::shared_ptr<SwapIndex>
      > swapIndexes,\n                         ext::shared_ptr<IborIndex> iborIndex,\n
      \                        const vector<vector<Handle<Quote> > >& bidAskSpreads,\n
      \                        const vector<ext::shared_ptr<CmsCouponPricer> >& pricers,\n
      \                        Handle<YieldTermStructure> discountingTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:116,1
    - Dst: leg
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:119,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:122,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:123,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:125,1
    - Dst: legNPV
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 153
    functionName: QuantLib::CmsMarket::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 9
    functionsReached:
    - referenceDate
    - value
    - QuantLib::CashFlows::bps
    - QuantLib::CashFlows::npv
    - leg
    - legNPV
    linkageType: ''
    returnType: void
    signature: void CmsMarket::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setSwaptionVolatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:163,1
    - Dst: ext::dynamic_pointer_cast<MeanRevertingPricer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:167,1
    - Dst: ext::shared_ptr::setMeanReversion
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:168,1
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - v
    - meanReversion
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 172
    functionName: QuantLib::CmsMarket::reprice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MeanRevertingPricer>
    - Null<Real>
    - QuantLib::CmsMarket::performCalculations
    - setSwaptionVolatility
    - ext::shared_ptr::setMeanReversion
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CmsMarket::reprice(const Handle<SwaptionVolatilityStructure>
      &v,\n                            Real meanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:175,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: QuantLib::CmsMarket::weightedFwdNpvError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedFwdNpvError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:180,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::CmsMarket::weightedSpotNpvError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedSpotNpvError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:185,1
    - Dst: QuantLib::CmsMarket::weightedMean
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: QuantLib::CmsMarket::weightedSpreadError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::weightedMean
    - QuantLib::CmsMarket::performCalculations
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedSpreadError(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:192,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: QuantLib::CmsMarket::weightedFwdNpvErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedFwdNpvErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:197,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::CmsMarket::weightedSpotNpvErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedSpotNpvErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CmsMarket::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:202,1
    - Dst: QuantLib::CmsMarket::weightedMeans
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' w'
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: QuantLib::CmsMarket::weightedSpreadErrors
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CmsMarket::performCalculations
    - QuantLib::CmsMarket::weightedMeans
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedSpreadErrors(const Matrix& w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' var'
    - ' w'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: QuantLib::CmsMarket::weightedMean
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real CmsMarket::weightedMean(const Matrix& var, const Matrix& w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' var'
    - ' w'
    argTypes:
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 225
    functionName: QuantLib::CmsMarket::weightedMeans
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: Array CmsMarket::weightedMeans(const Matrix& var, const Matrix& w)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:228,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:233,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp:234,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 263
    functionName: QuantLib::CmsMarket::browse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.cpp
    functionUses: 0
    functionsReached:
    - length
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix CmsMarket::browse() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~SwaptionVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwaptionVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::SwaptionVolatilityStructure::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:229,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 231
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Period& optionTenor,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:238,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Period
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 240
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Period& optionTenor,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:247,1
    - Dst: QuantLib::SwaptionVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 249
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:256,1
    - Dst: QuantLib::SwaptionVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Period
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 258
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:264,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 266
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shift
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Period& optionTenor,\n
      \                                           const Period& swapTenor,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:272,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - swapLength
    - extrapolate
    argTypes:
    - Period
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 274
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shift
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Period& optionTenor,\n
      \                                           Time swapLength,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:280,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                              const Period&
      swapTenor,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:290,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 293
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionTime
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Time
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:309,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionDate'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Date
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionTime
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 314
    functionDepth: 2
    functionLinenumber: 314
    functionLinenumberEnd: 321
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:329,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:330,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:331,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 333
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Date& optionDate,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:340,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:341,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:342,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:343,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' optionDate'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Date
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 345
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Date& optionDate,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:352,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:353,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:354,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:355,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - optionTime
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Time
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 357
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(Time optionTime,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:364,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:365,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:366,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - optionTime
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 368
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(Time optionTime,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:374,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:375,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 377
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Date& optionDate,\n
      \                                           const Period& swapTenor,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:383,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:384,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:385,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - swapLength
    - extrapolate
    argTypes:
    - Date
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Date& optionDate,\n
      \                                           Time swapLength,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:393,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:394,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:395,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Time
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 397
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(Time optionTime,\n                                            const
      Period& swapTenor,\n                                            bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:403,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:404,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 406
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(Time optionTime,\n                                            Time
      swapLength,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:412,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:413,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 415
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Date& optionDate,\n                                              const Period&
      swapTenor,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:421,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:422,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:423,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Time
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 424
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(Time
      optionTime,\n                                              const Period& swapTenor,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:430,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:431,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:432,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionTenor'
    - swapLength
    - extrapolate
    argTypes:
    - Period
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 434
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:440,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:441,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:442,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - swapLength
    - extrapolate
    argTypes:
    - Date
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 443
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Date& optionDate,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:449,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:450,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 452
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(Time
      optionTime,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:459,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:459,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapT'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 461
    functionName: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSectionImpl(const
      Date& optionDate,\n                                                  const Period&
      swapT) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:467,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:467,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 463
    functionDepth: 1
    functionLinenumber: 463
    functionLinenumberEnd: 470
    functionName: QuantLib::SwaptionVolatilityStructure::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatilityImpl(const Date&
      optionDate,\n                                                const Period& swapTenor,\n
      \                                               Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionDate
    - swapTenor
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: QuantLib::SwaptionVolatilityStructure::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shiftImpl(const Date &optionDate,\n
      \                                          const Period &swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:479,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 483
    functionName: QuantLib::SwaptionVolatilityStructure::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SwaptionVolatilityStructure::shiftImpl(Time, Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:486,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: QuantLib::SwaptionVolatilityStructure::maxSwapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - maxSwapTenor
    linkageType: ''
    returnType: Time
    signature: Time SwaptionVolatilityStructure::maxSwapLength() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~SwaptionVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwaptionVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: QuantLib::SwaptionVolatilityStructure::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:229,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 231
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Period& optionTenor,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:238,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Period
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 240
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Period& optionTenor,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:247,1
    - Dst: QuantLib::SwaptionVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Period
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 249
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 3
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:256,1
    - Dst: QuantLib::SwaptionVolatilityStructure::blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionTenor'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Period
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 258
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::blackVariance
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Period& optionTenor,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:264,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 266
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shift
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Period& optionTenor,\n
      \                                           const Period& swapTenor,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:272,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - swapLength
    - extrapolate
    argTypes:
    - Period
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 274
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shift
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Period& optionTenor,\n
      \                                           Time swapLength,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:280,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionTenor'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 5
    functionsReached:
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                              const Period&
      swapTenor,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:290,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 293
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionTime
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Time
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                   const Period& swapTenor,\n
      \                                                   Rate strike,\n                                                    bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:309,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' optionDate'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Date
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(const Date& optionDate,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionTime
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 314
    functionDepth: 2
    functionLinenumber: 314
    functionLinenumberEnd: 321
    functionName: QuantLib::SwaptionVolatilityStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatility
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::blackVariance(Time optionTime,\n
      \                                                   Time swapLength,\n                                                    Rate
      strike,\n                                                    bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:329,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:330,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:331,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 324
    functionDepth: 2
    functionLinenumber: 324
    functionLinenumberEnd: 333
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Date& optionDate,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:340,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:341,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:342,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:343,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' optionDate'
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Date
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 345
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(const Date& optionDate,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:352,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:353,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:354,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:355,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - optionTime
    - ' swapTenor'
    - strike
    - extrapolate
    argTypes:
    - Time
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 357
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(Time optionTime,\n
      \                                           const Period& swapTenor,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:364,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:365,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:366,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - optionTime
    - swapLength
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 359
    functionDepth: 2
    functionLinenumber: 359
    functionLinenumberEnd: 368
    functionName: QuantLib::SwaptionVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - checkStrike
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatility(Time optionTime,\n
      \                                           Time swapLength,\n                                            Rate
      strike,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:374,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:375,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 370
    functionDepth: 2
    functionLinenumber: 370
    functionLinenumberEnd: 377
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Date& optionDate,\n
      \                                           const Period& swapTenor,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:383,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:384,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:385,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - swapLength
    - extrapolate
    argTypes:
    - Date
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 379
    functionDepth: 2
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(const Date& optionDate,\n
      \                                           Time swapLength,\n                                            bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:393,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:394,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:395,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Time
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 397
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(Time optionTime,\n                                            const
      Period& swapTenor,\n                                            bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:403,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:404,1
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 399
    functionDepth: 2
    functionLinenumber: 399
    functionLinenumberEnd: 406
    functionName: QuantLib::SwaptionVolatilityStructure::shift
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shift(Time optionTime,\n                                            Time
      swapLength,\n                                            bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:412,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:413,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Date
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 408
    functionDepth: 2
    functionLinenumber: 408
    functionLinenumberEnd: 415
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Date& optionDate,\n                                              const Period&
      swapTenor,\n                                              bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:421,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:422,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:423,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Time
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 424
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(Time
      optionTime,\n                                              const Period& swapTenor,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:430,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:431,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:432,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionTenor'
    - swapLength
    - extrapolate
    argTypes:
    - Period
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 434
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - optionDateFromTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Period& optionTenor,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:440,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:441,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:442,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' optionDate'
    - swapLength
    - extrapolate
    argTypes:
    - Date
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 443
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 8
    functionsReached:
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSection
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(const
      Date& optionDate,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:449,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:450,1
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 452
    functionName: QuantLib::SwaptionVolatilityStructure::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSection(Time
      optionTime,\n                                              Time swapLength,\n
      \                                             bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:459,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:459,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapT'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 461
    functionName: QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::smileSectionImpl
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityStructure::smileSectionImpl(const
      Date& optionDate,\n                                                  const Period&
      swapT) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:467,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:467,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - strike
    argTypes:
    - Date
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 463
    functionDepth: 1
    functionLinenumber: 463
    functionLinenumberEnd: 470
    functionName: QuantLib::SwaptionVolatilityStructure::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 10
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatilityImpl
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityStructure::volatilityImpl(const Date&
      optionDate,\n                                                const Period& swapTenor,\n
      \                                               Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::shiftImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionDate
    - swapTenor
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: QuantLib::SwaptionVolatilityStructure::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - timeFromReference
    - QuantLib::SwaptionVolatilityStructure::shiftImpl
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityStructure::shiftImpl(const Date &optionDate,\n
      \                                          const Period &swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:479,1
    - Dst: QuantLib::SwaptionVolatilityStructure::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 483
    functionName: QuantLib::SwaptionVolatilityStructure::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 12
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SwaptionVolatilityStructure::shiftImpl(Time, Time) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityStructure::swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:486,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp:486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: QuantLib::SwaptionVolatilityStructure::maxSwapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityStructure::swapLength
    - maxSwapTenor
    linkageType: ''
    returnType: Time
    signature: Time SwaptionVolatilityStructure::maxSwapLength() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix(SwaptionVolatilityMatrix&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix(const SwaptionVolatilityMatrix&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: '& operator=(SwaptionVolatilityMatrix&&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwaptionVolatilityMatrix
    signature: SwaptionVolatilityMatrix & operator=(SwaptionVolatilityMatrix&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: '& operator=(const SwaptionVolatilityMatrix&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwaptionVolatilityMatrix
    signature: SwaptionVolatilityMatrix & operator=(const SwaptionVolatilityMatrix&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: ~SwaptionVolatilityMatrix() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwaptionVolatilityMatrix() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityMatrix::locate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:139,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:139,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::SwaptionVolatilityMatrix::locate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SwaptionVolatilityMatrix::locate
    - swapLength
    - timeFromReference
    linkageType: ''
    returnType: std::pair<Size,Size>
    signature: "std::pair<Size,Size> locate(const Date& optionDate,\n                                    const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:145,1
    - Dst: locateY
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:145,1
    - Dst: locateX
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::SwaptionVolatilityMatrix::locate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 1
    functionsReached:
    - locateX
    - locateY
    - std::make_pair
    linkageType: ''
    returnType: std::pair<Size,Size>
    signature: "std::pair<Size,Size> locate(Time optionTime,\n                                    Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::SwaptionVolatilityMatrix::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date SwaptionVolatilityMatrix::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: QuantLib::SwaptionVolatilityMatrix::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate SwaptionVolatilityMatrix::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::SwaptionVolatilityMatrix::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate SwaptionVolatilityMatrix::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: '& SwaptionVolatilityMatrix::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Period
    signature: Period & SwaptionVolatilityMatrix::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:194,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 196
    functionName: QuantLib::SwaptionVolatilityMatrix::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityMatrix::volatilityImpl(Time optionTime,\n
      \                                                              Time swapLength,\n
      \                                                              Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::SwaptionVolatilityMatrix::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SwaptionVolatilityMatrix::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:204,1
    - Dst: interpolationShifts_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 207
    functionName: QuantLib::SwaptionVolatilityMatrix::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolationShifts_
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityMatrix::shiftImpl(Time optionTime,\n                                                    Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix(SwaptionVolatilityMatrix&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix(const SwaptionVolatilityMatrix&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: '& operator=(SwaptionVolatilityMatrix&&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwaptionVolatilityMatrix
    signature: SwaptionVolatilityMatrix & operator=(SwaptionVolatilityMatrix&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: '& operator=(const SwaptionVolatilityMatrix&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwaptionVolatilityMatrix
    signature: SwaptionVolatilityMatrix & operator=(const SwaptionVolatilityMatrix&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: ~SwaptionVolatilityMatrix() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwaptionVolatilityMatrix() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityMatrix::locate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:139,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:139,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::SwaptionVolatilityMatrix::locate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SwaptionVolatilityMatrix::locate
    - swapLength
    - timeFromReference
    linkageType: ''
    returnType: std::pair<Size,Size>
    signature: "std::pair<Size,Size> locate(const Date& optionDate,\n                                    const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:145,1
    - Dst: locateY
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:145,1
    - Dst: locateX
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::SwaptionVolatilityMatrix::locate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 2
    functionsReached:
    - locateX
    - locateY
    - std::make_pair
    linkageType: ''
    returnType: std::pair<Size,Size>
    signature: "std::pair<Size,Size> locate(Time optionTime,\n                                    Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::SwaptionVolatilityMatrix::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date SwaptionVolatilityMatrix::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: QuantLib::SwaptionVolatilityMatrix::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate SwaptionVolatilityMatrix::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: QuantLib::SwaptionVolatilityMatrix::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate SwaptionVolatilityMatrix::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: '& SwaptionVolatilityMatrix::maxSwapTenor() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Period
    signature: Period & SwaptionVolatilityMatrix::maxSwapTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:194,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 196
    functionName: QuantLib::SwaptionVolatilityMatrix::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility SwaptionVolatilityMatrix::volatilityImpl(Time optionTime,\n
      \                                                              Time swapLength,\n
      \                                                              Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::SwaptionVolatilityMatrix::volatilityType
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType SwaptionVolatilityMatrix::volatilityType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:204,1
    - Dst: interpolationShifts_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 207
    functionName: QuantLib::SwaptionVolatilityMatrix::shiftImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolationShifts_
    linkageType: ''
    returnType: Real
    signature: "Real SwaptionVolatilityMatrix::shiftImpl(Time optionTime,\n                                                    Time
      swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::XabrSwaptionVolatilityCube::Cube::Cube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Cube()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: ~Cube()
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Cube()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '& optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& swapTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& marketVolCube(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - points
    linkageType: ''
    returnType: Matrix
    signature: Matrix & marketVolCube(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::XabrSwaptionVolatilityCube::requiredNumberOfStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size requiredNumberOfStrikes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - XabrSwaptionVolatilityCube<Model>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::PrivateObserver
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrivateObserver(XabrSwaptionVolatilityCube<Model> *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParameterGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:206,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
    - setParameterGuess
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:251,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:252,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:253,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:253,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:255,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:257,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:263,1
    - Dst: ext::make_shared<PrivateObserver>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:269,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:270,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 19
    argNames:
    - ' atmVolStructure'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - ' volSpreads'
    - ' swapIndexBase'
    - ' shortSwapIndexBase'
    - vegaWeightedSmileFit
    - parametersGuess
    - isParameterFixed
    - isAtmCalibrated
    - endCriteria
    - maxErrorTolerance
    - optMethod
    - errorAccept
    - useMaxError
    - maxGuesses
    - backwardFlat
    - cutoffStrike
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    - std::vector<std::vector<Handle<Quote> > >
    - std::vector<bool>
    - bool
    - ext::shared_ptr<EndCriteria>
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - Real
    - bool
    - Size
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 272
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::XabrSwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
    - QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
    - Null<Rate>
    - std::move
    - ext::make_shared<PrivateObserver>
    - volatilityType
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::XabrSwaptionVolatilityCube(\n
      \       const Handle<SwaptionVolatilityStructure>& atmVolStructure,\n        const
      std::vector<Period>& optionTenors,\n        const std::vector<Period>& swapTenors,\n
      \       const std::vector<Spread>& strikeSpreads,\n        const std::vector<std::vector<Handle<Quote>
      > >& volSpreads,\n        const ext::shared_ptr<SwapIndex>& swapIndexBase,\n
      \       const ext::shared_ptr<SwapIndex>& shortSwapIndexBase,\n        bool
      vegaWeightedSmileFit,\n        std::vector<std::vector<Handle<Quote> > > parametersGuess,\n
      \       std::vector<bool> isParameterFixed,\n        bool isAtmCalibrated,\n
      \       ext::shared_ptr<EndCriteria> endCriteria,\n        Real maxErrorTolerance,\n
      \       ext::shared_ptr<OptimizationMethod> optMethod,\n        const Real errorAccept,\n
      \       const bool useMaxError,\n        const Size maxGuesses,\n        const
      bool backwardFlat,\n        const Real cutoffStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:279,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Cube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:285,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:292,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:293,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:295,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 297
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - Cube
    - updateInterpolators
    - setElement
    - value
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::setParameterGuess() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:301,1
    - Dst: Cube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:304,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:310,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:311,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:314,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:315,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:319,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:321,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:323,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:328,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:329,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:330,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 332
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::SwaptionVolatilityCube::performCalculations
    - atmStrike
    - volatility
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - Cube
    - setElement
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:337,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:338,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:339,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 342
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::updateAfterRecalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::updateAfterRecalibration()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Cube::optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:348,1
    - Dst: Cube::swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:349,1
    - Dst: Cube::optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:350,1
    - Dst: Cube::swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:351,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:352,1
    - Dst: Cube::points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:361,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:363,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:364,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:366,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:367,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:368,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:369,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:370,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:371,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:375,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:376,1
    - Dst: parametersGuess_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:381,1
    - Dst: ext::shared_ptr<typename Model::Interpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:384,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:385,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:385,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:386,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:402,1
    - Dst: ext::shared_ptr::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:404,1
    - Dst: ext::shared_ptr::maxError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:405,1
    - Dst: ext::shared_ptr::alpha
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:406,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:407,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:408,1
    - Dst: ext::shared_ptr::rho
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:409,1
    - Dst: ext::shared_ptr::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:413,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:415,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:415,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:420,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:421,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:428,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:436,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:437,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:447,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:448,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:449,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:450,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:451,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:452,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:453,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:454,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - marketVolCube
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 345
    functionDepth: 2
    functionLinenumber: 345
    functionLinenumberEnd: 458
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - std::vector::clear
    - ext::shared_ptr::nu
    - atmStrike
    - Cube::swapLengths
    - parametersGuess_
    - Cube::setLayer
    - std::vector::push_back
    - shift
    - QL_ENSURE
    - ext::shared_ptr::alpha
    - ext::shared_ptr::beta
    - Cube::optionDates
    - ext::shared_ptr<typename Model::Interpolation>
    - size
    - ext::shared_ptr::maxError
    - QuantLib::io::rate
    - Cube::optionTimes
    - ext::shared_ptr::update
    - ext::shared_ptr::endCriteria
    - ext::shared_ptr::rmsError
    - ext::shared_ptr::rho
    - std::vector::begin
    - Integer
    - std::vector::end
    - Cube::swapTenors
    - Cube::points
    linkageType: ''
    returnType: typename XabrSwaptionVolatilityCube<Model>::Cube
    signature: typename XabrSwaptionVolatilityCube<Model>::Cube XabrSwaptionVolatilityCube<Model>::sabrCalibration(const
      Cube &marketVolCube) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:465,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:466,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:467,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:468,1
    - Dst: std::find
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:471,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:472,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:472,1
    - Dst: points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:475,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:477,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:478,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:480,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:481,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:482,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:483,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:484,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:488,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:489,1
    - Dst: parametersGuess_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:494,1
    - Dst: ext::shared_ptr<typename Model::Interpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:497,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:498,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:498,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:499,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:515,1
    - Dst: ext::shared_ptr::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:516,1
    - Dst: ext::shared_ptr::alpha
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:517,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:518,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:519,1
    - Dst: ext::shared_ptr::rho
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:520,1
    - Dst: ext::shared_ptr::maxError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:523,1
    - Dst: ext::shared_ptr::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:524,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:526,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:526,1
    - Dst: maxIterations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:531,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:540,1
    - Dst: setPoint
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:554,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:557,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - ' marketVolCube'
    - ' parametersCube'
    - ' swapTenor'
    argTypes:
    - Cube
    - Cube
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 460
    functionDepth: 1
    functionLinenumber: 460
    functionLinenumberEnd: 560
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - std::vector::clear
    - ext::shared_ptr::nu
    - atmStrike
    - parametersGuess_
    - std::vector::push_back
    - shift
    - QL_ENSURE
    - ext::shared_ptr::alpha
    - begin
    - swapTenors
    - ext::shared_ptr::beta
    - maxIterations
    - updateInterpolators
    - optionTimes
    - points
    - swapLengths
    - ext::shared_ptr<typename Model::Interpolation>
    - std::find
    - size
    - setPoint
    - ext::shared_ptr::maxError
    - ext::shared_ptr::update
    - end
    - ext::shared_ptr::endCriteria
    - ext::shared_ptr::rmsError
    - ext::shared_ptr::rho
    - QL_REQUIRE
    - std::vector::begin
    - Integer
    - std::vector::end
    - optionDates
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection(\n
      \                                           const Cube& marketVolCube,\n                                            Cube&
      parametersCube,\n                                            const Period& swapTenor)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwaptionVolatilityDiscrete>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:565,1
    - Dst: ext::shared_ptr::optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:567,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:568,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:569,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:569,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:570,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:570,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:573,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:573,1
    - Dst: ext::shared_ptr::swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:575,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:576,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:577,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:577,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:578,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:578,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:581,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:581,1
    - Dst: ext::shared_ptr::optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:583,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:584,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:585,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:585,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:586,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:586,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:589,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:589,1
    - Dst: ext::shared_ptr::swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:591,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:592,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:593,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:593,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:594,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:594,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:597,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:597,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:599,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:601,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:603,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:605,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:605,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:606,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:609,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:609,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:610,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:613,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:615,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:618,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:621,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:623,1
    - Dst: setPoint
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:624,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:631,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 562
    functionDepth: 1
    functionLinenumber: 562
    functionLinenumberEnd: 632
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - std::vector::reserve
    - atmStrike
    - std::vector::insert
    - ext::shared_ptr::optionTimes
    - std::vector::push_back
    - ext::shared_ptr::swapLengths
    - std::sort
    - ext::shared_ptr::optionDates
    - ext::shared_ptr::swapTenors
    - swapTenors
    - updateInterpolators
    - optionTimes
    - swapLengths
    - std::vector::erase
    - setPoint
    - std::binary_search
    - std::vector::size
    - std::vector::begin
    - std::vector::end
    - std::unique
    - optionDates
    - ext::dynamic_pointer_cast<SwaptionVolatilityDiscrete>
    - volatility
    - QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
    - QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::fillVolatilityCube() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:637,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:638,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:639,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:643,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:644,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:646,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:646,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:648,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 635
    functionDepth: 1
    functionLinenumber: 635
    functionLinenumberEnd: 650
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    - std::vector::reserve
    - push_back
    - optionTimes
    - swapLengths
    - std::vector::size
    - clear
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::createSparseSmiles() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:656,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:657,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:663,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:664,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:669,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:669,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:673,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:677,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:677,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:678,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:680,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:688,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:688,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:690,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:690,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:692,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:694,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:696,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:698,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:701,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:702,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:720,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:721,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:728,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:730,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:732,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:754,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:763,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:768,1
    - Dst: Cube::updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:769,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:771,1
    - Dst: localInterpolator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:771,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - ' atmOptionDate'
    - ' atmSwapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 774
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - shift
    - std::lower_bound
    - swapLength
    - timeFromReference
    - begin
    - swapTenors
    - optionDates
    - atmStrike
    - std::max
    - volatility
    - localInterpolator
    - size
    - Cube::updateInterpolators
    - end
    - Cube::setLayer
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation(\n
      \       const Date& atmOptionDate, const Period& atmSwapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:780,1
    - Dst: sabrParametersCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:782,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:783,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - ' sabrParametersCube'
    argTypes:
    - Time
    - Time
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 786
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - sabrParametersCube
    - shift
    - ext::shared_ptr<SmileSection>
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> XabrSwaptionVolatilityCube<Model>::smileSection(Time
      optionTime, Time swapLength,\n                                   const Cube&
      sabrParametersCube) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:792,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 795
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> XabrSwaptionVolatilityCube<Model>::smileSectionImpl(Time
      optionTime,\n                                       Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:798,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sparseSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::sparseSabrParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:803,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 805
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::denseSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::denseSabrParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:808,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 810
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::marketVolCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::marketVolCube() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:813,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 815
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::volCubeAtmCalibrated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::volCubeAtmCalibrated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - beta
    - ' swapTenor'
    argTypes:
    - Real
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 817
    functionDepth: 1
    functionLinenumber: 817
    functionLinenumberEnd: 823
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(Real beta,\n
      \                                        const Period& swapTenor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:828,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:828,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:830,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:834,1
    - Dst: std::find
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:836,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:838,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:838,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:842,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:845,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:846,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:850,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:851,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - beta
    - ' swapTenor'
    argTypes:
    - std::vector<Real>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 825
    functionDepth: 2
    functionLinenumber: 825
    functionLinenumberEnd: 856
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
    - notifyObservers
    - std::vector::begin
    - std::vector::end
    - swapTenors
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - std::find
    - std::vector::size
    - setElement
    - std::vector<Real>::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(const std::vector<Real>
      &beta,\n                                         const Period& swapTenor)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Period>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:864,1
    - Dst: std::vector<Period>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:866,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:869,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:869,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:870,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:871,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:872,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:872,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:874,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:875,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:875,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:878,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:879,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:881,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:882,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:883,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:884,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:885,1
    - Dst: betaInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:885,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - swapLengths
    - beta
    - swapTenor
    argTypes:
    - std::vector<Period>
    - std::vector<Real>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 858
    functionDepth: 1
    functionLinenumber: 858
    functionLinenumberEnd: 890
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - std::vector<Real>::size
    - optionDateFromTenor
    - timeFromReference
    - std::vector<Period>::size
    - std::vector<Real>::begin
    - std::vector::reserve
    - std::vector::begin
    - betaInterpolation
    - std::vector::end
    - optionTimes
    - QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    - std::vector::front
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(const std::vector<Period>
      &swapLengths,\n                                         const std::vector<Real>
      &beta,\n                                         const Period &swapTenor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:909,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:909,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:910,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:910,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:917,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:917,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:918,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:921,1
    - Dst: transpose
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:921,1
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:924,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:925,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:925,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:926,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:926,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:930,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:931,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:931,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:932,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:932,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:934,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:934,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:935,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:936,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:938,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 7
    argNames:
    - ' optionDates'
    - ' swapTenors'
    - ' optionTimes'
    - ' swapLengths'
    - nLayers
    - extrapolation
    - backwardFlat
    argTypes:
    - std::vector<Date>
    - std::vector<Period>
    - std::vector<Time>
    - std::vector<Time>
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 939
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::Cube(const std::vector<Date>&
      optionDates,\n                                    const std::vector<Period>&
      swapTenors,\n                                    const std::vector<Time>& optionTimes,\n
      \                                   const std::vector<Time>& swapLengths,\n
      \                                   Size nLayers,\n                                    bool
      extrapolation,\n                                    bool backwardFlat)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - Matrix
    - transpose
    - setPoints
    - size
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::Cube(const std::vector<Date>&
      optionDates,\n                                    const std::vector<Period>&
      swapTenors,\n                                    const std::vector<Time>& optionTimes,\n
      \                                   const std::vector<Time>& swapLengths,\n
      \                                   Size nLayers,\n                                    bool
      extrapolation,\n                                    bool backwardFlat)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:950,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:951,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:951,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:952,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:952,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:956,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:957,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:957,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:958,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:958,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:960,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:960,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:961,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:962,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:964,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 965
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::Cube(const Cube& o)
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - setPoints
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::Cube::Cube(const Cube& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:981,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:982,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:982,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:983,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:983,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:987,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:988,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:988,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:989,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:989,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:991,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:991,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:992,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:993,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 967
    functionDepth: 0
    functionLinenumber: 967
    functionLinenumberEnd: 997
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::operator=(const
      Cube& o)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - setPoints
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: typename XabrSwaptionVolatilityCube<Model>::Cube
    signature: "typename XabrSwaptionVolatilityCube<Model>::Cube &\n    XabrSwaptionVolatilityCube<Model>::Cube::operator=(const
      Cube& o)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1003,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1005,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1005,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1007,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - IndexOfLayer
    - IndexOfRow
    - IndexOfColumn
    - x
    argTypes:
    - Size
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1010
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setElement(Size IndexOfLayer,\n
      \                                                       Size IndexOfRow,\n                                                        Size
      IndexOfColumn,\n                                                        Real
      x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setElement(Size IndexOfLayer,\n
      \                                                       Size IndexOfRow,\n                                                        Size
      IndexOfColumn,\n                                                        Real
      x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1014,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1014,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1012
    functionDepth: 1
    functionLinenumber: 1012
    functionLinenumberEnd: 1022
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setPoints(\n                                               const
      std::vector<Matrix>& x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setPoints(\n                                               const
      std::vector<Matrix>& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1026,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ' x'
    argTypes:
    - Size
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1024
    functionDepth: 1
    functionLinenumber: 1024
    functionLinenumberEnd: 1034
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setLayer(Size i,\n                                                      const
      Matrix& x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setLayer(Size i,\n                                                      const
      Matrix& x)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1053,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1057,1
    - Dst: expandLayers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1060,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - optionTime
    - swapLength
    - ' point'
    argTypes:
    - Date
    - Period
    - Time
    - Time
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1037
    functionDepth: 0
    functionLinenumber: 1037
    functionLinenumberEnd: 1070
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setPoint(const Date& optionDate,\n
      \                                                 const Period& swapTenor,\n
      \                                                 Time optionTime,\n                                                  Time
      swapLength,\n                                                  const std::vector<Real>&
      point)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - std::binary_search
    - begin
    - expandLayers
    - end
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setPoint(const Date&
      optionDate,\n                                                  const Period&
      swapTenor,\n                                                  Time optionTime,\n
      \                                                 Time swapLength,\n                                                  const
      std::vector<Real>& point)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1074,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1074,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1075,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1075,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1078,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1078,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1082,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1082,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1086,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1086,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1087,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1090,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1093,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1100,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 4
    argNames:
    - i
    - expandOptionTimes
    - j
    - expandSwapLengths
    argTypes:
    - Size
    - bool
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1072
    functionDepth: 1
    functionLinenumber: 1072
    functionLinenumberEnd: 1101
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::expandLayers(Size i, bool
      expandOptionTimes,\n                                              Size j, bool
      expandSwapLengths)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - Period
    - Matrix
    - Date
    - columns
    - setPoints
    - size
    - insert
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::expandLayers(Size i,
      bool expandOptionTimes,\n                                              Size
      j, bool expandSwapLengths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1106
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::points() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    XabrSwaptionVolatilityCube<Model>::Cube::points()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1111,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1108
    functionDepth: 0
    functionLinenumber: 1108
    functionLinenumberEnd: 1115
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::operator()(\n                            const
      Time optionTime, const Time swapLength) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> XabrSwaptionVolatilityCube<Model>::Cube::operator()(\n
      \                           const Time optionTime, const Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1120
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::optionTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    XabrSwaptionVolatilityCube<Model>::Cube::optionTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1122
    functionDepth: 0
    functionLinenumber: 1122
    functionLinenumberEnd: 1125
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::swapLengths() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    XabrSwaptionVolatilityCube<Model>::Cube::swapLengths()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: transpose
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1129,1
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1133,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1134,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1134,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1135,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1135,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1139,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1140,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1140,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1141,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1141,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1143,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1144,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1127
    functionDepth: 0
    functionLinenumber: 1127
    functionLinenumberEnd: 1147
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::updateInterpolators() const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - transpose
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::Cube::updateInterpolators()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1151,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1152,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1153,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1154,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1156,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1160
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1160
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::browse() const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::Cube::browse() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::XabrSwaptionVolatilityCube::Cube::Cube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Cube()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: ~Cube()
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Cube()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '& optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: '& swapTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& marketVolCube(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - points
    linkageType: ''
    returnType: Matrix
    signature: Matrix & marketVolCube(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::XabrSwaptionVolatilityCube::requiredNumberOfStrikes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size requiredNumberOfStrikes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - XabrSwaptionVolatilityCube<Model>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::PrivateObserver
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrivateObserver(XabrSwaptionVolatilityCube<Model> *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setParameterGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:206,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube::PrivateObserver::update
    - setParameterGuess
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:251,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:252,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:253,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:253,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:255,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:257,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:263,1
    - Dst: ext::make_shared<PrivateObserver>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:269,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:270,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 19
    argNames:
    - ' atmVolStructure'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - ' volSpreads'
    - ' swapIndexBase'
    - ' shortSwapIndexBase'
    - vegaWeightedSmileFit
    - parametersGuess
    - isParameterFixed
    - isAtmCalibrated
    - endCriteria
    - maxErrorTolerance
    - optMethod
    - errorAccept
    - useMaxError
    - maxGuesses
    - backwardFlat
    - cutoffStrike
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    - std::vector<std::vector<Handle<Quote> > >
    - std::vector<bool>
    - bool
    - ext::shared_ptr<EndCriteria>
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - Real
    - bool
    - Size
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 272
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::XabrSwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
    - QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
    - Null<Rate>
    - std::move
    - ext::make_shared<PrivateObserver>
    - volatilityType
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::XabrSwaptionVolatilityCube(\n
      \       const Handle<SwaptionVolatilityStructure>& atmVolStructure,\n        const
      std::vector<Period>& optionTenors,\n        const std::vector<Period>& swapTenors,\n
      \       const std::vector<Spread>& strikeSpreads,\n        const std::vector<std::vector<Handle<Quote>
      > >& volSpreads,\n        const ext::shared_ptr<SwapIndex>& swapIndexBase,\n
      \       const ext::shared_ptr<SwapIndex>& shortSwapIndexBase,\n        bool
      vegaWeightedSmileFit,\n        std::vector<std::vector<Handle<Quote> > > parametersGuess,\n
      \       std::vector<bool> isParameterFixed,\n        bool isAtmCalibrated,\n
      \       ext::shared_ptr<EndCriteria> endCriteria,\n        Real maxErrorTolerance,\n
      \       ext::shared_ptr<OptimizationMethod> optMethod,\n        const Real errorAccept,\n
      \       const bool useMaxError,\n        const Size maxGuesses,\n        const
      bool backwardFlat,\n        const Real cutoffStrike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:279,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::registerWithParametersGuess()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Cube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:285,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:292,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:293,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:295,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 297
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::setParameterGuess
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - Cube
    - updateInterpolators
    - setElement
    - value
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::setParameterGuess() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:301,1
    - Dst: Cube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:304,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:310,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:311,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:314,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:315,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:319,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:321,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:323,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:328,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:329,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:330,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 332
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::SwaptionVolatilityCube::performCalculations
    - atmStrike
    - volatility
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - Cube
    - setElement
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:337,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:338,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:339,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 342
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::updateAfterRecalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::updateAfterRecalibration()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Cube::optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:348,1
    - Dst: Cube::swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:349,1
    - Dst: Cube::optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:350,1
    - Dst: Cube::swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:351,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:352,1
    - Dst: Cube::points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:361,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:363,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:364,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:366,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:367,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:368,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:369,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:370,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:371,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:375,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:376,1
    - Dst: parametersGuess_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:381,1
    - Dst: ext::shared_ptr<typename Model::Interpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:384,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:385,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:385,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:386,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:402,1
    - Dst: ext::shared_ptr::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:404,1
    - Dst: ext::shared_ptr::maxError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:405,1
    - Dst: ext::shared_ptr::alpha
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:406,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:407,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:408,1
    - Dst: ext::shared_ptr::rho
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:409,1
    - Dst: ext::shared_ptr::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:413,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:415,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:415,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:420,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:421,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:428,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:436,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:437,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:447,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:448,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:449,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:450,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:451,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:452,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:453,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:454,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - marketVolCube
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 345
    functionDepth: 2
    functionLinenumber: 345
    functionLinenumberEnd: 458
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 4
    functionsReached:
    - std::vector::clear
    - ext::shared_ptr::nu
    - atmStrike
    - Cube::swapLengths
    - parametersGuess_
    - Cube::setLayer
    - std::vector::push_back
    - shift
    - QL_ENSURE
    - ext::shared_ptr::alpha
    - ext::shared_ptr::beta
    - Cube::optionDates
    - ext::shared_ptr<typename Model::Interpolation>
    - size
    - ext::shared_ptr::maxError
    - QuantLib::io::rate
    - Cube::optionTimes
    - ext::shared_ptr::update
    - ext::shared_ptr::endCriteria
    - ext::shared_ptr::rmsError
    - ext::shared_ptr::rho
    - std::vector::begin
    - Integer
    - std::vector::end
    - Cube::swapTenors
    - Cube::points
    linkageType: ''
    returnType: typename XabrSwaptionVolatilityCube<Model>::Cube
    signature: typename XabrSwaptionVolatilityCube<Model>::Cube XabrSwaptionVolatilityCube<Model>::sabrCalibration(const
      Cube &marketVolCube) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:465,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:466,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:467,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:468,1
    - Dst: std::find
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:470,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:471,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:472,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:472,1
    - Dst: points
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:475,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:477,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:478,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:480,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:481,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:482,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:483,1
    - Dst: std::vector::clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:484,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:488,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:489,1
    - Dst: parametersGuess_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:494,1
    - Dst: ext::shared_ptr<typename Model::Interpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:497,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:498,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:498,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:499,1
    - Dst: ext::shared_ptr::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:515,1
    - Dst: ext::shared_ptr::rmsError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:516,1
    - Dst: ext::shared_ptr::alpha
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:517,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:518,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:519,1
    - Dst: ext::shared_ptr::rho
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:520,1
    - Dst: ext::shared_ptr::maxError
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:523,1
    - Dst: ext::shared_ptr::endCriteria
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:524,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:526,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:526,1
    - Dst: maxIterations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:531,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:540,1
    - Dst: setPoint
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:554,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:557,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - ' marketVolCube'
    - ' parametersCube'
    - ' swapTenor'
    argTypes:
    - Cube
    - Cube
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 460
    functionDepth: 1
    functionLinenumber: 460
    functionLinenumberEnd: 560
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 1
    functionsReached:
    - std::vector::clear
    - ext::shared_ptr::nu
    - atmStrike
    - parametersGuess_
    - std::vector::push_back
    - shift
    - QL_ENSURE
    - ext::shared_ptr::alpha
    - begin
    - swapTenors
    - ext::shared_ptr::beta
    - maxIterations
    - updateInterpolators
    - optionTimes
    - points
    - swapLengths
    - ext::shared_ptr<typename Model::Interpolation>
    - std::find
    - size
    - setPoint
    - ext::shared_ptr::maxError
    - ext::shared_ptr::update
    - end
    - ext::shared_ptr::endCriteria
    - ext::shared_ptr::rmsError
    - ext::shared_ptr::rho
    - QL_REQUIRE
    - std::vector::begin
    - Integer
    - std::vector::end
    - optionDates
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection(\n
      \                                           const Cube& marketVolCube,\n                                            Cube&
      parametersCube,\n                                            const Period& swapTenor)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwaptionVolatilityDiscrete>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:565,1
    - Dst: ext::shared_ptr::optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:567,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:568,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:569,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:569,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:570,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:570,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:571,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:572,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:573,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:573,1
    - Dst: ext::shared_ptr::swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:575,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:576,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:577,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:577,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:578,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:578,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:579,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:580,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:581,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:581,1
    - Dst: ext::shared_ptr::optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:583,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:584,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:585,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:585,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:586,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:586,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:587,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:588,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:589,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:589,1
    - Dst: ext::shared_ptr::swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:591,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:592,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:593,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:593,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:594,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:594,1
    - Dst: std::sort
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:595,1
    - Dst: std::unique
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:596,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:597,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:597,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:599,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:601,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:603,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:605,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:605,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:606,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:609,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:609,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:610,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:613,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:615,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:618,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:621,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:623,1
    - Dst: setPoint
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:624,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:631,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 562
    functionDepth: 2
    functionLinenumber: 562
    functionLinenumberEnd: 632
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 5
    functionsReached:
    - std::vector::reserve
    - atmStrike
    - std::vector::insert
    - ext::shared_ptr::optionTimes
    - std::vector::push_back
    - ext::shared_ptr::swapLengths
    - std::sort
    - ext::shared_ptr::optionDates
    - ext::shared_ptr::swapTenors
    - swapTenors
    - updateInterpolators
    - optionTimes
    - swapLengths
    - std::vector::erase
    - setPoint
    - std::binary_search
    - std::vector::size
    - std::vector::begin
    - std::vector::end
    - std::unique
    - optionDates
    - ext::dynamic_pointer_cast<SwaptionVolatilityDiscrete>
    - volatility
    - QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
    - QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::fillVolatilityCube() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:637,1
    - Dst: swapLengths
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:638,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:639,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:643,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:644,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:646,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:646,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:648,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 635
    functionDepth: 1
    functionLinenumber: 635
    functionLinenumberEnd: 650
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::createSparseSmiles
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    - std::vector::reserve
    - push_back
    - optionTimes
    - swapLengths
    - std::vector::size
    - clear
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::createSparseSmiles() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:656,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:657,1
    - Dst: optionDates
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:663,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:664,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:669,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:669,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:670,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:673,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:677,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:677,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:678,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:680,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:688,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:688,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:690,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:690,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:692,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:694,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:696,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:698,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:701,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:702,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:720,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:721,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:728,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:730,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:732,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:754,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:763,1
    - Dst: Cube::setLayer
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:768,1
    - Dst: Cube::updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:769,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:771,1
    - Dst: localInterpolator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:771,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - ' atmOptionDate'
    - ' atmSwapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 774
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 2
    functionsReached:
    - shift
    - std::lower_bound
    - swapLength
    - timeFromReference
    - begin
    - swapTenors
    - optionDates
    - atmStrike
    - std::max
    - volatility
    - localInterpolator
    - size
    - Cube::updateInterpolators
    - end
    - Cube::setLayer
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> XabrSwaptionVolatilityCube<Model>::spreadVolInterpolation(\n
      \       const Date& atmOptionDate, const Period& atmSwapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:780,1
    - Dst: sabrParametersCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:782,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:783,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - ' sabrParametersCube'
    argTypes:
    - Time
    - Time
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 786
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 3
    functionsReached:
    - sabrParametersCube
    - shift
    - ext::shared_ptr<SmileSection>
    - calculate
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> XabrSwaptionVolatilityCube<Model>::smileSection(Time
      optionTime, Time swapLength,\n                                   const Cube&
      sabrParametersCube) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:792,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 795
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::smileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> XabrSwaptionVolatilityCube<Model>::smileSectionImpl(Time
      optionTime,\n                                       Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:798,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::sparseSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::sparseSabrParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:803,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 805
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::denseSabrParameters
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::denseSabrParameters() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:808,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 810
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::marketVolCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::marketVolCube() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:813,1
    - Dst: browse
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 815
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::volCubeAtmCalibrated
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - browse
    - calculate
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::volCubeAtmCalibrated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - beta
    - ' swapTenor'
    argTypes:
    - Real
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 817
    functionDepth: 1
    functionLinenumber: 817
    functionLinenumberEnd: 823
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(Real beta,\n
      \                                        const Period& swapTenor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:828,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:828,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:830,1
    - Dst: swapTenors
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:834,1
    - Dst: std::find
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:835,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:836,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:838,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:838,1
    - Dst: setElement
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:842,1
    - Dst: updateInterpolators
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:845,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:846,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:850,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:851,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - beta
    - ' swapTenor'
    argTypes:
    - std::vector<Real>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 825
    functionDepth: 2
    functionLinenumber: 825
    functionLinenumberEnd: 856
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::XabrSwaptionVolatilityCube<Model>::sabrCalibrationSection
    - notifyObservers
    - std::vector::begin
    - std::vector::end
    - swapTenors
    - updateInterpolators
    - QuantLib::XabrSwaptionVolatilityCube<Model>::fillVolatilityCube
    - std::find
    - std::vector::size
    - setElement
    - std::vector<Real>::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(const std::vector<Real>
      &beta,\n                                         const Period& swapTenor)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Period>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:862,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:864,1
    - Dst: std::vector<Period>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:866,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:869,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:869,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:870,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:871,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:872,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:872,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:874,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:875,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:875,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:878,1
    - Dst: optionTimes
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:879,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:881,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:882,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:883,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:884,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:885,1
    - Dst: betaInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:885,1
    - Dst: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - swapLengths
    - beta
    - swapTenor
    argTypes:
    - std::vector<Period>
    - std::vector<Real>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 858
    functionDepth: 1
    functionLinenumber: 858
    functionLinenumberEnd: 890
    functionName: QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 4
    functionsReached:
    - std::vector<Real>::size
    - optionDateFromTenor
    - timeFromReference
    - std::vector<Period>::size
    - std::vector<Real>::begin
    - std::vector::reserve
    - std::vector::begin
    - betaInterpolation
    - std::vector::end
    - optionTimes
    - QuantLib::XabrSwaptionVolatilityCube<Model>::recalibration
    - std::vector::front
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::recalibration(const std::vector<Period>
      &swapLengths,\n                                         const std::vector<Real>
      &beta,\n                                         const Period &swapTenor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:909,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:909,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:910,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:910,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:912,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:914,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:917,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:917,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:918,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:921,1
    - Dst: transpose
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:921,1
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:924,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:925,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:925,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:926,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:926,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:930,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:931,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:931,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:932,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:932,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:934,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:934,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:935,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:936,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:938,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 7
    argNames:
    - ' optionDates'
    - ' swapTenors'
    - ' optionTimes'
    - ' swapLengths'
    - nLayers
    - extrapolation
    - backwardFlat
    argTypes:
    - std::vector<Date>
    - std::vector<Period>
    - std::vector<Time>
    - std::vector<Time>
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 939
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::Cube(const std::vector<Date>&
      optionDates,\n                                    const std::vector<Period>&
      swapTenors,\n                                    const std::vector<Time>& optionTimes,\n
      \                                   const std::vector<Time>& swapLengths,\n
      \                                   Size nLayers,\n                                    bool
      extrapolation,\n                                    bool backwardFlat)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - Matrix
    - transpose
    - setPoints
    - size
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::Cube(const std::vector<Date>&
      optionDates,\n                                    const std::vector<Period>&
      swapTenors,\n                                    const std::vector<Time>& optionTimes,\n
      \                                   const std::vector<Time>& swapLengths,\n
      \                                   Size nLayers,\n                                    bool
      extrapolation,\n                                    bool backwardFlat)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:950,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:951,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:951,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:952,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:952,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:956,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:957,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:957,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:958,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:958,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:960,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:960,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:961,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:962,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:964,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 965
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::Cube(const Cube& o)
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - setPoints
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::Cube::Cube(const Cube& o)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:981,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:982,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:982,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:983,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:983,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:987,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:988,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:988,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:989,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:989,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:991,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:991,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:992,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:993,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - Cube
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 967
    functionDepth: 0
    functionLinenumber: 967
    functionLinenumberEnd: 997
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::operator=(const
      Cube& o)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - push_back
    - setPoints
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: typename XabrSwaptionVolatilityCube<Model>::Cube
    signature: "typename XabrSwaptionVolatilityCube<Model>::Cube &\n    XabrSwaptionVolatilityCube<Model>::Cube::operator=(const
      Cube& o)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1003,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1005,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1005,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1007,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - IndexOfLayer
    - IndexOfRow
    - IndexOfColumn
    - x
    argTypes:
    - Size
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1010
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setElement(Size IndexOfLayer,\n
      \                                                       Size IndexOfRow,\n                                                        Size
      IndexOfColumn,\n                                                        Real
      x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setElement(Size IndexOfLayer,\n
      \                                                       Size IndexOfRow,\n                                                        Size
      IndexOfColumn,\n                                                        Real
      x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1014,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1014,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1016,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Matrix>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1012
    functionDepth: 1
    functionLinenumber: 1012
    functionLinenumberEnd: 1022
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setPoints(\n                                               const
      std::vector<Matrix>& x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setPoints(\n                                               const
      std::vector<Matrix>& x)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1026,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1028,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ' x'
    argTypes:
    - Size
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1024
    functionDepth: 1
    functionLinenumber: 1024
    functionLinenumberEnd: 1034
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setLayer(Size i,\n                                                      const
      Matrix& x)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setLayer(Size i,\n                                                      const
      Matrix& x)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1044,1
    - Dst: std::binary_search
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1046,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1052,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1053,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1056,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1057,1
    - Dst: expandLayers
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1060,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - ' optionDate'
    - ' swapTenor'
    - optionTime
    - swapLength
    - ' point'
    argTypes:
    - Date
    - Period
    - Time
    - Time
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1037
    functionDepth: 0
    functionLinenumber: 1037
    functionLinenumberEnd: 1070
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::setPoint(const Date& optionDate,\n
      \                                                 const Period& swapTenor,\n
      \                                                 Time optionTime,\n                                                  Time
      swapLength,\n                                                  const std::vector<Real>&
      point)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - std::binary_search
    - begin
    - expandLayers
    - end
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::setPoint(const Date&
      optionDate,\n                                                  const Period&
      swapTenor,\n                                                  Time optionTime,\n
      \                                                 Time swapLength,\n                                                  const
      std::vector<Real>& point)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1074,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1074,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1075,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1075,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1078,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1078,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1079,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1082,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1082,1
    - Dst: insert
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1083,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1086,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1086,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1087,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1090,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1093,1
    - Dst: setPoints
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1100,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 4
    argNames:
    - i
    - expandOptionTimes
    - j
    - expandSwapLengths
    argTypes:
    - Size
    - bool
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1072
    functionDepth: 1
    functionLinenumber: 1072
    functionLinenumberEnd: 1101
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::expandLayers(Size i, bool
      expandOptionTimes,\n                                              Size j, bool
      expandSwapLengths)"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - rows
    - begin
    - Period
    - Matrix
    - Date
    - columns
    - setPoints
    - size
    - insert
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void XabrSwaptionVolatilityCube<Model>::Cube::expandLayers(Size i,
      bool expandOptionTimes,\n                                              Size
      j, bool expandSwapLengths)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1106
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::points() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Matrix>
    signature: "std::vector<Matrix> &\n    XabrSwaptionVolatilityCube<Model>::Cube::points()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1111,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1108
    functionDepth: 0
    functionLinenumber: 1108
    functionLinenumberEnd: 1115
    functionName: "XabrSwaptionVolatilityCube<Model>::Cube::operator()(\n                            const
      Time optionTime, const Time swapLength) const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> XabrSwaptionVolatilityCube<Model>::Cube::operator()(\n
      \                           const Time optionTime, const Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1120
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::optionTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    XabrSwaptionVolatilityCube<Model>::Cube::optionTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1122
    functionDepth: 0
    functionLinenumber: 1122
    functionLinenumberEnd: 1125
    functionName: "&\n    XabrSwaptionVolatilityCube<Model>::Cube::swapLengths() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    XabrSwaptionVolatilityCube<Model>::Cube::swapLengths()
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: transpose
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1129,1
    - Dst: ext::make_shared<BackwardflatLinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1133,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1134,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1134,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1135,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1135,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1139,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1140,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1140,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1141,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1141,1
    - Dst: ext::shared_ptr<Interpolation2D>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1143,1
    - Dst: FlatExtrapolator2D::FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1144,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1127
    functionDepth: 0
    functionLinenumber: 1127
    functionLinenumberEnd: 1147
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::updateInterpolators() const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Interpolation2D>
    - FlatExtrapolator2D::FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - begin
    - transpose
    - ext::make_shared<BackwardflatLinearInterpolation>
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void XabrSwaptionVolatilityCube<Model>::Cube::updateInterpolators()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1151,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1152,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1153,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1154,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp:1156,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1160
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1160
    functionName: XabrSwaptionVolatilityCube<Model>::Cube::browse() const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/sabrswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Matrix
    signature: Matrix XabrSwaptionVolatilityCube<Model>::Cube::browse() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' atmVolStructure'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - ' volSpreads'
    - ' swapIndexBase'
    - ' shortSwapIndexBase'
    - vegaWeightedSmileFit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::InterpolatedSwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSwaptionVolatilityCube::InterpolatedSwaptionVolatilityCube(\n
      \       const Handle<SwaptionVolatilityStructure>& atmVolStructure,\n        const
      std::vector<Period>& optionTenors,\n        const std::vector<Period>& swapTenors,\n
      \       const std::vector<Spread>& strikeSpreads,\n        const std::vector<std::vector<Handle<Quote>
      > >& volSpreads,\n        const ext::shared_ptr<SwapIndex>& swapIndexBase,\n
      \       const ext::shared_ptr<SwapIndex>& shortSwapIndexBase,\n        bool
      vegaWeightedSmileFit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:50,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:56,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:62,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:64,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 66
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 0
    functionsReached:
    - value
    - BilinearInterpolation
    - begin
    - QuantLib::SwaptionVolatilityCube::performCalculations
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedSwaptionVolatilityCube::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:72,1
    - Dst: optionDateFromTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:73,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:75,1
    - Dst: rounder
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:75,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:78,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:79,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:80,1
    - Dst: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 83
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 1
    functionsReached:
    - optionDateFromTime
    - tenor
    - calculate
    - QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    - static_cast<Integer>
    - rounder
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> InterpolatedSwaptionVolatilityCube::smileSectionImpl(Time
      optionTime,\n                                       Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:88,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:89,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:90,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:94,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:96,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:97,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:100,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:101,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:104,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:105,1
    - Dst: Linear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:110,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:111,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:112,1
    - Dst: InterpolatedSmileSection<Linear>::InterpolatedSmileSection<Linear>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 114
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 1
    functionsReached:
    - shift
    - swapLength
    - timeFromReference
    - calculate
    - std::vector::reserve
    - InterpolatedSmileSection<Linear>::InterpolatedSmileSection<Linear>
    - push_back
    - atmStrike
    - volatilityType
    - volatility
    - Linear
    - std::sqrt
    - Actual365Fixed
    - ext::shared_ptr<SmileSection>
    - reserve
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> InterpolatedSwaptionVolatilityCube::smileSectionImpl(const
      Date& optionDate,\n                                       const Period& swapTenor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' atmVolStructure'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - ' volSpreads'
    - ' swapIndexBase'
    - ' shortSwapIndexBase'
    - vegaWeightedSmileFit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::InterpolatedSwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 0
    functionsReached:
    - size
    - Matrix
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSwaptionVolatilityCube::InterpolatedSwaptionVolatilityCube(\n
      \       const Handle<SwaptionVolatilityStructure>& atmVolStructure,\n        const
      std::vector<Period>& optionTenors,\n        const std::vector<Period>& swapTenors,\n
      \       const std::vector<Spread>& strikeSpreads,\n        const std::vector<std::vector<Handle<Quote>
      > >& volSpreads,\n        const ext::shared_ptr<SwapIndex>& swapIndexBase,\n
      \       const ext::shared_ptr<SwapIndex>& shortSwapIndexBase,\n        bool
      vegaWeightedSmileFit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:50,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:56,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:62,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:62,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:64,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 66
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 0
    functionsReached:
    - value
    - BilinearInterpolation
    - begin
    - QuantLib::SwaptionVolatilityCube::performCalculations
    - enableExtrapolation
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedSwaptionVolatilityCube::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:72,1
    - Dst: optionDateFromTime
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:73,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:75,1
    - Dst: rounder
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:75,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:78,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:79,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:80,1
    - Dst: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 83
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 2
    functionsReached:
    - optionDateFromTime
    - tenor
    - calculate
    - QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    - static_cast<Integer>
    - rounder
    - fixingCalendar
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> InterpolatedSwaptionVolatilityCube::smileSectionImpl(Time
      optionTime,\n                                       Time swapLength) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:88,1
    - Dst: atmStrike
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:89,1
    - Dst: volatility
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:90,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:94,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:96,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:97,1
    - Dst: swapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:100,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:101,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:104,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:105,1
    - Dst: Linear
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:110,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:111,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:112,1
    - Dst: InterpolatedSmileSection<Linear>::InterpolatedSmileSection<Linear>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' optionDate'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 114
    functionName: QuantLib::InterpolatedSwaptionVolatilityCube::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.cpp
    functionUses: 2
    functionsReached:
    - shift
    - swapLength
    - timeFromReference
    - calculate
    - std::vector::reserve
    - InterpolatedSmileSection<Linear>::InterpolatedSmileSection<Linear>
    - push_back
    - atmStrike
    - volatilityType
    - volatility
    - Linear
    - std::sqrt
    - Actual365Fixed
    - ext::shared_ptr<SmileSection>
    - reserve
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> InterpolatedSwaptionVolatilityCube::smileSectionImpl(const
      Date& optionDate,\n                                       const Period& swapTenor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: "&\n    SwaptionVolatilityDiscrete::optionTenors() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    SwaptionVolatilityDiscrete::optionTenors()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: "&\n    SwaptionVolatilityDiscrete::optionDates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    SwaptionVolatilityDiscrete::optionDates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: "&\n    SwaptionVolatilityDiscrete::optionTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    SwaptionVolatilityDiscrete::optionTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: "&\n    SwaptionVolatilityDiscrete::swapTenors() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    SwaptionVolatilityDiscrete::swapTenors()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    SwaptionVolatilityDiscrete::swapLengths() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    SwaptionVolatilityDiscrete::swapLengths()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    - Dst: optionInterpolator_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::SwaptionVolatilityDiscrete::optionDateFromTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached:
    - Date
    - static_cast<Date::serial_type>
    - optionInterpolator_
    linkageType: ''
    returnType: Date
    signature: Date SwaptionVolatilityDiscrete::optionDateFromTime(Time optionTime)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: "&\n    SwaptionVolatilityDiscrete::optionTenors() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    SwaptionVolatilityDiscrete::optionTenors()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: "&\n    SwaptionVolatilityDiscrete::optionDates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    SwaptionVolatilityDiscrete::optionDates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: "&\n    SwaptionVolatilityDiscrete::optionTimes() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    SwaptionVolatilityDiscrete::optionTimes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: "&\n    SwaptionVolatilityDiscrete::swapTenors() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: "std::vector<Period> &\n    SwaptionVolatilityDiscrete::swapTenors()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: "&\n    SwaptionVolatilityDiscrete::swapLengths() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    SwaptionVolatilityDiscrete::swapLengths()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    - Dst: optionInterpolator_
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::SwaptionVolatilityDiscrete::optionDateFromTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvoldiscrete.hpp
    functionUses: 0
    functionsReached:
    - Date
    - static_cast<Date::serial_type>
    - optionInterpolator_
    linkageType: ''
    returnType: Date
    signature: Date SwaptionVolatilityDiscrete::optionDateFromTime(Time optionTime)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::CmsMarketCalibration::error
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real error() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::CmsMarketCalibration::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - beta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::CmsMarketCalibration::betaTransformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real betaTransformInverse(Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:79,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::CmsMarketCalibration::betaTransformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 18
    functionsReached:
    - std::exp
    - Real
    - std::max
    - std::fabs
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real betaTransformDirect(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - reversion
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CmsMarketCalibration::reversionTransformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real reversionTransformInverse(Real reversion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::CmsMarketCalibration::reversionTransformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 18
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real reversionTransformDirect(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::CmsMarketCalibration::error
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real error() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::CmsMarketCalibration::endCriteria
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - beta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::CmsMarketCalibration::betaTransformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 6
    functionsReached:
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real betaTransformInverse(Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:79,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: QuantLib::CmsMarketCalibration::betaTransformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 18
    functionsReached:
    - std::exp
    - Real
    - std::max
    - std::fabs
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real betaTransformDirect(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - reversion
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::CmsMarketCalibration::reversionTransformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real reversionTransformInverse(Real reversion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::CmsMarketCalibration::reversionTransformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarketcalibration.hpp
    functionUses: 18
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real reversionTransformDirect(Real y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& volSpreads(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & volSpreads(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& volSpreads(Size i) const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/interpolatedswaptionvolatilitycube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & volSpreads(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Gaussian1dSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Gaussian1dSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ts
    - t
    argTypes:
    - TermStructure
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Gaussian1dSwaptionVolatility::DateHelper::DateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DateHelper(const TermStructure &ts, const Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:75,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:76,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:77,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - date
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: operator()(Real date) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Date::serial_type>
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:83,1
    - Dst: operator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - date
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::Gaussian1dSwaptionVolatility::DateHelper::derivative
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - operator
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Gaussian1dSwaptionVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Gaussian1dSwaptionVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dSwaptionVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ts
    - t
    argTypes:
    - TermStructure
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Gaussian1dSwaptionVolatility::DateHelper::DateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DateHelper(const TermStructure &ts, const Time t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:75,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:76,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:77,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - date
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: operator()(Real date) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Date::serial_type>
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:83,1
    - Dst: operator
      Src: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - date
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::Gaussian1dSwaptionVolatility::DateHelper::derivative
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/gaussian1dswaptionvolatility.hpp
    functionUses: 0
    functionsReached:
    - operator
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:49,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:49,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:51,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:51,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:52,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:55,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:57,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:59,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:61,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:65,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 9
    argNames:
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    - bool
    - VolatilityType
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 70
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - empty
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - rows
    - begin
    - QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - columns
    - size
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Calendar& cal,\n                    BusinessDayConvention bdc,\n                    const
      std::vector<Period>& optionT,\n                    const std::vector<Period>&
      swapT,\n                    const std::vector<std::vector<Handle<Quote> > >&
      vols,\n                    const DayCounter& dc,\n                    const
      bool flatExtrapolation,\n                    const VolatilityType type,\n                    const
      std::vector<std::vector<Real> >& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:86,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:87,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:87,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:89,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:89,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:90,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:93,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:95,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:97,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:98,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:98,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:99,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:101,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:103,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    - bool
    - VolatilityType
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 108
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - empty
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - rows
    - begin
    - QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - columns
    - size
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Date& refDate,\n                    const Calendar& cal,\n                    BusinessDayConvention
      bdc,\n                    const std::vector<Period>& optionT,\n                    const
      std::vector<Period>& swapT,\n                    const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                    const DayCounter& dc,\n                    const
      bool flatExtrapolation,\n                    const VolatilityType type,\n                    const
      std::vector<std::vector<Real> >& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:123,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:123,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:124,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:124,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:130,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:131,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:131,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:133,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:136,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:141,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:142,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:142,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:143,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:145,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:146,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:146,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:147,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:147,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:151,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 9
    argNames:
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 156
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                        const
      Calendar& cal,\n                        BusinessDayConvention bdc,\n                        const
      std::vector<Period>& optionT,\n                        const std::vector<Period>&
      swapT,\n                        const Matrix& vols,\n                        const
      DayCounter& dc,\n                        const bool flatExtrapolation,\n                        const
      VolatilityType type,\n                        const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:172,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:173,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:173,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:179,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:180,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:180,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:181,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:181,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:182,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:185,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:190,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:191,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:191,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:192,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:194,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:194,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:195,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:195,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:196,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:196,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:198,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:200,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:203,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 10
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 205
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                        const
      Date& refDate,\n                        const Calendar& cal,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionT,\n                        const
      std::vector<Period>& swapT,\n                        const Matrix& vols,\n                        const
      DayCounter& dc,\n                        const bool flatExtrapolation,\n                        const
      VolatilityType type,\n                        const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:220,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:220,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:221,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:221,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:222,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:222,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:228,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:229,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:229,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:231,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:234,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:239,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:239,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:240,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:240,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:241,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:241,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:243,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:243,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:244,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:245,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:245,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:249,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:250,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 10
    argNames:
    - ' today'
    - ' calendar'
    - bdc
    - ' optionDates'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Date>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 254
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Date& today,\n                    const Calendar& calendar,\n                    BusinessDayConvention
      bdc,\n                    const std::vector<Date>& optionDates,\n                    const
      std::vector<Period>& swapT,\n                    const Matrix& vols,\n                    const
      DayCounter& dc,\n                    const bool flatExtrapolation,\n                    const
      VolatilityType type,\n                    const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:265,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:271,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - volRows
    - volsColumns
    - shiftRows
    - shiftsColumns
    argTypes:
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 285
    functionName: QuantLib::SwaptionVolatilityMatrix::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 5
    functionsReached:
    - Matrix
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::checkInputs(Size volRows,\n                                               Size
      volsColumns,\n                                               Size shiftRows,\n
      \                                              Size shiftsColumns) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:289,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:290,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 2
    functionsReached:
    - size
    - registerWith
    - front
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix::registerWithMarketData()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityDiscrete::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:296,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:299,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:300,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:301,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 294
    functionDepth: 3
    functionLinenumber: 294
    functionLinenumberEnd: 306
    functionName: QuantLib::SwaptionVolatilityMatrix::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - rows
    - QuantLib::SwaptionVolatilityDiscrete::performCalculations
    - columns
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityMatrix::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:323,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:324,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:326,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 327
    functionName: QuantLib::SwaptionVolatilityMatrix::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - shift
    - dayCounter
    - Null<Real>
    - QuantLib::SwaptionVolatilityMatrix::volatilityType
    - FlatSmileSection::FlatSmileSection
    - QuantLib::SwaptionVolatilityMatrix::volatilityImpl
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityMatrix::smileSectionImpl(Time
      optionTime,\n                                               Time swapLength)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:49,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:49,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:50,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:51,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:51,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:52,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:55,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:55,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:56,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:56,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:57,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:59,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:60,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:61,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:63,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:64,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:65,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:66,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:67,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 9
    argNames:
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    - bool
    - VolatilityType
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 70
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - empty
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - rows
    - begin
    - QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - columns
    - size
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Calendar& cal,\n                    BusinessDayConvention bdc,\n                    const
      std::vector<Period>& optionT,\n                    const std::vector<Period>&
      swapT,\n                    const std::vector<std::vector<Handle<Quote> > >&
      vols,\n                    const DayCounter& dc,\n                    const
      bool flatExtrapolation,\n                    const VolatilityType type,\n                    const
      std::vector<std::vector<Real> >& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:86,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:87,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:87,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:88,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:89,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:89,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:90,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:93,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:95,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:95,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:97,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:98,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:98,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:99,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:101,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:102,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:103,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:104,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    - bool
    - VolatilityType
    - std::vector<std::vector<Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 108
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - empty
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - rows
    - begin
    - QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - columns
    - size
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Date& refDate,\n                    const Calendar& cal,\n                    BusinessDayConvention
      bdc,\n                    const std::vector<Period>& optionT,\n                    const
      std::vector<Period>& swapT,\n                    const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                    const DayCounter& dc,\n                    const
      bool flatExtrapolation,\n                    const VolatilityType type,\n                    const
      std::vector<std::vector<Real> >& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:122,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:123,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:123,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:124,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:124,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:126,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:130,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:131,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:131,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:132,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:133,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:134,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:136,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:141,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:142,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:142,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:143,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:143,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:145,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:145,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:146,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:146,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:147,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:147,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:150,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:151,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:153,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 9
    argNames:
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 156
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                        const
      Calendar& cal,\n                        BusinessDayConvention bdc,\n                        const
      std::vector<Period>& optionT,\n                        const std::vector<Period>&
      swapT,\n                        const Matrix& vols,\n                        const
      DayCounter& dc,\n                        const bool flatExtrapolation,\n                        const
      VolatilityType type,\n                        const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:171,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:172,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:172,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:173,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:173,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:175,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:179,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:180,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:180,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:181,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:181,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:182,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:183,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:185,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:190,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:191,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:191,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:192,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:192,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:194,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:194,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:195,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:195,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:196,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:196,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:198,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:200,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:201,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:202,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:203,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 10
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' optionT'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 205
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                        const
      Date& refDate,\n                        const Calendar& cal,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionT,\n                        const
      std::vector<Period>& swapT,\n                        const Matrix& vols,\n                        const
      DayCounter& dc,\n                        const bool flatExtrapolation,\n                        const
      VolatilityType type,\n                        const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:220,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:220,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:221,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:221,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:222,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:222,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:224,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:228,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:229,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:229,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:231,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:232,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:234,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:239,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:239,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:240,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:240,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:241,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:241,1
    - Dst: FlatExtrapolator2D
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:243,1
    - Dst: ext::make_shared<BilinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:243,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:244,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:245,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:245,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:248,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:249,1
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:250,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:251,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 10
    argNames:
    - ' today'
    - ' calendar'
    - bdc
    - ' optionDates'
    - ' swapT'
    - ' vols'
    - ' dc'
    - flatExtrapolation
    - type
    - ' shifts'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Date>
    - std::vector<Period>
    - Matrix
    - DayCounter
    - bool
    - VolatilityType
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 254
    functionName: QuantLib::SwaptionVolatilityMatrix::SwaptionVolatilityMatrix
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - FlatExtrapolator2D
    - ext::make_shared<BilinearInterpolation>
    - BilinearInterpolation
    - resize
    - rows
    - begin
    - ext::shared_ptr<Quote>
    - QuantLib::SwaptionVolatilityMatrix::checkInputs
    - SimpleQuote::SimpleQuote
    - columns
    - Handle<Quote>
    - end
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::SwaptionVolatilityMatrix(\n                    const
      Date& today,\n                    const Calendar& calendar,\n                    BusinessDayConvention
      bdc,\n                    const std::vector<Date>& optionDates,\n                    const
      std::vector<Period>& swapT,\n                    const Matrix& vols,\n                    const
      DayCounter& dc,\n                    const bool flatExtrapolation,\n                    const
      VolatilityType type,\n                    const Matrix& shifts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:265,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:271,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - volRows
    - volsColumns
    - shiftRows
    - shiftsColumns
    argTypes:
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 285
    functionName: QuantLib::SwaptionVolatilityMatrix::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 10
    functionsReached:
    - Matrix
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityMatrix::checkInputs(Size volRows,\n                                               Size
      volsColumns,\n                                               Size shiftRows,\n
      \                                              Size shiftsColumns) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:289,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:290,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: QuantLib::SwaptionVolatilityMatrix::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 4
    functionsReached:
    - size
    - registerWith
    - front
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix::registerWithMarketData()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityDiscrete::performCalculations
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:296,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:299,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:300,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:301,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 294
    functionDepth: 3
    functionLinenumber: 294
    functionLinenumberEnd: 306
    functionName: QuantLib::SwaptionVolatilityMatrix::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - empty
    - value
    - rows
    - QuantLib::SwaptionVolatilityDiscrete::performCalculations
    - columns
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityMatrix::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityMatrix::volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:323,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:324,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: QuantLib::SwaptionVolatilityMatrix::volatilityType
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:325,1
    - Dst: shift
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:326,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 327
    functionName: QuantLib::SwaptionVolatilityMatrix::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolmatrix.cpp
    functionUses: 0
    functionsReached:
    - shift
    - dayCounter
    - Null<Real>
    - QuantLib::SwaptionVolatilityMatrix::volatilityType
    - FlatSmileSection::FlatSmileSection
    - QuantLib::SwaptionVolatilityMatrix::volatilityImpl
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> SwaptionVolatilityMatrix::smileSectionImpl(Time
      optionTime,\n                                               Time swapLength)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:40,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:41,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:47,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:49,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:51,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:64,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:67,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:74,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:76,1
    - Dst: QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 8
    argNames:
    - ' atmVol'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - volSpreads
    - swapIndexBase
    - shortSwapIndexBase
    - vegaWeightedSmileFit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 79
    functionName: QuantLib::SwaptionVolatilityCube::SwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::dayCounter
    - QuantLib::SwaptionVolatilityCube::calendar
    - tenor
    - empty
    - QuantLib::io::ordinal
    - std::move
    - registerWith
    - QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
    - size
    - businessDayConvention
    - enableExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityCube::SwaptionVolatilityCube(\n        const
      Handle<SwaptionVolatilityStructure>& atmVol,\n        const std::vector<Period>&
      optionTenors,\n        const std::vector<Period>& swapTenors,\n        const
      std::vector<Spread>& strikeSpreads,\n        std::vector<std::vector<Handle<Quote>
      > > volSpreads,\n        ext::shared_ptr<SwapIndex> swapIndexBase,\n        ext::shared_ptr<SwapIndex>
      shortSwapIndexBase,\n        bool vegaWeightedSmileFit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 1
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityCube::registerWithVolatilitySpread()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:93,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:94,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:95,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:95,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:97,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:98,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:99,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:100,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:101,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:102,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:103,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:104,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:107,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:107,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:109,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:110,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:111,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:112,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:113,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:114,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:115,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:119,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:120,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:120,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:122,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:123,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:124,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:125,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:126,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:127,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:128,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:129,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:132,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:132,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:134,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:135,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:136,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:137,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:138,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:139,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:140,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' optionD'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 144
    functionName: QuantLib::SwaptionVolatilityCube::atmStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 2
    functionsReached:
    - fixedLegConvention
    - iborIndex
    - QuantLib::SwaptionVolatilityCube::dayCounter
    - fixedLegTenor
    - tenor
    - discountingTermStructure
    - familyName
    - fixingDays
    - exogenousDiscount
    - SwapIndex
    - currency
    - fixingCalendar
    linkageType: ''
    returnType: Rate
    signature: "Rate SwaptionVolatilityCube::atmStrike(const Date& optionD,\n                                           const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SwaptionVolatilityCube::calendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:40,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:41,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:47,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:49,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:51,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:64,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:67,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:73,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:74,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:76,1
    - Dst: QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 8
    argNames:
    - ' atmVol'
    - ' optionTenors'
    - ' swapTenors'
    - ' strikeSpreads'
    - volSpreads
    - swapIndexBase
    - shortSwapIndexBase
    - vegaWeightedSmileFit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - std::vector<Period>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwapIndex>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 79
    functionName: QuantLib::SwaptionVolatilityCube::SwaptionVolatilityCube
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SwaptionVolatilityCube::dayCounter
    - QuantLib::SwaptionVolatilityCube::calendar
    - tenor
    - empty
    - QuantLib::io::ordinal
    - std::move
    - registerWith
    - QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
    - size
    - businessDayConvention
    - enableExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityCube::SwaptionVolatilityCube(\n        const
      Handle<SwaptionVolatilityStructure>& atmVol,\n        const std::vector<Period>&
      optionTenors,\n        const std::vector<Period>& swapTenors,\n        const
      std::vector<Spread>& strikeSpreads,\n        std::vector<std::vector<Handle<Quote>
      > > volSpreads,\n        ext::shared_ptr<SwapIndex> swapIndexBase,\n        ext::shared_ptr<SwapIndex>
      shortSwapIndexBase,\n        bool vegaWeightedSmileFit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::SwaptionVolatilityCube::registerWithVolatilitySpread
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void SwaptionVolatilityCube::registerWithVolatilitySpread()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:93,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:94,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:95,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:95,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:97,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:98,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:99,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:100,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:101,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:102,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:103,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:104,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:107,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:107,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:109,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:110,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:111,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:112,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:113,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:114,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:115,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:119,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:120,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:120,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:122,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:123,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:124,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:125,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:126,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:127,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:128,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:129,1
    - Dst: SwapIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:132,1
    - Dst: familyName
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:132,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:134,1
    - Dst: currency
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:135,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:136,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:137,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:138,1
    - Dst: QuantLib::SwaptionVolatilityCube::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:139,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp:140,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' optionD'
    - ' swapTenor'
    argTypes:
    - Date
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 144
    functionName: QuantLib::SwaptionVolatilityCube::atmStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolcube.cpp
    functionUses: 2
    functionsReached:
    - fixedLegConvention
    - iborIndex
    - QuantLib::SwaptionVolatilityCube::dayCounter
    - fixedLegTenor
    - tenor
    - discountingTermStructure
    - familyName
    - fixingDays
    - exogenousDiscount
    - SwapIndex
    - currency
    - fixingCalendar
    linkageType: ''
    returnType: Rate
    signature: "Rate SwaptionVolatilityCube::atmStrike(const Date& optionD,\n                                           const
      Period& swapTenor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' calendar'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                const
      Date& referenceDate,\n                                                const
      Calendar& calendar,\n                                                BusinessDayConvention
      bdc,\n                                                const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                Natural
      settlementDays,\n                                                const Calendar&
      calendar,\n                                                BusinessDayConvention
      bdc,\n                                                const DayCounter& dc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:48,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:48,1
    - Dst: units
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:50,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:52,1
    - Dst: static_cast<Time>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:54,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:56,1
    - Dst: units
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionVolatilityStructure::swapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 14
    functionsReached:
    - length
    - QL_FAIL
    - static_cast<Time>
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: Time SwaptionVolatilityStructure::swapLength(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:62,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::SwaptionVolatilityStructure::swapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 14
    functionsReached:
    - ClosestRounding
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time SwaptionVolatilityStructure::swapLength(const Date& start,\n
      \                                                const Date& end) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:72,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:74,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:74,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:75,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 26
    functionsReached:
    - length
    - allowsExtrapolation
    - maxSwapTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::checkSwapTenor(const Period& swapTenor,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:84,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:84,1
    - Dst: QuantLib::SwaptionVolatilityStructure::maxSwapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:85,1
    - Dst: QuantLib::SwaptionVolatilityStructure::maxSwapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 26
    functionsReached:
    - allowsExtrapolation
    - QuantLib::SwaptionVolatilityStructure::maxSwapLength
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::checkSwapTenor(Time swapLength,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' calendar'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                const
      Date& referenceDate,\n                                                const
      Calendar& calendar,\n                                                BusinessDayConvention
      bdc,\n                                                const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::SwaptionVolatilityStructure::SwaptionVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::SwaptionVolatilityStructure(\n                                                Natural
      settlementDays,\n                                                const Calendar&
      calendar,\n                                                BusinessDayConvention
      bdc,\n                                                const DayCounter& dc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:48,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:48,1
    - Dst: units
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:50,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:52,1
    - Dst: static_cast<Time>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:54,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:56,1
    - Dst: units
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::SwaptionVolatilityStructure::swapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 14
    functionsReached:
    - length
    - QL_FAIL
    - static_cast<Time>
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: Time SwaptionVolatilityStructure::swapLength(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:62,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::SwaptionVolatilityStructure::swapLength
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 14
    functionsReached:
    - ClosestRounding
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time SwaptionVolatilityStructure::swapLength(const Date& start,\n
      \                                                const Date& end) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:72,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:74,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:74,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:75,1
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' swapTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 26
    functionsReached:
    - length
    - allowsExtrapolation
    - maxSwapTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::checkSwapTenor(const Period& swapTenor,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:84,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:84,1
    - Dst: QuantLib::SwaptionVolatilityStructure::maxSwapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:85,1
    - Dst: QuantLib::SwaptionVolatilityStructure::maxSwapLength
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - swapLength
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: QuantLib::SwaptionVolatilityStructure::checkSwapTenor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionvolstructure.cpp
    functionUses: 26
    functionsReached:
    - allowsExtrapolation
    - QuantLib::SwaptionVolatilityStructure::maxSwapLength
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwaptionVolatilityStructure::checkSwapTenor(Time swapLength,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::CmsMarket::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& swapTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& swapLengths() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapLengths() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& impliedCmsSpreads()'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & impliedCmsSpreads()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& spreadErrors()'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & spreadErrors()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::CmsMarket::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& swapTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& swapLengths() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & swapLengths() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& impliedCmsSpreads()'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & impliedCmsSpreads()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& spreadErrors()'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/cmsmarket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix & spreadErrors()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(Natural
      settlementDays,\n                                                           const
      Calendar& cal,\n                                                           BusinessDayConvention
      bdc,\n                                                           Handle<Quote>
      vol,\n                                                           const DayCounter&
      dc,\n                                                           const VolatilityType
      type,\n                                                           const Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(const
      Date& referenceDate,\n                                                           const
      Calendar& cal,\n                                                           BusinessDayConvention
      bdc,\n                                                           Handle<Quote>
      vol,\n                                                           const DayCounter&
      dc,\n                                                           const VolatilityType
      type,\n                                                           const Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:65,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 66
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(\n                                                    Natural
      settlementDays,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc,\n
      \                                                   const VolatilityType type,\n
      \                                                   const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:78,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 79
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(\n                                                    const
      Date& referenceDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc,\n
      \                                                   const VolatilityType type,\n
      \                                                   const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:84,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:85,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:87,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionName: QuantLib::ConstantSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - value
    - Null<Rate>
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> ConstantSwaptionVolatility::smileSectionImpl(const
      Date& d,\n                                                 const Period&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:93,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 97
    functionName: QuantLib::ConstantSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    - Null<Rate>
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> ConstantSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                                 Time) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantSwaptionVolatility::volatilityImpl(const Date&,\n
      \                                                         const Period&,\n                                                          Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantSwaptionVolatility::volatilityImpl(Time,\n                                                          Time,\n
      \                                                         Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(Natural
      settlementDays,\n                                                           const
      Calendar& cal,\n                                                           BusinessDayConvention
      bdc,\n                                                           Handle<Quote>
      vol,\n                                                           const DayCounter&
      dc,\n                                                           const VolatilityType
      type,\n                                                           const Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(const
      Date& referenceDate,\n                                                           const
      Calendar& cal,\n                                                           BusinessDayConvention
      bdc,\n                                                           Handle<Quote>
      vol,\n                                                           const DayCounter&
      dc,\n                                                           const VolatilityType
      type,\n                                                           const Real
      shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:65,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 66
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(\n                                                    Natural
      settlementDays,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc,\n
      \                                                   const VolatilityType type,\n
      \                                                   const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:78,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    - type
    - shift
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 79
    functionName: QuantLib::ConstantSwaptionVolatility::ConstantSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantSwaptionVolatility::ConstantSwaptionVolatility(\n                                                    const
      Date& referenceDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc,\n
      \                                                   const VolatilityType type,\n
      \                                                   const Real shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:84,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:85,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:87,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionName: QuantLib::ConstantSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - value
    - Null<Rate>
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> ConstantSwaptionVolatility::smileSectionImpl(const
      Date& d,\n                                                 const Period&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:93,1
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    - Dst: FlatSmileSection::FlatSmileSection
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 97
    functionName: QuantLib::ConstantSwaptionVolatility::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    - Null<Rate>
    - dayCounter
    - FlatSmileSection::FlatSmileSection
    - ext::shared_ptr<SmileSection>
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> ConstantSwaptionVolatility::smileSectionImpl(Time
      optionTime,\n                                                 Time) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantSwaptionVolatility::volatilityImpl(const Date&,\n
      \                                                         const Period&,\n                                                          Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::ConstantSwaptionVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/swaption/swaptionconstantvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantSwaptionVolatility::volatilityImpl(Time,\n                                                          Time,\n
      \                                                         Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - localVol
    argTypes:
    - ext::shared_ptr<AndreasenHugeVolatilityInterpl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::AndreasenHugeLocalVolAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeLocalVolAdapter::AndreasenHugeLocalVolAdapter(\n
      \       ext::shared_ptr<AndreasenHugeVolatilityInterpl> localVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AndreasenHugeLocalVolAdapter::maxDate
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeLocalVolAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeLocalVolAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeLocalVolAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:46,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:47,1
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:47,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:48,1
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeLocalVolAdapter::minStrike
    - localVol
    - std::max
    - QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
    - std::min
    linkageType: ''
    returnType: Volatility
    signature: Volatility AndreasenHugeLocalVolAdapter::localVolImpl(Time t, Real
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Calendar
    signature: Calendar AndreasenHugeLocalVolAdapter::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter AndreasenHugeLocalVolAdapter::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& AndreasenHugeLocalVolAdapter::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Date
    signature: Date & AndreasenHugeLocalVolAdapter::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Natural
    signature: Natural AndreasenHugeLocalVolAdapter::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - localVol
    argTypes:
    - ext::shared_ptr<AndreasenHugeVolatilityInterpl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::AndreasenHugeLocalVolAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeLocalVolAdapter::AndreasenHugeLocalVolAdapter(\n
      \       ext::shared_ptr<AndreasenHugeVolatilityInterpl> localVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AndreasenHugeLocalVolAdapter::maxDate
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeLocalVolAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeLocalVolAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeLocalVolAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:46,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:47,1
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:47,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:48,1
    - Dst: QuantLib::AndreasenHugeLocalVolAdapter::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeLocalVolAdapter::minStrike
    - localVol
    - std::max
    - QuantLib::AndreasenHugeLocalVolAdapter::maxStrike
    - std::min
    linkageType: ''
    returnType: Volatility
    signature: Volatility AndreasenHugeLocalVolAdapter::localVolImpl(Time t, Real
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Calendar
    signature: Calendar AndreasenHugeLocalVolAdapter::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter AndreasenHugeLocalVolAdapter::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& AndreasenHugeLocalVolAdapter::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Date
    signature: Date & AndreasenHugeLocalVolAdapter::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::AndreasenHugeLocalVolAdapter::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugelocalvoladapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Natural
    signature: Natural AndreasenHugeLocalVolAdapter::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:32,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:41,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:44,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:49,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:55,1
    - Dst: QuantLib::BlackVarianceCurve::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' blackVolCurve'
    - dayCounter
    - forceMonotoneVariance
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Volatility>
    - DayCounter
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackVarianceCurve::BlackVarianceCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceCurve::setInterpolation
    - timeFromReference
    - std::vector<Real>
    - std::move
    - std::vector<Time>
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceCurve::BlackVarianceCurve(const Date& referenceDate,\n
      \                                          const std::vector<Date>& dates,\n
      \                                          const std::vector<Volatility>& blackVolCurve,\n
      \                                          DayCounter dayCounter,\n                                           bool
      forceMonotoneVariance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:65,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:66,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 71
    functionName: QuantLib::BlackVarianceCurve::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceCurve_
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::blackVarianceImpl(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:32,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:41,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:44,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:49,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:55,1
    - Dst: QuantLib::BlackVarianceCurve::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' blackVolCurve'
    - dayCounter
    - forceMonotoneVariance
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Volatility>
    - DayCounter
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackVarianceCurve::BlackVarianceCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceCurve::setInterpolation
    - timeFromReference
    - std::vector<Real>
    - std::move
    - std::vector<Time>
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceCurve::BlackVarianceCurve(const Date& referenceDate,\n
      \                                          const std::vector<Date>& dates,\n
      \                                          const std::vector<Volatility>& blackVolCurve,\n
      \                                          DayCounter dayCounter,\n                                           bool
      forceMonotoneVariance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:65,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:66,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 71
    functionName: QuantLib::BlackVarianceCurve::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceCurve_
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::blackVarianceImpl(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: '& LocalVolSurface::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & LocalVolSurface::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::LocalVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter LocalVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::LocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date LocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::LocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolSurface::minStrike
    linkageType: ''
    returnType: Real
    signature: Real LocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolSurface::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real LocalVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:53,1
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' blackTS'
    - riskFreeTS
    - dividendTS
    - underlying
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 60
    functionName: QuantLib::LocalVolSurface::LocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    - businessDayConvention
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalVolSurface::LocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                     Handle<YieldTermStructure> riskFreeTS,\n
      \                                    Handle<YieldTermStructure> dividendTS,\n
      \                                    Handle<Quote> underlying)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:66,1
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:66,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:67,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:68,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:69,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' blackTS'
    - riskFreeTS
    - dividendTS
    - underlying
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: QuantLib::LocalVolSurface::LocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    - std::move
    - ext::shared_ptr<Quote>
    - registerWith
    - businessDayConvention
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void LocalVolSurface::LocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                     Handle<YieldTermStructure> riskFreeTS,\n
      \                                    Handle<YieldTermStructure> dividendTS,\n
      \                                    Real underlying)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolSurface>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:75,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:77,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::LocalVolSurface::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<LocalVolSurface>*>
    - QuantLib::LocalVolTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void LocalVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:85,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:86,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:93,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:94,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:94,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:96,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:97,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:98,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:99,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:107,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:108,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:111,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:112,1
    - Dst: std::min<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:117,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:118,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:119,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:121,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:126,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:127,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:129,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:140,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - t
    - underlyingLevel
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 155
    functionName: QuantLib::LocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    - std::log
    - QL_ENSURE
    - Real
    - discount
    - std::fabs
    - blackVariance
    - std::sqrt
    - std::min<Time>
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolSurface::localVolImpl(Time t, Real underlyingLevel)\n
      \                                                                    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: '& LocalVolSurface::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & LocalVolSurface::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: QuantLib::LocalVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter LocalVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::LocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date LocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::LocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolSurface::minStrike
    linkageType: ''
    returnType: Real
    signature: Real LocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::LocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolSurface::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real LocalVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:53,1
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' blackTS'
    - riskFreeTS
    - dividendTS
    - underlying
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 60
    functionName: QuantLib::LocalVolSurface::LocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    - businessDayConvention
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalVolSurface::LocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                     Handle<YieldTermStructure> riskFreeTS,\n
      \                                    Handle<YieldTermStructure> dividendTS,\n
      \                                    Handle<Quote> underlying)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:66,1
    - Dst: QuantLib::LocalVolSurface::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:66,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:67,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:68,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:69,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' blackTS'
    - riskFreeTS
    - dividendTS
    - underlying
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: QuantLib::LocalVolSurface::LocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::dayCounter
    - std::move
    - ext::shared_ptr<Quote>
    - registerWith
    - businessDayConvention
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void LocalVolSurface::LocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                     Handle<YieldTermStructure> riskFreeTS,\n
      \                                    Handle<YieldTermStructure> dividendTS,\n
      \                                    Real underlying)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolSurface>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:75,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:77,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::LocalVolSurface::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<LocalVolSurface>*>
    - QuantLib::LocalVolTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void LocalVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:85,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:86,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:93,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:94,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:94,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:96,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:97,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:98,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:99,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:107,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:108,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:111,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:112,1
    - Dst: std::min<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:117,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:118,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:119,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:121,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:126,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:127,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:129,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:140,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - t
    - underlyingLevel
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 155
    functionName: QuantLib::LocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    - std::log
    - QL_ENSURE
    - Real
    - discount
    - std::fabs
    - blackVariance
    - std::sqrt
    - std::min<Time>
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolSurface::localVolImpl(Time t, Real underlyingLevel)\n
      \                                                                    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - volInterpl
    - eps
    argTypes:
    - ext::shared_ptr<AndreasenHugeVolatilityInterpl>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::AndreasenHugeVolatilityAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeVolatilityAdapter::AndreasenHugeVolatilityAdapter(\n
      \       ext::shared_ptr<AndreasenHugeVolatilityInterpl> volInterpl, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fwd
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:35,1
    - Dst: optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:41,1
    - Dst: blackFormulaImpliedStdDevLiRS
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:41,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:43,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 45
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - squared
    - Null<Real>
    - riskFreeRate
    - fwd
    - blackFormulaImpliedStdDevLiRS
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityAdapter::blackVarianceImpl(Time t, Real
      strike)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::maxDate
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeVolatilityAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::minStrike
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Calendar
    signature: Calendar AndreasenHugeVolatilityAdapter::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter AndreasenHugeVolatilityAdapter::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& AndreasenHugeVolatilityAdapter::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Date
    signature: Date & AndreasenHugeVolatilityAdapter::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Natural
    signature: Natural AndreasenHugeVolatilityAdapter::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - volInterpl
    - eps
    argTypes:
    - ext::shared_ptr<AndreasenHugeVolatilityInterpl>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::AndreasenHugeVolatilityAdapter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeVolatilityAdapter::AndreasenHugeVolatilityAdapter(\n
      \       ext::shared_ptr<AndreasenHugeVolatilityInterpl> volInterpl, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fwd
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:35,1
    - Dst: optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:41,1
    - Dst: blackFormulaImpliedStdDevLiRS
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:41,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:43,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 45
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - squared
    - Null<Real>
    - riskFreeRate
    - fwd
    - blackFormulaImpliedStdDevLiRS
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityAdapter::blackVarianceImpl(Time t, Real
      strike)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::maxDate
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeVolatilityAdapter::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::minStrike
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityAdapter::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityAdapter::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityAdapter::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Calendar
    signature: Calendar AndreasenHugeVolatilityAdapter::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter AndreasenHugeVolatilityAdapter::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& AndreasenHugeVolatilityAdapter::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Date
    signature: Date & AndreasenHugeVolatilityAdapter::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AndreasenHugeVolatilityAdapter::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityadapter.cpp
    functionUses: 0
    functionsReached:
    - riskFreeRate
    linkageType: ''
    returnType: Natural
    signature: Natural AndreasenHugeVolatilityAdapter::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BlackVolTermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackVolTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:220,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:221,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:222,1
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::BlackVolTermStructure::blackVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVolImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackVol(const Date& d,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:229,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:230,1
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::BlackVolTermStructure::blackVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVolImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackVol(Time t,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:237,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:238,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:239,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 241
    functionName: QuantLib::BlackVolTermStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVarianceImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackVariance(const Date& d,\n                                                     Real
      strike,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:246,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:247,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: QuantLib::BlackVolTermStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVarianceImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackVariance(Time t,\n                                                     Real
      strike,\n                                                     bool extrapolate)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:252,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:254,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 257
    functionName: QuantLib::BlackVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<BlackVolTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void BlackVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 264
    functionName: QuantLib::BlackVolatilityTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - blackVolImpl
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolatilityTermStructure::blackVarianceImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolatilityTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:267,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:269,1
    - Dst: QuantLib::BlackVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 266
    functionDepth: 2
    functionLinenumber: 266
    functionLinenumberEnd: 272
    functionName: QuantLib::BlackVolatilityTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<BlackVolatilityTermStructure>*>
    - auto*::visit
    - QuantLib::BlackVolTermStructure::accept
    linkageType: ''
    returnType: void
    signature: void BlackVolatilityTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:278,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: QuantLib::BlackVarianceTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVarianceTermStructure ::blackVolImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:283,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:285,1
    - Dst: QuantLib::BlackVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::BlackVarianceTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::BlackVolTermStructure::accept
    - dynamic_cast<Visitor<BlackVarianceTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void BlackVarianceTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BlackVolTermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackVolTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:220,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:221,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:222,1
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::BlackVolTermStructure::blackVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVolImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackVol(const Date& d,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:229,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:230,1
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::BlackVolTermStructure::blackVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVolImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackVol(Time t,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:237,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:238,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:239,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 241
    functionName: QuantLib::BlackVolTermStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVarianceImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackVariance(const Date& d,\n                                                     Real
      strike,\n                                                     bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:246,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:247,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: QuantLib::BlackVolTermStructure::blackVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - blackVarianceImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackVariance(Time t,\n                                                     Real
      strike,\n                                                     bool extrapolate)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:252,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:254,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 257
    functionName: QuantLib::BlackVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<BlackVolTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void BlackVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 264
    functionName: QuantLib::BlackVolatilityTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - blackVolImpl
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolatilityTermStructure::blackVarianceImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolatilityTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:267,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:269,1
    - Dst: QuantLib::BlackVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 266
    functionDepth: 2
    functionLinenumber: 266
    functionLinenumberEnd: 272
    functionName: QuantLib::BlackVolatilityTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<BlackVolatilityTermStructure>*>
    - auto*::visit
    - QuantLib::BlackVolTermStructure::accept
    linkageType: ''
    returnType: void
    signature: void BlackVolatilityTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:278,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: QuantLib::BlackVarianceTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVarianceTermStructure ::blackVolImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:283,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:285,1
    - Dst: QuantLib::BlackVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::BlackVarianceTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::BlackVolTermStructure::accept
    - dynamic_cast<Visitor<BlackVarianceTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void BlackVarianceTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' blackTS'
    - ' riskFreeTS'
    - ' dividendTS'
    - ' underlying'
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::NoExceptLocalVolSurface::NoExceptLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NoExceptLocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                const Handle<YieldTermStructure>&
      riskFreeTS,\n                                const Handle<YieldTermStructure>&
      dividendTS,\n                                const Handle<Quote>& underlying,\n
      \                               Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' blackTS'
    - ' riskFreeTS'
    - ' dividendTS'
    - underlying
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: QuantLib::NoExceptLocalVolSurface::NoExceptLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NoExceptLocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                const Handle<YieldTermStructure>&
      riskFreeTS,\n                                const Handle<YieldTermStructure>&
      dividendTS,\n                                Real underlying,\n                                Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::NoExceptLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::localVolImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility localVolImpl(Time t, Real s) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' blackTS'
    - ' riskFreeTS'
    - ' dividendTS'
    - ' underlying'
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::NoExceptLocalVolSurface::NoExceptLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NoExceptLocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                const Handle<YieldTermStructure>&
      riskFreeTS,\n                                const Handle<YieldTermStructure>&
      dividendTS,\n                                const Handle<Quote>& underlying,\n
      \                               Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' blackTS'
    - ' riskFreeTS'
    - ' dividendTS'
    - underlying
    - illegalLocalVolOverwrite
    argTypes:
    - Handle<BlackVolTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: QuantLib::NoExceptLocalVolSurface::NoExceptLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NoExceptLocalVolSurface(const Handle<BlackVolTermStructure>&
      blackTS,\n                                const Handle<YieldTermStructure>&
      riskFreeTS,\n                                const Handle<YieldTermStructure>&
      dividendTS,\n                                Real underlying,\n                                Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolSurface::localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - s
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: QuantLib::NoExceptLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/noexceptlocalvolsurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolSurface::localVolImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility localVolImpl(Time t, Real s) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::ImpliedVolTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - originalTS
    - ' referenceDate'
    argTypes:
    - Handle<BlackVolTermStructure>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::ImpliedVolTermStructure::ImpliedVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolTermStructure::ImpliedVolTermStructure(\n        Handle<BlackVolTermStructure>
      originalTS, const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::ImpliedVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ImpliedVolTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::ImpliedVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real ImpliedVolTermStructure::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::ImpliedVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real ImpliedVolTermStructure::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ImpliedVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:91,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 3
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::ImpliedVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<ImpliedVolTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void ImpliedVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:102,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:102,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:103,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 111
    functionName: QuantLib::ImpliedVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - blackForwardVariance
    - QuantLib::ImpliedVolTermStructure::dayCounter
    linkageType: ''
    returnType: Real
    signature: "Real ImpliedVolTermStructure::blackVarianceImpl(Time t,\n                                                           Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::ImpliedVolTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - originalTS
    - ' referenceDate'
    argTypes:
    - Handle<BlackVolTermStructure>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::ImpliedVolTermStructure::ImpliedVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolTermStructure::ImpliedVolTermStructure(\n        Handle<BlackVolTermStructure>
      originalTS, const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::ImpliedVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ImpliedVolTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::ImpliedVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real ImpliedVolTermStructure::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::ImpliedVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real ImpliedVolTermStructure::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ImpliedVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:91,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 3
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::ImpliedVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<ImpliedVolTermStructure>*>
    linkageType: ''
    returnType: void
    signature: void ImpliedVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedVolTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:102,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:102,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:103,1
    - Dst: blackForwardVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 111
    functionName: QuantLib::ImpliedVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - blackForwardVariance
    - QuantLib::ImpliedVolTermStructure::dayCounter
    linkageType: ''
    returnType: Real
    signature: "Real ImpliedVolTermStructure::blackVarianceImpl(Time t,\n                                                           Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:72,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:74,1
    - Dst: column_begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:75,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::FixedLocalVolSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - size
    - end
    - column_begin
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:72,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:73,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:74,1
    - Dst: column_begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:75,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::FixedLocalVolSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - size
    - end
    - column_begin
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:67,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:69,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:70,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::BlackVarianceCurve::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - update
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::BlackVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date BlackVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::BlackVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::BlackVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceCurve>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:105,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:107,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::BlackVarianceCurve::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<BlackVarianceCurve>*>
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVarianceCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:67,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:68,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:69,1
    - Dst: update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:70,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::BlackVarianceCurve::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - update
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::BlackVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date BlackVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::BlackVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::BlackVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceCurve::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceCurve>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:105,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:107,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: QuantLib::BlackVarianceCurve::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<BlackVarianceCurve>*>
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVarianceCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::LocalConstantVol::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::LocalConstantVol::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::LocalConstantVol::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::LocalConstantVol::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:80,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:80,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - volatility
    - dayCounter
    argTypes:
    - Date
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - std::move
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(const Date& referenceDate,\n
      \                                             Volatility volatility,\n                                              DayCounter
      dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:87,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - volatility
    - dayCounter
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(const Date& referenceDate,\n
      \                                             Handle<Quote> volatility,\n                                              DayCounter
      dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:96,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:96,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - volatility
    - dayCounter
    argTypes:
    - Natural
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - std::move
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(Natural settlementDays,\n
      \                                             const Calendar& calendar,\n                                              Volatility
      volatility,\n                                              DayCounter dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - volatility
    - dayCounter
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 106
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(Natural settlementDays,\n
      \                                             const Calendar& calendar,\n                                              Handle<Quote>
      volatility,\n                                              DayCounter dayCounter)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalConstantVol>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:109,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:111,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::LocalConstantVol::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::LocalVolTermStructure::accept
    - dynamic_cast<Visitor<LocalConstantVol>*>
    linkageType: ''
    returnType: void
    signature: void LocalConstantVol::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::LocalConstantVol::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility LocalConstantVol::localVolImpl(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::LocalConstantVol::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::LocalConstantVol::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::LocalConstantVol::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::LocalConstantVol::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:80,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:80,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' referenceDate'
    - volatility
    - dayCounter
    argTypes:
    - Date
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - std::move
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(const Date& referenceDate,\n
      \                                             Volatility volatility,\n                                              DayCounter
      dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:87,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - volatility
    - dayCounter
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(const Date& referenceDate,\n
      \                                             Handle<Quote> volatility,\n                                              DayCounter
      dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:96,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:96,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - volatility
    - dayCounter
    argTypes:
    - Natural
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - std::move
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(Natural settlementDays,\n
      \                                             const Calendar& calendar,\n                                              Volatility
      volatility,\n                                              DayCounter dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - volatility
    - dayCounter
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 106
    functionName: QuantLib::LocalConstantVol::LocalConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void LocalConstantVol::LocalConstantVol(Natural settlementDays,\n
      \                                             const Calendar& calendar,\n                                              Handle<Quote>
      volatility,\n                                              DayCounter dayCounter)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalConstantVol>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:109,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:111,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::LocalConstantVol::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::LocalVolTermStructure::accept
    - dynamic_cast<Visitor<LocalConstantVol>*>
    linkageType: ''
    returnType: void
    signature: void LocalConstantVol::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::LocalConstantVol::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localconstantvol.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility LocalConstantVol::localVolImpl(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:86,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(const Date& referenceDate,\n
      \                                             const Calendar& cal,\n                                              Volatility
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(const Date& referenceDate,\n
      \                                             const Calendar& cal,\n                                              Handle<Quote>
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:102,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(Natural settlementDays,\n
      \                                             const Calendar& cal,\n                                              Volatility
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:109,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(Natural settlementDays,\n
      \                                             const Calendar& cal,\n                                              Handle<Quote>
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::BlackConstantVol::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date BlackConstantVol::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::BlackConstantVol::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackConstantVol::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::BlackConstantVol::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackConstantVol::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackConstantVol>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:126,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:128,1
    - Dst: QuantLib::BlackVolatilityTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 131
    functionName: QuantLib::BlackConstantVol::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVolatilityTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<BlackConstantVol>*>
    linkageType: ''
    returnType: void
    signature: void BlackConstantVol::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::BlackConstantVol::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility BlackConstantVol::blackVolImpl(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:86,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(const Date& referenceDate,\n
      \                                             const Calendar& cal,\n                                              Volatility
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(const Date& referenceDate,\n
      \                                             const Calendar& cal,\n                                              Handle<Quote>
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:102,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(Natural settlementDays,\n
      \                                             const Calendar& cal,\n                                              Volatility
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:109,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - volatility
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: QuantLib::BlackConstantVol::BlackConstantVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackConstantVol::BlackConstantVol(Natural settlementDays,\n
      \                                             const Calendar& cal,\n                                              Handle<Quote>
      volatility,\n                                              const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::BlackConstantVol::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date BlackConstantVol::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::BlackConstantVol::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackConstantVol::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::BlackConstantVol::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackConstantVol::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackConstantVol>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:126,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:128,1
    - Dst: QuantLib::BlackVolatilityTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 131
    functionName: QuantLib::BlackConstantVol::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVolatilityTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<BlackConstantVol>*>
    linkageType: ''
    returnType: void
    signature: void BlackConstantVol::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::BlackConstantVol::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackconstantvol.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: Volatility BlackConstantVol::blackVolImpl(Time, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:36,1
    - Dst: QuantLib::LocalVolCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' curve'
    argTypes:
    - Handle<BlackVarianceCurve>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::LocalVolCurve::LocalVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - registerWith
    - QuantLib::LocalVolCurve::dayCounter
    linkageType: ''
    returnType: void
    signature: void LocalVolCurve(const Handle<BlackVarianceCurve>& curve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::calendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::LocalVolCurve::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LocalVolCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::LocalVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LocalVolCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::LocalVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::LocalVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolCurve>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:69,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:71,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::LocalVolCurve::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<LocalVolCurve>*>
    linkageType: ''
    returnType: void
    signature: void LocalVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:91,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - dummy
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::LocalVolCurve::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: Volatility
    signature: Volatility LocalVolCurve::localVolImpl(Time t, Real dummy) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:36,1
    - Dst: QuantLib::LocalVolCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' curve'
    argTypes:
    - Handle<BlackVarianceCurve>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: QuantLib::LocalVolCurve::LocalVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - businessDayConvention
    - registerWith
    - QuantLib::LocalVolCurve::dayCounter
    linkageType: ''
    returnType: void
    signature: void LocalVolCurve(const Handle<BlackVarianceCurve>& curve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& referenceDate() const override'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & referenceDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::calendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::LocalVolCurve::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LocalVolCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LocalVolCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LocalVolCurve::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::LocalVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LocalVolCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::LocalVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::LocalVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolCurve>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:69,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:71,1
    - Dst: QuantLib::LocalVolTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::LocalVolCurve::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LocalVolTermStructure::accept
    - auto*::visit
    - dynamic_cast<Visitor<LocalVolCurve>*>
    linkageType: ''
    returnType: void
    signature: void LocalVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:91,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - dummy
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: QuantLib::LocalVolCurve::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvolcurve.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: Volatility
    signature: Volatility LocalVolCurve::localVolImpl(Time t, Real dummy) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:44,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:48,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:51,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:54,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:56,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:58,1
    - Dst: QuantLib::BlackVarianceSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 8
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dates'
    - strikes
    - ' blackVolMatrix'
    - dayCounter
    - lowerEx
    - upperEx
    argTypes:
    - Date
    - Calendar
    - std::vector<Date>
    - std::vector<Real>
    - Matrix
    - DayCounter
    - BlackVarianceSurface::Extrapolation
    - BlackVarianceSurface::Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 65
    functionName: QuantLib::BlackVarianceSurface::BlackVarianceSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - rows
    - std::move
    - Matrix
    - columns
    - std::vector<Time>
    - size
    - back
    - QuantLib::BlackVarianceSurface::setInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceSurface::BlackVarianceSurface(const Date& referenceDate,\n
      \                                              const Calendar& cal,\n                                               const
      std::vector<Date>& dates,\n                                               std::vector<Real>
      strikes,\n                                               const Matrix& blackVolMatrix,\n
      \                                              DayCounter dayCounter,\n                                               BlackVarianceSurface::Extrapolation
      lowerEx,\n                                               BlackVarianceSurface::Extrapolation
      upperEx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:72,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:74,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:75,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:77,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:79,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:80,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:82,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:82,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackVarianceSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceSurface_
    - front
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceSurface::blackVarianceImpl(Time t, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:44,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:48,1
    - Dst: Matrix
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:51,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:54,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:56,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:58,1
    - Dst: QuantLib::BlackVarianceSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 8
    argNames:
    - ' referenceDate'
    - ' cal'
    - ' dates'
    - strikes
    - ' blackVolMatrix'
    - dayCounter
    - lowerEx
    - upperEx
    argTypes:
    - Date
    - Calendar
    - std::vector<Date>
    - std::vector<Real>
    - Matrix
    - DayCounter
    - BlackVarianceSurface::Extrapolation
    - BlackVarianceSurface::Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 65
    functionName: QuantLib::BlackVarianceSurface::BlackVarianceSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - rows
    - std::move
    - Matrix
    - columns
    - std::vector<Time>
    - size
    - back
    - QuantLib::BlackVarianceSurface::setInterpolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceSurface::BlackVarianceSurface(const Date& referenceDate,\n
      \                                              const Calendar& cal,\n                                               const
      std::vector<Date>& dates,\n                                               std::vector<Real>
      strikes,\n                                               const Matrix& blackVolMatrix,\n
      \                                              DayCounter dayCounter,\n                                               BlackVarianceSurface::Extrapolation
      lowerEx,\n                                               BlackVarianceSurface::Extrapolation
      upperEx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:72,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:74,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:75,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:77,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:79,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:80,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:82,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:82,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackVarianceSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceSurface_
    - front
    linkageType: ''
    returnType: Real
    signature: Real BlackVarianceSurface::blackVarianceImpl(Time t, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::close_enough_to
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close_enough_to(Real y, Size n=42)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::close_enough_to
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close_enough_to(Real y, Size n=42)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:65,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:67,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:70,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:70,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - marketNPVs
    - marketVegas
    - lnMarketStrikes
    - previousNPVs
    - ' mesher'
    - dT
    - interpolationType
    argTypes:
    - Array
    - Array
    - Array
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - Time
    - AndreasenHugeVolatilityInterpl::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionName: QuantLib::AndreasenHugeCostFunction::AndreasenHugeCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - mult
    - Array
    - std::move
    - FirstDerivativeOp
    - size
    - layout
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeCostFunction(\n            Array marketNPVs,\n            Array
      marketVegas,\n            Array lnMarketStrikes,\n            Array previousNPVs,\n
      \           const ext::shared_ptr<FdmMesherComposite>& mesher,\n            Time
      dT,\n            AndreasenHugeVolatilityInterpl::InterpolationType interpolationType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::AndreasenHugeCostFunction::d2CdK2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::apply
    linkageType: ''
    returnType: Array
    signature: Array d2CdK2(const Array& c) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:80,1
    - Dst: CubicNaturalSpline
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:87,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:92,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:95,1
    - Dst: Array::back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:97,1
    - Dst: BackwardFlatInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:99,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:103,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:106,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:107,1
    - Dst: index
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:108,1
    - Dst: location
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:109,1
    - Dst: sigInterpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:111,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:113,1
    - Dst: axpyb
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - dT
    - ' sig'
    - ' b'
    argTypes:
    - Time
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 121
    functionName: QuantLib::AndreasenHugeCostFunction::solveFor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - CubicNaturalSpline
    - location
    - back
    - Array::begin
    - Array
    - begin
    - LinearInterpolation
    - size
    - std::min
    - front
    - layout
    - mult
    - Array::end
    - std::max
    - QL_FAIL
    - index
    - sigInterpl
    - BackwardFlatInterpolation
    - end
    - axpyb
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array solveFor(Time dT, const Array& sig, const Array& b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::AndreasenHugeCostFunction::apply
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::apply
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& c) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:128,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:136,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:137,1
    - Dst: interpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 142
    functionName: QuantLib::AndreasenHugeCostFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - getFdm1dMeshers
    - QuantLib::AndreasenHugeCostFunction::solveFor
    - Array::begin
    - begin
    - Array::size
    - interpl
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& sig) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 3
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AndreasenHugeCostFunction::vegaCalibrationError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::values
    linkageType: ''
    returnType: Array
    signature: Array vegaCalibrationError(const Array& sig) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::AndreasenHugeCostFunction::initialValues
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:172,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - putCostFct
    - callCostFct
    argTypes:
    - ext::shared_ptr<AndreasenHugeCostFunction>
    - ext::shared_ptr<AndreasenHugeCostFunction>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::CombinedCostFunction::CombinedCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CombinedCostFunction(ext::shared_ptr<AndreasenHugeCostFunction>
      putCostFct,\n                             ext::shared_ptr<AndreasenHugeCostFunction>
      callCostFct)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:176,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:177,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:179,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:179,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:185,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:187,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: QuantLib::CombinedCostFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - std::copy
    - QuantLib::CombinedCostFunction::values
    - Array::begin
    - Array::end
    - QL_FAIL
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& sig) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:194,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:195,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:197,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:199,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:201,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: QuantLib::CombinedCostFunction::initialValues
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::CombinedCostFunction::initialValues
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:226,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:226,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:231,1
    - Dst: first::exercise
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:234,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:236,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:236,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:239,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:240,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:243,1
    - Dst: first::payoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:245,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:247,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:248,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:250,1
    - Dst: ext::make_shared<VanillaOption>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:250,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:252,1
    - Dst: assign
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: assign
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:258,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:258,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:259,1
    - Dst: std::vector< std::vector<Size> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:261,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:264,1
    - Dst: first::exercise
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:266,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: std::set::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:271,1
    - Dst: first::payoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:272,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:274,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:274,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: close_enough_to
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:276,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:281,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:282,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 11
    argNames:
    - ' calibrationSet'
    - spot
    - rTS
    - qTS
    - interplationType
    - calibrationType
    - nGridPoints
    - _minStrike
    - _maxStrike
    - optimizationMethod
    - ' endCriteria'
    argTypes:
    - CalibrationSet
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - InterpolationType
    - CalibrationType
    - Size
    - Real
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 284
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::AndreasenHugeVolatilityInterpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<VanillaOption>
    - std::set::size
    - first::payoff
    - registerWith
    - ext::shared_ptr::lastDate
    - empty
    - first::exercise
    - std::set::lower_bound
    - begin
    - assign
    - std::vector<Size>
    - size
    - ext::shared_ptr::strike
    - std::find_if
    - Null<Size>
    - ext::shared_ptr::type
    - emplace_back
    - std::set::begin
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector< std::vector<Size> >
    - close_enough_to
    - end
    - reserve
    - QL_REQUIRE
    - std::distance
    - resize
    - std::move
    - std::set::insert
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeVolatilityInterpl::AndreasenHugeVolatilityInterpl(\n
      \       const CalibrationSet& calibrationSet,\n        Handle<Quote> spot,\n
      \       Handle<YieldTermStructure> rTS,\n        Handle<YieldTermStructure>
      qTS,\n        InterpolationType interplationType,\n        CalibrationType calibrationType,\n
      \       Size nGridPoints,\n        Real _minStrike,\n        Real _maxStrike,\n
      \       ext::shared_ptr<OptimizationMethod> optimizationMethod,\n        const
      EndCriteria& endCriteria)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<AndreasenHugeCostFunction>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:294,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:298,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:299,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:299,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:301,1
    - Dst: std::count_if
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:302,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:303,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:311,1
    - Dst: second::value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:317,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:322,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:323,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:327,1
    - Dst: ext::make_shared<AndreasenHugeCostFunction>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:331,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 3
    argNames:
    - iExpiry
    - optionType
    - ' previousNPVs'
    argTypes:
    - Size
    - Option::Type
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 339
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - value
    - Null<Size>
    - std::log
    - BlackCalculator::vega
    - second::value
    - ext::shared_ptr<AndreasenHugeCostFunction>
    - begin
    - ext::make_shared<AndreasenHugeCostFunction>
    - discount
    - std::count_if
    - BlackCalculator::value
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: ext::shared_ptr<AndreasenHugeCostFunction>
    signature: "ext::shared_ptr<AndreasenHugeCostFunction> AndreasenHugeVolatilityInterpl::buildCostFunction(\n
      \       Size iExpiry, Option::Type optionType,\n        const Array& previousNPVs)
      const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:346,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:347,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:349,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:349,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:354,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:355,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:359,1
    - Dst: locations
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:361,1
    - Dst: Exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:362,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:362,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:364,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:365,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:368,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:371,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:377,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:378,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:379,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:382,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:384,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:386,1
    - Dst: CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:392,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:394,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:396,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:403,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:405,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:409,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:411,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:413,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:414,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:414,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:416,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:417,1
    - Dst: Abs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:422,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:422,1
    - Dst: Abs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:425,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:425,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:428,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:433,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:435,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:439,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:441,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:444,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 445
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - ext::make_shared<Concentrating1dMesher>
    - dayCounter
    - ext::shared_ptr::solveFor
    - ext::make_shared<FdmMesherComposite>
    - Real
    - Problem::currentValue
    - clear
    - QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
    - referenceDate
    - QuantLib::AndreasenHugeVolatilityInterpl::minStrike
    - Array::begin
    - Exp
    - std::fabs
    - minimize
    - size
    - std::min
    - std::pair<Real, Real>
    - ext::shared_ptr::vegaCalibrationError
    - DayCounter::yearFraction
    - value
    - std::exp
    - Array::end
    - locations
    - CombinedCostFunction::initialValues
    - push_back
    - std::max
    - Abs
    - PlainVanillaPayoff
    - QL_FAIL
    - reserve
    - QL_REQUIRE
    - std::log
    - QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
    - discount
    - Array::size
    - std::accumulate
    - std::max_element
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void AndreasenHugeVolatilityInterpl::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeVolatilityInterpl::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:452,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 454
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - front
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:457,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 459
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - back
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::fwd
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - discount
    - value
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::fwd(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 468
    functionName: "&\n    AndreasenHugeVolatilityInterpl::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    AndreasenHugeVolatilityInterpl::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:472,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 475
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::calibrationError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::make_tuple
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> AndreasenHugeVolatilityInterpl::calibrationError()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:478,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:478,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:479,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:479,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:480,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:481,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 482
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - std::min<Size>
    - begin
    - end
    - size
    - std::upper_bound
    - std::distance
    linkageType: ''
    returnType: Size
    signature: Size AndreasenHugeVolatilityInterpl::getExerciseTimeIdx(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<0>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:487,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:488,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:490,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:491,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:491,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - ' f'
    argTypes:
    - Real
    - TimeValueCacheType::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 494
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::get<2>
    - std::max
    - std::get<0>
    - end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityInterpl::getCacheValue(\n        Real
      strike, const TimeValueCacheType::const_iterator& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:499,1
    - Dst: costFunction::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - optionType
    argTypes:
    - Time
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 506
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    - costFunction::solveFor
    linkageType: ''
    returnType: Array
    signature: "Array AndreasenHugeVolatilityInterpl::getPriceSlice(\n        Time
      t, Option::Type optionType) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:511,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:513,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:515,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:516,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:518,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:529,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:537,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:541,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:544,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:547,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:547,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:549,1
    - Dst: ext::make_shared<CubicNaturalSpline>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:551,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:552,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:552,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:553,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:555,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - t
    - strike
    - optionType
    argTypes:
    - Time
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 508
    functionDepth: 2
    functionLinenumber: 508
    functionLinenumberEnd: 556
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::begin
    - find
    - calculate
    - QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
    - value
    - begin
    - QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
    - discount
    - QL_FAIL
    - ext::make_shared<CubicNaturalSpline>
    - QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    - std::get<0>
    - end
    - std::make_tuple
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityInterpl::optionPrice(\n        Time t,
      Real strike, Option::Type optionType) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:561,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:573,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:576,1
    - Dst: ext::shared_ptr::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:577,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:578,1
    - Dst: ext::shared_ptr::d2CdK2
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:580,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:582,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:584,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - t
    - optionType
    argTypes:
    - Time
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 589
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::apply
    - QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    - ext::shared_ptr::solveFor
    - ext::shared_ptr::d2CdK2
    - std::isfinite
    - Array::size
    - Sqrt
    linkageType: ''
    returnType: Array
    signature: "Array AndreasenHugeVolatilityInterpl::getLocalVolSlice(\n        Time
      t, Option::Type optionType) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:593,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:595,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:596,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:598,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:601,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:601,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:605,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:606,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:608,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:614,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:617,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:620,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:625,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:627,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:628,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:628,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:629,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:631,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 632
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<LinearInterpolation>
    - ext::make_shared<Array>
    - find
    - calculate
    - value
    - std::make_tuple
    - ext::shared_ptr::begin
    - begin
    - QuantLib::AndreasenHugeVolatilityInterpl::localVol
    - QL_FAIL
    - discount
    - size
    - QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    - ext::shared_ptr::size
    - end
    - QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
    linkageType: ''
    returnType: Volatility
    signature: "Volatility AndreasenHugeVolatilityInterpl::localVol(Time t, Real strike)\n
      \   const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::close_enough_to
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close_enough_to(Real y, Size n=42)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::close_enough_to
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close_enough_to(Real y, Size n=42)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:65,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:67,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:70,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:70,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - marketNPVs
    - marketVegas
    - lnMarketStrikes
    - previousNPVs
    - ' mesher'
    - dT
    - interpolationType
    argTypes:
    - Array
    - Array
    - Array
    - Array
    - ext::shared_ptr<FdmMesherComposite>
    - Time
    - AndreasenHugeVolatilityInterpl::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionName: QuantLib::AndreasenHugeCostFunction::AndreasenHugeCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - mult
    - Array
    - std::move
    - FirstDerivativeOp
    - size
    - layout
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeCostFunction(\n            Array marketNPVs,\n            Array
      marketVegas,\n            Array lnMarketStrikes,\n            Array previousNPVs,\n
      \           const ext::shared_ptr<FdmMesherComposite>& mesher,\n            Time
      dT,\n            AndreasenHugeVolatilityInterpl::InterpolationType interpolationType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::AndreasenHugeCostFunction::d2CdK2
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::apply
    linkageType: ''
    returnType: Array
    signature: Array d2CdK2(const Array& c) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:80,1
    - Dst: CubicNaturalSpline
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:85,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:87,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:90,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:91,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:91,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:92,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:95,1
    - Dst: Array::back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:97,1
    - Dst: BackwardFlatInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:99,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:103,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:106,1
    - Dst: layout
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:107,1
    - Dst: index
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:108,1
    - Dst: location
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:109,1
    - Dst: sigInterpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:111,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:112,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:113,1
    - Dst: axpyb
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:118,1
    - Dst: mult
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:119,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - dT
    - ' sig'
    - ' b'
    argTypes:
    - Time
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 121
    functionName: QuantLib::AndreasenHugeCostFunction::solveFor
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - Array::back
    - CubicNaturalSpline
    - location
    - back
    - Array::begin
    - Array
    - begin
    - LinearInterpolation
    - size
    - std::min
    - front
    - layout
    - mult
    - Array::end
    - std::max
    - QL_FAIL
    - index
    - sigInterpl
    - BackwardFlatInterpolation
    - end
    - axpyb
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array solveFor(Time dT, const Array& sig, const Array& b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::AndreasenHugeCostFunction::apply
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::apply
    linkageType: ''
    returnType: Array
    signature: Array apply(const Array& c) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:128,1
    - Dst: getFdm1dMeshers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:134,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:136,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:137,1
    - Dst: interpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 142
    functionName: QuantLib::AndreasenHugeCostFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - getFdm1dMeshers
    - QuantLib::AndreasenHugeCostFunction::solveFor
    - Array::begin
    - begin
    - Array::size
    - interpl
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& sig) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 3
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AndreasenHugeCostFunction::vegaCalibrationError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AndreasenHugeCostFunction::values
    linkageType: ''
    returnType: Array
    signature: Array vegaCalibrationError(const Array& sig) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::AndreasenHugeCostFunction::initialValues
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:172,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - putCostFct
    - callCostFct
    argTypes:
    - ext::shared_ptr<AndreasenHugeCostFunction>
    - ext::shared_ptr<AndreasenHugeCostFunction>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::CombinedCostFunction::CombinedCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CombinedCostFunction(ext::shared_ptr<AndreasenHugeCostFunction>
      putCostFct,\n                             ext::shared_ptr<AndreasenHugeCostFunction>
      callCostFct)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:176,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:177,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:179,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:179,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:180,1
    - Dst: std::copy
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:181,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:185,1
    - Dst: QuantLib::CombinedCostFunction::values
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:187,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' sig'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: QuantLib::CombinedCostFunction::values
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - std::copy
    - QuantLib::CombinedCostFunction::values
    - Array::begin
    - Array::end
    - QL_FAIL
    - Array::size
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& sig) const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:194,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:195,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:197,1
    - Dst: QuantLib::CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:199,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:201,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: QuantLib::CombinedCostFunction::initialValues
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - QuantLib::CombinedCostFunction::initialValues
    linkageType: ''
    returnType: Array
    signature: Array initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:222,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:226,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:226,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:231,1
    - Dst: first::exercise
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:234,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:236,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:236,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:239,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:240,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:243,1
    - Dst: first::payoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:245,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:247,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:248,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:250,1
    - Dst: ext::make_shared<VanillaOption>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:250,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:252,1
    - Dst: assign
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:255,1
    - Dst: assign
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:256,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:258,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:258,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:259,1
    - Dst: std::vector< std::vector<Size> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:261,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:262,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:264,1
    - Dst: first::exercise
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:266,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: std::set::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:268,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:271,1
    - Dst: first::payoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:272,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:274,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:274,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:275,1
    - Dst: close_enough_to
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:276,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:281,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:282,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 11
    argNames:
    - ' calibrationSet'
    - spot
    - rTS
    - qTS
    - interplationType
    - calibrationType
    - nGridPoints
    - _minStrike
    - _maxStrike
    - optimizationMethod
    - ' endCriteria'
    argTypes:
    - CalibrationSet
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - InterpolationType
    - CalibrationType
    - Size
    - Real
    - Real
    - ext::shared_ptr<OptimizationMethod>
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 284
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::AndreasenHugeVolatilityInterpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<VanillaOption>
    - std::set::size
    - first::payoff
    - registerWith
    - ext::shared_ptr::lastDate
    - empty
    - first::exercise
    - std::set::lower_bound
    - begin
    - assign
    - std::vector<Size>
    - size
    - ext::shared_ptr::strike
    - std::find_if
    - Null<Size>
    - ext::shared_ptr::type
    - emplace_back
    - std::set::begin
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector< std::vector<Size> >
    - close_enough_to
    - end
    - reserve
    - QL_REQUIRE
    - std::distance
    - resize
    - std::move
    - std::set::insert
    - std::set::end
    linkageType: ''
    returnType: void
    signature: "void AndreasenHugeVolatilityInterpl::AndreasenHugeVolatilityInterpl(\n
      \       const CalibrationSet& calibrationSet,\n        Handle<Quote> spot,\n
      \       Handle<YieldTermStructure> rTS,\n        Handle<YieldTermStructure>
      qTS,\n        InterpolationType interplationType,\n        CalibrationType calibrationType,\n
      \       Size nGridPoints,\n        Real _minStrike,\n        Real _maxStrike,\n
      \       ext::shared_ptr<OptimizationMethod> optimizationMethod,\n        const
      EndCriteria& endCriteria)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<AndreasenHugeCostFunction>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:294,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:298,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:299,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:299,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:301,1
    - Dst: std::count_if
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:302,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:303,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:311,1
    - Dst: second::value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:317,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:322,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:323,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:327,1
    - Dst: ext::make_shared<AndreasenHugeCostFunction>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:331,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 3
    argNames:
    - iExpiry
    - optionType
    - ' previousNPVs'
    argTypes:
    - Size
    - Option::Type
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 339
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - value
    - Null<Size>
    - std::log
    - BlackCalculator::vega
    - second::value
    - ext::shared_ptr<AndreasenHugeCostFunction>
    - begin
    - ext::make_shared<AndreasenHugeCostFunction>
    - discount
    - std::count_if
    - BlackCalculator::value
    - std::sqrt
    - size
    - end
    linkageType: ''
    returnType: ext::shared_ptr<AndreasenHugeCostFunction>
    signature: "ext::shared_ptr<AndreasenHugeCostFunction> AndreasenHugeVolatilityInterpl::buildCostFunction(\n
      \       Size iExpiry, Option::Type optionType,\n        const Array& previousNPVs)
      const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:343,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:346,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:347,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:349,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:349,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:354,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:355,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:356,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:357,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:359,1
    - Dst: locations
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:361,1
    - Dst: Exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:362,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:362,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:364,1
    - Dst: clear
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:365,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:368,1
    - Dst: reserve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:371,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:377,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:378,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:379,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:382,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:384,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:386,1
    - Dst: CombinedCostFunction::initialValues
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:392,1
    - Dst: minimize
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:394,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:396,1
    - Dst: push_back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:403,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:405,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:409,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:411,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:413,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:414,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:414,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:416,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:417,1
    - Dst: Abs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:422,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:422,1
    - Dst: Abs
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:425,1
    - Dst: ext::shared_ptr::vegaCalibrationError
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:425,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:428,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:432,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:433,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:434,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:435,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: Array::end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:436,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:439,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:441,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:444,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 445
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - ext::make_shared<Concentrating1dMesher>
    - dayCounter
    - ext::shared_ptr::solveFor
    - ext::make_shared<FdmMesherComposite>
    - Real
    - Problem::currentValue
    - clear
    - QuantLib::AndreasenHugeVolatilityInterpl::buildCostFunction
    - referenceDate
    - QuantLib::AndreasenHugeVolatilityInterpl::minStrike
    - Array::begin
    - Exp
    - std::fabs
    - minimize
    - size
    - std::min
    - std::pair<Real, Real>
    - ext::shared_ptr::vegaCalibrationError
    - DayCounter::yearFraction
    - value
    - std::exp
    - Array::end
    - locations
    - CombinedCostFunction::initialValues
    - push_back
    - std::max
    - Abs
    - PlainVanillaPayoff
    - QL_FAIL
    - reserve
    - QL_REQUIRE
    - std::log
    - QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
    - discount
    - Array::size
    - std::accumulate
    - std::max_element
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void AndreasenHugeVolatilityInterpl::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date AndreasenHugeVolatilityInterpl::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:452,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 454
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - front
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:457,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 459
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - back
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::fwd
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - discount
    - value
    linkageType: ''
    returnType: Real
    signature: Real AndreasenHugeVolatilityInterpl::fwd(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 468
    functionName: "&\n    AndreasenHugeVolatilityInterpl::riskFreeRate() const"
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: "Handle<YieldTermStructure> &\n    AndreasenHugeVolatilityInterpl::riskFreeRate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:472,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 475
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::calibrationError
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::make_tuple
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> AndreasenHugeVolatilityInterpl::calibrationError()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:478,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:478,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:479,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:479,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:480,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:481,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 482
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - std::min<Size>
    - begin
    - end
    - size
    - std::upper_bound
    - std::distance
    linkageType: ''
    returnType: Size
    signature: Size AndreasenHugeVolatilityInterpl::getExerciseTimeIdx(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<0>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:487,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:488,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:490,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:491,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:491,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - ' f'
    argTypes:
    - Real
    - TimeValueCacheType::const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 494
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - std::log
    - std::get<2>
    - std::max
    - std::get<0>
    - end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityInterpl::getCacheValue(\n        Real
      strike, const TimeValueCacheType::const_iterator& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:499,1
    - Dst: costFunction::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - optionType
    argTypes:
    - Time
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 506
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    - costFunction::solveFor
    linkageType: ''
    returnType: Array
    signature: "Array AndreasenHugeVolatilityInterpl::getPriceSlice(\n        Time
      t, Option::Type optionType) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:511,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:513,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:515,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:516,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:518,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:529,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:537,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:541,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:544,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:547,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:547,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:549,1
    - Dst: ext::make_shared<CubicNaturalSpline>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:551,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:552,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:552,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:553,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:555,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - t
    - strike
    - optionType
    argTypes:
    - Time
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 508
    functionDepth: 2
    functionLinenumber: 508
    functionLinenumberEnd: 556
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - ext::shared_ptr::begin
    - find
    - calculate
    - QuantLib::AndreasenHugeVolatilityInterpl::getPriceSlice
    - value
    - begin
    - QuantLib::AndreasenHugeVolatilityInterpl::optionPrice
    - discount
    - QL_FAIL
    - ext::make_shared<CubicNaturalSpline>
    - QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    - std::get<0>
    - end
    - std::make_tuple
    linkageType: ''
    returnType: Real
    signature: "Real AndreasenHugeVolatilityInterpl::optionPrice(\n        Time t,
      Real strike, Option::Type optionType) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:561,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:573,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:576,1
    - Dst: ext::shared_ptr::apply
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:577,1
    - Dst: ext::shared_ptr::solveFor
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:578,1
    - Dst: ext::shared_ptr::d2CdK2
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:580,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:582,1
    - Dst: Array::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:584,1
    - Dst: std::isfinite
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - t
    - optionType
    argTypes:
    - Time
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 589
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::apply
    - QuantLib::AndreasenHugeVolatilityInterpl::getExerciseTimeIdx
    - ext::shared_ptr::solveFor
    - ext::shared_ptr::d2CdK2
    - std::isfinite
    - Array::size
    - Sqrt
    linkageType: ''
    returnType: Array
    signature: "Array AndreasenHugeVolatilityInterpl::getLocalVolSlice(\n        Time
      t, Option::Type optionType) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:593,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:595,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:596,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:598,1
    - Dst: ext::make_shared<Array>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:601,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:601,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:605,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:606,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:608,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:614,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:617,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:620,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:623,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:625,1
    - Dst: ext::make_shared<LinearInterpolation>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:627,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:628,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:628,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:629,1
    - Dst: QuantLib::AndreasenHugeVolatilityInterpl::localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp:631,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 632
    functionName: QuantLib::AndreasenHugeVolatilityInterpl::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/andreasenhugevolatilityinterpl.cpp
    functionUses: 2
    functionsReached:
    - ext::make_shared<LinearInterpolation>
    - ext::make_shared<Array>
    - find
    - calculate
    - value
    - std::make_tuple
    - ext::shared_ptr::begin
    - begin
    - QuantLib::AndreasenHugeVolatilityInterpl::localVol
    - QL_FAIL
    - discount
    - size
    - QuantLib::AndreasenHugeVolatilityInterpl::getCacheValue
    - ext::shared_ptr::size
    - end
    - QuantLib::AndreasenHugeVolatilityInterpl::getLocalVolSlice
    linkageType: ''
    returnType: Volatility
    signature: "Volatility AndreasenHugeVolatilityInterpl::localVol(Time t, Real strike)\n
      \   const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - maturity
    - vol
    - discount
    - npv
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::blackValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real blackValue(Option::Type optionType, Real strike,\n                        Real
      forward, Real maturity,\n                        Volatility vol, Real discount,
      Real npv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - maturity
    - vol
    - discount
    - npv
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::blackValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real blackValue(Option::Type optionType, Real strike,\n                        Real
      forward, Real maturity,\n                        Volatility vol, Real discount,
      Real npv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:50,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:51,1
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' hestonModel'
    - cpxLogFormula
    - integration
    argTypes:
    - Handle<HestonModel>
    - AnalyticHestonEngine::ComplexLogFormula
    - AnalyticHestonEngine::Integration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: QuantLib::HestonBlackVolSurface::HestonBlackVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - registerWith
    - process
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonBlackVolSurface::HestonBlackVolSurface(\n        const
      Handle<HestonModel>& hestonModel,\n        const AnalyticHestonEngine::ComplexLogFormula
      cpxLogFormula,\n        AnalyticHestonEngine::Integration integration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::HestonBlackVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter HestonBlackVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::HestonBlackVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date HestonBlackVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::HestonBlackVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::HestonBlackVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:73,1
    - Dst: QuantLib::HestonBlackVolSurface::blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::HestonBlackVolSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonBlackVolSurface::blackVolImpl
    - squared
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::blackVarianceImpl(Time t, Real strike)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:78,1
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:80,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:82,1
    - Dst: s0
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:85,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:88,1
    - Dst: AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:91,1
    - Dst: theta
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:94,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:98,1
    - Dst: std::numeric_limits<double>::epsilon
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:99,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:101,1
    - Dst: blackValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 108
    functionName: QuantLib::HestonBlackVolSurface::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - s0
    - currentLink
    - ext::make_shared<PlainVanillaPayoff>
    - blackValue
    - theta
    - process
    - riskFreeRate
    - std::numeric_limits<double>::epsilon
    - ext::shared_ptr::optionType
    - AnalyticHestonEngine::priceVanillaPayoff
    - std::sqrt
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: Volatility HestonBlackVolSurface::blackVolImpl(Time t, Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - maturity
    - vol
    - discount
    - npv
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::blackValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real blackValue(Option::Type optionType, Real strike,\n                        Real
      forward, Real maturity,\n                        Volatility vol, Real discount,
      Real npv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - maturity
    - vol
    - discount
    - npv
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Volatility
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::blackValue
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::sqrt
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real blackValue(Option::Type optionType, Real strike,\n                        Real
      forward, Real maturity,\n                        Volatility vol, Real discount,
      Real npv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:50,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:51,1
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' hestonModel'
    - cpxLogFormula
    - integration
    argTypes:
    - Handle<HestonModel>
    - AnalyticHestonEngine::ComplexLogFormula
    - AnalyticHestonEngine::Integration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: QuantLib::HestonBlackVolSurface::HestonBlackVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - registerWith
    - process
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonBlackVolSurface::HestonBlackVolSurface(\n        const
      Handle<HestonModel>& hestonModel,\n        const AnalyticHestonEngine::ComplexLogFormula
      cpxLogFormula,\n        AnalyticHestonEngine::Integration integration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::HestonBlackVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - process
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter HestonBlackVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::HestonBlackVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date HestonBlackVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::HestonBlackVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::HestonBlackVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:73,1
    - Dst: QuantLib::HestonBlackVolSurface::blackVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::HestonBlackVolSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HestonBlackVolSurface::blackVolImpl
    - squared
    linkageType: ''
    returnType: Real
    signature: Real HestonBlackVolSurface::blackVarianceImpl(Time t, Real strike)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:78,1
    - Dst: process
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:80,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:82,1
    - Dst: s0
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:85,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:88,1
    - Dst: AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:91,1
    - Dst: theta
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:94,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:98,1
    - Dst: std::numeric_limits<double>::epsilon
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:99,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:101,1
    - Dst: blackValue
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 108
    functionName: QuantLib::HestonBlackVolSurface::blackVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/hestonblackvolsurface.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - s0
    - currentLink
    - ext::make_shared<PlainVanillaPayoff>
    - blackValue
    - theta
    - process
    - riskFreeRate
    - std::numeric_limits<double>::epsilon
    - ext::shared_ptr::optionType
    - AnalyticHestonEngine::priceVanillaPayoff
    - std::sqrt
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: Volatility HestonBlackVolSurface::blackVolImpl(Time t, Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::BlackVarianceSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackVarianceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::BlackVarianceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackVarianceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:72,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:75,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:75,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::BlackVarianceSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceSurface>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:101,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:103,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 100
    functionDepth: 3
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionName: QuantLib::BlackVarianceSurface::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - dynamic_cast<Visitor<BlackVarianceSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVarianceSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::BlackVarianceSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackVarianceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::BlackVarianceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::BlackVarianceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:72,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:74,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:75,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:75,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::BlackVarianceSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVarianceSurface>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:101,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:103,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 100
    functionDepth: 3
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionName: QuantLib::BlackVarianceSurface::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - dynamic_cast<Visitor<BlackVarianceSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVarianceSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(const Date& referenceDate,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(Natural settlementDays,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:43,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:45,1
    - Dst: localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - underlyingLevel
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::LocalVolTermStructure::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - localVolImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolTermStructure::localVol(const Date& d,\n                                               Real
      underlyingLevel,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:52,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:53,1
    - Dst: localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - underlyingLevel
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::LocalVolTermStructure::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - localVolImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolTermStructure::localVol(Time t,\n                                               Real
      underlyingLevel,\n                                               bool extrapolate)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:58,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::LocalVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 6
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<LocalVolTermStructure>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void LocalVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(const Date& referenceDate,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::LocalVolTermStructure::LocalVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LocalVolTermStructure::LocalVolTermStructure(Natural settlementDays,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:43,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:45,1
    - Dst: localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' d'
    - underlyingLevel
    - extrapolate
    argTypes:
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::LocalVolTermStructure::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - localVolImpl
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolTermStructure::localVol(const Date& d,\n                                               Real
      underlyingLevel,\n                                               bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:52,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:53,1
    - Dst: localVolImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - underlyingLevel
    - extrapolate
    argTypes:
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::LocalVolTermStructure::localVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 0
    functionsReached:
    - checkStrike
    - localVolImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility LocalVolTermStructure::localVol(Time t,\n                                               Real
      underlyingLevel,\n                                               bool extrapolate)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<LocalVolTermStructure>*>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:58,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:60,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::LocalVolTermStructure::accept
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.cpp
    functionUses: 6
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<LocalVolTermStructure>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void LocalVolTermStructure::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:39,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: std::fill
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:53,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:55,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:56,1
    - Dst: QuantLib::GridModelLocalVolSurface::generateArguments
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' strikes'
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<ext::shared_ptr<std::vector<Real> > >
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 60
    functionName: QuantLib::GridModelLocalVolSurface::GridModelLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - ConstantParameter
    - QuantLib::GridModelLocalVolSurface::generateArguments
    - PositiveConstraint
    - yearFraction
    - front
    - begin
    - size
    - NullCalendar
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GridModelLocalVolSurface::GridModelLocalVolSurface(\n        const
      Date& referenceDate,\n        const std::vector<Date>& dates,\n        const
      std::vector<ext::shared_ptr<std::vector<Real> > >& strikes,\n        const DayCounter&
      dayCounter,\n        Extrapolation lowerExtrapolation,\n        Extrapolation
      upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:63,1
    - Dst: QuantLib::CalibratedModel::update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::GridModelLocalVolSurface::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CalibratedModel::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void GridModelLocalVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::GridModelLocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date GridModelLocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GridModelLocalVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxTime
    linkageType: ''
    returnType: Time
    signature: Time GridModelLocalVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::GridModelLocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::minStrike
    linkageType: ''
    returnType: Real
    signature: Real GridModelLocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::GridModelLocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real GridModelLocalVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::GridModelLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - localVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility GridModelLocalVolSurface::localVolImpl(Time t, Real strike)\n
      \   const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: std::transform
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:90,1
    - Dst: p
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:91,1
    - Dst: ext::make_shared<FixedLocalVolSurface>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 101
    functionName: QuantLib::GridModelLocalVolSurface::generateArguments
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::begin
    - std::transform
    - begin
    - p
    - size
    - Matrix::Matrix
    - ext::make_shared<FixedLocalVolSurface>
    - end
    - front
    linkageType: ''
    returnType: void
    signature: void GridModelLocalVolSurface::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:39,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:48,1
    - Dst: std::fill
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:52,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:53,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:55,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:56,1
    - Dst: QuantLib::GridModelLocalVolSurface::generateArguments
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' strikes'
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<ext::shared_ptr<std::vector<Real> > >
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 60
    functionName: QuantLib::GridModelLocalVolSurface::GridModelLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - ConstantParameter
    - QuantLib::GridModelLocalVolSurface::generateArguments
    - PositiveConstraint
    - yearFraction
    - front
    - begin
    - size
    - NullCalendar
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GridModelLocalVolSurface::GridModelLocalVolSurface(\n        const
      Date& referenceDate,\n        const std::vector<Date>& dates,\n        const
      std::vector<ext::shared_ptr<std::vector<Real> > >& strikes,\n        const DayCounter&
      dayCounter,\n        Extrapolation lowerExtrapolation,\n        Extrapolation
      upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:63,1
    - Dst: QuantLib::CalibratedModel::update
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::GridModelLocalVolSurface::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CalibratedModel::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void GridModelLocalVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::GridModelLocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date GridModelLocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxTime
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GridModelLocalVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxTime
    linkageType: ''
    returnType: Time
    signature: Time GridModelLocalVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::minStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::GridModelLocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::minStrike
    linkageType: ''
    returnType: Real
    signature: Real GridModelLocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GridModelLocalVolSurface::maxStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::GridModelLocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::GridModelLocalVolSurface::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real GridModelLocalVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::GridModelLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - localVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility GridModelLocalVolSurface::localVolImpl(Time t, Real strike)\n
      \   const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: Matrix::Matrix
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:87,1
    - Dst: std::transform
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:89,1
    - Dst: ext::shared_ptr::begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:90,1
    - Dst: p
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:91,1
    - Dst: ext::make_shared<FixedLocalVolSurface>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 101
    functionName: QuantLib::GridModelLocalVolSurface::generateArguments
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/gridmodellocalvolsurface.cpp
    functionUses: 2
    functionsReached:
    - ext::shared_ptr::begin
    - std::transform
    - begin
    - p
    - size
    - Matrix::Matrix
    - ext::make_shared<FixedLocalVolSurface>
    - end
    - front
    linkageType: ''
    returnType: void
    signature: void GridModelLocalVolSurface::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(const Date& refDate,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(Natural settlDays,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:45,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:47,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:50,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:51,1
    - Dst: QuantLib::BlackVolTermStructure::blackForwardVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' date1'
    - ' date2'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackVolTermStructure::blackForwardVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackVolTermStructure::blackForwardVol
    - timeFromReference
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackForwardVol(const Date& date1,\n
      \                                                     const Date& date2,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:59,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:61,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:62,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:67,1
    - Dst: std::min<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:69,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:70,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:71,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:74,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:77,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:78,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - time1
    - time2
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 83
    functionName: QuantLib::BlackVolTermStructure::blackForwardVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 1
    functionsReached:
    - QL_ENSURE
    - blackVarianceImpl
    - std::sqrt
    - checkRange
    - checkStrike
    - std::min<Time>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackForwardVol(Time time1,\n                                                      Time
      time2,\n                                                      Real strike,\n
      \                                                     bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:91,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:93,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:96,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:97,1
    - Dst: QuantLib::BlackVolTermStructure::blackForwardVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' date1'
    - ' date2'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::BlackVolTermStructure::blackForwardVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackVolTermStructure::blackForwardVariance
    - timeFromReference
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackForwardVariance(const Date& date1,\n
      \                                                    const Date& date2,\n                                                     Real
      strike,\n                                                     bool extrapolate)\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:105,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:107,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:108,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:109,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:110,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - time1
    - time2
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: QuantLib::BlackVolTermStructure::blackForwardVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 1
    functionsReached:
    - QL_ENSURE
    - blackVarianceImpl
    - checkRange
    - checkStrike
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackForwardVariance(Time time1,\n                                                     Time
      time2,\n                                                     Real strike,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   const Date& refDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 133
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    const
      Date& refDate,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 152
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    Natural
      settlementDays,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(const Date& refDate,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::BlackVolTermStructure::BlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolTermStructure::BlackVolTermStructure(Natural settlDays,\n
      \                                                const Calendar& cal,\n                                                 BusinessDayConvention
      bdc,\n                                                 const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:45,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:47,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:50,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:51,1
    - Dst: QuantLib::BlackVolTermStructure::blackForwardVol
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' date1'
    - ' date2'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackVolTermStructure::blackForwardVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackVolTermStructure::blackForwardVol
    - timeFromReference
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackForwardVol(const Date& date1,\n
      \                                                     const Date& date2,\n                                                      Real
      strike,\n                                                      bool extrapolate)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:59,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:61,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:62,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:67,1
    - Dst: std::min<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:69,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:70,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:71,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:74,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:77,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:78,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - time1
    - time2
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 83
    functionName: QuantLib::BlackVolTermStructure::blackForwardVol
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 2
    functionsReached:
    - QL_ENSURE
    - blackVarianceImpl
    - std::sqrt
    - checkRange
    - checkStrike
    - std::min<Time>
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackVolTermStructure::blackForwardVol(Time time1,\n                                                      Time
      time2,\n                                                      Real strike,\n
      \                                                     bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:91,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:93,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:96,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:97,1
    - Dst: QuantLib::BlackVolTermStructure::blackForwardVariance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' date1'
    - ' date2'
    - strike
    - extrapolate
    argTypes:
    - Date
    - Date
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: QuantLib::BlackVolTermStructure::blackForwardVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackVolTermStructure::blackForwardVariance
    - timeFromReference
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackForwardVariance(const Date& date1,\n
      \                                                    const Date& date2,\n                                                     Real
      strike,\n                                                     bool extrapolate)\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:105,1
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:107,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:108,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:109,1
    - Dst: blackVarianceImpl
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:110,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - time1
    - time2
    - strike
    - extrapolate
    argTypes:
    - Time
    - Time
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: QuantLib::BlackVolTermStructure::blackForwardVariance
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 2
    functionsReached:
    - QL_ENSURE
    - blackVarianceImpl
    - checkRange
    - checkStrike
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackVolTermStructure::blackForwardVariance(Time time1,\n                                                     Time
      time2,\n                                                     Real strike,\n
      \                                                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   const Date& refDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 133
    functionName: QuantLib::BlackVolatilityTermStructure::BlackVolatilityTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolatilityTermStructure::BlackVolatilityTermStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    const
      Date& refDate,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 152
    functionName: QuantLib::BlackVarianceTermStructure::BlackVarianceTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/blackvoltermstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVarianceTermStructure::BlackVarianceTermStructure(\n                                                    Natural
      settlementDays,\n                                                    const Calendar&
      cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:37,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:39,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:47,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:48,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:50,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Real>
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - ext::make_shared<std::vector<Real> >
    - std::move
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - QuantLib::FixedLocalVolSurface::checkSurface
    - std::vector<Time>
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(const Date& referenceDate,\n
      \                                              const std::vector<Date>& dates,\n
      \                                              const std::vector<Real>& strikes,\n
      \                                              ext::shared_ptr<Matrix> localVolMatrix,\n
      \                                              const DayCounter& dayCounter,\n
      \                                              Extrapolation lowerExtrapolation,\n
      \                                              Extrapolation upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:61,1
    - Dst: yearFractionToDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:62,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:64,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:68,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:70,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' times'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Time>
    - std::vector<Real>
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 72
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - ext::make_shared<std::vector<Real> >
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - yearFractionToDate
    - QuantLib::FixedLocalVolSurface::checkSurface
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(const Date& referenceDate,\n
      \                                              const std::vector<Time>& times,\n
      \                                              const std::vector<Real>& strikes,\n
      \                                              ext::shared_ptr<Matrix> localVolMatrix,\n
      \                                              const DayCounter& dayCounter,\n
      \                                              Extrapolation lowerExtrapolation,\n
      \                                              Extrapolation upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:82,1
    - Dst: yearFractionToDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:83,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:91,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' times'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Time>
    - std::vector<ext::shared_ptr<std::vector<Real> > >
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 93
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - yearFractionToDate
    - QuantLib::FixedLocalVolSurface::checkSurface
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(\n        const Date&
      referenceDate,\n        const std::vector<Time>& times,\n        const std::vector<ext::shared_ptr<std::vector<Real>
      > >& strikes,\n        ext::shared_ptr<Matrix> localVolMatrix,\n        const
      DayCounter& dayCounter,\n        Extrapolation lowerExtrapolation,\n        Extrapolation
      upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 114
    functionName: QuantLib::FixedLocalVolSurface::checkSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 3
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FixedLocalVolSurface::checkSurface()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::FixedLocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date FixedLocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::FixedLocalVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Time
    signature: Time FixedLocalVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::FixedLocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real FixedLocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::FixedLocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real FixedLocalVolSurface::maxStrike() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:132,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:135,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:136,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:139,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:144,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:145,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:146,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:147,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:151,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:152,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:153,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:154,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:158,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:160,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 167
    functionName: QuantLib::FixedLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - close_enough
    - std::distance
    - rows
    - begin
    - std::min
    - std::max
    - back
    - end
    - front
    linkageType: ''
    returnType: Volatility
    signature: Volatility FixedLocalVolSurface::localVolImpl(Time t, Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:37,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:39,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:47,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:48,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:50,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' dates'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Real>
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - ext::make_shared<std::vector<Real> >
    - std::move
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - QuantLib::FixedLocalVolSurface::checkSurface
    - std::vector<Time>
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(const Date& referenceDate,\n
      \                                              const std::vector<Date>& dates,\n
      \                                              const std::vector<Real>& strikes,\n
      \                                              ext::shared_ptr<Matrix> localVolMatrix,\n
      \                                              const DayCounter& dayCounter,\n
      \                                              Extrapolation lowerExtrapolation,\n
      \                                              Extrapolation upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:61,1
    - Dst: yearFractionToDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:62,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:64,1
    - Dst: ext::make_shared<std::vector<Real> >
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:68,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:70,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' times'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Time>
    - std::vector<Real>
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 72
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - ext::make_shared<std::vector<Real> >
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - yearFractionToDate
    - QuantLib::FixedLocalVolSurface::checkSurface
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(const Date& referenceDate,\n
      \                                              const std::vector<Time>& times,\n
      \                                              const std::vector<Real>& strikes,\n
      \                                              ext::shared_ptr<Matrix> localVolMatrix,\n
      \                                              const DayCounter& dayCounter,\n
      \                                              Extrapolation lowerExtrapolation,\n
      \                                              Extrapolation upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:82,1
    - Dst: yearFractionToDate
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:83,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:89,1
    - Dst: QuantLib::FixedLocalVolSurface::checkSurface
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:91,1
    - Dst: QuantLib::FixedLocalVolSurface::setInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - ' referenceDate'
    - ' times'
    - ' strikes'
    - localVolMatrix
    - ' dayCounter'
    - lowerExtrapolation
    - upperExtrapolation
    argTypes:
    - Date
    - std::vector<Time>
    - std::vector<ext::shared_ptr<std::vector<Real> > >
    - ext::shared_ptr<Matrix>
    - DayCounter
    - Extrapolation
    - Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 93
    functionName: QuantLib::FixedLocalVolSurface::FixedLocalVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::FixedLocalVolSurface::setInterpolation
    - yearFractionToDate
    - QuantLib::FixedLocalVolSurface::checkSurface
    - size
    - NullCalendar
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FixedLocalVolSurface::FixedLocalVolSurface(\n        const Date&
      referenceDate,\n        const std::vector<Time>& times,\n        const std::vector<ext::shared_ptr<std::vector<Real>
      > >& strikes,\n        ext::shared_ptr<Matrix> localVolMatrix,\n        const
      DayCounter& dayCounter,\n        Extrapolation lowerExtrapolation,\n        Extrapolation
      upperExtrapolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 114
    functionName: QuantLib::FixedLocalVolSurface::checkSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 6
    functionsReached:
    - size
    - columns
    - rows
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FixedLocalVolSurface::checkSurface()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::FixedLocalVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date FixedLocalVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::FixedLocalVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Time
    signature: Time FixedLocalVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::FixedLocalVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real FixedLocalVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::FixedLocalVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real FixedLocalVolSurface::maxStrike() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:130,1
    - Dst: std::distance
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:132,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:132,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:133,1
    - Dst: close_enough
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:135,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:136,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:136,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:139,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:144,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:145,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:146,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:147,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:151,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:152,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:153,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:154,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:158,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp:160,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 167
    functionName: QuantLib::FixedLocalVolSurface::localVolImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/fixedlocalvolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - close_enough
    - std::distance
    - rows
    - begin
    - std::min
    - std::max
    - back
    - end
    - front
    linkageType: ''
    returnType: Volatility
    signature: Volatility FixedLocalVolSurface::localVolImpl(Time t, Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: ~LocalVolTermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LocalVolTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: ~LocalVolTermStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/equityfx/localvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LocalVolTermStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(Natural
      settlementDays,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   Handle<Quote>
      vol,\n                                                                   const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(const
      Date& referenceDate,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   Handle<Quote>
      vol,\n                                                                   const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:54,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:64,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(\n
      \                                                   const Date& referenceDate,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::ConstantCapFloorTermVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantCapFloorTermVolatility::volatilityImpl(Time,\n
      \                                                             Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(Natural
      settlementDays,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   Handle<Quote>
      vol,\n                                                                   const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(const
      Date& referenceDate,\n                                                                   const
      Calendar& cal,\n                                                                   BusinessDayConvention
      bdc,\n                                                                   Handle<Quote>
      vol,\n                                                                   const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:54,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:64,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' cal'
    - bdc
    - vol
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void ConstantCapFloorTermVolatility::ConstantCapFloorTermVolatility(\n
      \                                                   const Date& referenceDate,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    Volatility vol,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: QuantLib::ConstantCapFloorTermVolatility::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Volatility
    signature: "Volatility ConstantCapFloorTermVolatility::volatilityImpl(Time,\n
      \                                                             Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:126,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:127,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::CapFloorTermVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date CapFloorTermVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::CapFloorTermVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::CapFloorTermVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:141,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: QuantLib::CapFloorTermVolSurface::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolSurface::volatilityImpl(Time t,\n                                                      Rate
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& CapFloorTermVolSurface::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & CapFloorTermVolSurface::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 155
    functionName: '& CapFloorTermVolSurface::optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & CapFloorTermVolSurface::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: '& CapFloorTermVolSurface::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CapFloorTermVolSurface::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: '& CapFloorTermVolSurface::strikes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CapFloorTermVolSurface::strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:126,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:127,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::CapFloorTermVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date CapFloorTermVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::CapFloorTermVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::CapFloorTermVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:141,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: QuantLib::CapFloorTermVolSurface::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolSurface::volatilityImpl(Time t,\n                                                      Rate
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& CapFloorTermVolSurface::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & CapFloorTermVolSurface::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 155
    functionName: '& CapFloorTermVolSurface::optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & CapFloorTermVolSurface::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: '& CapFloorTermVolSurface::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CapFloorTermVolSurface::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: '& CapFloorTermVolSurface::strikes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> & CapFloorTermVolSurface::strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:44,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:46,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:47,1
    - Dst: QuantLib::CapFloorTermVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:48,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::registerWithMarketData
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::CapFloorTermVolCurve::interpolate
    - size
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Handle<Quote> >& vols,\n                        const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:66,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:68,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:69,1
    - Dst: QuantLib::CapFloorTermVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:70,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 72
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::registerWithMarketData
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::CapFloorTermVolCurve::interpolate
    - size
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                            const
      Date& settlementDate,\n                            const Calendar& calendar,\n
      \                           BusinessDayConvention bdc,\n                            const
      std::vector<Period>& optionTenors,\n                            const std::vector<Handle<Quote>
      >& vols,\n                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:87,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:90,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:91,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Volatility>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 97
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - ext::shared_ptr<Quote>
    - QuantLib::CapFloorTermVolCurve::interpolate
    - SimpleQuote::SimpleQuote
    - size
    - Handle<Quote>
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                                const
      Date& settlementDate,\n                                const Calendar& calendar,\n
      \                               BusinessDayConvention bdc,\n                                const
      std::vector<Period>& optionTenors,\n                                const std::vector<Volatility>&
      vols,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:112,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:115,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:116,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Volatility>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 122
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - ext::shared_ptr<Quote>
    - QuantLib::CapFloorTermVolCurve::interpolate
    - SimpleQuote::SimpleQuote
    - size
    - Handle<Quote>
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                                Natural
      settlementDays,\n                                const Calendar& calendar,\n
      \                               BusinessDayConvention bdc,\n                                const
      std::vector<Period>& optionTenors,\n                                const std::vector<Volatility>&
      vols,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:126,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:134,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:135,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: QuantLib::CapFloorTermVolCurve::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 4
    functionsReached:
    - size
    - QuantLib::io::ordinal
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::CapFloorTermVolCurve::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:148,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:149,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::CapFloorTermVolCurve::interpolate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 4
    functionsReached:
    - end
    - begin
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::interpolate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:160,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:163,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:166,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:167,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 168
    functionName: QuantLib::CapFloorTermVolCurve::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:173,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 176
    functionName: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 5
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:182,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:183,1
    - Dst: QuantLib::CapFloorTermVolCurve::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: QuantLib::CapFloorTermVolCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::CapFloorTermVolCurve::update
    - value
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:44,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:46,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:47,1
    - Dst: QuantLib::CapFloorTermVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:48,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 3
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::registerWithMarketData
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::CapFloorTermVolCurve::interpolate
    - size
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Handle<Quote> >& vols,\n                        const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:61,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:66,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:68,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:69,1
    - Dst: QuantLib::CapFloorTermVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:70,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 72
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::registerWithMarketData
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::CapFloorTermVolCurve::interpolate
    - size
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                            const
      Date& settlementDate,\n                            const Calendar& calendar,\n
      \                           BusinessDayConvention bdc,\n                            const
      std::vector<Period>& optionTenors,\n                            const std::vector<Handle<Quote>
      >& vols,\n                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:87,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:90,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:91,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:94,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Volatility>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 97
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - ext::shared_ptr<Quote>
    - QuantLib::CapFloorTermVolCurve::interpolate
    - SimpleQuote::SimpleQuote
    - size
    - Handle<Quote>
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                                const
      Date& settlementDate,\n                                const Calendar& calendar,\n
      \                               BusinessDayConvention bdc,\n                                const
      std::vector<Period>& optionTenors,\n                                const std::vector<Volatility>&
      vols,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:112,1
    - Dst: QuantLib::CapFloorTermVolCurve::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:115,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:116,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:119,1
    - Dst: QuantLib::CapFloorTermVolCurve::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' vols'
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Volatility>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 100
    functionDepth: 3
    functionLinenumber: 100
    functionLinenumberEnd: 122
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - ext::shared_ptr<Quote>
    - QuantLib::CapFloorTermVolCurve::interpolate
    - SimpleQuote::SimpleQuote
    - size
    - Handle<Quote>
    - QuantLib::CapFloorTermVolCurve::checkInputs
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolCurve::CapFloorTermVolCurve(\n                                Natural
      settlementDays,\n                                const Calendar& calendar,\n
      \                               BusinessDayConvention bdc,\n                                const
      std::vector<Period>& optionTenors,\n                                const std::vector<Volatility>&
      vols,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:126,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:127,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:134,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:135,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: QuantLib::CapFloorTermVolCurve::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 8
    functionsReached:
    - size
    - QuantLib::io::ordinal
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::CapFloorTermVolCurve::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 4
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CubicInterpolation
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:148,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:149,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:149,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::CapFloorTermVolCurve::interpolate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 8
    functionsReached:
    - end
    - begin
    - CubicInterpolation
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::interpolate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:160,1
    - Dst: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:163,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:166,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:167,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 168
    functionName: QuantLib::CapFloorTermVolCurve::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:173,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 176
    functionName: QuantLib::CapFloorTermVolCurve::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 10
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:182,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:183,1
    - Dst: QuantLib::CapFloorTermVolCurve::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: QuantLib::CapFloorTermVolCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::CapFloorTermVolCurve::update
    - value
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~CapFloorTermVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CapFloorTermVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:87,1
    - Dst: QuantLib::CapFloorTermVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optT'
    - strike
    - extrap
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CapFloorTermVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(const Period&
      optT,\n                                                           Rate strike,\n
      \                                                          bool extrap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:95,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:96,1
    - Dst: QuantLib::CapFloorTermVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrap
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 98
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CapFloorTermVolatilityStructure::volatility
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(const Date&
      d,\n                                                           Rate strike,\n
      \                                                          bool extrap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:104,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:105,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrap
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 2
    functionsReached:
    - checkStrike
    - volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(Time t,\n                                                           Rate
      strike,\n                                                           bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~CapFloorTermVolatilityStructure() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CapFloorTermVolatilityStructure() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:87,1
    - Dst: QuantLib::CapFloorTermVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' optT'
    - strike
    - extrap
    argTypes:
    - Period
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::CapFloorTermVolatilityStructure::volatility
    - optionDateFromTenor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(const Period&
      optT,\n                                                           Rate strike,\n
      \                                                          bool extrap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:95,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:96,1
    - Dst: QuantLib::CapFloorTermVolatilityStructure::volatility
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - strike
    - extrap
    argTypes:
    - Date
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 98
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::CapFloorTermVolatilityStructure::volatility
    - timeFromReference
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(const Date&
      d,\n                                                           Rate strike,\n
      \                                                          bool extrap) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:104,1
    - Dst: checkStrike
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:105,1
    - Dst: volatilityImpl
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - t
    - strike
    - extrap
    argTypes:
    - Time
    - Rate
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::CapFloorTermVolatilityStructure::volatility
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.hpp
    functionUses: 4
    functionsReached:
    - checkStrike
    - volatilityImpl
    - checkRange
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolatilityStructure::volatility(Time t,\n                                                           Rate
      strike,\n                                                           bool extrap)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:45,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:47,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:50,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:52,1
    - Dst: QuantLib::CapFloorTermVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:53,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:55,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:56,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 58
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::registerWithMarketData
    - QuantLib::CapFloorTermVolSurface::interpolate
    - value
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - QuantLib::io::ordinal
    - rows
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:77,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:79,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:82,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:84,1
    - Dst: QuantLib::CapFloorTermVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:85,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:86,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:87,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:88,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:89,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 90
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::registerWithMarketData
    - QuantLib::CapFloorTermVolSurface::interpolate
    - value
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - QuantLib::io::ordinal
    - rows
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        const
      Date& settlementDate,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:106,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:108,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:111,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:112,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:115,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - Matrix
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 121
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::interpolate
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - resize
    - rows
    - ext::shared_ptr<Quote>
    - SimpleQuote::SimpleQuote
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        const
      Date& settlementDate,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const Matrix& vols,\n                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:137,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:139,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:142,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:143,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:146,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - Matrix
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::interpolate
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - resize
    - rows
    - ext::shared_ptr<Quote>
    - SimpleQuote::SimpleQuote
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const Matrix& vols,\n                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:156,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:157,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:157,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:164,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:165,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:169,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:169,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:170,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:173,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:174,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:175,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:176,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 177
    functionName: QuantLib::CapFloorTermVolSurface::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 4
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - rows
    - QuantLib::io::rate
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::CapFloorTermVolSurface::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:188,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 193
    functionName: QuantLib::CapFloorTermVolSurface::interpolate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 4
    functionsReached:
    - BicubicSpline
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::interpolate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:199,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:202,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:205,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:206,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 207
    functionName: QuantLib::CapFloorTermVolSurface::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:212,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 5
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:223,1
    - Dst: QuantLib::CapFloorTermVolSurface::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 226
    functionName: QuantLib::CapFloorTermVolSurface::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::update
    - value
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:45,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:47,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:50,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:52,1
    - Dst: QuantLib::CapFloorTermVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:53,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:55,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:56,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 29
    functionDepth: 3
    functionLinenumber: 29
    functionLinenumberEnd: 58
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::registerWithMarketData
    - QuantLib::CapFloorTermVolSurface::interpolate
    - value
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - QuantLib::io::ordinal
    - rows
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:77,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:79,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:82,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:83,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:84,1
    - Dst: QuantLib::CapFloorTermVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:85,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:86,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:87,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:88,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:89,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - std::vector<std::vector<Handle<Quote> > >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 90
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::registerWithMarketData
    - QuantLib::CapFloorTermVolSurface::interpolate
    - value
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - QuantLib::io::ordinal
    - rows
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        const
      Date& settlementDate,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const std::vector<std::vector<Handle<Quote>
      > >& vols,\n                        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:106,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:108,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:111,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:112,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:115,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:117,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - ' settlementDate'
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - Matrix
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 121
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::interpolate
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - resize
    - rows
    - ext::shared_ptr<Quote>
    - SimpleQuote::SimpleQuote
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        const
      Date& settlementDate,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const Matrix& vols,\n                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:133,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:137,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:139,1
    - Dst: QuantLib::CapFloorTermVolSurface::checkInputs
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:142,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:143,1
    - Dst: resize
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:146,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:148,1
    - Dst: QuantLib::CapFloorTermVolSurface::interpolate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - bdc
    - ' optionTenors'
    - ' strikes'
    - ' vols'
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Rate>
    - Matrix
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 3
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: QuantLib::CapFloorTermVolSurface::CapFloorTermVolSurface
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::interpolate
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    - resize
    - rows
    - ext::shared_ptr<Quote>
    - SimpleQuote::SimpleQuote
    - QuantLib::CapFloorTermVolSurface::checkInputs
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolSurface::CapFloorTermVolSurface(\n                        Natural
      settlementDays,\n                        const Calendar& calendar,\n                        BusinessDayConvention
      bdc,\n                        const std::vector<Period>& optionTenors,\n                        const
      std::vector<Rate>& strikes,\n                        const Matrix& vols,\n                        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:156,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:157,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:157,1
    - Dst: rows
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:164,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:165,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:169,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:169,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:170,1
    - Dst: columns
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:173,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:174,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:175,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:176,1
    - Dst: QuantLib::io::rate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 177
    functionName: QuantLib::CapFloorTermVolSurface::checkInputs
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 8
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - rows
    - QuantLib::io::rate
    - columns
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::CapFloorTermVolSurface::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 4
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:188,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 193
    functionName: QuantLib::CapFloorTermVolSurface::interpolate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 8
    functionsReached:
    - BicubicSpline
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::interpolate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:199,1
    - Dst: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:202,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:205,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:206,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 207
    functionName: QuantLib::CapFloorTermVolSurface::update
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    - QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:212,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: QuantLib::CapFloorTermVolSurface::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 10
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::initializeOptionDatesAndTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:223,1
    - Dst: QuantLib::CapFloorTermVolSurface::update
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp:225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 226
    functionName: QuantLib::CapFloorTermVolSurface::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CapFloorTermVolSurface::update
    - value
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolSurface::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve(CapFloorTermVolCurve&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve(const CapFloorTermVolCurve&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(CapFloorTermVolCurve&&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CapFloorTermVolCurve
    signature: CapFloorTermVolCurve & operator=(CapFloorTermVolCurve&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: '& operator=(const CapFloorTermVolCurve&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CapFloorTermVolCurve
    signature: CapFloorTermVolCurve & operator=(const CapFloorTermVolCurve&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: ~CapFloorTermVolCurve() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CapFloorTermVolCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:129,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:130,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::CapFloorTermVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date CapFloorTermVolCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::CapFloorTermVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::CapFloorTermVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:144,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionName: QuantLib::CapFloorTermVolCurve::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolCurve::volatilityImpl(Time t,\n                                                    Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: '& CapFloorTermVolCurve::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & CapFloorTermVolCurve::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: '& CapFloorTermVolCurve::optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & CapFloorTermVolCurve::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: '& CapFloorTermVolCurve::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CapFloorTermVolCurve::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve(CapFloorTermVolCurve&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::CapFloorTermVolCurve::CapFloorTermVolCurve
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CapFloorTermVolCurve(const CapFloorTermVolCurve&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(CapFloorTermVolCurve&&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CapFloorTermVolCurve
    signature: CapFloorTermVolCurve & operator=(CapFloorTermVolCurve&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: '& operator=(const CapFloorTermVolCurve&)'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CapFloorTermVolCurve
    signature: CapFloorTermVolCurve & operator=(const CapFloorTermVolCurve&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: ~CapFloorTermVolCurve() override
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CapFloorTermVolCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:129,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:130,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::CapFloorTermVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date CapFloorTermVolCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::CapFloorTermVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::CapFloorTermVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CapFloorTermVolCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:144,1
    - Dst: interpolation_
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionName: QuantLib::CapFloorTermVolCurve::volatilityImpl
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CapFloorTermVolCurve::volatilityImpl(Time t,\n                                                    Rate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: '& CapFloorTermVolCurve::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & CapFloorTermVolCurve::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: '& CapFloorTermVolCurve::optionDates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & CapFloorTermVolCurve::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: '& CapFloorTermVolCurve::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & CapFloorTermVolCurve::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   const Date& refDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   BusinessDayConvention bdc,\n
      \                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   const Date& refDate,\n                                                    const
      Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/capfloortermvolatilitystructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CapFloorTermVolatilityStructure::CapFloorTermVolatilityStructure(\n
      \                                                   Natural settlementDays,\n
      \                                                   const Calendar& cal,\n                                                    BusinessDayConvention
      bdc,\n                                                    const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::ConstantCapFloorTermVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantCapFloorTermVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantCapFloorTermVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantCapFloorTermVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::ConstantCapFloorTermVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantCapFloorTermVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: QuantLib::ConstantCapFloorTermVolatility::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ConstantCapFloorTermVolatility::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantCapFloorTermVolatility::minStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantCapFloorTermVolatility::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::ConstantCapFloorTermVolatility::maxStrike
    functionSourceFile: /src/quantlib/ql/termstructures/volatility/capfloor/constantcapfloortermvol.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ConstantCapFloorTermVolatility::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:83,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 85
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n            const Date& referenceDate,\n
      \           std::vector<ext::shared_ptr<typename Traits::helper> > instruments,\n
      \           const DayCounter& dayCounter,\n            const std::vector<Handle<Quote>
      >& jumps = {},\n            const std::vector<Date>& jumpDates = {},\n            const
      Interpolator& i = {},\n            bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:95,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - ' i'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(const Date& referenceDate,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            const Interpolator& i,\n                            bootstrap_type
      bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:106,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - bootstrap
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(const Date& referenceDate,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            bootstrap_type bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:121,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 123
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n            Natural settlementDays,\n            const
      Calendar& calendar,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const DayCounter& dayCounter,\n            const
      std::vector<Handle<Quote> >& jumps = {},\n            const std::vector<Date>&
      jumpDates = {},\n            const Interpolator& i = {},\n            bootstrap_type
      bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:130,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:138,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    - ' i'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 140
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(Natural settlementDays,\n                            const
      Calendar& calendar,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            const Interpolator& i,\n                            bootstrap_type
      bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' bootstrap'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 153
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const bootstrap_type&
      bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:196,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYieldCurve<C,I,B>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:202,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: '& PiecewiseYieldCurve<C,I,B>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseYieldCurve<C,I,B>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:208,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 3
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: '& PiecewiseYieldCurve<C,I,B>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseYieldCurve<C,I,B>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:214,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& PiecewiseYieldCurve<C,I,B>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseYieldCurve<C,I,B>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:221,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYieldCurve<C,I,B>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYieldCurve<C,I,B>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:242,1
    - Dst: QuantLib::FdmAffineModelTermStructure::discountImpl
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::discountImpl
    - calculate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor PiecewiseYieldCurve<C,I,B>::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYieldCurve<C,I,B>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:83,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 85
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n            const Date& referenceDate,\n
      \           std::vector<ext::shared_ptr<typename Traits::helper> > instruments,\n
      \           const DayCounter& dayCounter,\n            const std::vector<Handle<Quote>
      >& jumps = {},\n            const std::vector<Date>& jumpDates = {},\n            const
      Interpolator& i = {},\n            bootstrap_type bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:95,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - ' i'
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(const Date& referenceDate,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            const Interpolator& i,\n                            bootstrap_type
      bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:105,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:106,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' referenceDate'
    - instruments
    - ' dayCounter'
    - bootstrap
    argTypes:
    - Date
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(const Date& referenceDate,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            bootstrap_type bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:121,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 123
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n            Natural settlementDays,\n            const
      Calendar& calendar,\n            std::vector<ext::shared_ptr<typename Traits::helper>
      > instruments,\n            const DayCounter& dayCounter,\n            const
      std::vector<Handle<Quote> >& jumps = {},\n            const std::vector<Date>&
      jumpDates = {},\n            const Interpolator& i = {},\n            bootstrap_type
      bootstrap = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bootstrap_type
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:130,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:137,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:138,1
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - instruments
    - ' dayCounter'
    - ' i'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - Interpolator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 140
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    - bootstrap_type
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(Natural settlementDays,\n                            const
      Calendar& calendar,\n                            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n                            const DayCounter&
      dayCounter,\n                            const Interpolator& i,\n                            bootstrap_type
      bootstrap = bootstrap_type())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setup
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - settlementDays
    - ' calendar'
    - "\n                                                                  instruments"
    - ' dayCounter'
    - ' bootstrap'
    argTypes:
    - Natural
    - Calendar
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    - DayCounter
    - bootstrap_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 153
    functionName: QuantLib::PiecewiseYieldCurve::PiecewiseYieldCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - setup
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYieldCurve(\n               Natural settlementDays,\n
      \              const Calendar& calendar,\n               const std::vector<ext::shared_ptr<typename
      Traits::helper> >&\n                                                                  instruments,\n
      \              const DayCounter& dayCounter,\n               const bootstrap_type&
      bootstrap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:196,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYieldCurve<C,I,B>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:202,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: '& PiecewiseYieldCurve<C,I,B>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & PiecewiseYieldCurve<C,I,B>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:208,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 3
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: '& PiecewiseYieldCurve<C,I,B>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & PiecewiseYieldCurve<C,I,B>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:214,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& PiecewiseYieldCurve<C,I,B>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & PiecewiseYieldCurve<C,I,B>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:221,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYieldCurve<C,I,B>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYieldCurve<C,I,B>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:242,1
    - Dst: QuantLib::FdmAffineModelTermStructure::discountImpl
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::discountImpl
    - calculate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor PiecewiseYieldCurve<C,I,B>::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: QuantLib::PiecewiseYieldCurve<C,I,B>::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseyieldcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYieldCurve<C,I,B>::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::OISRateHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndexedSwap>
    signature: ext::shared_ptr<OvernightIndexedSwap> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::OISRateHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndexedSwap>
    signature: ext::shared_ptr<OvernightIndexedSwap> swap() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateStructure::zeroYieldImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:107,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:108,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: QuantLib::ForwardRateStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ForwardRateStructure::zeroYieldImpl
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ForwardRateStructure::discountImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardRateStructure::zeroYieldImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:107,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:108,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: QuantLib::ForwardRateStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ForwardRateStructure::zeroYieldImpl
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ForwardRateStructure::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 383
    functionName: QuantLib::FxSwapRateHelper::spot
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 384
    functionName: QuantLib::FxSwapRateHelper::tenor
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 385
    functionName: QuantLib::FxSwapRateHelper::fixingDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 386
    functionName: QuantLib::FxSwapRateHelper::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::FxSwapRateHelper::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 388
    functionName: QuantLib::FxSwapRateHelper::endOfMonth
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool endOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 390
    functionName: QuantLib::FxSwapRateHelper::isFxBaseCurrencyCollateralCurrency
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFxBaseCurrencyCollateralCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 391
    functionName: QuantLib::FxSwapRateHelper::tradingCalendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar tradingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 392
    functionName: QuantLib::FxSwapRateHelper::adjustmentCalendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar adjustmentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:420,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: QuantLib::SwapRateHelper::spread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Spread
    signature: Spread SwapRateHelper::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionName: QuantLib::SwapRateHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> SwapRateHelper::swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionName: '& SwapRateHelper::forwardStart() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & SwapRateHelper::forwardStart() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 383
    functionName: QuantLib::FxSwapRateHelper::spot
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 384
    functionName: QuantLib::FxSwapRateHelper::tenor
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 385
    functionName: QuantLib::FxSwapRateHelper::fixingDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 386
    functionName: QuantLib::FxSwapRateHelper::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 387
    functionName: QuantLib::FxSwapRateHelper::businessDayConvention
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 388
    functionName: QuantLib::FxSwapRateHelper::endOfMonth
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool endOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 390
    functionName: QuantLib::FxSwapRateHelper::isFxBaseCurrencyCollateralCurrency
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFxBaseCurrencyCollateralCurrency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 391
    functionName: QuantLib::FxSwapRateHelper::tradingCalendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar tradingCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 392
    functionName: QuantLib::FxSwapRateHelper::adjustmentCalendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar adjustmentCalendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:420,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: QuantLib::SwapRateHelper::spread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Spread
    signature: Spread SwapRateHelper::spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionName: QuantLib::SwapRateHelper::swap
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> SwapRateHelper::swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionName: '& SwapRateHelper::forwardStart() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & SwapRateHelper::forwardStart() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:60,1
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:65,1
    - Dst: QuantLib::OISRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 24
    argNames:
    - settlementDays
    - ' tenor'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - paymentCalendar
    - ' forwardStart'
    - ' overnightSpread'
    - pillar
    - customPillarDate
    - averagingMethod
    - endOfMonth
    - fixedPaymentFrequency
    - fixedCalendar
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - pricer
    - rule
    - overnightCalendar
    argTypes:
    - Natural
    - Period
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Period
    - std::variant<Spread, Handle<Quote>>
    - Pillar::Choice
    - Date
    - RateAveraging::Type
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    - DateGeneration::Rule
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 67
    functionName: QuantLib::OISRateHelper::OISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::initialize
    - std::move
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::OISRateHelper(\n        Natural settlementDays,\n
      \       const Period& tenor, // swap maturity\n        const std::variant<Rate,
      Handle<Quote>>& fixedRate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       Handle<YieldTermStructure> discount,\n        bool telescopicValueDates,\n
      \       Integer paymentLag,\n        BusinessDayConvention paymentConvention,\n
      \       Frequency paymentFrequency,\n        Calendar paymentCalendar,\n        const
      Period& forwardStart,\n        const std::variant<Spread, Handle<Quote>>& overnightSpread,\n
      \       Pillar::Choice pillar,\n        Date customPillarDate,\n        RateAveraging::Type
      averagingMethod,\n        ext::optional<bool> endOfMonth,\n        ext::optional<Frequency>
      fixedPaymentFrequency,\n        Calendar fixedCalendar,\n        Natural lookbackDays,\n
      \       Natural lockoutDays,\n        bool applyObservationShift,\n        ext::shared_ptr<FloatingRateCouponPricer>
      pricer,\n        DateGeneration::Rule rule,\n        Calendar overnightCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:96,1
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:101,1
    - Dst: QuantLib::OISRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 23
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - paymentCalendar
    - ' overnightSpread'
    - pillar
    - customPillarDate
    - averagingMethod
    - endOfMonth
    - fixedPaymentFrequency
    - fixedCalendar
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - pricer
    - rule
    - overnightCalendar
    argTypes:
    - Date
    - Date
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - std::variant<Spread, Handle<Quote>>
    - Pillar::Choice
    - Date
    - RateAveraging::Type
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    - DateGeneration::Rule
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 103
    functionName: QuantLib::OISRateHelper::OISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::initialize
    - std::move
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::OISRateHelper(\n        const Date& startDate,\n
      \       const Date& endDate,\n        const std::variant<Rate, Handle<Quote>>&
      fixedRate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       Handle<YieldTermStructure> discount,\n        bool telescopicValueDates,\n
      \       Integer paymentLag,\n        BusinessDayConvention paymentConvention,\n
      \       Frequency paymentFrequency,\n        Calendar paymentCalendar,\n        const
      std::variant<Spread, Handle<Quote>>& overnightSpread,\n        Pillar::Choice
      pillar,\n        Date customPillarDate,\n        RateAveraging::Type averagingMethod,\n
      \       ext::optional<bool> endOfMonth,\n        ext::optional<Frequency> fixedPaymentFrequency,\n
      \       Calendar fixedCalendar,\n        Natural lookbackDays,\n        Natural
      lockoutDays,\n        bool applyObservationShift,\n        ext::shared_ptr<FloatingRateCouponPricer>
      pricer,\n        DateGeneration::Rule rule,\n        Calendar overnightCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:108,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:108,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:112,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:116,1
    - Dst: QuantLib::OISRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ' overnightIndex'
    - customPillarDate
    argTypes:
    - ext::shared_ptr<OvernightIndex>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 120
    functionName: QuantLib::OISRateHelper::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 2
    functionsReached:
    - unregisterWith
    - clone
    - ext::dynamic_pointer_cast<OvernightIndex>
    - registerWith
    - QuantLib::OISRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::initialize(const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                   Date customPillarDate)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: MakeOIS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:128,1
    - Dst: auto::withEndOfMonth
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:144,1
    - Dst: auto::withFixedLegPaymentFrequency
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:147,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:149,1
    - Dst: auto::withFixedLegCalendar
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:150,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:152,1
    - Dst: auto::withOvernightLegCalendar
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:153,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:158,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:158,1
    - Dst: simplifyNotificationGraph
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:160,1
    - Dst: startDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:162,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:163,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:165,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:165,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:166,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:168,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:168,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:170,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:186,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:192,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:192,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 194
    functionName: QuantLib::OISRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 1
    functionsReached:
    - simplifyNotificationGraph
    - fixedLeg
    - auto::withOvernightLegCalendar
    - auto::withFixedLegCalendar
    - empty
    - Integer
    - valueDate
    - setCouponPricer
    - overnightLeg
    - std::max
    - QL_FAIL
    - auto::withEndOfMonth
    - auto::withFixedLegPaymentFrequency
    - startDate
    - maturityDate
    - ext::dynamic_pointer_cast<OvernightIndexedCoupon>
    - MakeOIS
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:202,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:204,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:205,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:207,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 210
    functionName: QuantLib::OISRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - empty
    - linkTo
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:213,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:215,1
    - Dst: overnightLegNPV
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:218,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:219,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:219,1
    - Dst: overnightLegBPS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:220,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 224
    functionName: QuantLib::OISRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - deepUpdate
    - empty
    - value
    - fixedLegBPS
    - overnightLegNPV
    - overnightLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OISRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OISRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:227,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:229,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::OISRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<OISRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:253,1
    - Dst: std::variant<Spread, Handle<Quote>>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:255,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 19
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - averagingMethod
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - ' paymentCalendar'
    - overnightSpread
    - endOfMonth
    - fixedPaymentFrequency
    - ' fixedCalendar'
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - ' pricer'
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - RateAveraging::Type
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Spread
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 257
    functionName: QuantLib::DatedOISRateHelper::DatedOISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - std::variant<Spread, Handle<Quote>>
    linkageType: ''
    returnType: void
    signature: "void DatedOISRateHelper::DatedOISRateHelper(const Date& startDate,\n
      \                                          const Date& endDate,\n                                           const
      Handle<Quote>& fixedRate,\n                                           const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                           Handle<YieldTermStructure>
      discount,\n                                           bool telescopicValueDates,\n
      \                                          RateAveraging::Type averagingMethod,\n
      \                                          Integer paymentLag,\n                                           BusinessDayConvention
      paymentConvention,\n                                           Frequency paymentFrequency,\n
      \                                          const Calendar& paymentCalendar,\n
      \                                          Spread overnightSpread,\n                                           ext::optional<bool>
      endOfMonth,\n                                           ext::optional<Frequency>
      fixedPaymentFrequency,\n                                           const Calendar&
      fixedCalendar,\n                                           Natural lookbackDays,\n
      \                                          Natural lockoutDays,\n                                           bool
      applyObservationShift,\n                                           const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - averagingMethod
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - ' paymentCalendar'
    - overnightSpread
    - endOfMonth
    - fixedPaymentFrequency
    - ' fixedCalendar'
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - RateAveraging::Type
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Spread
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 277
    functionName: QuantLib::DatedOISRateHelper::DatedOISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DatedOISRateHelper::DatedOISRateHelper(const Date& startDate,\n
      \                                          const Date& endDate,\n                                           const
      Handle<Quote>& fixedRate,\n                                           const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                           Handle<YieldTermStructure>
      discount,\n                                           bool telescopicValueDates,\n
      \                                          RateAveraging::Type averagingMethod,\n
      \                                          Integer paymentLag,\n                                           BusinessDayConvention
      paymentConvention,\n                                           Frequency paymentFrequency,\n
      \                                          const Calendar& paymentCalendar,\n
      \                                          const Period&,\n                                           Spread
      overnightSpread,\n                                           ext::optional<bool>
      endOfMonth,\n                                           ext::optional<Frequency>
      fixedPaymentFrequency,\n                                           const Calendar&
      fixedCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:60,1
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:65,1
    - Dst: QuantLib::OISRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 24
    argNames:
    - settlementDays
    - ' tenor'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - paymentCalendar
    - ' forwardStart'
    - ' overnightSpread'
    - pillar
    - customPillarDate
    - averagingMethod
    - endOfMonth
    - fixedPaymentFrequency
    - fixedCalendar
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - pricer
    - rule
    - overnightCalendar
    argTypes:
    - Natural
    - Period
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Period
    - std::variant<Spread, Handle<Quote>>
    - Pillar::Choice
    - Date
    - RateAveraging::Type
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    - DateGeneration::Rule
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 67
    functionName: QuantLib::OISRateHelper::OISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::initialize
    - std::move
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::OISRateHelper(\n        Natural settlementDays,\n
      \       const Period& tenor, // swap maturity\n        const std::variant<Rate,
      Handle<Quote>>& fixedRate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       Handle<YieldTermStructure> discount,\n        bool telescopicValueDates,\n
      \       Integer paymentLag,\n        BusinessDayConvention paymentConvention,\n
      \       Frequency paymentFrequency,\n        Calendar paymentCalendar,\n        const
      Period& forwardStart,\n        const std::variant<Spread, Handle<Quote>>& overnightSpread,\n
      \       Pillar::Choice pillar,\n        Date customPillarDate,\n        RateAveraging::Type
      averagingMethod,\n        ext::optional<bool> endOfMonth,\n        ext::optional<Frequency>
      fixedPaymentFrequency,\n        Calendar fixedCalendar,\n        Natural lookbackDays,\n
      \       Natural lockoutDays,\n        bool applyObservationShift,\n        ext::shared_ptr<FloatingRateCouponPricer>
      pricer,\n        DateGeneration::Rule rule,\n        Calendar overnightCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:94,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:96,1
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:101,1
    - Dst: QuantLib::OISRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 23
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - paymentCalendar
    - ' overnightSpread'
    - pillar
    - customPillarDate
    - averagingMethod
    - endOfMonth
    - fixedPaymentFrequency
    - fixedCalendar
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - pricer
    - rule
    - overnightCalendar
    argTypes:
    - Date
    - Date
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - std::variant<Spread, Handle<Quote>>
    - Pillar::Choice
    - Date
    - RateAveraging::Type
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    - DateGeneration::Rule
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 103
    functionName: QuantLib::OISRateHelper::OISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::initialize
    - std::move
    - handleFromVariant
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::OISRateHelper(\n        const Date& startDate,\n
      \       const Date& endDate,\n        const std::variant<Rate, Handle<Quote>>&
      fixedRate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       Handle<YieldTermStructure> discount,\n        bool telescopicValueDates,\n
      \       Integer paymentLag,\n        BusinessDayConvention paymentConvention,\n
      \       Frequency paymentFrequency,\n        Calendar paymentCalendar,\n        const
      std::variant<Spread, Handle<Quote>>& overnightSpread,\n        Pillar::Choice
      pillar,\n        Date customPillarDate,\n        RateAveraging::Type averagingMethod,\n
      \       ext::optional<bool> endOfMonth,\n        ext::optional<Frequency> fixedPaymentFrequency,\n
      \       Calendar fixedCalendar,\n        Natural lookbackDays,\n        Natural
      lockoutDays,\n        bool applyObservationShift,\n        ext::shared_ptr<FloatingRateCouponPricer>
      pricer,\n        DateGeneration::Rule rule,\n        Calendar overnightCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:108,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:108,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:112,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:116,1
    - Dst: QuantLib::OISRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ' overnightIndex'
    - customPillarDate
    argTypes:
    - ext::shared_ptr<OvernightIndex>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 120
    functionName: QuantLib::OISRateHelper::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 4
    functionsReached:
    - unregisterWith
    - clone
    - ext::dynamic_pointer_cast<OvernightIndex>
    - registerWith
    - QuantLib::OISRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void OISRateHelper::initialize(const ext::shared_ptr<OvernightIndex>&
      overnightIndex,\n                                   Date customPillarDate)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: MakeOIS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:128,1
    - Dst: auto::withEndOfMonth
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:144,1
    - Dst: auto::withFixedLegPaymentFrequency
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:147,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:149,1
    - Dst: auto::withFixedLegCalendar
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:150,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:152,1
    - Dst: auto::withOvernightLegCalendar
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:153,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:158,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:158,1
    - Dst: simplifyNotificationGraph
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:160,1
    - Dst: startDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:162,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:163,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:165,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:165,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:166,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:168,1
    - Dst: overnightLeg
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:168,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:170,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:170,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:186,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:192,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:192,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 194
    functionName: QuantLib::OISRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 2
    functionsReached:
    - simplifyNotificationGraph
    - fixedLeg
    - auto::withOvernightLegCalendar
    - auto::withFixedLegCalendar
    - empty
    - Integer
    - valueDate
    - setCouponPricer
    - overnightLeg
    - std::max
    - QL_FAIL
    - auto::withEndOfMonth
    - auto::withFixedLegPaymentFrequency
    - startDate
    - maturityDate
    - ext::dynamic_pointer_cast<OvernightIndexedCoupon>
    - MakeOIS
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:202,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:204,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:205,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:207,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 210
    functionName: QuantLib::OISRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - empty
    - linkTo
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:213,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:215,1
    - Dst: overnightLegNPV
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:218,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:219,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:219,1
    - Dst: overnightLegBPS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:220,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 224
    functionName: QuantLib::OISRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - deepUpdate
    - empty
    - value
    - fixedLegBPS
    - overnightLegNPV
    - overnightLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OISRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OISRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:227,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:229,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: QuantLib::OISRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<OISRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void OISRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:253,1
    - Dst: std::variant<Spread, Handle<Quote>>
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:255,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 19
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - averagingMethod
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - ' paymentCalendar'
    - overnightSpread
    - endOfMonth
    - fixedPaymentFrequency
    - ' fixedCalendar'
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    - ' pricer'
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - RateAveraging::Type
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Spread
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    - Natural
    - Natural
    - bool
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 257
    functionName: QuantLib::DatedOISRateHelper::DatedOISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - std::variant<Spread, Handle<Quote>>
    linkageType: ''
    returnType: void
    signature: "void DatedOISRateHelper::DatedOISRateHelper(const Date& startDate,\n
      \                                          const Date& endDate,\n                                           const
      Handle<Quote>& fixedRate,\n                                           const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                           Handle<YieldTermStructure>
      discount,\n                                           bool telescopicValueDates,\n
      \                                          RateAveraging::Type averagingMethod,\n
      \                                          Integer paymentLag,\n                                           BusinessDayConvention
      paymentConvention,\n                                           Frequency paymentFrequency,\n
      \                                          const Calendar& paymentCalendar,\n
      \                                          Spread overnightSpread,\n                                           ext::optional<bool>
      endOfMonth,\n                                           ext::optional<Frequency>
      fixedPaymentFrequency,\n                                           const Calendar&
      fixedCalendar,\n                                           Natural lookbackDays,\n
      \                                          Natural lockoutDays,\n                                           bool
      applyObservationShift,\n                                           const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - ' startDate'
    - ' endDate'
    - ' fixedRate'
    - ' overnightIndex'
    - discount
    - telescopicValueDates
    - averagingMethod
    - paymentLag
    - paymentConvention
    - paymentFrequency
    - ' paymentCalendar'
    - overnightSpread
    - endOfMonth
    - fixedPaymentFrequency
    - ' fixedCalendar'
    argTypes:
    - Date
    - Date
    - Handle<Quote>
    - ext::shared_ptr<OvernightIndex>
    - Handle<YieldTermStructure>
    - bool
    - RateAveraging::Type
    - Integer
    - BusinessDayConvention
    - Frequency
    - Calendar
    - Spread
    - ext::optional<bool>
    - ext::optional<Frequency>
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 277
    functionName: QuantLib::DatedOISRateHelper::DatedOISRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/oisratehelper.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DatedOISRateHelper::DatedOISRateHelper(const Date& startDate,\n
      \                                          const Date& endDate,\n                                           const
      Handle<Quote>& fixedRate,\n                                           const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                                           Handle<YieldTermStructure>
      discount,\n                                           bool telescopicValueDates,\n
      \                                          RateAveraging::Type averagingMethod,\n
      \                                          Integer paymentLag,\n                                           BusinessDayConvention
      paymentConvention,\n                                           Frequency paymentFrequency,\n
      \                                          const Calendar& paymentCalendar,\n
      \                                          const Period&,\n                                           Spread
      overnightSpread,\n                                           ext::optional<bool>
      endOfMonth,\n                                           ext::optional<Frequency>
      fixedPaymentFrequency,\n                                           const Calendar&
      fixedCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::FlatForward::compounding
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Compounding
    signature: Compounding compounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::FlatForward::compoundingFrequency
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency compoundingFrequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::FlatForward::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:98,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 3
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::FlatForward::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void FlatForward::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:103,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::FlatForward::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - discountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FlatForward::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::FlatForward::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - value
    - InterestRate
    linkageType: ''
    returnType: void
    signature: void FlatForward::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::FlatForward::compounding
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Compounding
    signature: Compounding compounding() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::FlatForward::compoundingFrequency
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency compoundingFrequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::FlatForward::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:98,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 3
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::FlatForward::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void FlatForward::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:103,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: QuantLib::FlatForward::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - discountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FlatForward::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/flatforward.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::FlatForward::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.hpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - value
    - InterestRate
    linkageType: ''
    returnType: void
    signature: void FlatForward::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:120,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::InterpolatedZeroCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedZeroCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& InterpolatedZeroCurve<T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & InterpolatedZeroCurve<T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: '& InterpolatedZeroCurve<T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & InterpolatedZeroCurve<T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: "&\n    InterpolatedZeroCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedZeroCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: "&\n    InterpolatedZeroCurve<T>::zeroRates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedZeroCurve<T>::zeroRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:151,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::InterpolatedZeroCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedZeroCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:162,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:163,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:166,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:167,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: QuantLib::InterpolatedZeroCurve<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroCurve<T>::data_::back
    - QuantLib::InterpolatedZeroCurve<T>::times_::back
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_::derivative
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedZeroCurve<T>::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:210,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:211,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      std::vector<Date>& dates,\n                                    const std::vector<Rate>&
      yields,\n                                    const DayCounter& dayCounter,\n
      \                                   const Calendar& calendar,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator,\n                                    Compounding compounding,\n
      \                                   Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:226,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:227,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 231
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                               const
      std::vector<Date>& dates,\n                                               const
      std::vector<Rate>& yields,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Calendar& calendar,\n                                               const T&
      interpolator,\n                                               Compounding compounding,\n
      \                                              Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:241,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:241,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:242,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 246
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                               const
      std::vector<Date>& dates,\n                                               const
      std::vector<Rate>& yields,\n                                               const
      DayCounter& dayCounter,\n                                               const
      T& interpolator,\n                                               Compounding
      compounding,\n                                               Frequency frequency)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:267,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:270,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:271,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:272,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:276,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ' compounding'
    - ' frequency'
    argTypes:
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 278
    functionName: QuantLib::InterpolatedZeroCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_::update
    - InterestRate::equivalentRate
    - dayCounter
    - QuantLib::InterpolatedZeroCurve<T>::setupInterpolation
    - size
    - QuantLib::InterpolatedZeroCurve<T>::data_::size
    - QuantLib::InterpolatedZeroCurve<T>::setupTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::initialize(const Compounding& compounding,
      \n                                              const Frequency& frequency)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:120,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: QuantLib::InterpolatedZeroCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedZeroCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& InterpolatedZeroCurve<T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & InterpolatedZeroCurve<T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: '& InterpolatedZeroCurve<T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & InterpolatedZeroCurve<T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: "&\n    InterpolatedZeroCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedZeroCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: "&\n    InterpolatedZeroCurve<T>::zeroRates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedZeroCurve<T>::zeroRates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:150,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:151,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::InterpolatedZeroCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedZeroCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:162,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:163,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:166,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:167,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: QuantLib::InterpolatedZeroCurve<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedZeroCurve<T>::data_::back
    - QuantLib::InterpolatedZeroCurve<T>::times_::back
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_::derivative
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedZeroCurve<T>::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:210,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:211,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 215
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                    const
      std::vector<Date>& dates,\n                                    const std::vector<Rate>&
      yields,\n                                    const DayCounter& dayCounter,\n
      \                                   const Calendar& calendar,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator,\n                                    Compounding compounding,\n
      \                                   Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:226,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:227,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 231
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                               const
      std::vector<Date>& dates,\n                                               const
      std::vector<Rate>& yields,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Calendar& calendar,\n                                               const T&
      interpolator,\n                                               Compounding compounding,\n
      \                                              Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:241,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:241,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:242,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' dates'
    - ' yields'
    - ' dayCounter'
    - ' interpolator'
    - compounding
    - frequency
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 246
    functionName: QuantLib::InterpolatedZeroCurve<T>::InterpolatedZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedZeroCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::InterpolatedZeroCurve(\n                                               const
      std::vector<Date>& dates,\n                                               const
      std::vector<Rate>& yields,\n                                               const
      DayCounter& dayCounter,\n                                               const
      T& interpolator,\n                                               Compounding
      compounding,\n                                               Frequency frequency)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:254,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:256,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:259,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:267,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:270,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:271,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:272,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:276,1
    - Dst: QuantLib::InterpolatedZeroCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/zerocurve.hpp:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ' compounding'
    - ' frequency'
    argTypes:
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 278
    functionName: QuantLib::InterpolatedZeroCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerocurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedZeroCurve<T>::interpolation_::update
    - InterestRate::equivalentRate
    - dayCounter
    - QuantLib::InterpolatedZeroCurve<T>::setupInterpolation
    - size
    - QuantLib::InterpolatedZeroCurve<T>::data_::size
    - QuantLib::InterpolatedZeroCurve<T>::setupTimes
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedZeroCurve<T>::initialize(const Compounding& compounding,
      \n                                              const Frequency& frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZeroYieldStructure::ZeroYieldStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroYieldStructure::ZeroYieldStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroYieldStructure::ZeroYieldStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& cal,\n
      \                                   const DayCounter& dc,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZeroYieldStructure::ZeroYieldStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroYieldStructure::ZeroYieldStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlementDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::ZeroYieldStructure::ZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroYieldStructure::ZeroYieldStructure(\n                                    Natural
      settlementDays,\n                                    const Calendar& cal,\n
      \                                   const DayCounter& dc,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: ~FittingMethod()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FittingMethod()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::FittedBondDiscountCurve::numberOfBonds
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size FittedBondDiscountCurve::numberOfBonds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionName: QuantLib::FittedBondDiscountCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date FittedBondDiscountCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: "&\n    FittedBondDiscountCurve::fitResults() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: FittedBondDiscountCurve::FittingMethod
    signature: "FittedBondDiscountCurve::FittingMethod &\n    FittedBondDiscountCurve::fitResults()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:304,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 303
    functionDepth: 3
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionName: QuantLib::FittedBondDiscountCurve::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionName: QuantLib::FittedBondDiscountCurve::setup
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::setup()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:314,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: QuantLib::FittedBondDiscountCurve::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - discount
    - calculate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FittedBondDiscountCurve::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: FittedBondDiscountCurve::FittingMethod::numberOfIterations() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer FittedBondDiscountCurve::FittingMethod::numberOfIterations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: FittedBondDiscountCurve::FittingMethod::minimumCostValue() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FittedBondDiscountCurve::FittingMethod::minimumCostValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionName: FittedBondDiscountCurve::FittingMethod::errorCode() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type FittedBondDiscountCurve::FittingMethod::errorCode()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: FittedBondDiscountCurve::FittingMethod::solution() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::solution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionName: FittedBondDiscountCurve::FittingMethod::constrainAtZero() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool FittedBondDiscountCurve::FittingMethod::constrainAtZero() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: FittedBondDiscountCurve::FittingMethod::weights() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: FittedBondDiscountCurve::FittingMethod::l2() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::l2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: FittedBondDiscountCurve::FittingMethod::optimizationMethod() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OptimizationMethod>
    signature: ext::shared_ptr<OptimizationMethod> FittedBondDiscountCurve::FittingMethod::optimizationMethod()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionName: '& FittedBondDiscountCurve::FittingMethod::constraint() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & FittedBondDiscountCurve::FittingMethod::constraint() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:364,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:366,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:366,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 371
    functionName: FittedBondDiscountCurve::FittingMethod::discount(const Array& x,
      Time t) const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - discountFunction
    - std::exp
    - std::log
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FittedBondDiscountCurve::FittingMethod::discount(const
      Array& x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 208
    functionName: ~FittingMethod()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FittingMethod()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::FittedBondDiscountCurve::numberOfBonds
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size FittedBondDiscountCurve::numberOfBonds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionName: QuantLib::FittedBondDiscountCurve::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date FittedBondDiscountCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: "&\n    FittedBondDiscountCurve::fitResults() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: FittedBondDiscountCurve::FittingMethod
    signature: "FittedBondDiscountCurve::FittingMethod &\n    FittedBondDiscountCurve::fitResults()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:304,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 303
    functionDepth: 3
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionName: QuantLib::FittedBondDiscountCurve::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionName: QuantLib::FittedBondDiscountCurve::setup
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::setup()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:314,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: QuantLib::FittedBondDiscountCurve::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - discount
    - calculate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FittedBondDiscountCurve::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: FittedBondDiscountCurve::FittingMethod::numberOfIterations() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer FittedBondDiscountCurve::FittingMethod::numberOfIterations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: FittedBondDiscountCurve::FittingMethod::minimumCostValue() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FittedBondDiscountCurve::FittingMethod::minimumCostValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionName: FittedBondDiscountCurve::FittingMethod::errorCode() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type FittedBondDiscountCurve::FittingMethod::errorCode()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: FittedBondDiscountCurve::FittingMethod::solution() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::solution() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionName: FittedBondDiscountCurve::FittingMethod::constrainAtZero() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool FittedBondDiscountCurve::FittingMethod::constrainAtZero() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: FittedBondDiscountCurve::FittingMethod::weights() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: FittedBondDiscountCurve::FittingMethod::l2() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::l2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: FittedBondDiscountCurve::FittingMethod::optimizationMethod() const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OptimizationMethod>
    signature: ext::shared_ptr<OptimizationMethod> FittedBondDiscountCurve::FittingMethod::optimizationMethod()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionName: '& FittedBondDiscountCurve::FittingMethod::constraint() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Constraint
    signature: Constraint & FittedBondDiscountCurve::FittingMethod::constraint() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:361,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:364,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:365,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:366,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:366,1
    - Dst: discountFunction
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp:369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 371
    functionName: FittedBondDiscountCurve::FittingMethod::discount(const Array& x,
      Time t) const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.hpp
    functionUses: 0
    functionsReached:
    - discountFunction
    - std::exp
    - std::log
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor FittedBondDiscountCurve::FittingMethod::discount(const
      Array& x, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedSimpleZeroCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '&InterpolatedSimpleZeroCurve<T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> &InterpolatedSimpleZeroCurve<T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: '&InterpolatedSimpleZeroCurve<T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> &InterpolatedSimpleZeroCurve<T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '&InterpolatedSimpleZeroCurve<T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &InterpolatedSimpleZeroCurve<T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: '&InterpolatedSimpleZeroCurve<T>::zeroRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> &InterpolatedSimpleZeroCurve<T>::zeroRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:107,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedSimpleZeroCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:118,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:119,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:123,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:124,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:125,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 130
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::data_::back
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::derivative
    - QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor InterpolatedSimpleZeroCurve<T>::discountImpl(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dayCounter
    - interpolator
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      DayCounter &dayCounter, const T &interpolator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - referenceDate
    - dayCounter
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      Date &referenceDate, const DayCounter &dayCounter,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - calendar
    - dayCounter
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(Natural
      settlementDays, const Calendar &calendar,\n                                                            const
      DayCounter &dayCounter,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:155,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:156,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - dates
    - yields
    - dayCounter
    - calendar
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 158
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const Calendar &calendar,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:165,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:165,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - dates
    - yields
    - dayCounter
    - calendar
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const Calendar &calendar,\n                                                            const
      T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dates
    - yields
    - dayCounter
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:184,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:189,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:189,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:190,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 192
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::data_::size
    - dayCounter
    - QuantLib::InterpolatedSimpleZeroCurve<T>::setupTimes
    - size
    - QuantLib::InterpolatedSimpleZeroCurve<T>::setupInterpolation
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedSimpleZeroCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedSimpleZeroCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: '&InterpolatedSimpleZeroCurve<T>::times() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> &InterpolatedSimpleZeroCurve<T>::times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: '&InterpolatedSimpleZeroCurve<T>::dates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> &InterpolatedSimpleZeroCurve<T>::dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '&InterpolatedSimpleZeroCurve<T>::data() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &InterpolatedSimpleZeroCurve<T>::data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: '&InterpolatedSimpleZeroCurve<T>::zeroRates() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> &InterpolatedSimpleZeroCurve<T>::zeroRates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:107,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedSimpleZeroCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:118,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:119,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:123,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:124,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:125,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 130
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::data_::back
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::derivative
    - QuantLib::InterpolatedSimpleZeroCurve<T>::times_::back
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor InterpolatedSimpleZeroCurve<T>::discountImpl(Time t)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dayCounter
    - interpolator
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      DayCounter &dayCounter, const T &interpolator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - referenceDate
    - dayCounter
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      Date &referenceDate, const DayCounter &dayCounter,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - calendar
    - dayCounter
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(Natural
      settlementDays, const Calendar &calendar,\n                                                            const
      DayCounter &dayCounter,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:155,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:156,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - dates
    - yields
    - dayCounter
    - calendar
    - jumps
    - jumpDates
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 158
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const Calendar &calendar,\n                                                            const
      std::vector<Handle<Quote> > &jumps,\n                                                            const
      std::vector<Date> &jumpDates, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:165,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:165,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - dates
    - yields
    - dayCounter
    - calendar
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const Calendar &calendar,\n                                                            const
      T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Date>::at
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:175,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dates
    - yields
    - dayCounter
    - interpolator
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    - QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    - std::vector<Date>::at
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedSimpleZeroCurve<T>::InterpolatedSimpleZeroCurve(const
      std::vector<Date> &dates,\n                                                            const
      std::vector<Rate> &yields,\n                                                            const
      DayCounter &dayCounter, const T &interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:184,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:186,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:189,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:189,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:190,1
    - Dst: QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 192
    functionName: QuantLib::InterpolatedSimpleZeroCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/interpolatedsimplezerocurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedSimpleZeroCurve<T>::data_::size
    - dayCounter
    - QuantLib::InterpolatedSimpleZeroCurve<T>::setupTimes
    - size
    - QuantLib::InterpolatedSimpleZeroCurve<T>::setupInterpolation
    - QuantLib::InterpolatedSimpleZeroCurve<T>::interpolation_::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedSimpleZeroCurve<T>::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:106,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:109,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:112,1
    - Dst: updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - h
    - spreads
    - ' dates'
    - comp
    - freq
    - dc
    - ' factory'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - Compounding
    - Frequency
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: "QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<\n        T>::InterpolatedPiecewiseZeroSpreadedTermStructure"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - updateInterpolation
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedPiecewiseZeroSpreadedTermStructure<\n        T>::InterpolatedPiecewiseZeroSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                           std::vector<Handle<Quote>
      > spreads,\n                                                           const
      std::vector<Date>& dates,\n                                                           Compounding
      comp,\n                                                           Frequency
      freq,\n                                                           DayCounter
      dc,\n                                                           const T& factory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: "&\n    InterpolatedPiecewiseZeroSpreadedTermStructure<T>::referenceDate()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date &\n    InterpolatedPiecewiseZeroSpreadedTermStructure<T>::referenceDate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - back
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:145,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:146,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:148,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:149,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:150,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::compounding
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
    - InterestRate::dayCounter
    - InterestRate::frequency
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseZeroSpreadedTermStructure<T>::zeroYieldImpl(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:157,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:159,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:160,1
    - Dst: interpolator_
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - back
    - interpolator_
    - front
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread(Time
      t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:168,1
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:169,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:170,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
    - empty
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseZeroSpreadedTermStructure<T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:183,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:184,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:185,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:187,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:187,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 190
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - value
    - interpolate
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:103,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:104,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:106,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:107,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:109,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:112,1
    - Dst: updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - h
    - spreads
    - ' dates'
    - comp
    - freq
    - dc
    - ' factory'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - Compounding
    - Frequency
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: "QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<\n        T>::InterpolatedPiecewiseZeroSpreadedTermStructure"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - updateInterpolation
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedPiecewiseZeroSpreadedTermStructure<\n        T>::InterpolatedPiecewiseZeroSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                           std::vector<Handle<Quote>
      > spreads,\n                                                           const
      std::vector<Date>& dates,\n                                                           Compounding
      comp,\n                                                           Frequency
      freq,\n                                                           DayCounter
      dc,\n                                                           const T& factory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter InterpolatedPiecewiseZeroSpreadedTermStructure<T>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calendar()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural InterpolatedPiecewiseZeroSpreadedTermStructure<T>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: "&\n    InterpolatedPiecewiseZeroSpreadedTermStructure<T>::referenceDate()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date &\n    InterpolatedPiecewiseZeroSpreadedTermStructure<T>::referenceDate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - back
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedPiecewiseZeroSpreadedTermStructure<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:145,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:146,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:148,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:149,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:150,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::compounding
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
    - InterestRate::dayCounter
    - InterestRate::frequency
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseZeroSpreadedTermStructure<T>::zeroYieldImpl(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:157,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:159,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:160,1
    - Dst: interpolator_
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - back
    - interpolator_
    - front
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseZeroSpreadedTermStructure<T>::calcSpread(Time
      t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:168,1
    - Dst: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:169,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:170,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
    - empty
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseZeroSpreadedTermStructure<T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:183,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:184,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:185,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:187,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:187,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 190
    functionName: QuantLib::InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - value
    - interpolate
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseZeroSpreadedTermStructure<T>::updateInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:70,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:73,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:77,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - std::log
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:89,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:91,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:91,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - std::min_element
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:100,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:100,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:101,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - discount
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      discount,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:154,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:160,1
    - Dst: C*::zeroRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:161,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 163
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::data
    - C*::dates
    - C*::zeroRate
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:188,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:247,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:253,1
    - Dst: C*::forwardRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:254,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 256
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::forwardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:267,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 272
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:281,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 286
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - forward
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 307
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      forward,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 309
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:339,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:345,1
    - Dst: C*::zeroRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:346,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 348
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::data
    - C*::dates
    - C*::zeroRate
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:360,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:366,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 367
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - Real
    - C*::times
    - std::max
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 381
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:387,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:392,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::times
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 402
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 404
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:70,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:73,1
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:77,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - std::log
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:88,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:89,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:91,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:91,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - std::min_element
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:100,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:100,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:101,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' data'
    - discount
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      discount,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:154,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:160,1
    - Dst: C*::zeroRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:161,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 163
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::data
    - C*::dates
    - C*::zeroRate
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:173,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:187,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:188,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:247,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:253,1
    - Dst: C*::forwardRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:254,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 256
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::forwardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:266,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:267,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 272
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - Real
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:280,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:281,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 286
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - forward
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 307
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      forward,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 309
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YieldTermStructure*::referenceDate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - YieldTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YieldTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YieldTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:339,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:345,1
    - Dst: C*::zeroRate
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:346,1
    - Dst: C*::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 348
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 2
    functionsReached:
    - C*::dayCounter
    - C*::data
    - C*::dates
    - C*::zeroRate
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:359,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:360,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:366,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 367
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - Real
    - C*::times
    - std::max
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: C*::data
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:375,1
    - Dst: Real
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - c
    - validData
    argTypes:
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 381
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    - Real
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:387,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionName: QuantLib::transformDirect
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - C*::times
    linkageType: ''
    returnType: Real
    signature: Real transformDirect(Real x, Size i, const C* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:392,1
    - Dst: C*::times
      Src: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - x
    - i
    - c
    argTypes:
    - Real
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: QuantLib::transformInverse
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached:
    - C*::times
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real transformInverse(Real x, Size i, const C* c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 402
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 404
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bootstraptraits.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:30,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::getSofrStart
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - QuantLib::Date::nthWeekday
    linkageType: ''
    returnType: Date
    signature: Date getSofrStart(Month month, Year year, Frequency freq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::year
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::getSofrEnd
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::nthWeekday
    - Date::year
    - Period
    - QuantLib::Date::endOfMonth
    - QuantLib::Date
    - QuantLib::getSofrStart
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date getSofrEnd(Month month, Year year, Frequency freq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:30,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::getSofrStart
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Date
    - QuantLib::Date::nthWeekday
    linkageType: ''
    returnType: Date
    signature: Date getSofrStart(Month month, Year year, Frequency freq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::year
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::getSofrEnd
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::nthWeekday
    - Date::year
    - Period
    - QuantLib::Date::endOfMonth
    - QuantLib::Date
    - QuantLib::getSofrStart
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date getSofrEnd(Month month, Year year, Frequency freq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:57,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:57,1
    - Dst: ext::make_shared<OvernightIndexFuture>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:58,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' price'
    - ' valueDate'
    - ' maturityDate'
    - ' overnightIndex'
    - ' convexityAdjustment'
    - averagingMethod
    argTypes:
    - Handle<Quote>
    - Date
    - Date
    - ext::shared_ptr<OvernightIndex>
    - Handle<Quote>
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::OvernightIndexFutureRateHelper::OvernightIndexFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWithObservables
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::make_shared<OvernightIndexFuture>
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexFutureRateHelper::OvernightIndexFutureRateHelper(\n
      \       const Handle<Quote>& price,\n        // first day of reference period\n
      \       const Date& valueDate,\n        // delivery date\n        const Date&
      maturityDate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       const Handle<Quote>& convexityAdjustment,\n        RateAveraging::Type
      averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:66,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::OvernightIndexFutureRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFutureRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:76,1
    - Dst: QuantLib::OISRateHelper::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 79
    functionName: QuantLib::OvernightIndexFutureRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFutureRateHelper::setTermStructure(YieldTermStructure*
      t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OvernightIndexFutureRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:82,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:84,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::OvernightIndexFutureRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<OvernightIndexFutureRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFutureRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFutureRateHelper::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:101,1
    - Dst: getSofrEnd
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:102,1
    - Dst: ext::make_shared<Sofr>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - ' price'
    - referenceMonth
    - referenceYear
    - referenceFreq
    - ' convexityAdjustment'
    argTypes:
    - Handle<Quote>
    - Month
    - Year
    - Frequency
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 108
    functionName: QuantLib::SofrFutureRateHelper::SofrFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Sofr>
    - getSofrStart
    - getSofrEnd
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SofrFutureRateHelper::SofrFutureRateHelper(\n        const Handle<Quote>&
      price,\n        Month referenceMonth,\n        Year referenceYear,\n        Frequency
      referenceFreq,\n        const Handle<Quote>& convexityAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:117,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:117,1
    - Dst: getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:118,1
    - Dst: getSofrEnd
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:119,1
    - Dst: ext::make_shared<Sofr>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:120,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:121,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - price
    - referenceMonth
    - referenceYear
    - referenceFreq
    - convexityAdjustment
    argTypes:
    - Real
    - Month
    - Year
    - Frequency
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 125
    functionName: QuantLib::SofrFutureRateHelper::SofrFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - getSofrStart
    - getSofrEnd
    - ext::make_shared<Sofr>
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SofrFutureRateHelper::SofrFutureRateHelper(\n        Real price,\n
      \       Month referenceMonth,\n        Year referenceYear,\n        Frequency
      referenceFreq,\n        Real convexityAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:30,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::getSofrStart
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date
    - QuantLib::Date::nthWeekday
    linkageType: ''
    returnType: Date
    signature: Date getSofrStart(Month month, Year year, Frequency freq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::year
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::getSofrEnd
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::nthWeekday
    - Date::year
    - Period
    - QuantLib::Date::endOfMonth
    - QuantLib::Date
    - QuantLib::getSofrStart
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date getSofrEnd(Month month, Year year, Frequency freq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:30,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::getSofrStart
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Date
    - QuantLib::Date::nthWeekday
    linkageType: ''
    returnType: Date
    signature: Date getSofrStart(Month month, Year year, Frequency freq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:36,1
    - Dst: QuantLib::getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:38,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::month
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    - Dst: Date::year
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - month
    - year
    - freq
    argTypes:
    - Month
    - Year
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::getSofrEnd
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::nthWeekday
    - Date::year
    - Period
    - QuantLib::Date::endOfMonth
    - QuantLib::Date
    - QuantLib::getSofrStart
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date getSofrEnd(Month month, Year year, Frequency freq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:57,1
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:57,1
    - Dst: ext::make_shared<OvernightIndexFuture>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:58,1
    - Dst: registerWithObservables
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' price'
    - ' valueDate'
    - ' maturityDate'
    - ' overnightIndex'
    - ' convexityAdjustment'
    - averagingMethod
    argTypes:
    - Handle<Quote>
    - Date
    - Date
    - ext::shared_ptr<OvernightIndex>
    - Handle<Quote>
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 63
    functionName: QuantLib::OvernightIndexFutureRateHelper::OvernightIndexFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWithObservables
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::make_shared<OvernightIndexFuture>
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexFutureRateHelper::OvernightIndexFutureRateHelper(\n
      \       const Handle<Quote>& price,\n        // first day of reference period\n
      \       const Date& valueDate,\n        // delivery date\n        const Date&
      maturityDate,\n        const ext::shared_ptr<OvernightIndex>& overnightIndex,\n
      \       const Handle<Quote>& convexityAdjustment,\n        RateAveraging::Type
      averagingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:66,1
    - Dst: NPV
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::OvernightIndexFutureRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFutureRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:76,1
    - Dst: QuantLib::OISRateHelper::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 79
    functionName: QuantLib::OvernightIndexFutureRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFutureRateHelper::setTermStructure(YieldTermStructure*
      t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OvernightIndexFutureRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:82,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:84,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::OvernightIndexFutureRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<OvernightIndexFutureRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void OvernightIndexFutureRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::OvernightIndexFutureRateHelper::convexityAdjustment
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexFutureRateHelper::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:101,1
    - Dst: getSofrEnd
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:102,1
    - Dst: ext::make_shared<Sofr>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - ' price'
    - referenceMonth
    - referenceYear
    - referenceFreq
    - ' convexityAdjustment'
    argTypes:
    - Handle<Quote>
    - Month
    - Year
    - Frequency
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 108
    functionName: QuantLib::SofrFutureRateHelper::SofrFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Sofr>
    - getSofrStart
    - getSofrEnd
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SofrFutureRateHelper::SofrFutureRateHelper(\n        const Handle<Quote>&
      price,\n        Month referenceMonth,\n        Year referenceYear,\n        Frequency
      referenceFreq,\n        const Handle<Quote>& convexityAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:117,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:117,1
    - Dst: getSofrStart
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:118,1
    - Dst: getSofrEnd
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:119,1
    - Dst: ext::make_shared<Sofr>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:120,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:121,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - price
    - referenceMonth
    - referenceYear
    - referenceFreq
    - convexityAdjustment
    argTypes:
    - Real
    - Month
    - Year
    - Frequency
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 125
    functionName: QuantLib::SofrFutureRateHelper::SofrFutureRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/overnightindexfutureratehelper.cpp
    functionUses: 0
    functionsReached:
    - getSofrStart
    - getSofrEnd
    - ext::make_shared<Sofr>
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SofrFutureRateHelper::SofrFutureRateHelper(\n        Real price,\n
      \       Month referenceMonth,\n        Year referenceYear,\n        Frequency
      referenceFreq,\n        Real convexityAdjustment)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::BondHelper::bond
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Bond>
    signature: ext::shared_ptr<Bond> BondHelper::bond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::BondHelper::priceType
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bond::Price::Type
    signature: Bond::Price::Type BondHelper::priceType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::BondHelper::bond
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Bond>
    signature: ext::shared_ptr<Bond> BondHelper::bond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::BondHelper::priceType
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bond::Price::Type
    signature: Bond::Price::Type BondHelper::priceType() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - type
    argTypes:
    - Date
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionName: QuantLib::CheckDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::isASXdate
    - QL_FAIL
    - QuantLib::IMM::isIMMdate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CheckDate(const Date& date, const Futures::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' earliestDate'
    - ' maturityDate'
    - ' dayCounter'
    argTypes:
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::DetermineYearFraction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    linkageType: ''
    returnType: Time
    signature: "Time DetermineYearFraction(const Date& earliestDate,\n                                   const
      Date& maturityDate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - type
    argTypes:
    - Date
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionName: QuantLib::CheckDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::isASXdate
    - QL_FAIL
    - QuantLib::IMM::isIMMdate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CheckDate(const Date& date, const Futures::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' earliestDate'
    - ' maturityDate'
    - ' dayCounter'
    argTypes:
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::DetermineYearFraction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    linkageType: ''
    returnType: Time
    signature: "Time DetermineYearFraction(const Date& earliestDate,\n                                   const
      Date& maturityDate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:78,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:79,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:83,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 9
    argNames:
    - ' price'
    - ' iborStartDate'
    - lengthInMonths
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 88
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - handleFromVariant
    - registerWith
    - advance
    - DetermineYearFraction
    - CheckDate
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         Natural lengthInMonths,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth,\n                                         const
      DayCounter& dayCounter,\n                                         const std::variant<Real,
      Handle<Quote>>& convAdj,\n                                         Futures::Type
      type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:96,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:102,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:104,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:105,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:108,1
    - Dst: determineMaturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:118,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:119,1
    - Dst: determineMaturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:122,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:123,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:129,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:132,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 6
    argNames:
    - ' price'
    - ' iborStartDate'
    - ' iborEndDate'
    - ' dayCounter'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - Date
    - DayCounter
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 136
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    - handleFromVariant
    - nextDateCalculator
    - determineMaturityDate
    - CheckDate
    - QL_FAIL
    - Date
    - registerWith
    - QuantLib::ASX::nextDate
    - DetermineYearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         const Date& iborEndDate,\n
      \                                        const DayCounter& dayCounter,\n                                         const
      std::variant<Real, Handle<Quote>>& convAdj,\n                                         Futures::Type
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:143,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:144,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:147,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:150,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:150,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - ' price'
    - ' iborStartDate'
    - ' index'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - ext::shared_ptr<IborIndex>
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 154
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - handleFromVariant
    - registerWith
    - businessDayConvention
    - advance
    - DetermineYearFraction
    - fixingCalendar
    - CheckDate
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         const ext::shared_ptr<IborIndex>&
      index,\n                                         const std::variant<Real, Handle<Quote>>&
      convAdj,\n                                         Futures::Type type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:157,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:158,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:159,1
    - Dst: QuantLib::FuturesRateHelper::convexityAdjustment
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionName: QuantLib::FuturesRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - QuantLib::FuturesRateHelper::convexityAdjustment
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FuturesRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:168,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FuturesRateHelper::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 1
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Real
    signature: Real FuturesRateHelper::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FuturesRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:172,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:174,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 177
    functionName: QuantLib::FuturesRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<FuturesRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void FuturesRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:187,1
    - Dst: Currency
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:189,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' rate'
    - ' tenor'
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 192
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<IborIndex>
    - QuantLib::DepositRateHelper::initializeDates
    - Currency
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         const Period&
      tenor,\n                                         Natural fixingDays,\n                                         const
      Calendar& calendar,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth,\n                                         const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:197,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' rate'
    - ' i'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 199
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::DepositRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         const ext::shared_ptr<IborIndex>&
      i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:205,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' rate'
    - fixingDate
    - ' i'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::DepositRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         Date fixingDate,\n
      \                                        const ext::shared_ptr<IborIndex>& i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:210,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: QuantLib::DepositRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - fixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DepositRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:222,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: QuantLib::DepositRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:232,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:233,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:234,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:236,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: QuantLib::DepositRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 3
    functionsReached:
    - fixingDate
    - maturityDate
    - fixingCalendar
    - valueDate
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DepositRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:243,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:245,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 248
    functionName: QuantLib::DepositRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<DepositRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - ' rate'
    - monthsToStart
    - monthsToEnd
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - Natural
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 268
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural monthsToStart,\n                                 Natural
      monthsToEnd,\n                                 Natural fixingDays,\n                                 const
      Calendar& calendar,\n                                 BusinessDayConvention
      convention,\n                                 bool endOfMonth,\n                                 const
      DayCounter& dayCounter,\n                                 Pillar::Choice pillarChoice,\n
      \                                Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' rate'
    - monthsToStart
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural monthsToStart,\n                                 const
      ext::shared_ptr<IborIndex>& i,\n                                 Pillar::Choice
      pillarChoice,\n                                 Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:294,1
    - Dst: Currency
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:297,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - ' rate'
    - periodToStart
    - lengthInMonths
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Natural
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 301
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FraRateHelper::initializeDates
    - ext::make_shared<IborIndex>
    - Currency
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Period periodToStart,\n                                 Natural
      lengthInMonths,\n                                 Natural fixingDays,\n                                 const
      Calendar& calendar,\n                                 BusinessDayConvention
      convention,\n                                 bool endOfMonth,\n                                 const
      DayCounter& dayCounter,\n                                 Pillar::Choice pillarChoice,\n
      \                                Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:312,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:316,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:317,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - ' rate'
    - periodToStart
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 320
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Period periodToStart,\n                                 const
      ext::shared_ptr<IborIndex>& i,\n                                 Pillar::Choice
      pillarChoice,\n                                 Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:332,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:334,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:335,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 7
    argNames:
    - ' rate'
    - immOffsetStart
    - immOffsetEnd
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - Natural
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 338
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural immOffsetStart,\n                                 Natural
      immOffsetEnd,\n                                 const ext::shared_ptr<IborIndex>&
      i,\n                                 Pillar::Choice pillarChoice,\n                                 Date
      customPillarDate,\n                                 bool useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:350,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:352,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:353,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 7
    argNames:
    - ' rate'
    - startDate
    - endDate
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - Date
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 358
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Date startDate,\n                                 Date
      endDate,\n                                 const ext::shared_ptr<IborIndex>&
      i,\n                                 Pillar::Choice pillarChoice,\n                                 Date
      customPillarDate,\n                                 bool useIndexedCoupon)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:361,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:363,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:365,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::FraRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - fixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FraRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:377,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 380
    functionName: QuantLib::FraRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' asof'
    - n
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 389
    functionName: QuantLib::nthImmDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: Date nthImmDate(const Date& asof, const Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' asof'
    - n
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 389
    functionName: QuantLib::nthImmDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: Date nthImmDate(const Date& asof, const Size n)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:397,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:398,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:399,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:401,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:402,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:403,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:405,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:406,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:406,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:407,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:410,1
    - Dst: nthImmDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:410,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:411,1
    - Dst: nthImmDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:411,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:413,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:419,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:422,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:434,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:438,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:444,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:444,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:449,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 450
    functionName: QuantLib::FraRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 4
    functionsReached:
    - tenor
    - endOfMonth
    - dayCounter
    - Integer
    - fixingDays
    - fixingDate
    - QL_FAIL
    - businessDayConvention
    - nthImmDate
    - maturityDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FraRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:453,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:455,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 458
    functionName: QuantLib::FraRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<FraRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:470,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:470,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:471,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:471,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:473,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' rate'
    - ' swapIndex'
    - spread
    - ' fwdStart'
    - discount
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<SwapIndex>
    - Handle<Quote>
    - Period
    - Handle<YieldTermStructure>
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 474
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - iborIndex
    - fixedLegTenor
    - tenor
    - dayCounter
    - Null<Natural>
    - std::move
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const ext::shared_ptr<SwapIndex>&
      swapIndex,\n                                   Handle<Quote> spread,\n                                   const
      Period& fwdStart,\n                                   Handle<YieldTermStructure>
      discount,\n                                   Pillar::Choice pillarChoice,\n
      \                                  Date customPillarDate,\n                                   bool
      endOfMonth,\n                                   const ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:492,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:494,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:494,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:495,1
    - Dst: QuantLib::SwapRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - ' rate'
    - ' tenor'
    - calendar
    - fixedFrequency
    - fixedConvention
    - fixedDayCount
    - ' iborIndex'
    - spread
    - ' fwdStart'
    - discount
    - settlementDays
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<Quote>
    - Period
    - Handle<YieldTermStructure>
    - Natural
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 498
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::SwapRateHelper::initialize
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const Period& tenor,\n                                   Calendar
      calendar,\n                                   Frequency fixedFrequency,\n                                   BusinessDayConvention
      fixedConvention,\n                                   DayCounter fixedDayCount,\n
      \                                  const ext::shared_ptr<IborIndex>& iborIndex,\n
      \                                  Handle<Quote> spread,\n                                   const
      Period& fwdStart,\n                                   Handle<YieldTermStructure>
      discount,\n                                   Natural settlementDays,\n                                   Pillar::Choice
      pillarChoice,\n                                   Date customPillarDate,\n                                   bool
      endOfMonth,\n                                   const ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:515,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:517,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:517,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:518,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:519,1
    - Dst: QuantLib::SwapRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 14
    argNames:
    - ' rate'
    - ' startDate'
    - ' endDate'
    - calendar
    - fixedFrequency
    - fixedConvention
    - fixedDayCount
    - ' iborIndex'
    - spread
    - discount
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - Date
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 500
    functionDepth: 1
    functionLinenumber: 500
    functionLinenumberEnd: 523
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::SwapRateHelper::initialize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const Date& startDate,\n                                   const
      Date& endDate,\n                                   Calendar calendar,\n                                   Frequency
      fixedFrequency,\n                                   BusinessDayConvention fixedConvention,\n
      \                                  DayCounter fixedDayCount,\n                                   const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                   Handle<Quote>
      spread,\n                                   Handle<YieldTermStructure> discount,\n
      \                                  Pillar::Choice pillarChoice,\n                                   Date
      customPillarDate,\n                                   bool endOfMonth,\n                                   const
      ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:528,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:532,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:534,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:535,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:536,1
    - Dst: QuantLib::SwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ' iborIndex'
    - customPillarDate
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 540
    functionName: QuantLib::SwapRateHelper::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 2
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::SwapRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::initialize(const ext::shared_ptr<IborIndex>&
      iborIndex,\n                                    Date customPillarDate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:548,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:554,1
    - Dst: simplifyNotificationGraph
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:563,1
    - Dst: startDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:565,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:566,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:569,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:569,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:570,1
    - Dst: ext::shared_ptr::fixingEndDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:570,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:581,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:585,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:591,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:591,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 596
    functionName: QuantLib::SwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 1
    functionsReached:
    - simplifyNotificationGraph
    - floatingLeg
    - ext::shared_ptr::fixingEndDate
    - Integer
    - Period
    - std::max
    - ext::dynamic_pointer_cast<IborCoupon>
    - QL_FAIL
    - MakeVanillaSwap
    - startDate
    - maturityDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:604,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:606,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:607,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:609,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:611,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 612
    functionName: QuantLib::SwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - empty
    - linkTo
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:615,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:617,1
    - Dst: floatingLegNPV
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:620,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:621,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:621,1
    - Dst: floatingLegBPS
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:622,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 626
    functionName: QuantLib::SwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - floatingLegNPV
    - deepUpdate
    - value
    - empty
    - fixedLegBPS
    - floatingLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SwapRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:629,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:631,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 634
    functionName: QuantLib::SwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<SwapRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:648,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:649,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:649,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:650,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:651,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:652,1
    - Dst: QuantLib::BMASwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - ' liborFraction'
    - ' tenor'
    - settlementDays
    - calendar
    - ' bmaPeriod'
    - bmaConvention
    - bmaDayCount
    - bmaIndex
    - iborIndex
    argTypes:
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<BMAIndex>
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 654
    functionName: QuantLib::BMASwapRateHelper::BMASwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::BMASwapRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void BMASwapRateHelper::BMASwapRateHelper(const Handle<Quote>& liborFraction,\n
      \                                        const Period& tenor,\n                                         Natural
      settlementDays,\n                                         Calendar calendar,\n
      \                                        // bma leg\n                                         const
      Period& bmaPeriod,\n                                         BusinessDayConvention
      bmaConvention,\n                                         DayCounter bmaDayCount,\n
      \                                        ext::shared_ptr<BMAIndex> bmaIndex,\n
      \                                        // libor leg\n                                         ext::shared_ptr<IborIndex>
      iborIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:660,1
    - Dst: JointCalendar::adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:661,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:663,1
    - Dst: BMAIndex::BMAIndex
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:668,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:671,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:673,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:678,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:679,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:680,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:681,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:682,1
    - Dst: ext::make_shared<BMASwap>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:685,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:690,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:695,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:697,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:697,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:698,1
    - Dst: ext::shared_ptr::valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:702,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 656
    functionDepth: 1
    functionLinenumber: 656
    functionLinenumberEnd: 704
    functionName: QuantLib::BMASwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 1
    functionsReached:
    - endOfMonth
    - BMAIndex::BMAIndex
    - dayCounter
    - ext::make_shared<BMASwap>
    - MakeSchedule
    - Date::weekday
    - maturityDate
    - tenor
    - adjust
    - fixingCalendar
    - ext::shared_ptr::fixingCalendar
    - DiscountingSwapEngine::DiscountingSwapEngine
    - forwardingTermStructure
    - advance
    - JointCalendar::adjust
    - ext::shared_ptr::valueDate
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:712,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 715
    functionName: QuantLib::BMASwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:718,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:720,1
    - Dst: fairLiborFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 722
    functionName: QuantLib::BMASwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - deepUpdate
    - fairLiborFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwapRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BMASwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:725,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:727,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 724
    functionDepth: 2
    functionLinenumber: 724
    functionLinenumberEnd: 730
    functionName: QuantLib::BMASwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<BMASwapRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:742,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:743,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:745,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:745,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:746,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:747,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:749,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:752,1
    - Dst: QuantLib::FxSwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 10
    argNames:
    - ' fwdPoint'
    - spotFx
    - ' tenor'
    - fixingDays
    - calendar
    - convention
    - endOfMonth
    - isFxBaseCurrencyCollateralCurrency
    - coll
    - tradingCalendar
    argTypes:
    - Handle<Quote>
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - bool
    - Handle<YieldTermStructure>
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 755
    functionName: QuantLib::FxSwapRateHelper::FxSwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - JointCalendar
    - empty
    - QuantLib::FxSwapRateHelper::initializeDates
    - std::move
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FxSwapRateHelper::FxSwapRateHelper(const Handle<Quote>& fwdPoint,\n
      \                                      Handle<Quote> spotFx,\n                                       const
      Period& tenor,\n                                       Natural fixingDays,\n
      \                                      Calendar calendar,\n                                       BusinessDayConvention
      convention,\n                                       bool endOfMonth,\n                                       bool
      isFxBaseCurrencyCollateralCurrency,\n                                       Handle<YieldTermStructure>
      coll,\n                                       Calendar tradingCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:763,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:765,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:766,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' fwdPoint'
    - spotFx
    - ' startDate'
    - ' endDate'
    - isFxBaseCurrencyCollateralCurrency
    - coll
    argTypes:
    - Handle<Quote>
    - Handle<Quote>
    - Date
    - Date
    - bool
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 770
    functionName: QuantLib::FxSwapRateHelper::FxSwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FxSwapRateHelper::FxSwapRateHelper(const Handle<Quote>& fwdPoint,\n
      \                                      Handle<Quote> spotFx,\n                                       const
      Date& startDate,\n                                       const Date& endDate,\n
      \                                      bool isFxBaseCurrencyCollateralCurrency,\n
      \                                      Handle<YieldTermStructure> coll)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:776,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:777,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:779,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:781,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:782,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:785,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 787
    functionName: QuantLib::FxSwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 1
    functionsReached:
    - adjust
    - advance
    - empty
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:790,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:792,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:792,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:794,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:795,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:797,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:798,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:800,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 806
    functionName: QuantLib::FxSwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - value
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FxSwapRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:814,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:816,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 808
    functionDepth: 0
    functionLinenumber: 808
    functionLinenumberEnd: 819
    functionName: QuantLib::FxSwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FxSwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:822,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:824,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:826,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 821
    functionDepth: 2
    functionLinenumber: 821
    functionLinenumberEnd: 827
    functionName: QuantLib::FxSwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<FxSwapRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - type
    argTypes:
    - Date
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionName: QuantLib::CheckDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::isASXdate
    - QL_FAIL
    - QuantLib::IMM::isIMMdate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CheckDate(const Date& date, const Futures::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' earliestDate'
    - ' maturityDate'
    - ' dayCounter'
    argTypes:
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::DetermineYearFraction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    linkageType: ''
    returnType: Time
    signature: "Time DetermineYearFraction(const Date& earliestDate,\n                                   const
      Date& maturityDate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - type
    argTypes:
    - Date
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionName: QuantLib::CheckDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::isASXdate
    - QL_FAIL
    - QuantLib::IMM::isIMMdate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CheckDate(const Date& date, const Futures::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' earliestDate'
    - ' maturityDate'
    - ' dayCounter'
    argTypes:
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: QuantLib::DetermineYearFraction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    linkageType: ''
    returnType: Time
    signature: "Time DetermineYearFraction(const Date& earliestDate,\n                                   const
      Date& maturityDate,\n                                   const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:78,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:79,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:83,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 9
    argNames:
    - ' price'
    - ' iborStartDate'
    - lengthInMonths
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 88
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - handleFromVariant
    - registerWith
    - advance
    - DetermineYearFraction
    - CheckDate
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         Natural lengthInMonths,\n
      \                                        const Calendar& calendar,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth,\n                                         const
      DayCounter& dayCounter,\n                                         const std::variant<Real,
      Handle<Quote>>& convAdj,\n                                         Futures::Type
      type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:96,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:102,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:104,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:105,1
    - Dst: nextDateCalculator
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:108,1
    - Dst: determineMaturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:118,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:119,1
    - Dst: determineMaturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:122,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:123,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:129,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:132,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 6
    argNames:
    - ' price'
    - ' iborStartDate'
    - ' iborEndDate'
    - ' dayCounter'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - Date
    - DayCounter
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 136
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    - handleFromVariant
    - nextDateCalculator
    - determineMaturityDate
    - CheckDate
    - QL_FAIL
    - Date
    - registerWith
    - QuantLib::ASX::nextDate
    - DetermineYearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         const Date& iborEndDate,\n
      \                                        const DayCounter& dayCounter,\n                                         const
      std::variant<Real, Handle<Quote>>& convAdj,\n                                         Futures::Type
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handleFromVariant
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:143,1
    - Dst: CheckDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:144,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:147,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:149,1
    - Dst: DetermineYearFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:150,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:150,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - ' price'
    - ' iborStartDate'
    - ' index'
    - ' convAdj'
    - type
    argTypes:
    - std::variant<Real, Handle<Quote>>
    - Date
    - ext::shared_ptr<IborIndex>
    - std::variant<Real, Handle<Quote>>
    - Futures::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 154
    functionName: QuantLib::FuturesRateHelper::FuturesRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - dayCounter
    - handleFromVariant
    - registerWith
    - businessDayConvention
    - advance
    - DetermineYearFraction
    - fixingCalendar
    - CheckDate
    linkageType: ''
    returnType: void
    signature: "void FuturesRateHelper::FuturesRateHelper(const std::variant<Real,
      Handle<Quote>>& price,\n                                         const Date&
      iborStartDate,\n                                         const ext::shared_ptr<IborIndex>&
      index,\n                                         const std::variant<Real, Handle<Quote>>&
      convAdj,\n                                         Futures::Type type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:157,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:158,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:159,1
    - Dst: QuantLib::FuturesRateHelper::convexityAdjustment
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionName: QuantLib::FuturesRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - QuantLib::FuturesRateHelper::convexityAdjustment
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FuturesRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:168,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::FuturesRateHelper::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 2
    functionsReached:
    - value
    - empty
    linkageType: ''
    returnType: Real
    signature: Real FuturesRateHelper::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FuturesRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:172,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:174,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 177
    functionName: QuantLib::FuturesRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<FuturesRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void FuturesRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:187,1
    - Dst: Currency
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:189,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - ' rate'
    - ' tenor'
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 192
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<IborIndex>
    - QuantLib::DepositRateHelper::initializeDates
    - Currency
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         const Period&
      tenor,\n                                         Natural fixingDays,\n                                         const
      Calendar& calendar,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth,\n                                         const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:197,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' rate'
    - ' i'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 199
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::DepositRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         const ext::shared_ptr<IborIndex>&
      i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:205,1
    - Dst: QuantLib::DepositRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' rate'
    - fixingDate
    - ' i'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: QuantLib::DepositRateHelper::DepositRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - QuantLib::DepositRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void DepositRateHelper::DepositRateHelper(const std::variant<Rate,
      Handle<Quote>>& rate,\n                                         Date fixingDate,\n
      \                                        const ext::shared_ptr<IborIndex>& i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:210,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: QuantLib::DepositRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - fixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real DepositRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:222,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: QuantLib::DepositRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:232,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:233,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:234,1
    - Dst: valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:236,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: QuantLib::DepositRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 6
    functionsReached:
    - fixingDate
    - maturityDate
    - fixingCalendar
    - valueDate
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DepositRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:243,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:245,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 248
    functionName: QuantLib::DepositRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<DepositRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void DepositRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - ' rate'
    - monthsToStart
    - monthsToEnd
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - Natural
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 268
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural monthsToStart,\n                                 Natural
      monthsToEnd,\n                                 Natural fixingDays,\n                                 const
      Calendar& calendar,\n                                 BusinessDayConvention
      convention,\n                                 bool endOfMonth,\n                                 const
      DayCounter& dayCounter,\n                                 Pillar::Choice pillarChoice,\n
      \                                Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' rate'
    - monthsToStart
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural monthsToStart,\n                                 const
      ext::shared_ptr<IborIndex>& i,\n                                 Pillar::Choice
      pillarChoice,\n                                 Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<IborIndex>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:294,1
    - Dst: Currency
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:297,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 11
    argNames:
    - ' rate'
    - periodToStart
    - lengthInMonths
    - fixingDays
    - ' calendar'
    - convention
    - endOfMonth
    - ' dayCounter'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Natural
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - DayCounter
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 301
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FraRateHelper::initializeDates
    - ext::make_shared<IborIndex>
    - Currency
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Period periodToStart,\n                                 Natural
      lengthInMonths,\n                                 Natural fixingDays,\n                                 const
      Calendar& calendar,\n                                 BusinessDayConvention
      convention,\n                                 bool endOfMonth,\n                                 const
      DayCounter& dayCounter,\n                                 Pillar::Choice pillarChoice,\n
      \                                Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:312,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:316,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:317,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - ' rate'
    - periodToStart
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 303
    functionDepth: 2
    functionLinenumber: 303
    functionLinenumberEnd: 320
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Period periodToStart,\n                                 const
      ext::shared_ptr<IborIndex>& i,\n                                 Pillar::Choice
      pillarChoice,\n                                 Date customPillarDate,\n                                 bool
      useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:332,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:334,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:335,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 7
    argNames:
    - ' rate'
    - immOffsetStart
    - immOffsetEnd
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Natural
    - Natural
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 322
    functionDepth: 2
    functionLinenumber: 322
    functionLinenumberEnd: 338
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Natural immOffsetStart,\n                                 Natural
      immOffsetEnd,\n                                 const ext::shared_ptr<IborIndex>&
      i,\n                                 Pillar::Choice pillarChoice,\n                                 Date
      customPillarDate,\n                                 bool useIndexedCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:350,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:352,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:353,1
    - Dst: QuantLib::FraRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 7
    argNames:
    - ' rate'
    - startDate
    - endDate
    - ' i'
    - pillarChoice
    - customPillarDate
    - useIndexedCoupon
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - Date
    - ext::shared_ptr<IborIndex>
    - Pillar::Choice
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 358
    functionName: QuantLib::FraRateHelper::FraRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::FraRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void FraRateHelper::FraRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                 Date startDate,\n                                 Date
      endDate,\n                                 const ext::shared_ptr<IborIndex>&
      i,\n                                 Pillar::Choice pillarChoice,\n                                 Date
      customPillarDate,\n                                 bool useIndexedCoupon)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:361,1
    - Dst: fixing
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:363,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:365,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 369
    functionName: QuantLib::FraRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - fixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FraRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:377,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 380
    functionName: QuantLib::FraRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' asof'
    - n
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 389
    functionName: QuantLib::nthImmDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: Date nthImmDate(const Date& asof, const Size n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' asof'
    - n
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 389
    functionName: QuantLib::nthImmDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: Date nthImmDate(const Date& asof, const Size n)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:397,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:398,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:399,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:401,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:402,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:403,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:405,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:406,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:406,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:407,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:410,1
    - Dst: nthImmDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:410,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:411,1
    - Dst: nthImmDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:411,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:413,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:419,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:422,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:434,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:438,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:444,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:444,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:449,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 450
    functionName: QuantLib::FraRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 8
    functionsReached:
    - tenor
    - endOfMonth
    - dayCounter
    - Integer
    - fixingDays
    - fixingDate
    - QL_FAIL
    - businessDayConvention
    - nthImmDate
    - maturityDate
    - fixingCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FraRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:453,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:455,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 458
    functionName: QuantLib::FraRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<FraRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void FraRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:470,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:470,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:471,1
    - Dst: fixedLegConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:471,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:472,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:473,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' rate'
    - ' swapIndex'
    - spread
    - ' fwdStart'
    - discount
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - ext::shared_ptr<SwapIndex>
    - Handle<Quote>
    - Period
    - Handle<YieldTermStructure>
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 474
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - fixedLegConvention
    - iborIndex
    - fixedLegTenor
    - tenor
    - dayCounter
    - Null<Natural>
    - std::move
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const ext::shared_ptr<SwapIndex>&
      swapIndex,\n                                   Handle<Quote> spread,\n                                   const
      Period& fwdStart,\n                                   Handle<YieldTermStructure>
      discount,\n                                   Pillar::Choice pillarChoice,\n
      \                                  Date customPillarDate,\n                                   bool
      endOfMonth,\n                                   const ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:492,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:494,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:494,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:495,1
    - Dst: QuantLib::SwapRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - ' rate'
    - ' tenor'
    - calendar
    - fixedFrequency
    - fixedConvention
    - fixedDayCount
    - ' iborIndex'
    - spread
    - ' fwdStart'
    - discount
    - settlementDays
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Period
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<Quote>
    - Period
    - Handle<YieldTermStructure>
    - Natural
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 476
    functionDepth: 2
    functionLinenumber: 476
    functionLinenumberEnd: 498
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::SwapRateHelper::initialize
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const Period& tenor,\n                                   Calendar
      calendar,\n                                   Frequency fixedFrequency,\n                                   BusinessDayConvention
      fixedConvention,\n                                   DayCounter fixedDayCount,\n
      \                                  const ext::shared_ptr<IborIndex>& iborIndex,\n
      \                                  Handle<Quote> spread,\n                                   const
      Period& fwdStart,\n                                   Handle<YieldTermStructure>
      discount,\n                                   Natural settlementDays,\n                                   Pillar::Choice
      pillarChoice,\n                                   Date customPillarDate,\n                                   bool
      endOfMonth,\n                                   const ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:515,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:517,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:517,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:518,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:519,1
    - Dst: QuantLib::SwapRateHelper::initialize
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 14
    argNames:
    - ' rate'
    - ' startDate'
    - ' endDate'
    - calendar
    - fixedFrequency
    - fixedConvention
    - fixedDayCount
    - ' iborIndex'
    - spread
    - discount
    - pillarChoice
    - customPillarDate
    - endOfMonth
    - ' useIndexedCoupons'
    argTypes:
    - std::variant<Rate, Handle<Quote>>
    - Date
    - Date
    - Calendar
    - Frequency
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<IborIndex>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Pillar::Choice
    - Date
    - bool
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 500
    functionDepth: 2
    functionLinenumber: 500
    functionLinenumberEnd: 523
    functionName: QuantLib::SwapRateHelper::SwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::SwapRateHelper::initialize
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::SwapRateHelper(const std::variant<Rate, Handle<Quote>>&
      rate,\n                                   const Date& startDate,\n                                   const
      Date& endDate,\n                                   Calendar calendar,\n                                   Frequency
      fixedFrequency,\n                                   BusinessDayConvention fixedConvention,\n
      \                                  DayCounter fixedDayCount,\n                                   const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                   Handle<Quote>
      spread,\n                                   Handle<YieldTermStructure> discount,\n
      \                                  Pillar::Choice pillarChoice,\n                                   Date
      customPillarDate,\n                                   bool endOfMonth,\n                                   const
      ext::optional<bool>& useIndexedCoupons)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:528,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:532,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:534,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:535,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:536,1
    - Dst: QuantLib::SwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ' iborIndex'
    - customPillarDate
    argTypes:
    - ext::shared_ptr<IborIndex>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 525
    functionDepth: 2
    functionLinenumber: 525
    functionLinenumberEnd: 540
    functionName: QuantLib::SwapRateHelper::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 4
    functionsReached:
    - clone
    - registerWith
    - unregisterWith
    - QuantLib::SwapRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void SwapRateHelper::initialize(const ext::shared_ptr<IborIndex>&
      iborIndex,\n                                    Date customPillarDate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:548,1
    - Dst: Period
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:554,1
    - Dst: simplifyNotificationGraph
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:563,1
    - Dst: startDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:565,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:566,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:569,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:569,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:570,1
    - Dst: ext::shared_ptr::fixingEndDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:570,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:581,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:585,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:591,1
    - Dst: Integer
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:591,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 596
    functionName: QuantLib::SwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 2
    functionsReached:
    - simplifyNotificationGraph
    - floatingLeg
    - ext::shared_ptr::fixingEndDate
    - Integer
    - Period
    - std::max
    - ext::dynamic_pointer_cast<IborCoupon>
    - QL_FAIL
    - MakeVanillaSwap
    - startDate
    - maturityDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:604,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:606,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:607,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:609,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:611,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 612
    functionName: QuantLib::SwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - empty
    - linkTo
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:615,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:617,1
    - Dst: floatingLegNPV
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:620,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:621,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:621,1
    - Dst: floatingLegBPS
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:622,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 626
    functionName: QuantLib::SwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - floatingLegNPV
    - deepUpdate
    - value
    - empty
    - fixedLegBPS
    - floatingLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SwapRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:629,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:631,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 634
    functionName: QuantLib::SwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<SwapRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void SwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:648,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:649,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:649,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:650,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:651,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:652,1
    - Dst: QuantLib::BMASwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - ' liborFraction'
    - ' tenor'
    - settlementDays
    - calendar
    - ' bmaPeriod'
    - bmaConvention
    - bmaDayCount
    - bmaIndex
    - iborIndex
    argTypes:
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<BMAIndex>
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 636
    functionDepth: 2
    functionLinenumber: 636
    functionLinenumberEnd: 654
    functionName: QuantLib::BMASwapRateHelper::BMASwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::BMASwapRateHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void BMASwapRateHelper::BMASwapRateHelper(const Handle<Quote>& liborFraction,\n
      \                                        const Period& tenor,\n                                         Natural
      settlementDays,\n                                         Calendar calendar,\n
      \                                        // bma leg\n                                         const
      Period& bmaPeriod,\n                                         BusinessDayConvention
      bmaConvention,\n                                         DayCounter bmaDayCount,\n
      \                                        ext::shared_ptr<BMAIndex> bmaIndex,\n
      \                                        // libor leg\n                                         ext::shared_ptr<IborIndex>
      iborIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:660,1
    - Dst: JointCalendar::adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:661,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:663,1
    - Dst: BMAIndex::BMAIndex
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:668,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:671,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:673,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:678,1
    - Dst: tenor
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:679,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:680,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:681,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:682,1
    - Dst: ext::make_shared<BMASwap>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:685,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:690,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:695,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:694,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:697,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:697,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:698,1
    - Dst: ext::shared_ptr::valueDate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:702,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 656
    functionDepth: 1
    functionLinenumber: 656
    functionLinenumberEnd: 704
    functionName: QuantLib::BMASwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 2
    functionsReached:
    - endOfMonth
    - BMAIndex::BMAIndex
    - dayCounter
    - ext::make_shared<BMASwap>
    - MakeSchedule
    - Date::weekday
    - maturityDate
    - tenor
    - adjust
    - fixingCalendar
    - ext::shared_ptr::fixingCalendar
    - DiscountingSwapEngine::DiscountingSwapEngine
    - forwardingTermStructure
    - advance
    - JointCalendar::adjust
    - ext::shared_ptr::valueDate
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:712,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 715
    functionName: QuantLib::BMASwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:718,1
    - Dst: deepUpdate
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:720,1
    - Dst: fairLiborFraction
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 722
    functionName: QuantLib::BMASwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - deepUpdate
    - fairLiborFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BMASwapRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BMASwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:725,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:727,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 724
    functionDepth: 2
    functionLinenumber: 724
    functionLinenumberEnd: 730
    functionName: QuantLib::BMASwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<BMASwapRateHelper>*>
    linkageType: ''
    returnType: void
    signature: void BMASwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:742,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:743,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:745,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:745,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:746,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:747,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:749,1
    - Dst: JointCalendar
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:752,1
    - Dst: QuantLib::FxSwapRateHelper::initializeDates
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 10
    argNames:
    - ' fwdPoint'
    - spotFx
    - ' tenor'
    - fixingDays
    - calendar
    - convention
    - endOfMonth
    - isFxBaseCurrencyCollateralCurrency
    - coll
    - tradingCalendar
    argTypes:
    - Handle<Quote>
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - BusinessDayConvention
    - bool
    - bool
    - Handle<YieldTermStructure>
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 755
    functionName: QuantLib::FxSwapRateHelper::FxSwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - JointCalendar
    - empty
    - QuantLib::FxSwapRateHelper::initializeDates
    - std::move
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void FxSwapRateHelper::FxSwapRateHelper(const Handle<Quote>& fwdPoint,\n
      \                                      Handle<Quote> spotFx,\n                                       const
      Period& tenor,\n                                       Natural fixingDays,\n
      \                                      Calendar calendar,\n                                       BusinessDayConvention
      convention,\n                                       bool endOfMonth,\n                                       bool
      isFxBaseCurrencyCollateralCurrency,\n                                       Handle<YieldTermStructure>
      coll,\n                                       Calendar tradingCalendar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:763,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:765,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:766,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' fwdPoint'
    - spotFx
    - ' startDate'
    - ' endDate'
    - isFxBaseCurrencyCollateralCurrency
    - coll
    argTypes:
    - Handle<Quote>
    - Handle<Quote>
    - Date
    - Date
    - bool
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 770
    functionName: QuantLib::FxSwapRateHelper::FxSwapRateHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FxSwapRateHelper::FxSwapRateHelper(const Handle<Quote>& fwdPoint,\n
      \                                      Handle<Quote> spotFx,\n                                       const
      Date& startDate,\n                                       const Date& endDate,\n
      \                                      bool isFxBaseCurrencyCollateralCurrency,\n
      \                                      Handle<YieldTermStructure> coll)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:776,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:777,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:779,1
    - Dst: adjust
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:781,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:782,1
    - Dst: advance
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:785,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 787
    functionName: QuantLib::FxSwapRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 2
    functionsReached:
    - adjust
    - advance
    - empty
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:790,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:792,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:792,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:794,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:795,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:797,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:798,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:800,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 806
    functionName: QuantLib::FxSwapRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - discount
    - value
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real FxSwapRateHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:814,1
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:816,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 808
    functionDepth: 0
    functionLinenumber: 808
    functionLinenumberEnd: 819
    functionName: QuantLib::FxSwapRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - linkTo
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FxSwapRateHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:822,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:824,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp:826,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 821
    functionDepth: 2
    functionLinenumber: 821
    functionLinenumberEnd: 827
    functionName: QuantLib::FxSwapRateHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ratehelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<FxSwapRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void FxSwapRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Bond>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:33,1
    - Dst: cashflows
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:37,1
    - Dst: nextCashFlowDate
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:38,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:40,1
    - Dst: ext::make_shared<DiscountingBondEngine>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' price'
    - ' bond'
    - priceType
    argTypes:
    - Handle<Quote>
    - ext::shared_ptr<Bond>
    - Bond::Price::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: QuantLib::BondHelper::BondHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - nextCashFlowDate
    - cashflows
    - ext::make_shared<DiscountingBondEngine>
    - ext::make_shared<Bond>
    - setPricingEngine
    linkageType: ''
    returnType: void
    signature: "void BondHelper::BondHelper(const Handle<Quote>& price,\n                           const
      ext::shared_ptr<Bond>& bond,\n                           const Bond::Price::Type
      priceType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:47,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:48,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:48,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::BondHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - null_deleter
    - ext::shared_ptr<YieldTermStructure>
    - linkTo
    linkageType: ''
    returnType: void
    signature: void BondHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:54,1
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:56,1
    - Dst: cleanPrice
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:60,1
    - Dst: dirtyPrice
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 70
    functionName: QuantLib::BondHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dirtyPrice
    - cleanPrice
    - QL_FAIL
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real BondHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:73,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:75,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::BondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlow::accept
    - auto*::visit
    - dynamic_cast<Visitor<BondHelper>*>
    linkageType: ''
    returnType: void
    signature: void BondHelper::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FixedRateBondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:110,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:112,1
    - Dst: QuantLib::BondHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 3
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: QuantLib::FixedRateBondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<FixedRateBondHelper>*>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING FixedRateBondHelper::accept(AcyclicVisitor&
      v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CPIBondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:151,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:153,1
    - Dst: QuantLib::BondHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::CPIBondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::BondHelper::accept
    - dynamic_cast<Visitor<CPIBondHelper>*>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING CPIBondHelper::accept(AcyclicVisitor&
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Bond>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:33,1
    - Dst: cashflows
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:37,1
    - Dst: nextCashFlowDate
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:38,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:40,1
    - Dst: ext::make_shared<DiscountingBondEngine>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' price'
    - ' bond'
    - priceType
    argTypes:
    - Handle<Quote>
    - ext::shared_ptr<Bond>
    - Bond::Price::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: QuantLib::BondHelper::BondHelper
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - nextCashFlowDate
    - cashflows
    - ext::make_shared<DiscountingBondEngine>
    - ext::make_shared<Bond>
    - setPricingEngine
    linkageType: ''
    returnType: void
    signature: "void BondHelper::BondHelper(const Handle<Quote>& price,\n                           const
      ext::shared_ptr<Bond>& bond,\n                           const Bond::Price::Type
      priceType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:47,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:48,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:48,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::BondHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - null_deleter
    - ext::shared_ptr<YieldTermStructure>
    - linkTo
    linkageType: ''
    returnType: void
    signature: void BondHelper::setTermStructure(YieldTermStructure* t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:54,1
    - Dst: recalculate
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:56,1
    - Dst: cleanPrice
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:60,1
    - Dst: dirtyPrice
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 70
    functionName: QuantLib::BondHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dirtyPrice
    - cleanPrice
    - QL_FAIL
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real BondHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:73,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:75,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::BondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CashFlow::accept
    - auto*::visit
    - dynamic_cast<Visitor<BondHelper>*>
    linkageType: ''
    returnType: void
    signature: void BondHelper::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FixedRateBondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:110,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:112,1
    - Dst: QuantLib::BondHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 3
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: QuantLib::FixedRateBondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BondHelper::accept
    - auto*::visit
    - dynamic_cast<Visitor<FixedRateBondHelper>*>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING FixedRateBondHelper::accept(AcyclicVisitor&
      v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CPIBondHelper>*>
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:151,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:153,1
    - Dst: QuantLib::BondHelper::accept
      Src: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: QuantLib::CPIBondHelper::accept
    functionSourceFile: /src/quantlib/ql/termstructures/yield/bondhelpers.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - QuantLib::BondHelper::accept
    - dynamic_cast<Visitor<CPIBondHelper>*>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING CPIBondHelper::accept(AcyclicVisitor&
      v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:95,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:101,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:104,1
    - Dst: updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - h
    - spreads
    - ' dates'
    - dc
    - ' factory'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: "QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<\n
      \       T>::InterpolatedPiecewiseForwardSpreadedTermStructure"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - updateInterpolation
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedPiecewiseForwardSpreadedTermStructure<\n        T>::InterpolatedPiecewiseForwardSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                           std::vector<Handle<Quote>
      > spreads,\n                                                           const
      std::vector<Date>& dates,\n                                                           DayCounter
      dc,\n                                                           const T& factory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    InterpolatedPiecewiseForwardSpreadedTermStructure<T>::referenceDate()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date &\n    InterpolatedPiecewiseForwardSpreadedTermStructure<T>::referenceDate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:137,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
    - zeroRate
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseForwardSpreadedTermStructure<T>::zeroYieldImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:145,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseForwardSpreadedTermStructure<T>::forwardImpl(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:153,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:154,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:155,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:156,1
    - Dst: interpolator_
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 160
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - back
    - interpolator_
    - front
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:166,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:169,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:170,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:172,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:172,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::spreads_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:173,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::spreads_::back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive(Time
      t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:180,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:181,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:182,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
    - QuantLib::TermStructure::update
    - empty
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseForwardSpreadedTermStructure<T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:195,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:196,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:197,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:200,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - value
    - interpolate
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:95,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:101,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:104,1
    - Dst: updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - h
    - spreads
    - ' dates'
    - dc
    - ' factory'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: "QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<\n
      \       T>::InterpolatedPiecewiseForwardSpreadedTermStructure"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - updateInterpolation
    - registerWith
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedPiecewiseForwardSpreadedTermStructure<\n        T>::InterpolatedPiecewiseForwardSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                           std::vector<Handle<Quote>
      > spreads,\n                                                           const
      std::vector<Date>& dates,\n                                                           DayCounter
      dc,\n                                                           const T& factory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter InterpolatedPiecewiseForwardSpreadedTermStructure<T>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calendar()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural InterpolatedPiecewiseForwardSpreadedTermStructure<T>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: "&\n    InterpolatedPiecewiseForwardSpreadedTermStructure<T>::referenceDate()
      const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date &\n    InterpolatedPiecewiseForwardSpreadedTermStructure<T>::referenceDate()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedPiecewiseForwardSpreadedTermStructure<T>::maxDate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:137,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 140
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
    - zeroRate
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseForwardSpreadedTermStructure<T>::zeroYieldImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:145,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedPiecewiseForwardSpreadedTermStructure<T>::forwardImpl(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:153,1
    - Dst: front
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:154,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:155,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:156,1
    - Dst: interpolator_
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 160
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 3
    functionsReached:
    - back
    - interpolator_
    - front
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread(Time
      t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:166,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:169,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:170,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:172,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:172,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::spreads_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:173,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::interpolator_::primitive
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::spreads_::back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::times_::back
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpread
    linkageType: ''
    returnType: Spread
    signature: Spread InterpolatedPiecewiseForwardSpreadedTermStructure<T>::calcSpreadPrimitive(Time
      t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:180,1
    - Dst: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:181,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:182,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 191
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
    - QuantLib::TermStructure::update
    - empty
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseForwardSpreadedTermStructure<T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:195,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:196,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:197,1
    - Dst: interpolate
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:200,1
    - Dst: begin
      Src: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation
    functionSourceFile: /src/quantlib/ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - value
    - interpolate
    - begin
    - size
    - end
    linkageType: ''
    returnType: void
    signature: void InterpolatedPiecewiseForwardSpreadedTermStructure<T>::updateInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::ForwardSpreadedTermStructure::ForwardSpreadedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardSpreadedTermStructure::ForwardSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                                      Handle<Quote>
      spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ForwardSpreadedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ForwardSpreadedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ForwardSpreadedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ForwardSpreadedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::ForwardSpreadedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ForwardSpreadedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: '& ForwardSpreadedTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & ForwardSpreadedTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::ForwardSpreadedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ForwardSpreadedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::maxTime
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ForwardSpreadedTermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::maxTime
    linkageType: ''
    returnType: Time
    signature: Time ForwardSpreadedTermStructure::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:107,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:108,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 117
    functionName: QuantLib::ForwardSpreadedTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::TermStructure::update
    - empty
    linkageType: ''
    returnType: void
    signature: void ForwardSpreadedTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:120,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::ForwardSpreadedTermStructure::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardSpreadedTermStructure::forwardImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:125,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::ForwardSpreadedTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardSpreadedTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::ForwardSpreadedTermStructure::ForwardSpreadedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardSpreadedTermStructure::ForwardSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                                      Handle<Quote>
      spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ForwardSpreadedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ForwardSpreadedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ForwardSpreadedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ForwardSpreadedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::ForwardSpreadedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ForwardSpreadedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: '& ForwardSpreadedTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & ForwardSpreadedTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::ForwardSpreadedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ForwardSpreadedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardSpreadedTermStructure::maxTime
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ForwardSpreadedTermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardSpreadedTermStructure::maxTime
    linkageType: ''
    returnType: Time
    signature: Time ForwardSpreadedTermStructure::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:107,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:108,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 117
    functionName: QuantLib::ForwardSpreadedTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YieldTermStructure::update
    - QuantLib::TermStructure::update
    - empty
    linkageType: ''
    returnType: void
    signature: void ForwardSpreadedTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:120,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::ForwardSpreadedTermStructure::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardSpreadedTermStructure::forwardImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:125,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::ForwardSpreadedTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardspreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardSpreadedTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:63,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bondHelpers
    - ' dayCounter'
    - ' fittingMethod'
    - accuracy
    - maxEvaluations
    - guess
    - simplexLambda
    - maxStationaryStateIterations
    argTypes:
    - Natural
    - Calendar
    - vector<ext::shared_ptr<BondHelper> >
    - DayCounter
    - FittingMethod
    - Real
    - Size
    - Array
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 66
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n        Natural
      settlementDays,\n        const Calendar& calendar,\n        vector<ext::shared_ptr<BondHelper>
      > bondHelpers,\n        const DayCounter& dayCounter,\n        const FittingMethod&
      fittingMethod,\n        Real accuracy,\n        Size maxEvaluations,\n        Array
      guess,\n        Real simplexLambda,\n        Size maxStationaryStateIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:81,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:82,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' referenceDate'
    - bondHelpers
    - ' dayCounter'
    - ' fittingMethod'
    - accuracy
    - maxEvaluations
    - guess
    - simplexLambda
    - maxStationaryStateIterations
    argTypes:
    - Date
    - vector<ext::shared_ptr<BondHelper> >
    - DayCounter
    - FittingMethod
    - Real
    - Size
    - Array
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n        const
      Date& referenceDate,\n        vector<ext::shared_ptr<BondHelper> > bondHelpers,\n
      \       const DayCounter& dayCounter,\n        const FittingMethod& fittingMethod,\n
      \       Real accuracy,\n        Size maxEvaluations,\n        Array guess,\n
      \       Real simplexLambda,\n        Size maxStationaryStateIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:96,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' fittingMethod'
    - parameters
    - maxDate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - FittingMethod
    - Array
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n                            Natural
      settlementDays,\n                            const Calendar& calendar,\n                            const
      FittingMethod& fittingMethod,\n                            Array parameters,\n
      \                           Date maxDate,\n                            const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:110,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' fittingMethod'
    - parameters
    - maxDate
    - ' dayCounter'
    argTypes:
    - Date
    - FittingMethod
    - Array
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n                                const
      Date& referenceDate,\n                                const FittingMethod& fittingMethod,\n
      \                               Array parameters,\n                                Date
      maxDate,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: QuantLib::FittedBondDiscountCurve::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' guess'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 4
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::FittedBondDiscountCurve::resetGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::FittedBondDiscountCurve::update
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::resetGuess(const Array& guess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:129,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:139,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:140,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:144,1
    - Dst: bond
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:146,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:146,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:147,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:148,1
    - Dst: ext::shared_ptr::settlementDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:150,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:154,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:154,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:155,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:157,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:158,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:158,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:159,1
    - Dst: const_cast<FittedBondDiscountCurve*>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:160,1
    - Dst: init
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:164,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 166
    functionName: QuantLib::FittedBondDiscountCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::settlementDate
    - referenceDate
    - QuantLib::Date::minDate
    - empty
    - bond
    - setTermStructure
    - calculate
    - quote
    - QuantLib::io::ordinal
    - const_cast<FittedBondDiscountCurve*>
    - std::max
    - pillarDate
    - Date
    - ext::shared_ptr::maturityDate
    - size
    - QuantLib::BondFunctions::isTradable
    - init
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:177,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:178,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:178,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:181,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 7
    argNames:
    - constrainAtZero
    - ' weights'
    - optimizationMethod
    - l2
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 183
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingMethod(\n        bool
      constrainAtZero,\n        const Array& weights,\n        ext::shared_ptr<OptimizationMethod>
      optimizationMethod,\n        Array l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        Constraint constraint)"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    - std::move
    - empty
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittingMethod::FittingMethod(\n        bool
      constrainAtZero,\n        const Array& weights,\n        ext::shared_ptr<OptimizationMethod>
      optimizationMethod,\n        Array l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:191,1
    - Dst: bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:195,1
    - Dst: ext::make_shared<FittingCost>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:196,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:199,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:203,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:204,1
    - Dst: bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:207,1
    - Dst: bond
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:208,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:210,1
    - Dst: priceType
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:211,1
    - Dst: ext::shared_ptr::settlementDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:213,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:214,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:218,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:228,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:228,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:235,1
    - Dst: guessSolution_::empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:235,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 237
    functionName: FittedBondDiscountCurve::FittingMethod::init()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::settlementDate
    - QuantLib::BondFunctions::yield
    - empty
    - bond
    - setTermStructure
    - priceType
    - dayCounter
    - Array
    - quote
    - QuantLib::BondFunctions::duration
    - ext::make_shared<FittingCost>
    - bondHelpers_::size
    - std::sqrt
    - guessSolution_::empty
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::FittingMethod::init()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: guessSolution_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:265,1
    - Dst: guessSolution_::empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: guessSolution_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: ext::make_shared<Simplex>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:274,1
    - Dst: ext::shared_ptr::minimize
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:288,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:289,1
    - Dst: Problem::functionEvaluation
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:291,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 296
    functionName: FittedBondDiscountCurve::FittingMethod::calculate()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::minimize
    - Null<Real>
    - Problem::functionValue
    - ext::make_shared<Simplex>
    - guessSolution_::size
    - guessSolution_::empty
    - Problem::functionEvaluation
    - size
    - Problem::currentValue
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::FittingMethod::calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - fittingMethod
    argTypes:
    - FittedBondDiscountCurve::FittingMethod*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingCost::FittingCost(\n
      \                       FittedBondDiscountCurve::FittingMethod* fittingMethod)"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittingMethod::FittingCost::FittingCost(\n
      \                       FittedBondDiscountCurve::FittingMethod* fittingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:307,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingCost::value(\n                                                       const
      Array& x) const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - values
    linkageType: ''
    returnType: Real
    signature: "Real FittedBondDiscountCurve::FittingMethod::FittingCost::value(\n
      \                                                      const Array& x) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: curve_::bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:315,1
    - Dst: l2_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:316,1
    - Dst: ext::shared_ptr::impliedQuote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:325,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 337
    functionName: FittedBondDiscountCurve::FittingMethod::FittingCost::values(const
      Array &x) const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - l2_::size
    - ext::shared_ptr::impliedQuote
    - ext::shared_ptr::quote
    - curve_::bondHelpers_::size
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::FittingCost::values(const
      Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:63,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - settlementDays
    - ' calendar'
    - bondHelpers
    - ' dayCounter'
    - ' fittingMethod'
    - accuracy
    - maxEvaluations
    - guess
    - simplexLambda
    - maxStationaryStateIterations
    argTypes:
    - Natural
    - Calendar
    - vector<ext::shared_ptr<BondHelper> >
    - DayCounter
    - FittingMethod
    - Real
    - Size
    - Array
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 66
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n        Natural
      settlementDays,\n        const Calendar& calendar,\n        vector<ext::shared_ptr<BondHelper>
      > bondHelpers,\n        const DayCounter& dayCounter,\n        const FittingMethod&
      fittingMethod,\n        Real accuracy,\n        Size maxEvaluations,\n        Array
      guess,\n        Real simplexLambda,\n        Size maxStationaryStateIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:81,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:82,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' referenceDate'
    - bondHelpers
    - ' dayCounter'
    - ' fittingMethod'
    - accuracy
    - maxEvaluations
    - guess
    - simplexLambda
    - maxStationaryStateIterations
    argTypes:
    - Date
    - vector<ext::shared_ptr<BondHelper> >
    - DayCounter
    - FittingMethod
    - Real
    - Size
    - Array
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n        const
      Date& referenceDate,\n        vector<ext::shared_ptr<BondHelper> > bondHelpers,\n
      \       const DayCounter& dayCounter,\n        const FittingMethod& fittingMethod,\n
      \       Real accuracy,\n        Size maxEvaluations,\n        Array guess,\n
      \       Real simplexLambda,\n        Size maxStationaryStateIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:96,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' fittingMethod'
    - parameters
    - maxDate
    - ' dayCounter'
    argTypes:
    - Natural
    - Calendar
    - FittingMethod
    - Array
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n                            Natural
      settlementDays,\n                            const Calendar& calendar,\n                            const
      FittingMethod& fittingMethod,\n                            Array parameters,\n
      \                           Date maxDate,\n                            const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:110,1
    - Dst: QuantLib::FittedBondDiscountCurve::setup
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' fittingMethod'
    - parameters
    - maxDate
    - ' dayCounter'
    argTypes:
    - Date
    - FittingMethod
    - Array
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionName: QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FittedBondDiscountCurve::setup
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittedBondDiscountCurve(\n                                const
      Date& referenceDate,\n                                const FittingMethod& fittingMethod,\n
      \                               Array parameters,\n                                Date
      maxDate,\n                                const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:119,1
    - Dst: QuantLib::FittedBondDiscountCurve::update
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' guess'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 4
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: QuantLib::FittedBondDiscountCurve::resetGuess
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::FittedBondDiscountCurve::update
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::resetGuess(const Array& guess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:129,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:135,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:139,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:140,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:144,1
    - Dst: bond
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:146,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:146,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:147,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:148,1
    - Dst: ext::shared_ptr::settlementDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:150,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:154,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:154,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:155,1
    - Dst: ext::shared_ptr::maturityDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:157,1
    - Dst: std::max
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:158,1
    - Dst: pillarDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:158,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:159,1
    - Dst: const_cast<FittedBondDiscountCurve*>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:160,1
    - Dst: init
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:164,1
    - Dst: calculate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 166
    functionName: QuantLib::FittedBondDiscountCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::settlementDate
    - referenceDate
    - QuantLib::Date::minDate
    - empty
    - bond
    - setTermStructure
    - calculate
    - quote
    - QuantLib::io::ordinal
    - const_cast<FittedBondDiscountCurve*>
    - std::max
    - pillarDate
    - Date
    - ext::shared_ptr::maturityDate
    - size
    - QuantLib::BondFunctions::isTradable
    - init
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:177,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:178,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:178,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:181,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 7
    argNames:
    - constrainAtZero
    - ' weights'
    - optimizationMethod
    - l2
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 183
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingMethod(\n        bool
      constrainAtZero,\n        const Array& weights,\n        ext::shared_ptr<OptimizationMethod>
      optimizationMethod,\n        Array l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        Constraint constraint)"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - NoConstraint
    - std::move
    - empty
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittingMethod::FittingMethod(\n        bool
      constrainAtZero,\n        const Array& weights,\n        ext::shared_ptr<OptimizationMethod>
      optimizationMethod,\n        Array l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:191,1
    - Dst: bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:195,1
    - Dst: ext::make_shared<FittingCost>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:196,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:199,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:203,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:204,1
    - Dst: bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:207,1
    - Dst: bond
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:208,1
    - Dst: quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:210,1
    - Dst: priceType
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:211,1
    - Dst: ext::shared_ptr::settlementDate
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:213,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:214,1
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:218,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:225,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:228,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:228,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:232,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:235,1
    - Dst: guessSolution_::empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:235,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 237
    functionName: FittedBondDiscountCurve::FittingMethod::init()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::settlementDate
    - QuantLib::BondFunctions::yield
    - empty
    - bond
    - setTermStructure
    - priceType
    - dayCounter
    - Array
    - quote
    - QuantLib::BondFunctions::duration
    - ext::make_shared<FittingCost>
    - bondHelpers_::size
    - std::sqrt
    - guessSolution_::empty
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::FittingMethod::init()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: guessSolution_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:250,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:265,1
    - Dst: guessSolution_::empty
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: guessSolution_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:267,1
    - Dst: ext::make_shared<Simplex>
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:274,1
    - Dst: ext::shared_ptr::minimize
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:288,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:289,1
    - Dst: Problem::functionEvaluation
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:291,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 296
    functionName: FittedBondDiscountCurve::FittingMethod::calculate()
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::minimize
    - Null<Real>
    - Problem::functionValue
    - ext::make_shared<Simplex>
    - guessSolution_::size
    - guessSolution_::empty
    - Problem::functionEvaluation
    - size
    - Problem::currentValue
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FittedBondDiscountCurve::FittingMethod::calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - fittingMethod
    argTypes:
    - FittedBondDiscountCurve::FittingMethod*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingCost::FittingCost(\n
      \                       FittedBondDiscountCurve::FittingMethod* fittingMethod)"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FittedBondDiscountCurve::FittingMethod::FittingCost::FittingCost(\n
      \                       FittedBondDiscountCurve::FittingMethod* fittingMethod)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:307,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 312
    functionName: "FittedBondDiscountCurve::FittingMethod::FittingCost::value(\n                                                       const
      Array& x) const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - values
    linkageType: ''
    returnType: Real
    signature: "Real FittedBondDiscountCurve::FittingMethod::FittingCost::value(\n
      \                                                      const Array& x) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: curve_::bondHelpers_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:315,1
    - Dst: l2_::size
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:316,1
    - Dst: ext::shared_ptr::impliedQuote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:325,1
    - Dst: ext::shared_ptr::quote
      Src: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 337
    functionName: FittedBondDiscountCurve::FittingMethod::FittingCost::values(const
      Array &x) const
    functionSourceFile: /src/quantlib/ql/termstructures/yield/fittedbonddiscountcurve.cpp
    functionUses: 0
    functionsReached:
    - l2_::size
    - ext::shared_ptr::impliedQuote
    - ext::shared_ptr::quote
    - curve_::bondHelpers_::size
    linkageType: ''
    returnType: Array
    signature: Array FittedBondDiscountCurve::FittingMethod::FittingCost::values(const
      Array &x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(const Date& referenceDate,\n                             Handle<Quote>
      forward,\n                             const DayCounter& dayCounter,\n                             Compounding
      compounding,\n                             Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:42,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:43,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Date
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(const Date& referenceDate,\n                             Rate
      forward,\n                             const DayCounter& dayCounter,\n                             Compounding
      compounding,\n                             Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(Natural settlementDays,\n                             const
      Calendar& calendar,\n                             Handle<Quote> forward,\n                             const
      DayCounter& dayCounter,\n                             Compounding compounding,\n
      \                            Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:64,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Natural
    - Calendar
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(Natural settlementDays,\n                             const
      Calendar& calendar,\n                             Rate forward,\n                             const
      DayCounter& dayCounter,\n                             Compounding compounding,\n
      \                            Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' referenceDate'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Date
    - Handle<Quote>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(const Date& referenceDate,\n                             Handle<Quote>
      forward,\n                             const DayCounter& dayCounter,\n                             Compounding
      compounding,\n                             Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:42,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:43,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Date
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(const Date& referenceDate,\n                             Rate
      forward,\n                             const DayCounter& dayCounter,\n                             Compounding
      compounding,\n                             Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Natural
    - Calendar
    - Handle<Quote>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(Natural settlementDays,\n                             const
      Calendar& calendar,\n                             Handle<Quote> forward,\n                             const
      DayCounter& dayCounter,\n                             Compounding compounding,\n
      \                            Frequency frequency)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:64,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/termstructures/yield/flatforward.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - forward
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Natural
    - Calendar
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FlatForward::FlatForward
    functionSourceFile: /src/quantlib/ql/termstructures/yield/flatforward.cpp
    functionUses: 0
    functionsReached:
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    linkageType: ''
    returnType: void
    signature: "void FlatForward::FlatForward(Natural settlementDays,\n                             const
      Calendar& calendar,\n                             Rate forward,\n                             const
      DayCounter& dayCounter,\n                             Compounding compounding,\n
      \                            Frequency frequency)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:117,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::InterpolatedDiscountCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedDiscountCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    InterpolatedDiscountCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedDiscountCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: "&\n    InterpolatedDiscountCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedDiscountCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: "&\n    InterpolatedDiscountCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDiscountCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: "&\n    InterpolatedDiscountCurve<T>::discounts() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DiscountFactor>
    signature: "std::vector<DiscountFactor> &\n    InterpolatedDiscountCurve<T>::discounts()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:150,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedDiscountCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedDiscountCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:161,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:162,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:165,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedDiscountCurve<T>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_::derivative
    - std::exp
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_
    - QuantLib::InterpolatedDiscountCurve<T>::times_::back
    - QuantLib::InterpolatedDiscountCurve<T>::data_::back
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor InterpolatedDiscountCurve<T>::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:208,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:209,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 213
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const Calendar& calendar,\n                                 const
      std::vector<Handle<Quote> >& jumps,\n                                 const
      std::vector<Date>& jumpDates,\n                                 const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:222,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:223,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 227
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const Calendar& calendar,\n                                 const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:235,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:235,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:236,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:247,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:247,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:255,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:258,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:259,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 261
    functionName: QuantLib::InterpolatedDiscountCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedDiscountCurve<T>::setupInterpolation
    - QuantLib::InterpolatedDiscountCurve<T>::setupTimes
    - dayCounter
    - QuantLib::InterpolatedDiscountCurve<T>::data_::size
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_::update
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedDiscountCurve<T>::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:117,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: QuantLib::InterpolatedDiscountCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedDiscountCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: "&\n    InterpolatedDiscountCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedDiscountCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: "&\n    InterpolatedDiscountCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedDiscountCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: "&\n    InterpolatedDiscountCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedDiscountCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: "&\n    InterpolatedDiscountCurve<T>::discounts() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DiscountFactor>
    signature: "std::vector<DiscountFactor> &\n    InterpolatedDiscountCurve<T>::discounts()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:150,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedDiscountCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedDiscountCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:161,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:162,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:165,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:166,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_::derivative
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 169
    functionName: QuantLib::InterpolatedDiscountCurve<T>::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_::derivative
    - std::exp
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_
    - QuantLib::InterpolatedDiscountCurve<T>::times_::back
    - QuantLib::InterpolatedDiscountCurve<T>::data_::back
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor InterpolatedDiscountCurve<T>::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:208,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:209,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 213
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const Calendar& calendar,\n                                 const
      std::vector<Handle<Quote> >& jumps,\n                                 const
      std::vector<Date>& jumpDates,\n                                 const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:222,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:223,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 227
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const Calendar& calendar,\n                                 const
      T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:235,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:235,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:236,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' discounts'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<DiscountFactor>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: QuantLib::InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedDiscountCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedDiscountCurve<T>::InterpolatedDiscountCurve(\n                                 const
      std::vector<Date>& dates,\n                                 const std::vector<DiscountFactor>&
      discounts,\n                                 const DayCounter& dayCounter,\n
      \                                const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:247,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:247,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:249,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:251,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:255,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:258,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:259,1
    - Dst: QuantLib::InterpolatedDiscountCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/discountcurve.hpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 261
    functionName: QuantLib::InterpolatedDiscountCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/discountcurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedDiscountCurve<T>::setupInterpolation
    - QuantLib::InterpolatedDiscountCurve<T>::setupTimes
    - dayCounter
    - QuantLib::InterpolatedDiscountCurve<T>::data_::size
    - QuantLib::InterpolatedDiscountCurve<T>::interpolation_::update
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedDiscountCurve<T>::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:88,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:89,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:90,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - h
    - spread
    - comp
    - freq
    - dc
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Compounding
    - Frequency
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::ZeroSpreadedTermStructure::ZeroSpreadedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void ZeroSpreadedTermStructure::ZeroSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                                Handle<Quote>
      spread,\n                                                                Compounding
      comp,\n                                                                Frequency
      freq,\n                                                                DayCounter
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::ZeroSpreadedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ZeroSpreadedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::ZeroSpreadedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ZeroSpreadedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ZeroSpreadedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ZeroSpreadedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& ZeroSpreadedTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & ZeroSpreadedTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::ZeroSpreadedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ZeroSpreadedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::maxTime
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::ZeroSpreadedTermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::maxTime
    linkageType: ''
    returnType: Time
    signature: Time ZeroSpreadedTermStructure::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:119,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:120,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:121,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:121,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 3
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::ZeroSpreadedTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void ZeroSpreadedTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:135,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:136,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:137,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:138,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:139,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::ZeroSpreadedTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::compounding
    - value
    - InterestRate::dayCounter
    - InterestRate::frequency
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroSpreadedTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:144,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::ZeroSpreadedTermStructure::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroSpreadedTermStructure::forwardImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:88,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:89,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:90,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - h
    - spread
    - comp
    - freq
    - dc
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Compounding
    - Frequency
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::ZeroSpreadedTermStructure::ZeroSpreadedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void ZeroSpreadedTermStructure::ZeroSpreadedTermStructure(Handle<YieldTermStructure>
      h,\n                                                                Handle<Quote>
      spread,\n                                                                Compounding
      comp,\n                                                                Frequency
      freq,\n                                                                DayCounter
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::ZeroSpreadedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ZeroSpreadedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::ZeroSpreadedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ZeroSpreadedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::ZeroSpreadedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ZeroSpreadedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: '& ZeroSpreadedTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & ZeroSpreadedTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::ZeroSpreadedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ZeroSpreadedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZeroSpreadedTermStructure::maxTime
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::ZeroSpreadedTermStructure::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZeroSpreadedTermStructure::maxTime
    linkageType: ''
    returnType: Time
    signature: Time ZeroSpreadedTermStructure::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:119,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:120,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:121,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:121,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 3
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::ZeroSpreadedTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void ZeroSpreadedTermStructure::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:135,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:136,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:137,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:138,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:139,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::ZeroSpreadedTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::compounding
    - value
    - InterestRate::dayCounter
    - InterestRate::frequency
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroSpreadedTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:144,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: QuantLib::ZeroSpreadedTermStructure::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zerospreadedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate ZeroSpreadedTermStructure::forwardImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:111,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:113,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:114,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:116,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - h
    - lastLiquidForwardRate
    - ultimateForwardRate
    - ' firstSmoothingPoint'
    - alpha
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Handle<Quote>
    - Period
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 118
    functionName: QuantLib::UltimateForwardTermStructure::UltimateForwardTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - length
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void UltimateForwardTermStructure::UltimateForwardTermStructure(\n
      \       Handle<YieldTermStructure> h,\n        Handle<Quote> lastLiquidForwardRate,\n
      \       Handle<Quote> ultimateForwardRate,\n        const Period& firstSmoothingPoint,\n
      \       Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::UltimateForwardTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter UltimateForwardTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::UltimateForwardTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar UltimateForwardTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::UltimateForwardTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural UltimateForwardTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: '& UltimateForwardTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & UltimateForwardTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::UltimateForwardTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date UltimateForwardTermStructure::maxDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:139,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:140,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:141,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:141,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 138
    functionDepth: 3
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionName: QuantLib::UltimateForwardTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void UltimateForwardTermStructure::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:153,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:153,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:168,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 173
    functionName: QuantLib::UltimateForwardTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - referenceDate
    - std::exp
    - timeFromReference
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate UltimateForwardTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:111,1
    - Dst: length
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:113,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:114,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:116,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - h
    - lastLiquidForwardRate
    - ultimateForwardRate
    - ' firstSmoothingPoint'
    - alpha
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Handle<Quote>
    - Period
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 118
    functionName: QuantLib::UltimateForwardTermStructure::UltimateForwardTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - length
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void UltimateForwardTermStructure::UltimateForwardTermStructure(\n
      \       Handle<YieldTermStructure> h,\n        Handle<Quote> lastLiquidForwardRate,\n
      \       Handle<Quote> ultimateForwardRate,\n        const Period& firstSmoothingPoint,\n
      \       Real alpha)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::UltimateForwardTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter UltimateForwardTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::UltimateForwardTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar UltimateForwardTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::UltimateForwardTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: QuantLib::UltimateForwardTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::UltimateForwardTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural UltimateForwardTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: '& UltimateForwardTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & UltimateForwardTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::UltimateForwardTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date UltimateForwardTermStructure::maxDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:139,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:140,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:141,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:141,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 138
    functionDepth: 3
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionName: QuantLib::UltimateForwardTermStructure::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void UltimateForwardTermStructure::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:153,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:153,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:167,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:168,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: value
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:169,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 173
    functionName: QuantLib::UltimateForwardTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/ultimateforwardtermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - referenceDate
    - std::exp
    - timeFromReference
    - value
    linkageType: ''
    returnType: Rate
    signature: Rate UltimateForwardTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:41,1
    - Dst: QuantLib::ExponentialSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - numCoeffs
    - fixedKappa
    - constraint
    argTypes:
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Size
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::ExponentialSplinesFitting::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Array& weights,\n        const ext::shared_ptr<OptimizationMethod>&
      optimizationMethod,\n        const Array& l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        const Size numCoeffs,\n        const
      Real fixedKappa,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - numCoeffs
    - fixedKappa
    - constraint
    argTypes:
    - bool
    - Array
    - Array
    - Real
    - Real
    - Size
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Array& weights,\n        const Array& l2, const
      Real minCutoffTime, const Real maxCutoffTime,\n        const Size numCoeffs,
      const Real fixedKappa,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - constrainAtZero
    - numCoeffs
    - fixedKappa
    - ' weights'
    - constraint
    argTypes:
    - bool
    - Size
    - Real
    - Array
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - Array
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Size numCoeffs,\n        const Real fixedKappa,\n
      \       const Array& weights,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<ExponentialSplinesFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::ExponentialSplinesFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<ExponentialSplinesFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> ExponentialSplinesFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::ExponentialSplinesFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: Size
    signature: Size ExponentialSplinesFitting::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:96,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 100
    functionName: QuantLib::ExponentialSplinesFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::exp
    - QuantLib::ExponentialSplinesFitting::size
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor ExponentialSplinesFitting::discountFunction(const Array&
      x,\n                                                               Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::NelsonSiegelFitting::NelsonSiegelFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NelsonSiegelFitting::NelsonSiegelFitting(\n        const Array&
      weights,\n        const ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n
      \       const Array& l2,\n        const Real minCutoffTime,\n        const Real
      maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: QuantLib::NelsonSiegelFitting::NelsonSiegelFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NelsonSiegelFitting::NelsonSiegelFitting(\n        const Array&
      weights,\n        const Array& l2,\n        const Real minCutoffTime,\n        const
      Real maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<NelsonSiegelFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: QuantLib::NelsonSiegelFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<NelsonSiegelFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> NelsonSiegelFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::NelsonSiegelFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NelsonSiegelFitting::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NelsonSiegelFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:133,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::NelsonSiegelFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NelsonSiegelFitting::size
    - std::exp
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor NelsonSiegelFitting::discountFunction(const Array&
      x,\n                                                         Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 150
    functionName: QuantLib::SvenssonFitting::SvenssonFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SvenssonFitting::SvenssonFitting(const Array& weights,\n                                     const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n                                     const
      Array& l2,\n                                     const Real minCutoffTime,\n
      \                                    const Real maxCutoffTime,\n                                     Constraint
      constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: QuantLib::SvenssonFitting::SvenssonFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SvenssonFitting::SvenssonFitting(const Array& weights,\n                                     const
      Array& l2,\n                                     const Real minCutoffTime,\n
      \                                    const Real maxCutoffTime,\n                                     Constraint
      constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SvenssonFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::SvenssonFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SvenssonFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SvenssonFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::SvenssonFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SvenssonFitting::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SvenssonFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:171,1
    - Dst: QuantLib::SvenssonFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:172,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:175,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:177,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 181
    functionName: QuantLib::SvenssonFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SvenssonFitting::size
    - std::exp
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor SvenssonFitting::discountFunction(const Array& x,\n
      \                                                    Time t) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:194,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:197,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:197,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 8
    argNames:
    - ' knots'
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - std::vector<Time>
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 214
    functionName: QuantLib::CubicBSplinesFitting::CubicBSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::CubicBSplinesFitting::size
    - splines_
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicBSplinesFitting::CubicBSplinesFitting(\n        const std::vector<Time>&
      knots,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n        const Array&
      l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' knots'
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - std::vector<Time>
    - bool
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: QuantLib::CubicBSplinesFitting::CubicBSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CubicBSplinesFitting::CubicBSplinesFitting(\n        const std::vector<Time>&
      knots,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      Array& l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Integer
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionName: QuantLib::CubicBSplinesFitting::basisFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - splines_
    linkageType: ''
    returnType: Real
    signature: Real CubicBSplinesFitting::basisFunction(Integer i, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<CubicBSplinesFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::CubicBSplinesFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<CubicBSplinesFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> CubicBSplinesFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: QuantLib::CubicBSplinesFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size CubicBSplinesFitting::size() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:246,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:253,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:254,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:256,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:257,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:261,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 266
    functionName: QuantLib::CubicBSplinesFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - splines_
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor CubicBSplinesFitting::discountFunction(const Array&
      x,\n                                                          Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - degree
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Natural
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 280
    functionName: QuantLib::SimplePolynomialFitting::SimplePolynomialFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimplePolynomialFitting::SimplePolynomialFitting(\n        Natural
      degree,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n        const Array&
      l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - degree
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Natural
    - bool
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 291
    functionName: QuantLib::SimplePolynomialFitting::SimplePolynomialFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimplePolynomialFitting::SimplePolynomialFitting(\n        Natural
      degree,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      Array& l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimplePolynomialFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: QuantLib::SimplePolynomialFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SimplePolynomialFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SimplePolynomialFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionName: QuantLib::SimplePolynomialFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SimplePolynomialFitting::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BernsteinPolynomial::get
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:308,1
    - Dst: QuantLib::BernsteinPolynomial::get
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 315
    functionName: QuantLib::SimplePolynomialFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BernsteinPolynomial::get
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor SimplePolynomialFitting::discountFunction(const Array&
      x,\n                                                             Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: constrainAtZero
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:322,1
    - Dst: weights
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:323,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:323,1
    - Dst: optimizationMethod
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:324,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:324,1
    - Dst: l2
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:325,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:325,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:328,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:329,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:330,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' method'
    - discountCurve
    - minCutoffTime
    - maxCutoffTime
    argTypes:
    - ext::shared_ptr<FittingMethod>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 331
    functionName: QuantLib::SpreadFittingMethod::SpreadFittingMethod
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - empty
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - weights
    - std::move
    - l2
    - optimizationMethod
    - constrainAtZero
    linkageType: ''
    returnType: void
    signature: "void SpreadFittingMethod::SpreadFittingMethod(const ext::shared_ptr<FittingMethod>&
      method,\n                                             Handle<YieldTermStructure>
      discountCurve,\n                                             const Real minCutoffTime,\n
      \                                            const Real maxCutoffTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SpreadFittingMethod>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: QuantLib::SpreadFittingMethod::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SpreadFittingMethod>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SpreadFittingMethod::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadFittingMethod::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: QuantLib::SpreadFittingMethod::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadFittingMethod::size
    linkageType: ''
    returnType: Size
    signature: Size SpreadFittingMethod::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:343,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionName: QuantLib::SpreadFittingMethod::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - discount
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor SpreadFittingMethod::discountFunction(const Array& x,
      Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:349,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:349,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:350,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:350,1
    - Dst: QuantLib::SpreadFittingMethod::init
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 357
    functionName: QuantLib::SpreadFittingMethod::init
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached:
    - discount
    - QuantLib::SpreadFittingMethod::init
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void SpreadFittingMethod::init()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:41,1
    - Dst: QuantLib::ExponentialSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - numCoeffs
    - fixedKappa
    - constraint
    argTypes:
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Size
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::ExponentialSplinesFitting::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Array& weights,\n        const ext::shared_ptr<OptimizationMethod>&
      optimizationMethod,\n        const Array& l2,\n        const Real minCutoffTime,\n
      \       const Real maxCutoffTime,\n        const Size numCoeffs,\n        const
      Real fixedKappa,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - numCoeffs
    - fixedKappa
    - constraint
    argTypes:
    - bool
    - Array
    - Array
    - Real
    - Real
    - Size
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Array& weights,\n        const Array& l2, const
      Real minCutoffTime, const Real maxCutoffTime,\n        const Size numCoeffs,
      const Real fixedKappa,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - constrainAtZero
    - numCoeffs
    - fixedKappa
    - ' weights'
    - constraint
    argTypes:
    - bool
    - Size
    - Real
    - Array
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: QuantLib::ExponentialSplinesFitting::ExponentialSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - Array
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ExponentialSplinesFitting::ExponentialSplinesFitting(\n        bool
      constrainAtZero,\n        const Size numCoeffs,\n        const Real fixedKappa,\n
      \       const Array& weights,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<ExponentialSplinesFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::ExponentialSplinesFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<ExponentialSplinesFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> ExponentialSplinesFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::ExponentialSplinesFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 3
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: Size
    signature: Size ExponentialSplinesFitting::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExponentialSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:78,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:92,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:96,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 100
    functionName: QuantLib::ExponentialSplinesFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::exp
    - QuantLib::ExponentialSplinesFitting::size
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor ExponentialSplinesFitting::discountFunction(const Array&
      x,\n                                                               Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::NelsonSiegelFitting::NelsonSiegelFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NelsonSiegelFitting::NelsonSiegelFitting(\n        const Array&
      weights,\n        const ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n
      \       const Array& l2,\n        const Real minCutoffTime,\n        const Real
      maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: QuantLib::NelsonSiegelFitting::NelsonSiegelFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NelsonSiegelFitting::NelsonSiegelFitting(\n        const Array&
      weights,\n        const Array& l2,\n        const Real minCutoffTime,\n        const
      Real maxCutoffTime,\n        Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<NelsonSiegelFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: QuantLib::NelsonSiegelFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<NelsonSiegelFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> NelsonSiegelFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::NelsonSiegelFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size NelsonSiegelFitting::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NelsonSiegelFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:133,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::NelsonSiegelFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NelsonSiegelFitting::size
    - std::exp
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor NelsonSiegelFitting::discountFunction(const Array&
      x,\n                                                         Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 150
    functionName: QuantLib::SvenssonFitting::SvenssonFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SvenssonFitting::SvenssonFitting(const Array& weights,\n                                     const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n                                     const
      Array& l2,\n                                     const Real minCutoffTime,\n
      \                                    const Real maxCutoffTime,\n                                     Constraint
      constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: QuantLib::SvenssonFitting::SvenssonFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SvenssonFitting::SvenssonFitting(const Array& weights,\n                                     const
      Array& l2,\n                                     const Real minCutoffTime,\n
      \                                    const Real maxCutoffTime,\n                                     Constraint
      constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SvenssonFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::SvenssonFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SvenssonFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SvenssonFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::SvenssonFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SvenssonFitting::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SvenssonFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:171,1
    - Dst: QuantLib::SvenssonFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:172,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:175,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:177,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 181
    functionName: QuantLib::SvenssonFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SvenssonFitting::size
    - std::exp
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor SvenssonFitting::discountFunction(const Array& x,\n
      \                                                    Time t) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:194,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:197,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:197,1
    - Dst: QuantLib::CubicBSplinesFitting::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    - Dst: std::abs
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 8
    argNames:
    - ' knots'
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - std::vector<Time>
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 214
    functionName: QuantLib::CubicBSplinesFitting::CubicBSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::CubicBSplinesFitting::size
    - splines_
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CubicBSplinesFitting::CubicBSplinesFitting(\n        const std::vector<Time>&
      knots,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n        const Array&
      l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' knots'
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - std::vector<Time>
    - bool
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: QuantLib::CubicBSplinesFitting::CubicBSplinesFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CubicBSplinesFitting::CubicBSplinesFitting(\n        const std::vector<Time>&
      knots,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      Array& l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - t
    argTypes:
    - Integer
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionName: QuantLib::CubicBSplinesFitting::basisFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - splines_
    linkageType: ''
    returnType: Real
    signature: Real CubicBSplinesFitting::basisFunction(Integer i, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<CubicBSplinesFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: QuantLib::CubicBSplinesFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<CubicBSplinesFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> CubicBSplinesFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: QuantLib::CubicBSplinesFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size CubicBSplinesFitting::size() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:246,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:253,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:254,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:256,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:257,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:261,1
    - Dst: splines_
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 266
    functionName: QuantLib::CubicBSplinesFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - splines_
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor CubicBSplinesFitting::discountFunction(const Array&
      x,\n                                                          Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - degree
    - constrainAtZero
    - ' weights'
    - ' optimizationMethod'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Natural
    - bool
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 280
    functionName: QuantLib::SimplePolynomialFitting::SimplePolynomialFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimplePolynomialFitting::SimplePolynomialFitting(\n        Natural
      degree,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      ext::shared_ptr<OptimizationMethod>& optimizationMethod,\n        const Array&
      l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - degree
    - constrainAtZero
    - ' weights'
    - ' l2'
    - minCutoffTime
    - maxCutoffTime
    - constraint
    argTypes:
    - Natural
    - bool
    - Array
    - Array
    - Real
    - Real
    - Constraint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 291
    functionName: QuantLib::SimplePolynomialFitting::SimplePolynomialFitting
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimplePolynomialFitting::SimplePolynomialFitting(\n        Natural
      degree,\n        bool constrainAtZero,\n        const Array& weights,\n        const
      Array& l2,\n        const Real minCutoffTime,\n        const Real maxCutoffTime,\n
      \       Constraint constraint)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimplePolynomialFitting>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: QuantLib::SimplePolynomialFitting::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SimplePolynomialFitting>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SimplePolynomialFitting::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionName: QuantLib::SimplePolynomialFitting::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SimplePolynomialFitting::size() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BernsteinPolynomial::get
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:308,1
    - Dst: QuantLib::BernsteinPolynomial::get
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 315
    functionName: QuantLib::SimplePolynomialFitting::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BernsteinPolynomial::get
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor SimplePolynomialFitting::discountFunction(const Array&
      x,\n                                                             Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: constrainAtZero
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:322,1
    - Dst: weights
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:323,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:323,1
    - Dst: optimizationMethod
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:324,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:324,1
    - Dst: l2
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:325,1
    - Dst: Array
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:325,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:328,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:329,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:330,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' method'
    - discountCurve
    - minCutoffTime
    - maxCutoffTime
    argTypes:
    - ext::shared_ptr<FittingMethod>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 331
    functionName: QuantLib::SpreadFittingMethod::SpreadFittingMethod
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - empty
    - Array
    - ext::shared_ptr<OptimizationMethod>
    - weights
    - std::move
    - l2
    - optimizationMethod
    - constrainAtZero
    linkageType: ''
    returnType: void
    signature: "void SpreadFittingMethod::SpreadFittingMethod(const ext::shared_ptr<FittingMethod>&
      method,\n                                             Handle<YieldTermStructure>
      discountCurve,\n                                             const Real minCutoffTime,\n
      \                                            const Real maxCutoffTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SpreadFittingMethod>
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: QuantLib::SpreadFittingMethod::clone
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SpreadFittingMethod>
    linkageType: ''
    returnType: std::unique_ptr<FittedBondDiscountCurve::FittingMethod>
    signature: std::unique_ptr<FittedBondDiscountCurve::FittingMethod> SpreadFittingMethod::clone()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadFittingMethod::size
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: QuantLib::SpreadFittingMethod::size
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadFittingMethod::size
    linkageType: ''
    returnType: Size
    signature: Size SpreadFittingMethod::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:343,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionName: QuantLib::SpreadFittingMethod::discountFunction
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 0
    functionsReached:
    - discount
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor SpreadFittingMethod::discountFunction(const Array& x,
      Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:349,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:349,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:350,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:350,1
    - Dst: QuantLib::SpreadFittingMethod::init
      Src: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 357
    functionName: QuantLib::SpreadFittingMethod::init
    functionSourceFile: /src/quantlib/ql/termstructures/yield/nonlinearfittingmethods.cpp
    functionUses: 2
    functionsReached:
    - discount
    - QuantLib::SpreadFittingMethod::init
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void SpreadFittingMethod::init()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zeroYieldImpl
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:94,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: QuantLib::ZeroYieldStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - zeroYieldImpl
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ZeroYieldStructure::discountImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zeroYieldImpl
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:94,1
    - Dst: DiscountFactor
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:95,1
    - Dst: std::exp
      Src: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: QuantLib::ZeroYieldStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/zeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - zeroYieldImpl
    - DiscountFactor
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ZeroYieldStructure::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:88,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:91,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:92,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:94,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - ' underlyingDividendTS'
    - riskFreeTS
    - foreignRiskFreeTS
    - underlyingBlackVolTS
    - strike
    - exchRateBlackVolTS
    - exchRateATMlevel
    - underlyingExchRateCorrelation
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Real
    - Handle<BlackVolTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 96
    functionName: QuantLib::QuantoTermStructure::QuantoTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - QuantLib::QuantoTermStructure::dayCounter
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QuantoTermStructure::QuantoTermStructure(\n        const Handle<YieldTermStructure>&
      underlyingDividendTS,\n        Handle<YieldTermStructure> riskFreeTS,\n        Handle<YieldTermStructure>
      foreignRiskFreeTS,\n        Handle<BlackVolTermStructure> underlyingBlackVolTS,\n
      \       Real strike,\n        Handle<BlackVolTermStructure> exchRateBlackVolTS,\n
      \       Real exchRateATMlevel,\n        Real underlyingExchRateCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::QuantoTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter QuantoTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::QuantoTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar QuantoTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::QuantoTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural QuantoTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: '& QuantoTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & QuantoTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:115,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:115,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:116,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:117,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:117,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:118,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:118,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:119,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: QuantLib::QuantoTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::QuantoTermStructure::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date QuantoTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:126,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:127,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:128,1
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:130,1
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::QuantoTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - blackVol
    linkageType: ''
    returnType: Rate
    signature: Rate QuantoTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:85,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:88,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:91,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:92,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:94,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - ' underlyingDividendTS'
    - riskFreeTS
    - foreignRiskFreeTS
    - underlyingBlackVolTS
    - strike
    - exchRateBlackVolTS
    - exchRateATMlevel
    - underlyingExchRateCorrelation
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Real
    - Handle<BlackVolTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 96
    functionName: QuantLib::QuantoTermStructure::QuantoTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - QuantLib::QuantoTermStructure::dayCounter
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QuantoTermStructure::QuantoTermStructure(\n        const Handle<YieldTermStructure>&
      underlyingDividendTS,\n        Handle<YieldTermStructure> riskFreeTS,\n        Handle<YieldTermStructure>
      foreignRiskFreeTS,\n        Handle<BlackVolTermStructure> underlyingBlackVolTS,\n
      \       Real strike,\n        Handle<BlackVolTermStructure> exchRateBlackVolTS,\n
      \       Real exchRateATMlevel,\n        Real underlyingExchRateCorrelation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::QuantoTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::QuantoTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter QuantoTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::QuantoTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar QuantoTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::QuantoTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural QuantoTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: '& QuantoTermStructure::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & QuantoTermStructure::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:115,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:115,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:116,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:117,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:117,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:118,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:118,1
    - Dst: std::min
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:119,1
    - Dst: QuantLib::QuantoTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: QuantLib::QuantoTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::QuantoTermStructure::maxDate
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date QuantoTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:126,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:127,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:128,1
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:130,1
    - Dst: blackVol
      Src: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::QuantoTermStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/quantotermstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - blackVol
    linkageType: ''
    returnType: Rate
    signature: Rate QuantoTermStructure::zeroYieldImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:77,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:78,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 5
    argNames:
    - h1
    - h2
    - ' f'
    - comp
    - freq
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BinaryFunction
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 83
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::CompositeZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void CompositeZeroYieldStructure<BinaryFunction>::CompositeZeroYieldStructure(\n
      \       Handle<YieldTermStructure> h1,\n        Handle<YieldTermStructure> h2,\n
      \       const BinaryFunction& f,\n        Compounding comp,\n        Frequency
      freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter CompositeZeroYieldStructure<BinaryFunction>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar CompositeZeroYieldStructure<BinaryFunction>::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural CompositeZeroYieldStructure<BinaryFunction>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: '& CompositeZeroYieldStructure<BinaryFunction>::referenceDate()
      const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & CompositeZeroYieldStructure<BinaryFunction>::referenceDate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
    linkageType: ''
    returnType: Date
    signature: Date CompositeZeroYieldStructure<BinaryFunction>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
    linkageType: ''
    returnType: Time
    signature: Time CompositeZeroYieldStructure<BinaryFunction>::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:117,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:117,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:118,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 129
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void CompositeZeroYieldStructure<BinaryFunction>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:134,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:137,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate CompositeZeroYieldStructure<BinaryFunction>::zeroYieldImpl(Time
      t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:77,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:78,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 5
    argNames:
    - h1
    - h2
    - ' f'
    - comp
    - freq
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - BinaryFunction
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 83
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::CompositeZeroYieldStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - registerWith
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: "void CompositeZeroYieldStructure<BinaryFunction>::CompositeZeroYieldStructure(\n
      \       Handle<YieldTermStructure> h1,\n        Handle<YieldTermStructure> h2,\n
      \       const BinaryFunction& f,\n        Compounding comp,\n        Frequency
      freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter CompositeZeroYieldStructure<BinaryFunction>::dayCounter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar CompositeZeroYieldStructure<BinaryFunction>::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural CompositeZeroYieldStructure<BinaryFunction>::settlementDays()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: '& CompositeZeroYieldStructure<BinaryFunction>::referenceDate()
      const'
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & CompositeZeroYieldStructure<BinaryFunction>::referenceDate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxDate
    linkageType: ''
    returnType: Date
    signature: Date CompositeZeroYieldStructure<BinaryFunction>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CompositeZeroYieldStructure<BinaryFunction>::maxTime
    linkageType: ''
    returnType: Time
    signature: Time CompositeZeroYieldStructure<BinaryFunction>::maxTime() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:117,1
    - Dst: empty
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:117,1
    - Dst: QuantLib::YieldTermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:118,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:119,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 129
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::update
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::TermStructure::update
    - QuantLib::YieldTermStructure::update
    - enableExtrapolation
    - allowsExtrapolation
    linkageType: ''
    returnType: void
    signature: void CompositeZeroYieldStructure<BinaryFunction>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:134,1
    - Dst: zeroRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:137,1
    - Dst: InterestRate::equivalentRate
      Src: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: QuantLib::CompositeZeroYieldStructure<BinaryFunction>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/compositezeroyieldstructure.hpp
    functionUses: 0
    functionsReached:
    - zeroRate
    - InterestRate::equivalentRate
    linkageType: ''
    returnType: Rate
    signature: Rate CompositeZeroYieldStructure<BinaryFunction>::zeroYieldImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardRateStructure::ForwardRateStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardRateStructure::ForwardRateStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardRateStructure::ForwardRateStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:47,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:49,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:53,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:54,1
    - Dst: Rate
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::ForwardRateStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 2
    functionsReached:
    - Rate
    - forwardImpl
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardRateStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ForwardRateStructure::ForwardRateStructure(const DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' refDate'
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Date
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardRateStructure::ForwardRateStructure(\n                                    const
      Date& refDate,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - settlDays
    - ' cal'
    - ' dc'
    - ' jumps'
    - ' jumpDates'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::ForwardRateStructure::ForwardRateStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardRateStructure::ForwardRateStructure(\n                                    Natural
      settlDays,\n                                    const Calendar& cal,\n                                    const
      DayCounter& dc,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:47,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:49,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:53,1
    - Dst: forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:54,1
    - Dst: Rate
      Src: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: QuantLib::ForwardRateStructure::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardstructure.cpp
    functionUses: 2
    functionsReached:
    - Rate
    - forwardImpl
    linkageType: ''
    returnType: Rate
    signature: Rate ForwardRateStructure::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - h
    - ' referenceDate'
    argTypes:
    - Handle<YieldTermStructure>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::ImpliedTermStructure::ImpliedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedTermStructure::ImpliedTermStructure(Handle<YieldTermStructure>
      h,\n                                                      const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::ImpliedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ImpliedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::ImpliedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ImpliedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ImpliedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ImpliedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ImpliedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:94,1
    - Dst: QuantLib::ImpliedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:95,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:100,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: QuantLib::ImpliedTermStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ImpliedTermStructure::dayCounter
    - discount
    - referenceDate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ImpliedTermStructure::discountImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - h
    - ' referenceDate'
    argTypes:
    - Handle<YieldTermStructure>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::ImpliedTermStructure::ImpliedTermStructure
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedTermStructure::ImpliedTermStructure(Handle<YieldTermStructure>
      h,\n                                                      const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::ImpliedTermStructure::dayCounter
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::ImpliedTermStructure::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter ImpliedTermStructure::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::calendar
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::ImpliedTermStructure::calendar
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedTermStructure::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar ImpliedTermStructure::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::settlementDays
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ImpliedTermStructure::settlementDays
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedTermStructure::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural ImpliedTermStructure::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ImpliedTermStructure::maxDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::ImpliedTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ImpliedTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date ImpliedTermStructure::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:94,1
    - Dst: QuantLib::ImpliedTermStructure::dayCounter
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:95,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:100,1
    - Dst: discount
      Src: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: QuantLib::ImpliedTermStructure::discountImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/impliedtermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ImpliedTermStructure::dayCounter
    - discount
    - referenceDate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ImpliedTermStructure::discountImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:114,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::InterpolatedForwardCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedForwardCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: "&\n    InterpolatedForwardCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedForwardCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    InterpolatedForwardCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedForwardCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: "&\n    InterpolatedForwardCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedForwardCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: "&\n    InterpolatedForwardCurve<T>::forwards() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedForwardCurve<T>::forwards() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:147,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 150
    functionName: QuantLib::InterpolatedForwardCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedForwardCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:158,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:159,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: QuantLib::InterpolatedForwardCurve<T>::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::data_::back
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_
    - QuantLib::InterpolatedForwardCurve<T>::times_::back
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedForwardCurve<T>::forwardImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedForwardCurve<T>::forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:168,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:171,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:172,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:175,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:175,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:176,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedForwardCurve<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::data_::back
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
    - QuantLib::InterpolatedForwardCurve<T>::forwardImpl
    - QuantLib::InterpolatedForwardCurve<T>::times_::back
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedForwardCurve<T>::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 195
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:217,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:218,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 222
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      std::vector<Date>& dates,\n                                    const std::vector<Rate>&
      forwards,\n                                    const DayCounter& dayCounter,\n
      \                                   const Calendar& calendar,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:231,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:232,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n            const
      std::vector<Date>& dates,\n            const std::vector<Rate>& forwards,\n
      \           const DayCounter& dayCounter,\n            const Calendar& calendar,\n
      \           const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:244,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:244,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:245,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 249
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n            const
      std::vector<Date>& dates,\n            const std::vector<Rate>& forwards,\n
      \           const DayCounter& dayCounter,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:261,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:261,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:262,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 264
    functionName: QuantLib::InterpolatedForwardCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::setupInterpolation
    - QuantLib::InterpolatedForwardCurve<T>::setupTimes
    - dayCounter
    - QuantLib::InterpolatedForwardCurve<T>::data_::size
    - size
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedForwardCurve<T>::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:114,1
    - Dst: back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::InterpolatedForwardCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - Date
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedForwardCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: "&\n    InterpolatedForwardCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedForwardCurve<T>::times() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: "&\n    InterpolatedForwardCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedForwardCurve<T>::dates() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: "&\n    InterpolatedForwardCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedForwardCurve<T>::data() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: "&\n    InterpolatedForwardCurve<T>::forwards() const"
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedForwardCurve<T>::forwards() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:146,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:147,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 150
    functionName: QuantLib::InterpolatedForwardCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedForwardCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:158,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:159,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: QuantLib::InterpolatedForwardCurve<T>::forwardImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::data_::back
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_
    - QuantLib::InterpolatedForwardCurve<T>::times_::back
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedForwardCurve<T>::forwardImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedForwardCurve<T>::forwardImpl
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:168,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:171,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:172,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:175,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:175,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:176,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::times_::back
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 179
    functionName: QuantLib::InterpolatedForwardCurve<T>::zeroYieldImpl
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::data_::back
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_::primitive
    - QuantLib::InterpolatedForwardCurve<T>::forwardImpl
    - QuantLib::InterpolatedForwardCurve<T>::times_::back
    linkageType: ''
    returnType: Rate
    signature: Rate InterpolatedForwardCurve<T>::zeroYieldImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      DayCounter& dayCounter,\n                                    const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 195
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      Date& referenceDate,\n                                    const DayCounter&
      dayCounter,\n                                    const std::vector<Handle<Quote>
      >& jumps,\n                                    const std::vector<Date>& jumpDates,\n
      \                                   const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    Natural
      settlementDays,\n                                    const Calendar& calendar,\n
      \                                   const DayCounter& dayCounter,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:217,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:218,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 222
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n                                    const
      std::vector<Date>& dates,\n                                    const std::vector<Rate>&
      forwards,\n                                    const DayCounter& dayCounter,\n
      \                                   const Calendar& calendar,\n                                    const
      std::vector<Handle<Quote> >& jumps,\n                                    const
      std::vector<Date>& jumpDates,\n                                    const T&
      interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:231,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:232,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n            const
      std::vector<Date>& dates,\n            const std::vector<Rate>& forwards,\n
      \           const DayCounter& dayCounter,\n            const Calendar& calendar,\n
      \           const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:244,1
    - Dst: Calendar
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:244,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:245,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::initialize
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' dates'
    - ' forwards'
    - ' dayCounter'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 249
    functionName: QuantLib::InterpolatedForwardCurve<T>::InterpolatedForwardCurve
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedForwardCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedForwardCurve<T>::InterpolatedForwardCurve(\n            const
      std::vector<Date>& dates,\n            const std::vector<Rate>& forwards,\n
      \           const DayCounter& dayCounter,\n            const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::data_::size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: size
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:258,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::setupTimes
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:261,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:261,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:262,1
    - Dst: QuantLib::InterpolatedForwardCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 264
    functionName: QuantLib::InterpolatedForwardCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/termstructures/yield/forwardcurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedForwardCurve<T>::setupInterpolation
    - QuantLib::InterpolatedForwardCurve<T>::setupTimes
    - dayCounter
    - QuantLib::InterpolatedForwardCurve<T>::data_::size
    - size
    - QuantLib::InterpolatedForwardCurve<T>::interpolation_::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedForwardCurve<T>::initialize()
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:43,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:45,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:46,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:49,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:60,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:66,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:67,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:72,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:117,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:131,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:132,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:139,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:141,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:147,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:153,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 92
    argCount: 5
    argNames:
    - spot
    - discount
    - dividendDiscount
    - variance
    - ' payoff'
    argTypes:
    - Real
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 157
    functionName: QuantLib::AmericanPayoffAtHit::AmericanPayoffAtHit
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached:
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - ext::shared_ptr::strike
    - f
    - ext::shared_ptr::cashPayoff
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPayoffAtHit::AmericanPayoffAtHit(\n         Real spot,
      DiscountFactor discount, DiscountFactor dividendDiscount,\n         Real variance,
      const ext::shared_ptr<StrikedTypePayoff>& payoff)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 178
    functionName: QuantLib::AmericanPayoffAtHit::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::delta() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 208
    functionName: QuantLib::AmericanPayoffAtHit::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::gamma() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 233
    functionName: QuantLib::AmericanPayoffAtHit::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::rho(Time maturity) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:43,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:45,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:46,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:49,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:60,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:65,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:66,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:67,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:72,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:72,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:117,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:131,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:132,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:139,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:141,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:147,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:153,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 92
    argCount: 5
    argNames:
    - spot
    - discount
    - dividendDiscount
    - variance
    - ' payoff'
    argTypes:
    - Real
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 157
    functionName: QuantLib::AmericanPayoffAtHit::AmericanPayoffAtHit
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached:
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - ext::shared_ptr::strike
    - f
    - ext::shared_ptr::cashPayoff
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPayoffAtHit::AmericanPayoffAtHit(\n         Real spot,
      DiscountFactor discount, DiscountFactor dividendDiscount,\n         Real variance,
      const ext::shared_ptr<StrikedTypePayoff>& payoff)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 178
    functionName: QuantLib::AmericanPayoffAtHit::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::delta() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 208
    functionName: QuantLib::AmericanPayoffAtHit::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::gamma() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 233
    functionName: QuantLib::AmericanPayoffAtHit::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::rho(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:137,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:141,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:159,1
    - Dst: QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::registerWith
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 14
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - nCalibrationSamples
    - brownianBridgeCalibration
    - antitheticVariateCalibration
    - seedCalibration
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - ext::optional<bool>
    - ext::optional<bool>
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 163
    functionName: QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::MCLongstaffSchwartzEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::registerWith
    - Null<Size>
    - Null<Real>
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::\n
      \       MCLongstaffSchwartzEngine(ext::shared_ptr<StochasticProcess> process,\n
      \                                 Size timeSteps,\n                                  Size
      timeStepsPerYear,\n                                  bool brownianBridge,\n
      \                                 bool antitheticVariate,\n                                  bool
      controlVariate,\n                                  Size requiredSamples,\n                                  Real
      requiredTolerance,\n                                  Size maxSamples,\n                                  BigNatural
      seed,\n                                  Size nCalibrationSamples,\n                                  ext::optional<bool>
      brownianBridgeCalibration,\n                                  ext::optional<bool>
      antitheticVariateCalibration,\n                                  BigNatural
      seedCalibration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::pathPricer"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_pricer_type>"
    signature: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_pricer_type> MCLongstaffSchwartzEngine<GenericEngine,
      MC, RNG, S,\n                              RNG_Calibration>::pathPricer() const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::lsmPathPricer"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:181,1
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:182,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::timeGrid"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:183,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:185,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:186,1
    - Dst: ext::make_shared<path_generator_type_calibration>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:189,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC, RNG_Calibration, S> >
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:192,1
    - Dst: stats_type
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:194,1
    - Dst: MonteCarloModel<MC, RNG_Calibration, S>::MonteCarloModel<MC, RNG_Calibration,
        S>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:193,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:197,1
    - Dst: calibrate
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:198,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:200,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:203,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::pathPricer_::exerciseProbability"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:205,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 210
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                                         RNG_Calibration>::calculate"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - stats_type
    - ext::shared_ptr<MonteCarloModel<MC, RNG_Calibration, S> >
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
    - ext::make_shared<path_generator_type_calibration>
    - TimeGrid::size
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::lsmPathPricer"
    - factors
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - addSamples
    - calibrate
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::pathPricer_::exerciseProbability"
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::timeGrid"
    - QuantLib::make_sequence_generator
    - MonteCarloModel<MC, RNG_Calibration, S>::MonteCarloModel<MC, RNG_Calibration,
      S>
    linkageType: ''
    returnType: void
    signature: "void MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::calculate()
      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::type"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:218,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::lastDate"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:219,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:220,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:220,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::dates"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:222,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:224,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::date"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:224,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:229,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:232,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:233,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:234,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:236,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:238,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 240
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::timeGrid"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::type"
    - Null<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::date"
    - std::vector::begin
    - std::vector::end
    - time
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::lastDate"
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::dates"
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: "TimeGrid MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:249,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:250,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:252,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:252,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:253,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 256
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::pathGenerator"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid"
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_generator_type>"
    signature: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_generator_type> MCLongstaffSchwartzEngine<GenericEngine,
      MC, RNG, S,\n                              RNG_Calibration>::pathGenerator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:137,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:141,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:159,1
    - Dst: QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::registerWith
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 14
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - nCalibrationSamples
    - brownianBridgeCalibration
    - antitheticVariateCalibration
    - seedCalibration
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - ext::optional<bool>
    - ext::optional<bool>
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 163
    functionName: QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::MCLongstaffSchwartzEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::registerWith
    - Null<Size>
    - Null<Real>
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S, RNG_Calibration>::\n
      \       MCLongstaffSchwartzEngine(ext::shared_ptr<StochasticProcess> process,\n
      \                                 Size timeSteps,\n                                  Size
      timeStepsPerYear,\n                                  bool brownianBridge,\n
      \                                 bool antitheticVariate,\n                                  bool
      controlVariate,\n                                  Size requiredSamples,\n                                  Real
      requiredTolerance,\n                                  Size maxSamples,\n                                  BigNatural
      seed,\n                                  Size nCalibrationSamples,\n                                  ext::optional<bool>
      brownianBridgeCalibration,\n                                  ext::optional<bool>
      antitheticVariateCalibration,\n                                  BigNatural
      seedCalibration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::pathPricer"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_pricer_type>"
    signature: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_pricer_type> MCLongstaffSchwartzEngine<GenericEngine,
      MC, RNG, S,\n                              RNG_Calibration>::pathPricer() const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::lsmPathPricer"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:181,1
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:182,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::timeGrid"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:183,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:185,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:186,1
    - Dst: ext::make_shared<path_generator_type_calibration>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:189,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC, RNG_Calibration, S> >
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:192,1
    - Dst: stats_type
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:194,1
    - Dst: MonteCarloModel<MC, RNG_Calibration, S>::MonteCarloModel<MC, RNG_Calibration,
        S>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:193,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:197,1
    - Dst: calibrate
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:198,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:200,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:203,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::pathPricer_::exerciseProbability"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:205,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 210
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                                         RNG_Calibration>::calculate"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - stats_type
    - ext::shared_ptr<MonteCarloModel<MC, RNG_Calibration, S> >
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::mcModel_::sampleAccumulator"
    - ext::make_shared<path_generator_type_calibration>
    - TimeGrid::size
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::lsmPathPricer"
    - factors
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - addSamples
    - calibrate
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::pathPricer_::exerciseProbability"
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::timeGrid"
    - QuantLib::make_sequence_generator
    - MonteCarloModel<MC, RNG_Calibration, S>::MonteCarloModel<MC, RNG_Calibration,
      S>
    linkageType: ''
    returnType: void
    signature: "void MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                                          RNG_Calibration>::calculate()
      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::type"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:218,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::lastDate"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:219,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:220,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:220,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::dates"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:222,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:224,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::date"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:224,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:229,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:230,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:232,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:233,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:234,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:235,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:236,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:238,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 240
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::timeGrid"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::type"
    - Null<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::date"
    - std::vector::begin
    - std::vector::end
    - time
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::lastDate"
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::arguments_::exercise::dates"
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: "TimeGrid MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:249,1
    - Dst: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid"
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:250,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:252,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:252,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:253,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 256
    functionName: "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n
      \                             RNG_Calibration>::pathGenerator"
    functionSourceFile: /src/quantlib/ql/pricingengines/mclongstaffschwartzengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - "QuantLib::MCLongstaffSchwartzEngine<GenericEngine, MC, RNG, S,\n                              RNG_Calibration>::timeGrid"
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_generator_type>"
    signature: "ext::shared_ptr<typename MCLongstaffSchwartzEngine<\n        GenericEngine,
      MC, RNG, S, RNG_Calibration>::path_generator_type> MCLongstaffSchwartzEngine<GenericEngine,
      MC, RNG, S,\n                              RNG_Calibration>::pathGenerator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' payoff'
    - spot
    - growth
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - DiscountFactor
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 37
    functionName: QuantLib::BlackScholesCalculator::BlackScholesCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackScholesCalculator::BlackScholesCalculator(\n                        const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                        Real spot,\n
      \                       DiscountFactor growth,\n                        Real
      stdDev,\n                        DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - type
    - strike
    - spot
    - growth
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackScholesCalculator::BlackScholesCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackScholesCalculator::BlackScholesCalculator(Option::Type type,\n
      \                                                  Real strike,\n                                                   Real
      spot,\n                                                   DiscountFactor growth,\n
      \                                                  Real stdDev,\n                                                   DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' payoff'
    - spot
    - growth
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - DiscountFactor
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 37
    functionName: QuantLib::BlackScholesCalculator::BlackScholesCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackScholesCalculator::BlackScholesCalculator(\n                        const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n                        Real spot,\n
      \                       DiscountFactor growth,\n                        Real
      stdDev,\n                        DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - type
    - strike
    - spot
    - growth
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackScholesCalculator::BlackScholesCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackScholesCalculator::BlackScholesCalculator(Option::Type type,\n
      \                                                  Real strike,\n                                                   Real
      spot,\n                                                   DiscountFactor growth,\n
      \                                                  Real stdDev,\n                                                   DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' black'
    argTypes:
    - BlackCalculator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::BlackCalculator::Calculator::Calculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Calculator(BlackCalculator& black)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:49,1
    - Dst: QuantLib::BlackCalculator::initialize
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackCalculator::BlackCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::initialize
    - strike
    linkageType: ''
    returnType: void
    signature: "void BlackCalculator::BlackCalculator(const ext::shared_ptr<StrikedTypePayoff>&
      p,\n                                     Real forward,\n                                     Real
      stdDev,\n                                     Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::initialize
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    - Dst: ext::shared_ptr<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::BlackCalculator::BlackCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::BlackCalculator::initialize
    - ext::shared_ptr<StrikedTypePayoff>
    linkageType: ''
    returnType: void
    signature: "void BlackCalculator::BlackCalculator(Option::Type optionType,\n                                     Real
      strike,\n                                     Real forward,\n                                     Real
      stdDev,\n                                     Real discount)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:74,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:89,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:90,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:91,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:92,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:95,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:143,1
    - Dst: accept
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:149,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 66
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 150
    functionName: QuantLib::BlackCalculator::initialize
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 2
    functionsReached:
    - close
    - accept
    - std::log
    - CumulativeNormalDistribution::derivative
    - f
    - QL_FAIL
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::initialize(const ext::shared_ptr<StrikedTypePayoff>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:153,1
    - Dst: name
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Payoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: BlackCalculator::Calculator::visit(Payoff& p)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - name
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(Payoff& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 156
    functionName: BlackCalculator::Calculator::visit(PlainVanillaPayoff&)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(PlainVanillaPayoff&)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:160,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - CashOrNothingPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 174
    functionName: BlackCalculator::Calculator::visit(CashOrNothingPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - cashPayoff
    - optionType
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(CashOrNothingPayoff& payoff)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - AssetOrNothingPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 190
    functionName: BlackCalculator::Calculator::visit(AssetOrNothingPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - optionType
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(AssetOrNothingPayoff& payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: secondStrike
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - GapPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: BlackCalculator::Calculator::visit(GapPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - secondStrike
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(GapPayoff& payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::BlackCalculator::value
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 216
    functionName: QuantLib::BlackCalculator::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::delta(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 227
    functionName: QuantLib::BlackCalculator::deltaForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::deltaForward() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:230,1
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:231,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 240
    functionName: QuantLib::BlackCalculator::elasticity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::delta
    - QuantLib::BlackCalculator::value
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::elasticity(Real spot) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:243,1
    - Dst: QuantLib::BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:244,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 253
    functionName: QuantLib::BlackCalculator::elasticityForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::BlackCalculator::value
    - QuantLib::BlackCalculator::deltaForward
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::elasticityForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 273
    functionName: QuantLib::BlackCalculator::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::gamma(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 288
    functionName: QuantLib::BlackCalculator::gammaForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::gammaForward() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:293,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:295,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:296,1
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:296,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:297,1
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:297,1
    - Dst: QuantLib::BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - spot
    - maturity
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 290
    functionDepth: 2
    functionLinenumber: 290
    functionLinenumberEnd: 299
    functionName: QuantLib::BlackCalculator::theta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - QuantLib::BlackCalculator::delta
    - QuantLib::BlackCalculator::gamma
    - QuantLib::BlackCalculator::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackCalculator::theta(Real spot,\n                                Time
      maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:302,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:305,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 314
    functionName: QuantLib::BlackCalculator::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::vega(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:317,1
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 326
    functionName: QuantLib::BlackCalculator::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::rho(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 339
    functionName: QuantLib::BlackCalculator::dividendRho
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::dividendRho(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 351
    functionName: QuantLib::BlackCalculator::strikeSensitivity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::strikeSensitivity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 368
    functionName: QuantLib::BlackCalculator::strikeGamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::strikeGamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' black'
    argTypes:
    - BlackCalculator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::BlackCalculator::Calculator::Calculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Calculator(BlackCalculator& black)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:49,1
    - Dst: QuantLib::BlackCalculator::initialize
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackCalculator::BlackCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::initialize
    - strike
    linkageType: ''
    returnType: void
    signature: "void BlackCalculator::BlackCalculator(const ext::shared_ptr<StrikedTypePayoff>&
      p,\n                                     Real forward,\n                                     Real
      stdDev,\n                                     Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::initialize
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    - Dst: ext::shared_ptr<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::BlackCalculator::BlackCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::BlackCalculator::initialize
    - ext::shared_ptr<StrikedTypePayoff>
    linkageType: ''
    returnType: void
    signature: "void BlackCalculator::BlackCalculator(Option::Type optionType,\n                                     Real
      strike,\n                                     Real forward,\n                                     Real
      stdDev,\n                                     Real discount)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:74,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:89,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:90,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:91,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:92,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:95,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:143,1
    - Dst: accept
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:149,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 66
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 150
    functionName: QuantLib::BlackCalculator::initialize
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 4
    functionsReached:
    - close
    - accept
    - std::log
    - CumulativeNormalDistribution::derivative
    - f
    - QL_FAIL
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::initialize(const ext::shared_ptr<StrikedTypePayoff>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:153,1
    - Dst: name
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Payoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: BlackCalculator::Calculator::visit(Payoff& p)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - name
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(Payoff& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 156
    functionName: BlackCalculator::Calculator::visit(PlainVanillaPayoff&)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(PlainVanillaPayoff&)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:160,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - CashOrNothingPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 174
    functionName: BlackCalculator::Calculator::visit(CashOrNothingPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - cashPayoff
    - optionType
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(CashOrNothingPayoff& payoff)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:178,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - AssetOrNothingPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 190
    functionName: BlackCalculator::Calculator::visit(AssetOrNothingPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - optionType
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(AssetOrNothingPayoff& payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: secondStrike
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoff'
    argTypes:
    - GapPayoff
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: BlackCalculator::Calculator::visit(GapPayoff& payoff)
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - secondStrike
    linkageType: ''
    returnType: void
    signature: void BlackCalculator::Calculator::visit(GapPayoff& payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::BlackCalculator::value
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 216
    functionName: QuantLib::BlackCalculator::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::delta(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 227
    functionName: QuantLib::BlackCalculator::deltaForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::deltaForward() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:230,1
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:231,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 240
    functionName: QuantLib::BlackCalculator::elasticity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::delta
    - QuantLib::BlackCalculator::value
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::elasticity(Real spot) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:243,1
    - Dst: QuantLib::BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:244,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 253
    functionName: QuantLib::BlackCalculator::elasticityForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::BlackCalculator::value
    - QuantLib::BlackCalculator::deltaForward
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::elasticityForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 273
    functionName: QuantLib::BlackCalculator::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::gamma(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 288
    functionName: QuantLib::BlackCalculator::gammaForward
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::gammaForward() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:293,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:295,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:296,1
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:296,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:297,1
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:297,1
    - Dst: QuantLib::BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - spot
    - maturity
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 290
    functionDepth: 2
    functionLinenumber: 290
    functionLinenumberEnd: 299
    functionName: QuantLib::BlackCalculator::theta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - close
    - std::log
    - QuantLib::BlackCalculator::delta
    - QuantLib::BlackCalculator::gamma
    - QuantLib::BlackCalculator::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackCalculator::theta(Real spot,\n                                Time
      maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:302,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:305,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 314
    functionName: QuantLib::BlackCalculator::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::vega(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:317,1
    - Dst: QuantLib::BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 326
    functionName: QuantLib::BlackCalculator::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::value
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::rho(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackcalculator.cpp:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 339
    functionName: QuantLib::BlackCalculator::dividendRho
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::dividendRho(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 351
    functionName: QuantLib::BlackCalculator::strikeSensitivity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::strikeSensitivity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 368
    functionName: QuantLib::BlackCalculator::strikeGamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::strikeGamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~McSimulation()
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~McSimulation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - antitheticVariate
    - controlVariate
    argTypes:
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::McSimulation::McSimulation
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void McSimulation(bool antitheticVariate,\n                     bool
      controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::McSimulation::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<path_pricer_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_pricer_type>
    signature: ext::shared_ptr<path_pricer_type> controlPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::McSimulation::controlPathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> controlPathGenerator() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::McSimulation::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<result_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::McSimulation::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - Null<result_type>
    linkageType: ''
    returnType: result_type
    signature: result_type controlVariateValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sequence'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::McSimulation::maxError
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real maxError(const Sequence& sequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::McSimulation::maxError
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxError(Real error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:110,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:112,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:113,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:118,1
    - Dst: maxError
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:120,1
    - Dst: maxError
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:126,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:129,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:132,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:134,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:135,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:135,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:138,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - tolerance
    - maxSamples
    - minSamples
    argTypes:
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 139
    functionName: QuantLib::McSimulation<MC,RNG,S>::value
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - Size
    - sampleAccumulator
    - maxError
    - addSamples
    - Real
    - static_cast<Real>
    - std::min
    - result_type
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: "typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::value(Real
      tolerance,\n                                              Size maxSamples,\n
      \                                             Size minSamples) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:148,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:152,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:154,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - result_type
    - addSamples
    - sampleAccumulator
    - QL_REQUIRE
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::valueWithSamples(Size
      samples) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:163,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:164,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:171,1
    - Dst: Null<result_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:171,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlPathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:177,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlPathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:182,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:185,1
    - Dst: pathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::pathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: stats_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:186,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:192,1
    - Dst: pathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::pathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: S
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:198,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:199,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::value
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:200,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::value
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:202,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - requiredTolerance
    - requiredSamples
    - maxSamples
    argTypes:
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 207
    functionName: QuantLib::McSimulation<MC,RNG,S>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 2
    functionsReached:
    - stats_type
    - pathGenerator
    - QuantLib::McSimulation<MC,RNG,S>::value
    - MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
    - Null<Size>
    - Null<Real>
    - QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
    - QuantLib::McSimulation<MC,RNG,S>::pathPricer
    - QuantLib::McSimulation<MC,RNG,S>::controlVariateValue
    - QuantLib::McSimulation<MC,RNG,S>::controlPathPricer
    - S
    - QuantLib::McSimulation<MC,RNG,S>::controlPathGenerator
    - Null<result_type>
    - ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void McSimulation<MC,RNG,S>::calculate(Real requiredTolerance,\n                                                  Size
      requiredSamples,\n                                                  Size maxSamples)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: QuantLib::McSimulation<MC,RNG,S>::errorEstimate
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - sampleAccumulator
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::errorEstimate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: "&\n    McSimulation<MC,RNG,S>::sampleAccumulator() const"
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - sampleAccumulator
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::stats_type
    signature: "typename McSimulation<MC,RNG,S>::stats_type &\n    McSimulation<MC,RNG,S>::sampleAccumulator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~McSimulation()
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~McSimulation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - antitheticVariate
    - controlVariate
    argTypes:
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::McSimulation::McSimulation
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void McSimulation(bool antitheticVariate,\n                     bool
      controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::McSimulation::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<path_pricer_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_pricer_type>
    signature: ext::shared_ptr<path_pricer_type> controlPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::McSimulation::controlPathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> controlPathGenerator() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::McSimulation::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<result_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::McSimulation::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - Null<result_type>
    linkageType: ''
    returnType: result_type
    signature: result_type controlVariateValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' sequence'
    argTypes:
    - Sequence
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: QuantLib::McSimulation::maxError
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real maxError(const Sequence& sequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - error
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::McSimulation::maxError
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxError(Real error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:110,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:112,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:113,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:118,1
    - Dst: maxError
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:120,1
    - Dst: maxError
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:126,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:126,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:128,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:129,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:132,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:134,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:135,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:135,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:138,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - tolerance
    - maxSamples
    - minSamples
    argTypes:
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 139
    functionName: QuantLib::McSimulation<MC,RNG,S>::value
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 1
    functionsReached:
    - Size
    - sampleAccumulator
    - maxError
    - addSamples
    - Real
    - static_cast<Real>
    - std::min
    - result_type
    - std::max<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: "typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::value(Real
      tolerance,\n                                              Size maxSamples,\n
      \                                             Size minSamples) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:148,1
    - Dst: addSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:152,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:154,1
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 1
    functionsReached:
    - result_type
    - addSamples
    - sampleAccumulator
    - QL_REQUIRE
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::valueWithSamples(Size
      samples) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:163,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:164,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:171,1
    - Dst: Null<result_type>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:171,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlPathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:177,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::controlPathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:182,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:185,1
    - Dst: pathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::pathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: stats_type
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:187,1
    - Dst: MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:186,1
    - Dst: ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:192,1
    - Dst: pathGenerator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::pathPricer
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: S
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:194,1
    - Dst: MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:198,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:199,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::value
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:200,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::value
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:202,1
    - Dst: QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - requiredTolerance
    - requiredSamples
    - maxSamples
    argTypes:
    - Real
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 207
    functionName: QuantLib::McSimulation<MC,RNG,S>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 2
    functionsReached:
    - stats_type
    - pathGenerator
    - QuantLib::McSimulation<MC,RNG,S>::value
    - MonteCarloModel<MC,RNG,S>::MonteCarloModel<MC,RNG,S>
    - Null<Size>
    - Null<Real>
    - QuantLib::McSimulation<MC,RNG,S>::valueWithSamples
    - QuantLib::McSimulation<MC,RNG,S>::pathPricer
    - QuantLib::McSimulation<MC,RNG,S>::controlVariateValue
    - QuantLib::McSimulation<MC,RNG,S>::controlPathPricer
    - S
    - QuantLib::McSimulation<MC,RNG,S>::controlPathGenerator
    - Null<result_type>
    - ext::shared_ptr<MonteCarloModel<MC,RNG,S> >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void McSimulation<MC,RNG,S>::calculate(Real requiredTolerance,\n                                                  Size
      requiredSamples,\n                                                  Size maxSamples)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: QuantLib::McSimulation<MC,RNG,S>::errorEstimate
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - sampleAccumulator
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::result_type
    signature: typename McSimulation<MC,RNG,S>::result_type McSimulation<MC,RNG,S>::errorEstimate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/mcsimulation.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: "&\n    McSimulation<MC,RNG,S>::sampleAccumulator() const"
    functionSourceFile: /src/quantlib/ql/pricingengines/mcsimulation.hpp
    functionUses: 0
    functionsReached:
    - sampleAccumulator
    linkageType: ''
    returnType: typename McSimulation<MC,RNG,S>::stats_type
    signature: "typename McSimulation<MC,RNG,S>::stats_type &\n    McSimulation<MC,RNG,S>::sampleAccumulator()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AmericanPayoffAtExpiry::value
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtExpiry::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AmericanPayoffAtExpiry::value
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtExpiry::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~BlackScholesCalculator() override
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackScholesCalculator() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::BlackScholesCalculator::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::delta
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::BlackScholesCalculator::elasticity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::elasticity
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::elasticity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackScholesCalculator::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::gamma
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackScholesCalculator::theta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::theta
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::theta(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::BlackScholesCalculator::thetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::thetaPerDay
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::thetaPerDay(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~BlackScholesCalculator() override
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackScholesCalculator() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::BlackScholesCalculator::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::delta
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::delta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::BlackScholesCalculator::elasticity
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::elasticity
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::elasticity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackScholesCalculator::gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::gamma
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::BlackScholesCalculator::theta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::theta
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::theta(Time maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::BlackScholesCalculator::thetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/blackscholescalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCalculator::thetaPerDay
    linkageType: ''
    returnType: Real
    signature: Real BlackScholesCalculator::thetaPerDay(Time maturity) const
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:44,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:46,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:54,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:61,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:99,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:108,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:109,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:110,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:162,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 98
    argCount: 6
    argNames:
    - spot
    - discount
    - dividendDiscount
    - variance
    - ' payoff'
    - knock_in
    argTypes:
    - Real
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 180
    functionName: QuantLib::AmericanPayoffAtExpiry::AmericanPayoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp
    functionUses: 0
    functionsReached:
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - f
    - ext::shared_ptr::cashPayoff
    - Real
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPayoffAtExpiry::AmericanPayoffAtExpiry(\n         Real
      spot, DiscountFactor discount, DiscountFactor dividendDiscount,\n         Real
      variance, const ext::shared_ptr<StrikedTypePayoff>& payoff,\n         bool knock_in)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:44,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:46,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:54,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:61,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:99,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:108,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:109,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:110,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:162,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp:176,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 98
    argCount: 6
    argNames:
    - spot
    - discount
    - dividendDiscount
    - variance
    - ' payoff'
    - knock_in
    argTypes:
    - Real
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<StrikedTypePayoff>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 180
    functionName: QuantLib::AmericanPayoffAtExpiry::AmericanPayoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffatexpiry.cpp
    functionUses: 0
    functionsReached:
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - f
    - ext::shared_ptr::cashPayoff
    - Real
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPayoffAtExpiry::AmericanPayoffAtExpiry(\n         Real
      spot, DiscountFactor discount, DiscountFactor dividendDiscount,\n         Real
      variance, const ext::shared_ptr<StrikedTypePayoff>& payoff,\n         bool knock_in)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:29,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:30,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:31,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - value
    - delta
    - gamma
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::blackScholesTheta
    functionSourceFile: /src/quantlib/ql/pricingengines/greeks.cpp
    functionUses: 0
    functionsReached:
    - localVolatility
    - dividendYield
    - riskFreeRate
    - stateVariable
    linkageType: ''
    returnType: Real
    signature: "Real blackScholesTheta(\n                   const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      p,\n                   Real value, Real delta, Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::defaultThetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/greeks.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real defaultThetaPerDay(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:29,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:30,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:31,1
    - Dst: localVolatility
      Src: /src/quantlib/ql/pricingengines/greeks.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' p'
    - value
    - delta
    - gamma
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::blackScholesTheta
    functionSourceFile: /src/quantlib/ql/pricingengines/greeks.cpp
    functionUses: 0
    functionsReached:
    - localVolatility
    - dividendYield
    - riskFreeRate
    - stateVariable
    linkageType: ''
    returnType: Real
    signature: "Real blackScholesTheta(\n                   const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      p,\n                   Real value, Real delta, Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::defaultThetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/greeks.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real defaultThetaPerDay(Real theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: ~BlackCalculator()
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - spot
    - maturity
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 3
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::BlackCalculator::thetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackCalculator::theta
    linkageType: ''
    returnType: Real
    signature: "Real BlackCalculator::thetaPerDay(Real spot,\n                                             Time
      maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::BlackCalculator::itmCashProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::itmCashProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::BlackCalculator::itmAssetProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::itmAssetProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::BlackCalculator::alpha
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::BlackCalculator::beta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: ~BlackCalculator()
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackCalculator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/blackcalculator.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - spot
    - maturity
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 3
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::BlackCalculator::thetaPerDay
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackCalculator::theta
    linkageType: ''
    returnType: Real
    signature: "Real BlackCalculator::thetaPerDay(Real spot,\n                                             Time
      maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::BlackCalculator::itmCashProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::itmCashProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::BlackCalculator::itmAssetProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::itmAssetProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::BlackCalculator::alpha
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::BlackCalculator::beta
    functionSourceFile: /src/quantlib/ql/pricingengines/blackcalculator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BlackCalculator::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<ModelType>
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:43,1
    - Dst: QuantLib::GenericModelEngine::registerWith
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::GenericModelEngine::GenericModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/genericmodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericModelEngine::registerWith
    - Handle<ModelType>
    - std::move
    linkageType: ''
    returnType: void
    signature: void GenericModelEngine(Handle<ModelType> model = Handle<ModelType>())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericModelEngine::registerWith
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<ModelType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::GenericModelEngine::GenericModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/genericmodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericModelEngine::registerWith
    linkageType: ''
    returnType: void
    signature: void GenericModelEngine(const ext::shared_ptr<ModelType>& model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<ModelType>
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:43,1
    - Dst: QuantLib::GenericModelEngine::registerWith
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::GenericModelEngine::GenericModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/genericmodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericModelEngine::registerWith
    - Handle<ModelType>
    - std::move
    linkageType: ''
    returnType: void
    signature: void GenericModelEngine(Handle<ModelType> model = Handle<ModelType>())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericModelEngine::registerWith
      Src: /src/quantlib/ql/pricingengines/genericmodelengine.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<ModelType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::GenericModelEngine::GenericModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/genericmodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GenericModelEngine::registerWith
    linkageType: ''
    returnType: void
    signature: void GenericModelEngine(const ext::shared_ptr<ModelType>& model)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AmericanPayoffAtHit::value
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AmericanPayoffAtHit::value
    functionSourceFile: /src/quantlib/ql/pricingengines/americanpayoffathit.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPayoffAtHit::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - timeSteps
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const ext::shared_ptr<ShortRateModel>& model,\n            Size
      timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - timeSteps
    argTypes:
    - Handle<ShortRateModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const Handle<ShortRateModel>& model,\n            Size timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const ext::shared_ptr<ShortRateModel>& model,\n            const
      TimeGrid& timeGrid)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:92,1
    - Dst: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:93,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::update
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
    - empty
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void LatticeShortRateModelEngine<Arguments, Results>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - timeSteps
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const ext::shared_ptr<ShortRateModel>& model,\n            Size
      timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - timeSteps
    argTypes:
    - Handle<ShortRateModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const Handle<ShortRateModel>& model,\n            Size timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - ' timeGrid'
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
    linkageType: ''
    returnType: void
    signature: "void LatticeShortRateModelEngine<Arguments, Results>::LatticeShortRateModelEngine(\n
      \           const ext::shared_ptr<ShortRateModel>& model,\n            const
      TimeGrid& timeGrid)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:92,1
    - Dst: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:93,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: QuantLib::LatticeShortRateModelEngine<Arguments, Results>::update
    functionSourceFile: /src/quantlib/ql/pricingengines/latticeshortratemodelengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LatticeShortRateModelEngine<Arguments, Results>::model_::tree
    - empty
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void LatticeShortRateModelEngine<Arguments, Results>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - forward
    - displacement
    argTypes:
    - QuantLib::Real
    - QuantLib::Real
    - QuantLib::Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: checkParameters
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkParameters(QuantLib::Real strike,\n                         QuantLib::Real
      forward,\n                         QuantLib::Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - forward
    - displacement
    argTypes:
    - QuantLib::Real
    - QuantLib::Real
    - QuantLib::Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: checkParameters
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkParameters(QuantLib::Real strike,\n                         QuantLib::Real
      forward,\n                         QuantLib::Real displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:75,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:75,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:85,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:88,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:89,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 98
    functionName: QuantLib::blackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 4
    functionsReached:
    - checkParameters
    - QL_ENSURE
    - std::log
    - Integer
    - QuantLib::phi
    - Real
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormula(Option::Type optionType,\n                      Real
      strike,\n                      Real forward,\n                      Real stdDev,\n
      \                     Real discount,\n                      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:105,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:105,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::blackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 5
    functionsReached:
    - optionType
    - QuantLib::blackFormula
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormula(const ext::shared_ptr<PlainVanillaPayoff>& payoff,\n
      \                     Real forward,\n                      Real stdDev,\n                      Real
      discount,\n                      Real displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:119,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:122,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:125,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:133,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 136
    functionName: QuantLib::blackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - std::log
    - Integer
    - QuantLib::phi
    - std::max
    - QuantLib::Ridder::sign
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaForwardDerivative(Option::Type optionType,\n                                       Real
      strike,\n                                       Real forward,\n                                       Real
      stdDev,\n                                       Real discount,\n                                       Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:144,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:144,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: QuantLib::blackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - optionType
    - QuantLib::blackFormulaForwardDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaForwardDerivative(const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                                       Real forward,\n                                       Real
      stdDev,\n                                       Real discount,\n                                       Real
      displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:169,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 187
    functionName: QuantLib::blackFormulaImpliedStdDevApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - QL_ENSURE
    - Integer
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximation(Option::Type optionType,\n
      \                                               Real strike,\n                                                Real
      forward,\n                                                Real blackPrice,\n
      \                                               Real discount,\n                                                Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximation
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:195,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:195,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::blackFormulaImpliedStdDevApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::blackFormulaImpliedStdDevApproximation
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximation(\n                      const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                      Real forward,\n
      \                     Real blackPrice,\n                      Real discount,\n
      \                     Real displacement)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:212,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:225,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:228,1
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:232,1
    - Dst: QuantLib::blackFormulaStdDevSecondDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:233,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:237,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:238,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:240,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - blackAtmPrice
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 199
    functionDepth: 3
    functionLinenumber: 199
    functionLinenumberEnd: 248
    functionName: QuantLib::blackFormulaImpliedStdDevChambers
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - QuantLib::blackFormula
    - QL_ENSURE
    - QuantLib::blackFormulaStdDevDerivative
    - QuantLib::close
    - std::fabs
    - QuantLib::blackFormulaStdDevSecondDerivative
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevChambers(Option::Type optionType,\n
      \                                               Real strike,\n                                                Real
      forward,\n                                                Real blackPrice,\n
      \                                               Real blackAtmPrice,\n                                                Real
      discount,\n                                                Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevChambers
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:257,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:258,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - payoff
    - forward
    - blackPrice
    - blackAtmPrice
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 260
    functionName: QuantLib::blackFormulaImpliedStdDevChambers
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<PlainVanillaPayoff>::strike
    - QuantLib::blackFormulaImpliedStdDevChambers
    - ext::shared_ptr<PlainVanillaPayoff>::optionType
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevChambers(\n        const ext::shared_ptr<PlainVanillaPayoff>
      &payoff,\n        Real forward,\n        Real blackPrice,\n        Real blackAtmPrice,\n
      \       Real discount,\n        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::Af
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Af(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::Af
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Af(Real x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:273,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:274,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:276,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:283,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:285,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:288,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:289,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:290,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:293,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:293,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:295,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:296,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:301,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:301,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:306,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:306,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:311,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:311,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:314,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:314,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:316,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - type
    - K
    - F
    - marketValue
    - df
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 269
    functionDepth: 2
    functionLinenumber: 269
    functionLinenumberEnd: 318
    functionName: QuantLib::blackFormulaImpliedStdDevApproximationRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Af
    - checkParameters
    - std::exp
    - std::log
    - Real
    - std::sqrt
    - QuantLib::squared
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximationRS(\n        Option::Type
      type, Real K, Real F,\n        Real marketValue, Real df, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximationRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:325,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:326,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - payoff
    - F
    - marketValue
    - df
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 328
    functionName: QuantLib::blackFormulaImpliedStdDevApproximationRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<PlainVanillaPayoff>::strike
    - QuantLib::blackFormulaImpliedStdDevApproximationRS
    - ext::shared_ptr<PlainVanillaPayoff>::optionType
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximationRS(\n        const ext::shared_ptr<PlainVanillaPayoff>
      &payoff,\n        Real F, Real marketValue,\n        Real df, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:337,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:338,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:339,1
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:342,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:346,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - optionType
    - strike
    - forward
    - undiscountedBlackPrice
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 347
    functionName: QuantLib::BlackImpliedStdDevHelper::BlackImpliedStdDevHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - Integer
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackImpliedStdDevHelper(Option::Type optionType,\n                                 Real
      strike,\n                                 Real forward,\n                                 Real
      undiscountedBlackPrice,\n                                 Real displacement
      = 0.0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:351,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:355,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:355,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:361,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:362,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:364,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stdDev
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 365
    functionName: operator()(Real stdDev) const
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - N_
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real stdDev) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:368,1
    - Dst: QuantLib::BlackImpliedStdDevHelper::derivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - stdDev
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionName: QuantLib::BlackImpliedStdDevHelper::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackImpliedStdDevHelper::derivative
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real stdDev) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:392,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:394,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:397,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:401,1
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:402,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:425,1
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximation
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:426,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:429,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:434,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:436,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 9
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - accuracy
    - maxIterations
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 440
    functionName: QuantLib::blackFormulaImpliedStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - NewtonSafe::setMaxEvaluations
    - QL_ENSURE
    - QuantLib::Null
    - QuantLib::Swaption::settlementType
    - Integer
    - QuantLib::blackFormulaImpliedStdDevApproximation
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDev(Option::Type optionType,\n                                   Real
      strike,\n                                   Real forward,\n                                   Real
      blackPrice,\n                                   Real discount,\n                                   Real
      displacement,\n                                   Real guess,\n                                   Real
      accuracy,\n                                   Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - accuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 453
    functionName: QuantLib::blackFormulaImpliedStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - optionType
    - QuantLib::blackFormulaImpliedStdDev
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDev(\n                        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                        Real forward,\n                        Real
      blackPrice,\n                        Real discount,\n                        Real
      displacement,\n                        Real guess,\n                        Real
      accuracy,\n                        Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: QuantLib::Np
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real Np(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: QuantLib::Nm
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real Nm(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 467
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real phi(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Nm
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    - Dst: QuantLib::Np
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: QuantLib::F
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Nm
    - QuantLib::Np
    linkageType: ''
    returnType: Real
    signature: Real F(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::F
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:472,1
    - Dst: MaddockInverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:477,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 480
    functionName: QuantLib::G
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::F
    - std::sqrt
    - MaddockInverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: Real G(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: QuantLib::Np
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real Np(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: QuantLib::Nm
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - CumulativeNormalDistribution
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real Nm(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 467
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real phi(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Nm
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    - Dst: QuantLib::Np
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: QuantLib::F
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Nm
    - QuantLib::Np
    linkageType: ''
    returnType: Real
    signature: Real F(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::F
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:472,1
    - Dst: MaddockInverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:477,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 480
    functionName: QuantLib::G
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::F
    - std::sqrt
    - MaddockInverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: Real G(Real v, Real x, Real cs, Real w)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:495,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:498,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:504,1
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximationRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:505,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:510,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:514,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:516,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:519,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:525,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:534,1
    - Dst: QuantLib::G
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:535,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:536,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:539,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 10
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - w
    - accuracy
    - maxIterations
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 483
    functionDepth: 3
    functionLinenumber: 483
    functionLinenumberEnd: 543
    functionName: QuantLib::blackFormulaImpliedStdDevLiRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Null
    - std::log
    - QuantLib::phi
    - Real
    - QuantLib::blackFormulaImpliedStdDevApproximationRS
    - QuantLib::G
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevLiRS(\n        Option::Type optionType,\n
      \       Real strike,\n        Real forward,\n        Real blackPrice,\n        Real
      discount,\n        Real displacement,\n        Real guess,\n        Real w,\n
      \       Real accuracy,\n        Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevLiRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:556,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:557,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - omega
    - accuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 560
    functionName: QuantLib::blackFormulaImpliedStdDevLiRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::blackFormulaImpliedStdDevLiRS
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevLiRS(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Real forward,\n        Real blackPrice,\n        Real discount,\n
      \       Real displacement,\n        Real guess,\n        Real omega,\n        Real
      accuracy,\n        Natural maxIterations)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:568,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:570,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:579,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:581,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 563
    functionDepth: 2
    functionLinenumber: 563
    functionLinenumberEnd: 582
    functionName: QuantLib::blackFormulaCashItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - Integer
    - QuantLib::phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaCashItmProbability(Option::Type optionType,\n                                        Real
      strike,\n                                        Real forward,\n                                        Real
      stdDev,\n                                        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaCashItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:589,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:589,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 584
    functionDepth: 1
    functionLinenumber: 584
    functionLinenumberEnd: 591
    functionName: QuantLib::blackFormulaCashItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::blackFormulaCashItmProbability
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaCashItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:599,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:601,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:610,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 593
    functionDepth: 2
    functionLinenumber: 593
    functionLinenumberEnd: 613
    functionName: QuantLib::blackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - Integer
    - QuantLib::phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaAssetItmProbability(\n                        Option::Type
      optionType,\n                        Real strike,\n                        Real
      forward,\n                        Real stdDev,\n                        Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:620,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:620,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 622
    functionName: QuantLib::blackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - optionType
    - QuantLib::blackFormulaAssetItmProbability
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaAssetItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:631,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - forward
    - stdDev
    - expiry
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 624
    functionDepth: 1
    functionLinenumber: 624
    functionLinenumberEnd: 636
    functionName: QuantLib::blackFormulaVolDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::blackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaVolDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      expiry,\n                                      Real discount,\n                                      Real
      displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:644,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:645,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:647,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:656,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:658,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 659
    functionName: QuantLib::blackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - CumulativeNormalDistribution
    - checkParameters
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      discount,\n                                      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:667,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 669
    functionName: QuantLib::blackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::blackFormulaStdDevDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount,\n
      \                       Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:677,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:678,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:680,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:689,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:690,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 671
    functionDepth: 2
    functionLinenumber: 671
    functionLinenumberEnd: 693
    functionName: QuantLib::blackFormulaStdDevSecondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - std::log
    - NormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevSecondDerivative(Rate strike,\n                                            Rate
      forward,\n                                            Real stdDev,\n                                            Real
      discount,\n                                            Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevSecondDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:701,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 695
    functionDepth: 1
    functionLinenumber: 695
    functionLinenumberEnd: 703
    functionName: QuantLib::blackFormulaStdDevSecondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - strike
    - QuantLib::blackFormulaStdDevSecondDerivative
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevSecondDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount,\n
      \                       Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:711,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:713,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:715,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:717,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:719,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:719,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 705
    functionDepth: 1
    functionLinenumber: 705
    functionLinenumberEnd: 727
    functionName: QuantLib::bachelierBlackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - CumulativeNormalDistribution::derivative
    - Integer
    - QuantLib::phi
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormula(Option::Type optionType,\n                               Real
      strike,\n                               Real forward,\n                               Real
      stdDev,\n                               Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:734,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:734,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 729
    functionDepth: 1
    functionLinenumber: 729
    functionLinenumberEnd: 736
    functionName: QuantLib::bachelierBlackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - optionType
    - QuantLib::bachelierBlackFormula
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormula(\n                        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                        Real forward,\n                        Real
      stdDev,\n                        Real discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:741,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:743,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:745,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:747,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:747,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:750,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 738
    functionDepth: 1
    functionLinenumber: 738
    functionLinenumberEnd: 751
    functionName: QuantLib::bachelierBlackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - QuantLib::phi
    - std::max
    - QuantLib::Ridder::sign
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaForwardDerivative(\n        Option::Type
      optionType, Real strike, Real forward, Real stdDev, Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:759,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:759,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 753
    functionDepth: 1
    functionLinenumber: 753
    functionLinenumberEnd: 761
    functionName: QuantLib::bachelierBlackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - optionType
    - QuantLib::bachelierBlackFormulaForwardDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaForwardDerivative(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Real forward,\n        Real stdDev,\n        Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:785,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 763
    functionDepth: 1
    functionLinenumber: 763
    functionLinenumberEnd: 796
    functionName: QuantLib::h
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real h(Real eta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:805,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:807,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:820,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:820,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:822,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:822,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:825,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:825,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: boost::math::atanh
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: QuantLib::h
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:830,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:832,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - tte
    - bachelierPrice
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 835
    functionName: QuantLib::bachelierBlackFormulaImpliedVolChoi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - boost::math::atanh
    - QuantLib::close_enough
    - Real
    - std::max
    - QuantLib::h
    - std::fabs
    - std::sqrt
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaImpliedVolChoi(Option::Type optionType,\n
      \                                            Real strike,\n                                             Real
      forward,\n                                             Real tte,\n                                             Real
      bachelierPrice,\n                                             Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 843
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    linkageType: ''
    returnType: Real
    signature: Real phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 845
    functionDepth: 2
    functionLinenumber: 845
    functionLinenumberEnd: 847
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 16
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real Phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: QuantLib::PhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::phi
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: Real PhiTilde(const Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:854,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: QuantLib::PhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - PhiTildeStar
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 880
    functionName: QuantLib::inversePhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PhiTilde
    - std::log
    - QuantLib::phi
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inversePhiTilde(const Real PhiTildeStar)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 843
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    linkageType: ''
    returnType: Real
    signature: Real phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 845
    functionDepth: 2
    functionLinenumber: 845
    functionLinenumberEnd: 847
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 17
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real Phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: QuantLib::PhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::phi
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: Real PhiTilde(const Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:854,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: QuantLib::PhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - PhiTildeStar
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 880
    functionName: QuantLib::inversePhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::PhiTilde
    - std::log
    - QuantLib::phi
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inversePhiTilde(const Real PhiTildeStar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:899,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:900,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:900,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:905,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:907,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:910,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:916,1
    - Dst: QuantLib::inversePhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:917,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:918,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:918,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - tte
    - bachelierPrice
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 884
    functionDepth: 2
    functionLinenumber: 884
    functionLinenumberEnd: 921
    functionName: QuantLib::bachelierBlackFormulaImpliedVol
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::phi
    - QuantLib::close_enough
    - std::max
    - QuantLib::inversePhiTilde
    - std::sqrt
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaImpliedVol(Option::Type optionType,\n                                         Real
      strike,\n                                         Real forward,\n                                         Real
      tte,\n                                         Real bachelierPrice,\n                                         Real
      discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:928,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:930,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 939
    functionName: QuantLib::bachelierBlackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - CumulativeNormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaStdDevDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:946,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 941
    functionDepth: 1
    functionLinenumber: 941
    functionLinenumberEnd: 948
    functionName: QuantLib::bachelierBlackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::bachelierBlackFormulaStdDevDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaStdDevDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:955,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:957,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:959,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 950
    functionDepth: 1
    functionLinenumber: 950
    functionLinenumberEnd: 963
    functionName: QuantLib::bachelierBlackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - Integer
    - QuantLib::phi
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaAssetItmProbability(\n                        Option::Type
      optionType,\n                        Real strike,\n                        Real
      forward,\n                        Real stdDev)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:969,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:969,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:970,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' payoff'
    - forward
    - stdDev
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 965
    functionDepth: 1
    functionLinenumber: 965
    functionLinenumberEnd: 971
    functionName: QuantLib::bachelierBlackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::bachelierBlackFormulaAssetItmProbability
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaAssetItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:75,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:75,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:85,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:88,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:89,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 98
    functionName: QuantLib::blackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 6
    functionsReached:
    - checkParameters
    - QL_ENSURE
    - std::log
    - Integer
    - QuantLib::phi
    - Real
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormula(Option::Type optionType,\n                      Real
      strike,\n                      Real forward,\n                      Real stdDev,\n
      \                     Real discount,\n                      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:105,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:105,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 107
    functionName: QuantLib::blackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 7
    functionsReached:
    - optionType
    - QuantLib::blackFormula
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormula(const ext::shared_ptr<PlainVanillaPayoff>& payoff,\n
      \                     Real forward,\n                      Real stdDev,\n                      Real
      discount,\n                      Real displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:119,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:122,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:125,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:133,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 136
    functionName: QuantLib::blackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - std::log
    - Integer
    - QuantLib::phi
    - std::max
    - QuantLib::Ridder::sign
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaForwardDerivative(Option::Type optionType,\n                                       Real
      strike,\n                                       Real forward,\n                                       Real
      stdDev,\n                                       Real discount,\n                                       Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:144,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:144,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: QuantLib::blackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - optionType
    - QuantLib::blackFormulaForwardDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaForwardDerivative(const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                                       Real forward,\n                                       Real
      stdDev,\n                                       Real discount,\n                                       Real
      displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:166,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:169,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 187
    functionName: QuantLib::blackFormulaImpliedStdDevApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - checkParameters
    - QL_ENSURE
    - Integer
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximation(Option::Type optionType,\n
      \                                               Real strike,\n                                                Real
      forward,\n                                                Real blackPrice,\n
      \                                               Real discount,\n                                                Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximation
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:195,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:195,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: QuantLib::blackFormulaImpliedStdDevApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::blackFormulaImpliedStdDevApproximation
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximation(\n                      const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                      Real forward,\n
      \                     Real blackPrice,\n                      Real discount,\n
      \                     Real displacement)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:212,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:225,1
    - Dst: QuantLib::close
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:228,1
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:232,1
    - Dst: QuantLib::blackFormulaStdDevSecondDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:233,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:237,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:238,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:240,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 7
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - blackAtmPrice
    - discount
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 199
    functionDepth: 3
    functionLinenumber: 199
    functionLinenumberEnd: 248
    functionName: QuantLib::blackFormulaImpliedStdDevChambers
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - QuantLib::blackFormula
    - QL_ENSURE
    - QuantLib::blackFormulaStdDevDerivative
    - QuantLib::close
    - std::fabs
    - QuantLib::blackFormulaStdDevSecondDerivative
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevChambers(Option::Type optionType,\n
      \                                               Real strike,\n                                                Real
      forward,\n                                                Real blackPrice,\n
      \                                               Real blackAtmPrice,\n                                                Real
      discount,\n                                                Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevChambers
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:257,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:258,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - payoff
    - forward
    - blackPrice
    - blackAtmPrice
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 260
    functionName: QuantLib::blackFormulaImpliedStdDevChambers
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - ext::shared_ptr<PlainVanillaPayoff>::strike
    - QuantLib::blackFormulaImpliedStdDevChambers
    - ext::shared_ptr<PlainVanillaPayoff>::optionType
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevChambers(\n        const ext::shared_ptr<PlainVanillaPayoff>
      &payoff,\n        Real forward,\n        Real blackPrice,\n        Real blackAtmPrice,\n
      \       Real discount,\n        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::Af
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Af(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::Af
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::Ridder::sign
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real Af(Real x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:273,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:274,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:276,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:283,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:285,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:288,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:289,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:290,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:293,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:293,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:295,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:296,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:300,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:301,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:301,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:306,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:306,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:310,1
    - Dst: QuantLib::Af
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:311,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:311,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:314,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:314,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:316,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - type
    - K
    - F
    - marketValue
    - df
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 269
    functionDepth: 2
    functionLinenumber: 269
    functionLinenumberEnd: 318
    functionName: QuantLib::blackFormulaImpliedStdDevApproximationRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Af
    - checkParameters
    - std::exp
    - std::log
    - Real
    - std::sqrt
    - QuantLib::squared
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximationRS(\n        Option::Type
      type, Real K, Real F,\n        Real marketValue, Real df, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximationRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:325,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:326,1
    - Dst: ext::shared_ptr<PlainVanillaPayoff>::strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - payoff
    - F
    - marketValue
    - df
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 328
    functionName: QuantLib::blackFormulaImpliedStdDevApproximationRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - ext::shared_ptr<PlainVanillaPayoff>::strike
    - QuantLib::blackFormulaImpliedStdDevApproximationRS
    - ext::shared_ptr<PlainVanillaPayoff>::optionType
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevApproximationRS(\n        const ext::shared_ptr<PlainVanillaPayoff>
      &payoff,\n        Real F, Real marketValue,\n        Real df, Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:337,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:338,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:339,1
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:342,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:346,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - optionType
    - strike
    - forward
    - undiscountedBlackPrice
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 347
    functionName: QuantLib::BlackImpliedStdDevHelper::BlackImpliedStdDevHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - checkParameters
    - Integer
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackImpliedStdDevHelper(Option::Type optionType,\n                                 Real
      strike,\n                                 Real forward,\n                                 Real
      undiscountedBlackPrice,\n                                 Real displacement
      = 0.0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:351,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:355,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:355,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:361,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:362,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:364,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stdDev
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 365
    functionName: operator()(Real stdDev) const
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - N_
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real stdDev) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:368,1
    - Dst: QuantLib::BlackImpliedStdDevHelper::derivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - stdDev
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionName: QuantLib::BlackImpliedStdDevHelper::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackImpliedStdDevHelper::derivative
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real stdDev) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:392,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:394,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:397,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:400,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:401,1
    - Dst: QuantLib::Swaption::settlementType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:402,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:425,1
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximation
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:426,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:429,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:434,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:436,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 9
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - accuracy
    - maxIterations
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 440
    functionName: QuantLib::blackFormulaImpliedStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - NewtonSafe::setMaxEvaluations
    - QL_ENSURE
    - QuantLib::Null
    - QuantLib::Swaption::settlementType
    - Integer
    - QuantLib::blackFormulaImpliedStdDevApproximation
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDev(Option::Type optionType,\n                                   Real
      strike,\n                                   Real forward,\n                                   Real
      blackPrice,\n                                   Real discount,\n                                   Real
      displacement,\n                                   Real guess,\n                                   Real
      accuracy,\n                                   Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - accuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 453
    functionName: QuantLib::blackFormulaImpliedStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - optionType
    - QuantLib::blackFormulaImpliedStdDev
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDev(\n                        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                        Real forward,\n                        Real
      blackPrice,\n                        Real discount,\n                        Real
      displacement,\n                        Real guess,\n                        Real
      accuracy,\n                        Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: QuantLib::Np
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real Np(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: QuantLib::Nm
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - CumulativeNormalDistribution
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real Nm(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 467
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 16
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real phi(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Nm
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    - Dst: QuantLib::Np
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: QuantLib::F
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Nm
    - QuantLib::Np
    linkageType: ''
    returnType: Real
    signature: Real F(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::F
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:472,1
    - Dst: MaddockInverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:477,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 480
    functionName: QuantLib::G
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - QuantLib::F
    - std::sqrt
    - MaddockInverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: Real G(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: QuantLib::Np
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - CumulativeNormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real Np(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: QuantLib::Nm
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - CumulativeNormalDistribution
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real Nm(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - v
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 467
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 16
    functionsReached:
    - std::fabs
    linkageType: ''
    returnType: Real
    signature: Real phi(Real x, Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Nm
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    - Dst: QuantLib::Np
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: QuantLib::F
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Nm
    - QuantLib::Np
    linkageType: ''
    returnType: Real
    signature: Real F(Real v, Real x, Real cs, Real w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::F
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:472,1
    - Dst: MaddockInverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:477,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - v
    - x
    - cs
    - w
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 480
    functionName: QuantLib::G
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - QuantLib::F
    - std::sqrt
    - MaddockInverseCumulativeNormal
    linkageType: ''
    returnType: Real
    signature: Real G(Real v, Real x, Real cs, Real w)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:495,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:498,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:504,1
    - Dst: QuantLib::blackFormulaImpliedStdDevApproximationRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:505,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:510,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:514,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:516,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:519,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:525,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:534,1
    - Dst: QuantLib::G
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:535,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:536,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:539,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 10
    argNames:
    - optionType
    - strike
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - w
    - accuracy
    - maxIterations
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 483
    functionDepth: 3
    functionLinenumber: 483
    functionLinenumberEnd: 543
    functionName: QuantLib::blackFormulaImpliedStdDevLiRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Null
    - std::log
    - QuantLib::phi
    - Real
    - QuantLib::blackFormulaImpliedStdDevApproximationRS
    - QuantLib::G
    - std::fabs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevLiRS(\n        Option::Type optionType,\n
      \       Real strike,\n        Real forward,\n        Real blackPrice,\n        Real
      discount,\n        Real displacement,\n        Real guess,\n        Real w,\n
      \       Real accuracy,\n        Natural maxIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaImpliedStdDevLiRS
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:556,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:557,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' payoff'
    - forward
    - blackPrice
    - discount
    - displacement
    - guess
    - omega
    - accuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 560
    functionName: QuantLib::blackFormulaImpliedStdDevLiRS
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::blackFormulaImpliedStdDevLiRS
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaImpliedStdDevLiRS(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Real forward,\n        Real blackPrice,\n        Real discount,\n
      \       Real displacement,\n        Real guess,\n        Real omega,\n        Real
      accuracy,\n        Natural maxIterations)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:568,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:570,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:579,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:581,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 563
    functionDepth: 2
    functionLinenumber: 563
    functionLinenumberEnd: 582
    functionName: QuantLib::blackFormulaCashItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - Integer
    - QuantLib::phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaCashItmProbability(Option::Type optionType,\n                                        Real
      strike,\n                                        Real forward,\n                                        Real
      stdDev,\n                                        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaCashItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:589,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:589,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 584
    functionDepth: 1
    functionLinenumber: 584
    functionLinenumberEnd: 591
    functionName: QuantLib::blackFormulaCashItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::blackFormulaCashItmProbability
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaCashItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real displacement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:599,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:601,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:610,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 593
    functionDepth: 2
    functionLinenumber: 593
    functionLinenumberEnd: 613
    functionName: QuantLib::blackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - checkParameters
    - Integer
    - QuantLib::phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaAssetItmProbability(\n                        Option::Type
      optionType,\n                        Real strike,\n                        Real
      forward,\n                        Real stdDev,\n                        Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:620,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:620,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 622
    functionName: QuantLib::blackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - optionType
    - QuantLib::blackFormulaAssetItmProbability
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaAssetItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:631,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - forward
    - stdDev
    - expiry
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 624
    functionDepth: 3
    functionLinenumber: 624
    functionLinenumberEnd: 636
    functionName: QuantLib::blackFormulaVolDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::blackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaVolDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      expiry,\n                                      Real discount,\n                                      Real
      displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:644,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:645,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:647,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:656,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:658,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 659
    functionName: QuantLib::blackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 5
    functionsReached:
    - CumulativeNormalDistribution
    - checkParameters
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      discount,\n                                      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:667,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 669
    functionName: QuantLib::blackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::blackFormulaStdDevDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount,\n
      \                       Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: checkParameters
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:677,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:678,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:680,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:689,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:690,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 671
    functionDepth: 2
    functionLinenumber: 671
    functionLinenumberEnd: 693
    functionName: QuantLib::blackFormulaStdDevSecondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - checkParameters
    - std::log
    - NormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevSecondDerivative(Rate strike,\n                                            Rate
      forward,\n                                            Real stdDev,\n                                            Real
      discount,\n                                            Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormulaStdDevSecondDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:701,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    - displacement
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 695
    functionDepth: 1
    functionLinenumber: 695
    functionLinenumberEnd: 703
    functionName: QuantLib::blackFormulaStdDevSecondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 4
    functionsReached:
    - strike
    - QuantLib::blackFormulaStdDevSecondDerivative
    linkageType: ''
    returnType: Real
    signature: "Real blackFormulaStdDevSecondDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount,\n
      \                       Real displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:711,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:713,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:715,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:717,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:719,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:719,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 705
    functionDepth: 1
    functionLinenumber: 705
    functionLinenumberEnd: 727
    functionName: QuantLib::bachelierBlackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QL_ENSURE
    - CumulativeNormalDistribution::derivative
    - Integer
    - QuantLib::phi
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormula(Option::Type optionType,\n                               Real
      strike,\n                               Real forward,\n                               Real
      stdDev,\n                               Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:734,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:734,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 729
    functionDepth: 1
    functionLinenumber: 729
    functionLinenumberEnd: 736
    functionName: QuantLib::bachelierBlackFormula
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - optionType
    - QuantLib::bachelierBlackFormula
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormula(\n                        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n                        Real forward,\n                        Real
      stdDev,\n                        Real discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:741,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:743,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:745,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:747,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:747,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:750,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 738
    functionDepth: 1
    functionLinenumber: 738
    functionLinenumberEnd: 751
    functionName: QuantLib::bachelierBlackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - Integer
    - QuantLib::phi
    - std::max
    - QuantLib::Ridder::sign
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaForwardDerivative(\n        Option::Type
      optionType, Real strike, Real forward, Real stdDev, Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:759,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:759,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 753
    functionDepth: 1
    functionLinenumber: 753
    functionLinenumberEnd: 761
    functionName: QuantLib::bachelierBlackFormulaForwardDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - optionType
    - QuantLib::bachelierBlackFormulaForwardDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaForwardDerivative(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Real forward,\n        Real stdDev,\n        Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:785,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 763
    functionDepth: 1
    functionLinenumber: 763
    functionLinenumberEnd: 796
    functionName: QuantLib::h
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real h(Real eta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:805,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:807,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:820,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:820,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:822,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:822,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:825,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:825,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: boost::math::atanh
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:828,1
    - Dst: QuantLib::h
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:830,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:832,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - tte
    - bachelierPrice
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 835
    functionName: QuantLib::bachelierBlackFormulaImpliedVolChoi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - boost::math::atanh
    - QuantLib::close_enough
    - Real
    - std::max
    - QuantLib::h
    - std::fabs
    - std::sqrt
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaImpliedVolChoi(Option::Type optionType,\n
      \                                            Real strike,\n                                             Real
      forward,\n                                             Real tte,\n                                             Real
      bachelierPrice,\n                                             Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 843
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 21
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    linkageType: ''
    returnType: Real
    signature: Real phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 845
    functionDepth: 2
    functionLinenumber: 845
    functionLinenumberEnd: 847
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 18
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real Phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: QuantLib::PhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::phi
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: Real PhiTilde(const Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:854,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: QuantLib::PhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - PhiTildeStar
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 880
    functionName: QuantLib::inversePhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::PhiTilde
    - std::log
    - QuantLib::phi
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inversePhiTilde(const Real PhiTildeStar)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 843
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 23
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    linkageType: ''
    returnType: Real
    signature: Real phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 845
    functionDepth: 2
    functionLinenumber: 845
    functionLinenumberEnd: 847
    functionName: QuantLib::Phi
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 19
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Real
    signature: Real Phi(const Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: QuantLib::PhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::phi
    - QuantLib::Phi
    linkageType: ''
    returnType: Real
    signature: Real PhiTilde(const Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:854,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:867,1
    - Dst: QuantLib::PhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - PhiTildeStar
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 880
    functionName: QuantLib::inversePhiTilde
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::PhiTilde
    - std::log
    - QuantLib::phi
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inversePhiTilde(const Real PhiTildeStar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:899,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:900,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:900,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:905,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:907,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:910,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:916,1
    - Dst: QuantLib::inversePhiTilde
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:917,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:918,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:918,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - optionType
    - strike
    - forward
    - tte
    - bachelierPrice
    - discount
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 884
    functionDepth: 2
    functionLinenumber: 884
    functionLinenumberEnd: 921
    functionName: QuantLib::bachelierBlackFormulaImpliedVol
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::phi
    - QuantLib::close_enough
    - std::max
    - QuantLib::inversePhiTilde
    - std::sqrt
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaImpliedVol(Option::Type optionType,\n                                         Real
      strike,\n                                         Real forward,\n                                         Real
      tte,\n                                         Real bachelierPrice,\n                                         Real
      discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:928,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:930,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - discount
    argTypes:
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 939
    functionName: QuantLib::bachelierBlackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - CumulativeNormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaStdDevDerivative(Rate strike,\n                                      Rate
      forward,\n                                      Real stdDev,\n                                      Real
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:946,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' payoff'
    - forward
    - stdDev
    - discount
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 941
    functionDepth: 1
    functionLinenumber: 941
    functionLinenumberEnd: 948
    functionName: QuantLib::bachelierBlackFormulaStdDevDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::bachelierBlackFormulaStdDevDerivative
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaStdDevDerivative(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev,\n                        Real discount)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:955,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:957,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:959,1
    - Dst: QuantLib::phi
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - optionType
    - strike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 950
    functionDepth: 1
    functionLinenumber: 950
    functionLinenumberEnd: 963
    functionName: QuantLib::bachelierBlackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - Integer
    - QuantLib::phi
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaAssetItmProbability(\n                        Option::Type
      optionType,\n                        Real strike,\n                        Real
      forward,\n                        Real stdDev)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:969,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:969,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/blackformula.cpp:970,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' payoff'
    - forward
    - stdDev
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 965
    functionDepth: 1
    functionLinenumber: 965
    functionLinenumberEnd: 971
    functionName: QuantLib::bachelierBlackFormulaAssetItmProbability
    functionSourceFile: /src/quantlib/ql/pricingengines/blackformula.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::bachelierBlackFormulaAssetItmProbability
    - optionType
    - strike
    linkageType: ''
    returnType: Real
    signature: "Real bachelierBlackFormulaAssetItmProbability(\n                        const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                        Real forward,\n
      \                       Real stdDev)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::YoYInflationCapFloorEngine::index
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::YoYInflationCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYOptionletVolatilitySurface>
    signature: Handle<YoYOptionletVolatilitySurface> volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::YoYInflationCapFloorEngine::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::YoYInflationCapFloorEngine::index
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::YoYInflationCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYOptionletVolatilitySurface>
    signature: Handle<YoYOptionletVolatilitySurface> volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::YoYInflationCapFloorEngine::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - index
    - volatility
    - nominalTermStructure
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::YoYInflationCapFloorEngine::YoYInflationCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloorEngine::YoYInflationCapFloorEngine(\n        ext::shared_ptr<YoYInflationIndex>
      index,\n        Handle<YoYOptionletVolatilitySurface> volatility,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:43,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:46,1
    - Dst: update
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::YoYInflationCapFloorEngine::setVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - empty
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloorEngine::setVolatility(\n            const
      Handle<YoYOptionletVolatilitySurface> &v)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:56,1
    - Dst: QuantLib::YoYInflationCapFloorEngine::index
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:62,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:71,1
    - Dst: auto::yoyRate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:81,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:81,1
    - Dst: baseDate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:87,1
    - Dst: timeFromBase
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:94,1
    - Dst: totalVariance
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:95,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:95,1
    - Dst: optionletImpl
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:106,1
    - Dst: totalVariance
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:107,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:107,1
    - Dst: optionletImpl
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:109,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYInflationCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - totalVariance
    - referenceDate
    - startDates::size
    - optionletImpl
    - Period
    - discount
    - std::sqrt
    - auto::yoyRate
    - QuantLib::YoYInflationCapFloorEngine::index
    - timeFromBase
    - baseDate
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::YoYInflationBlackCapFloorEngine::YoYInflationBlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationBlackCapFloorEngine::YoYInflationBlackCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: QuantLib::YoYInflationBlackCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationBlackCapFloorEngine::optionletImpl(Option::Type type,
      Rate strike,\n                                                        Rate forward,
      Real stdDev,\n                                                        Real d)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: QuantLib::YoYInflationUnitDisplacedBlackCapFloorEngine::YoYInflationUnitDisplacedBlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationUnitDisplacedBlackCapFloorEngine\n    ::YoYInflationUnitDisplacedBlackCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 168
    functionName: QuantLib::YoYInflationUnitDisplacedBlackCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationUnitDisplacedBlackCapFloorEngine::optionletImpl(\n
      \                                                       Option::Type type, Rate
      strike,\n                                                        Rate forward,
      Real stdDev,\n                                                        Real d)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::YoYInflationBachelierCapFloorEngine::YoYInflationBachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationBachelierCapFloorEngine::YoYInflationBachelierCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 184
    functionName: QuantLib::YoYInflationBachelierCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationBachelierCapFloorEngine::optionletImpl(Option::Type
      type, Rate strike,\n                                                        Rate
      forward, Real stdDev,\n                                                        Real
      d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - index
    - volatility
    - nominalTermStructure
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::YoYInflationCapFloorEngine::YoYInflationCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloorEngine::YoYInflationCapFloorEngine(\n        ext::shared_ptr<YoYInflationIndex>
      index,\n        Handle<YoYOptionletVolatilitySurface> volatility,\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:43,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:46,1
    - Dst: update
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::YoYInflationCapFloorEngine::setVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - empty
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCapFloorEngine::setVolatility(\n            const
      Handle<YoYOptionletVolatilitySurface> &v)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:56,1
    - Dst: QuantLib::YoYInflationCapFloorEngine::index
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:62,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:71,1
    - Dst: auto::yoyRate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:81,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:81,1
    - Dst: baseDate
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:87,1
    - Dst: timeFromBase
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:88,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:94,1
    - Dst: totalVariance
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:95,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:95,1
    - Dst: optionletImpl
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:106,1
    - Dst: totalVariance
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:107,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:107,1
    - Dst: optionletImpl
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:109,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYInflationCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - totalVariance
    - referenceDate
    - startDates::size
    - optionletImpl
    - Period
    - discount
    - std::sqrt
    - auto::yoyRate
    - QuantLib::YoYInflationCapFloorEngine::index
    - timeFromBase
    - baseDate
    linkageType: ''
    returnType: void
    signature: void YoYInflationCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::YoYInflationBlackCapFloorEngine::YoYInflationBlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationBlackCapFloorEngine::YoYInflationBlackCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: QuantLib::YoYInflationBlackCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationBlackCapFloorEngine::optionletImpl(Option::Type type,
      Rate strike,\n                                                        Rate forward,
      Real stdDev,\n                                                        Real d)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: QuantLib::YoYInflationUnitDisplacedBlackCapFloorEngine::YoYInflationUnitDisplacedBlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationUnitDisplacedBlackCapFloorEngine\n    ::YoYInflationUnitDisplacedBlackCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 168
    functionName: QuantLib::YoYInflationUnitDisplacedBlackCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationUnitDisplacedBlackCapFloorEngine::optionletImpl(\n
      \                                                       Option::Type type, Rate
      strike,\n                                                        Rate forward,
      Real stdDev,\n                                                        Real d)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' index'
    - ' volatility'
    - ' nominalTermStructure'
    argTypes:
    - ext::shared_ptr<YoYInflationIndex>
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: QuantLib::YoYInflationBachelierCapFloorEngine::YoYInflationBachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationBachelierCapFloorEngine::YoYInflationBachelierCapFloorEngine(\n
      \                   const ext::shared_ptr<YoYInflationIndex>& index,\n                    const
      Handle<YoYOptionletVolatilitySurface>& volatility,\n                    const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - forward
    - stdDev
    - d
    argTypes:
    - Option::Type
    - Rate
    - Rate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 184
    functionName: QuantLib::YoYInflationBachelierCapFloorEngine::optionletImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/inflation/inflationcapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationBachelierCapFloorEngine::optionletImpl(Option::Type
      type, Rate strike,\n                                                        Rate
      forward, Real stdDev,\n                                                        Real
      d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::AnalyticContinuousPartialFloatingLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousPartialFloatingLookbackEngine::\n        AnalyticContinuousPartialFloatingLookbackEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:40,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:42,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:44,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:47,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 52
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
    - QL_FAIL
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousPartialFloatingLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::underlying()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFloatingLookbackEngine::residualTime()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousPartialFloatingLookbackEngine::volatility()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:71,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:77,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:81,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFloatingLookbackEngine::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:87,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime()
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:108,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:108,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:110,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:112,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:122,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:122,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:125,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:127,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:128,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:142,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:143,1
    - Dst: cnbn3
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:144,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:145,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:149,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:152,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:153,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:154,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:154,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:158,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:158,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:161,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:161,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:162,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:162,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:165,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:165,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:166,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:171,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:171,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:174,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 103
    functionDepth: 3
    functionLinenumber: 103
    functionLinenumberEnd: 176
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
    - f_
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    - cnbn3
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    - cnbn2
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
    - BivariateCumulativeNormalDistributionWe04DP
    - std::pow
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
    - std::exp
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - std::log
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    - cnbn1
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::AnalyticContinuousPartialFloatingLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousPartialFloatingLookbackEngine::\n        AnalyticContinuousPartialFloatingLookbackEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:40,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:40,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:42,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:44,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:47,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 34
    functionDepth: 4
    functionLinenumber: 34
    functionLinenumberEnd: 52
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
    - QL_FAIL
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousPartialFloatingLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::underlying()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 7
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFloatingLookbackEngine::residualTime()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousPartialFloatingLookbackEngine::volatility()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:71,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:77,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:81,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFloatingLookbackEngine::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:87,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime()
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:108,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:108,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:110,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:112,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:122,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:122,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:125,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:127,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:128,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:132,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:133,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:134,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:137,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:141,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:142,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:143,1
    - Dst: cnbn3
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:144,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:145,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:149,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:152,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:153,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:154,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:154,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:158,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:158,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:159,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:160,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:161,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:161,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:162,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:162,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:164,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:165,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:165,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:166,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:171,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:171,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:172,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:173,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:174,1
    - Dst: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 103
    functionDepth: 3
    functionLinenumber: 103
    functionLinenumberEnd: 176
    functionName: QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfloatinglookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendDiscount
    - f_
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::dividendYield
    - cnbn3
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::minmax
    - cnbn2
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::underlying
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lookbackPeriodEndTime
    - BivariateCumulativeNormalDistributionWe04DP
    - std::pow
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::stdDeviation
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::lambda
    - std::exp
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::residualTime
    - std::log
    - QuantLib::AnalyticContinuousPartialFloatingLookbackEngine::volatility
    - cnbn1
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFloatingLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::AnalyticContinuousFloatingLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousFloatingLookbackEngine::AnalyticContinuousFloatingLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:39,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:41,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:43,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 51
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::A
    - QL_FAIL
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousFloatingLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousFloatingLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousFloatingLookbackEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:70,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFloatingLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:76,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:80,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFloatingLookbackEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:86,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFloatingLookbackEngine::dividendDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:94,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:95,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:95,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:96,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:98,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:99,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:99,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:100,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:100,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:102,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:103,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:103,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 108
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
    - std::log
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::AnalyticContinuousFloatingLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousFloatingLookbackEngine::AnalyticContinuousFloatingLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:39,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:41,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:43,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:46,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 33
    functionDepth: 4
    functionLinenumber: 33
    functionLinenumberEnd: 51
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::A
    - QL_FAIL
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - x0
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousFloatingLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 6
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousFloatingLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 2
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousFloatingLookbackEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:70,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFloatingLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:76,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:80,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFloatingLookbackEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:86,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFloatingLookbackEngine::dividendDiscount()\n
      \                                const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:94,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:95,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:95,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:96,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:97,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:98,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:99,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:99,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:100,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:100,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:102,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:103,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:103,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:104,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:105,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 108
    functionName: QuantLib::AnalyticContinuousFloatingLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfloatinglookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::stdDeviation
    - std::log
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendYield
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::dividendDiscount
    - QuantLib::AnalyticContinuousFloatingLookbackEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFloatingLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:84,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:86,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:88,1
    - Dst: LookbackFixedPathPricer::LookbackFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - LookbackFixedPathPricer::LookbackFixedPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFixedLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:99,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:101,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:106,1
    - Dst: LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFixedLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:117,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:119,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    - Dst: LookbackFloatingPathPricer::LookbackFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackFloatingPathPricer::LookbackFloatingPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFloatingLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:133,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:135,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:137,1
    - Dst: LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFloatingLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:84,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:86,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:88,1
    - Dst: LookbackFixedPathPricer::LookbackFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - LookbackFixedPathPricer::LookbackFixedPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFixedLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:99,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:101,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:106,1
    - Dst: LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFixedLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:117,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:119,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    - Dst: LookbackFloatingPathPricer::LookbackFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackFloatingPathPricer::LookbackFloatingPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFloatingLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:133,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:135,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:137,1
    - Dst: LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFloatingLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 151
    functionName: QuantLib::LookbackFixedPathPricer::LookbackFixedPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LookbackFixedPathPricer::LookbackFixedPathPricer(\n        Option::Type
      type,\n        Real strike,\n        DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:154,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:154,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:157,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:165,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:168,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 169
    functionName: LookbackFixedPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackFixedPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - lookbackStart
    - type
    - strike
    - discount
    argTypes:
    - Time
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 180
    functionName: QuantLib::LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer(\n
      \       Time lookbackStart,\n        Option::Type type,\n        Real strike,\n
      \       const DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:183,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:183,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:185,1
    - Dst: closestIndex
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:186,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:188,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:196,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: LookbackPartialFixedPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - closestIndex
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - timeGrid
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackPartialFixedPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - discount
    argTypes:
    - Option::Type
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: QuantLib::LookbackFloatingPathPricer::LookbackFloatingPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LookbackFloatingPathPricer::LookbackFloatingPathPricer(\n        Option::Type
      type,\n        const DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:209,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:209,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:211,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:213,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:221,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 225
    functionName: LookbackFloatingPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - back
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackFloatingPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lookbackEnd
    - type
    - discount
    argTypes:
    - Time
    - Option::Type
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer(\n
      \       Time lookbackEnd,\n        Option::Type type,\n        DiscountFactor
      discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:235,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:235,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:237,1
    - Dst: closestIndex
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:238,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:239,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:242,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:250,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:253,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 254
    functionName: LookbackPartialFloatingPathPricer::operator()(const Path& path)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - closestIndex
    - QL_FAIL
    - std::max_element
    - payoff_
    - timeGrid
    - back
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackPartialFloatingPathPricer::operator()(const Path& path)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:84,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:86,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:88,1
    - Dst: LookbackFixedPathPricer::LookbackFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - LookbackFixedPathPricer::LookbackFixedPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFixedLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:99,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:101,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:106,1
    - Dst: LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFixedLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:117,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:119,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    - Dst: LookbackFloatingPathPricer::LookbackFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackFloatingPathPricer::LookbackFloatingPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFloatingLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:133,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:135,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:137,1
    - Dst: LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFloatingLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:84,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:86,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:88,1
    - Dst: LookbackFixedPathPricer::LookbackFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - LookbackFixedPathPricer::LookbackFixedPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFixedLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:99,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:101,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:106,1
    - Dst: LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFixedLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFixedLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:117,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:119,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    - Dst: LookbackFloatingPathPricer::LookbackFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - LookbackFloatingPathPricer::LookbackFloatingPathPricer
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousFloatingLookbackOption::arguments& args,\n               const GeneralizedBlackScholesProcess&
      process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FloatingTypePayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:133,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:135,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:137,1
    - Dst: LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - discount
    argTypes:
    - ContinuousPartialFloatingLookbackOption::arguments
    - GeneralizedBlackScholesProcess
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::mc_lookback_path_pricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::optionType
    - time
    - ext::dynamic_pointer_cast<FloatingTypePayoff>
    - LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: "ext::shared_ptr<PathPricer<Path> > mc_lookback_path_pricer(\n               const
      ContinuousPartialFloatingLookbackOption::arguments& args,\n               const
      GeneralizedBlackScholesProcess& process,\n               DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 151
    functionName: QuantLib::LookbackFixedPathPricer::LookbackFixedPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LookbackFixedPathPricer::LookbackFixedPathPricer(\n        Option::Type
      type,\n        Real strike,\n        DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:154,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:154,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:157,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:159,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:162,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:165,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:168,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 169
    functionName: LookbackFixedPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackFixedPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - lookbackStart
    - type
    - strike
    - discount
    argTypes:
    - Time
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 180
    functionName: QuantLib::LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LookbackPartialFixedPathPricer::LookbackPartialFixedPathPricer(\n
      \       Time lookbackStart,\n        Option::Type type,\n        Real strike,\n
      \       const DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:183,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:183,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:185,1
    - Dst: closestIndex
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:186,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:188,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:190,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:196,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: LookbackPartialFixedPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - closestIndex
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - timeGrid
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackPartialFixedPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type
    - discount
    argTypes:
    - Option::Type
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: QuantLib::LookbackFloatingPathPricer::LookbackFloatingPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LookbackFloatingPathPricer::LookbackFloatingPathPricer(\n        Option::Type
      type,\n        const DiscountFactor discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:209,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:209,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:211,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:213,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:215,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:218,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:221,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 225
    functionName: LookbackFloatingPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - QL_FAIL
    - end
    - std::max_element
    - payoff_
    - back
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackFloatingPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lookbackEnd
    - type
    - discount
    argTypes:
    - Time
    - Option::Type
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LookbackPartialFloatingPathPricer::LookbackPartialFloatingPathPricer(\n
      \       Time lookbackEnd,\n        Option::Type type,\n        DiscountFactor
      discount)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:235,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:235,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:237,1
    - Dst: closestIndex
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:238,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:239,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:242,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:244,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:247,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:250,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp:253,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 254
    functionName: LookbackPartialFloatingPathPricer::operator()(const Path& path)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.cpp
    functionUses: 0
    functionsReached:
    - empty
    - begin
    - closestIndex
    - QL_FAIL
    - std::max_element
    - payoff_
    - timeGrid
    - back
    - optionType
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LookbackPartialFloatingPathPricer::operator()(const Path& path)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:56,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:57,1
    - Dst: QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:60,1
    - Dst: QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 64
    functionName: QuantLib::MCLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - x0
    - QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:70,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:72,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:72,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:73,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: QuantLib::MCLookbackEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:131,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:131,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:134,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:134,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:140,1
    - Dst: QuantLib::MCLookbackEngine<I, RNG, S>::registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 144
    functionName: QuantLib::MCLookbackEngine<I, RNG, S>::MCLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCLookbackEngine<I, RNG, S>::registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCLookbackEngine<I, RNG, S>::MCLookbackEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:150,1
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:151,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:152,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:153,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:154,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:155,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:155,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 159
    functionName: QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - QuantLib::MCLookbackEngine<I,RNG,S>::arguments_::exercise::lastDate
    - time
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCLookbackEngine<I,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:196,1
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:197,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:197,1
    - Dst: QuantLib::detail::mc_lookback_path_pricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::MCLookbackEngine<I,RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::mc_lookback_path_pricer
    - QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
    - QuantLib::MCLookbackEngine<I,RNG,S>::process_::riskFreeRate
    - TimeGrid::back
    linkageType: ''
    returnType: ext::shared_ptr<typename MCLookbackEngine<I,RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCLookbackEngine<I,RNG,S>::path_pricer_type>
      MCLookbackEngine<I,RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::MakeMCLookbackEngine<I, RNG, S>::MakeMCLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCLookbackEngine<I, RNG, S>::MakeMCLookbackEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:242,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:251,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:281,1
    - Dst: MCLookbackEngine<I,RNG,S>::MCLookbackEngine<I,RNG,S>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 291
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCLookbackEngine<I,RNG,S>::MCLookbackEngine<I,RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>::operator
    signature: MakeMCLookbackEngine<I,RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:56,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:57,1
    - Dst: QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:60,1
    - Dst: QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 64
    functionName: QuantLib::MCLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - x0
    - QuantLib::MCLookbackEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:70,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:72,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:72,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:73,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: QuantLib::MCLookbackEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:131,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:131,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:134,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:134,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:140,1
    - Dst: QuantLib::MCLookbackEngine<I, RNG, S>::registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 144
    functionName: QuantLib::MCLookbackEngine<I, RNG, S>::MCLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCLookbackEngine<I, RNG, S>::registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCLookbackEngine<I, RNG, S>::MCLookbackEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:150,1
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:151,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:152,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:153,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:154,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:155,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:155,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 159
    functionName: QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - QuantLib::MCLookbackEngine<I,RNG,S>::arguments_::exercise::lastDate
    - time
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCLookbackEngine<I,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:196,1
    - Dst: QuantLib::MCLookbackEngine<I,RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:197,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:197,1
    - Dst: QuantLib::detail::mc_lookback_path_pricer
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: QuantLib::MCLookbackEngine<I,RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::mc_lookback_path_pricer
    - QuantLib::MCLookbackEngine<I,RNG,S>::timeGrid
    - QuantLib::MCLookbackEngine<I,RNG,S>::process_::riskFreeRate
    - TimeGrid::back
    linkageType: ''
    returnType: ext::shared_ptr<typename MCLookbackEngine<I,RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCLookbackEngine<I,RNG,S>::path_pricer_type>
      MCLookbackEngine<I,RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::MakeMCLookbackEngine<I, RNG, S>::MakeMCLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCLookbackEngine<I, RNG, S>::MakeMCLookbackEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:242,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:251,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:251,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: "&\n    MakeMCLookbackEngine<I,RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>
    signature: "MakeMCLookbackEngine<I,RNG,S> &\n    MakeMCLookbackEngine<I,RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:278,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:281,1
    - Dst: MCLookbackEngine<I,RNG,S>::MCLookbackEngine<I,RNG,S>
      Src: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp:282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 291
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/mclookbackengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCLookbackEngine<I,RNG,S>::MCLookbackEngine<I,RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCLookbackEngine<I,RNG,S>::operator
    signature: MakeMCLookbackEngine<I,RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::AnalyticContinuousFixedLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousFixedLookbackEngine::AnalyticContinuousFixedLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:39,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:41,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:45,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:47,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::C
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::B
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:53,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:53,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:55,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:56,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::C
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:56,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::B
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:58,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 63
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QL_REQUIRE
    - QuantLib::AnalyticContinuousFixedLookbackEngine::A
    - QuantLib::AnalyticContinuousFixedLookbackEngine::C
    - QuantLib::AnalyticContinuousFixedLookbackEngine::B
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousFixedLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:73,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:78,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousFixedLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousFixedLookbackEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:90,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFixedLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:96,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFixedLookbackEngine::riskFreeDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:100,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFixedLookbackEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFixedLookbackEngine::dividendDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:114,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:115,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:115,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:116,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:116,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:119,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:120,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:121,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:121,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:122,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:123,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:126,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:126,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:127,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 4
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:134,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:137,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:138,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:138,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:139,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:139,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:140,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:142,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:142,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:143,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:143,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 4
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::B(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 3
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::C
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::C(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::AnalyticContinuousFixedLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousFixedLookbackEngine::AnalyticContinuousFixedLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:39,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:41,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:45,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:47,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::C
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::B
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:53,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:53,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:55,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:56,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::C
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:56,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::B
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:58,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 33
    functionDepth: 5
    functionLinenumber: 33
    functionLinenumberEnd: 63
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QL_REQUIRE
    - QuantLib::AnalyticContinuousFixedLookbackEngine::A
    - QuantLib::AnalyticContinuousFixedLookbackEngine::C
    - QuantLib::AnalyticContinuousFixedLookbackEngine::B
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousFixedLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:73,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 3
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:78,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 6
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousFixedLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousFixedLookbackEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:90,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFixedLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:96,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFixedLookbackEngine::riskFreeDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:100,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousFixedLookbackEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousFixedLookbackEngine::dividendDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::minmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:114,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:115,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:115,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:116,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:116,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:118,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:119,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:120,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:121,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:121,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:122,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:123,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:125,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:126,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:126,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:127,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 4
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:134,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:134,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:136,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:137,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:138,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:138,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:139,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:139,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:140,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:141,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:142,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:142,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:143,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:143,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 4
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticContinuousFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousFixedLookbackEngine::underlying
    - f_
    - std::pow
    - QuantLib::AnalyticContinuousFixedLookbackEngine::volatility
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::B(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 3
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticContinuousFixedLookbackEngine::C
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuousfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousFixedLookbackEngine::riskFreeDiscount
    - QuantLib::AnalyticContinuousFixedLookbackEngine::minmax
    - QuantLib::AnalyticContinuousFixedLookbackEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousFixedLookbackEngine::C(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::AnalyticContinuousPartialFixedLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousPartialFixedLookbackEngine::AnalyticContinuousPartialFixedLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:39,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:43,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:43,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:50,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousPartialFixedLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:65,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFixedLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    - blackVolatility
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousPartialFixedLookbackEngine::volatility()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:88,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:92,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFixedLookbackEngine::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:98,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:107,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:107,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:109,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:112,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:113,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:113,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:114,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:124,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:126,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:127,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:137,1
    - Dst: cnbn3
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:138,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:139,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:140,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:146,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:146,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:147,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:147,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:148,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:148,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:149,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:149,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:151,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 105
    functionDepth: 4
    functionLinenumber: 105
    functionLinenumberEnd: 154
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
    - f_
    - cnbn3
    - cnbn2
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
    - BivariateCumulativeNormalDistributionWe04DP
    - std::pow
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    - std::exp
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
    - std::log
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
    - cnbn1
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::AnalyticContinuousPartialFixedLookbackEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousPartialFixedLookbackEngine::AnalyticContinuousPartialFixedLookbackEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:39,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:39,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:43,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:43,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:48,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:50,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 5
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticContinuousPartialFixedLookbackEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:65,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 7
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFixedLookbackEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    - blackVolatility
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticContinuousPartialFixedLookbackEngine::volatility()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:82,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:88,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:92,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticContinuousPartialFixedLookbackEngine::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:98,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount()\n
      \                             const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 1
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:106,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:107,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:107,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:109,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:111,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:112,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:113,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:113,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:114,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:120,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:124,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:124,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:126,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:127,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:131,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:132,1
    - Dst: BivariateCumulativeNormalDistributionWe04DP
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:133,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:136,1
    - Dst: cnbn2
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:137,1
    - Dst: cnbn3
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:138,1
    - Dst: cnbn1
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:139,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:140,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:143,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:144,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:145,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:146,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:146,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:147,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:147,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:148,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:148,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:149,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:149,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:150,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:151,1
    - Dst: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
      Src: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 105
    functionDepth: 4
    functionLinenumber: 105
    functionLinenumberEnd: 154
    functionName: QuantLib::AnalyticContinuousPartialFixedLookbackEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/lookback/analyticcontinuouspartialfixedlookback.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendDiscount
    - f_
    - cnbn3
    - cnbn2
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::underlying
    - BivariateCumulativeNormalDistributionWe04DP
    - std::pow
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::lookbackPeriodStartTime
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::strike
    - std::exp
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeDiscount
    - std::log
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::stdDeviation
    - cnbn1
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::dividendYield
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::riskFreeRate
    - QuantLib::AnalyticContinuousPartialFixedLookbackEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticContinuousPartialFixedLookbackEngine::A(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticCliquetEngine::AnalyticCliquetEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCliquetEngine::AnalyticCliquetEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:53,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:56,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:57,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:59,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:59,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:67,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:75,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:76,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:85,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:86,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:88,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:89,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:90,1
    - Dst: BlackCalculator::beta
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:91,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:93,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:95,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:97,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:100,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:101,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:103,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:104,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:105,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:107,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:108,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticCliquetEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - BlackCalculator::vega
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::beta
    - PlainVanillaPayoff::PlainVanillaPayoff
    - riskFreeRate
    - BlackCalculator::value
    linkageType: ''
    returnType: void
    signature: void AnalyticCliquetEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticCliquetEngine::AnalyticCliquetEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCliquetEngine::AnalyticCliquetEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:53,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:56,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:57,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:59,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:59,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:67,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:75,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:76,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:85,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:86,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:88,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:89,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:90,1
    - Dst: BlackCalculator::beta
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:91,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:93,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:95,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:97,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:100,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:101,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:103,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:104,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:105,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:107,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp:108,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticCliquetEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticcliquetengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - BlackCalculator::vega
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::beta
    - PlainVanillaPayoff::PlainVanillaPayoff
    - riskFreeRate
    - BlackCalculator::value
    linkageType: ''
    returnType: void
    signature: void AnalyticCliquetEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticPerformanceEngine::AnalyticPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPerformanceEngine::AnalyticPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:53,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:56,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:59,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:59,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:67,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:75,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:76,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:77,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:79,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:81,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:85,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:86,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:89,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:92,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:94,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:94,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:96,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:100,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:101,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:101,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:104,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:105,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:108,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:108,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticPerformanceEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - BlackCalculator::vega
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - riskFreeRate
    - BlackCalculator::value
    linkageType: ''
    returnType: void
    signature: void AnalyticPerformanceEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticPerformanceEngine::AnalyticPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPerformanceEngine::AnalyticPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:35,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:38,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:39,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:50,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:53,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:56,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:59,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:59,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:67,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:75,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:76,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:77,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:79,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:81,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:85,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:86,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:89,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:92,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:94,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:94,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:96,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:100,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:101,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:101,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:104,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:105,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:108,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp:108,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticPerformanceEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/analyticperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - BlackCalculator::vega
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - riskFreeRate
    - BlackCalculator::value
    linkageType: ''
    returnType: void
    signature: void AnalyticPerformanceEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - discounts
    argTypes:
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::PerformanceOptionPathPricer::PerformanceOptionPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PerformanceOptionPathPricer::PerformanceOptionPathPricer(Option::Type
      type,\n                                                             Real strike,\n
      \                                                            std::vector<DiscountFactor>
      discounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:33,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: PerformanceOptionPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - length
    - payoff
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PerformanceOptionPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - type
    - strike
    - discounts
    argTypes:
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::PerformanceOptionPathPricer::PerformanceOptionPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PerformanceOptionPathPricer::PerformanceOptionPathPricer(Option::Type
      type,\n                                                             Real strike,\n
      \                                                            std::vector<DiscountFactor>
      discounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:33,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:33,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 42
    functionName: PerformanceOptionPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - length
    - payoff
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real PerformanceOptionPathPricer::operator()(const Path& path) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:52,1
    - Dst: QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:55,1
    - Dst: QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: QuantLib::MCPerformanceEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::calculate
    - QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCPerformanceEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:66,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:68,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:68,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:69,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::MCPerformanceEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - QuantLib::MCPerformanceEngine::timeGrid
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:132,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 136
    functionName: QuantLib::MCPerformanceEngine<RNG, S>::MCPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCPerformanceEngine<RNG, S>::MCPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        bool brownianBridge,\n        bool antitheticVariate,\n        Size
      requiredSamples,\n        Real requiredTolerance,\n        Size maxSamples,\n
      \       BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:143,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:143,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:144,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:145,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:145,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 149
    functionName: QuantLib::MCPerformanceEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - resetDates::size
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - time
    - TimeGrid
    - exercise::lastDate
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCPerformanceEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:160,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:165,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:169,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:169,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:170,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:171,1
    - Dst: QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:171,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:174,1
    - Dst: QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:174,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:175,1
    - Dst: "ext::shared_ptr<\n            typename MCPerformanceEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:177,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:179,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:180,1
    - Dst: PerformanceOptionPathPricer::PerformanceOptionPathPricer
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 182
    functionName: QuantLib::MCPerformanceEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - resetDates::size
    - PerformanceOptionPathPricer::PerformanceOptionPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
    - "ext::shared_ptr<\n            typename MCPerformanceEngine<RNG,S>::path_pricer_type>"
    - exercise::lastDate
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCPerformanceEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCPerformanceEngine<RNG,S>::path_pricer_type>
      MCPerformanceEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::MakeMCPerformanceEngine<RNG, S>::MakeMCPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCPerformanceEngine<RNG, S>::MakeMCPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:208,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 212
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:217,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 224
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 238
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:244,1
    - Dst: MCPerformanceEngine<RNG,S>::MCPerformanceEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 252
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCPerformanceEngine<RNG,S>::MCPerformanceEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>::operator
    signature: "MakeMCPerformanceEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:52,1
    - Dst: QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:55,1
    - Dst: QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: QuantLib::MCPerformanceEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::calculate
    - QuantLib::MCPerformanceEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCPerformanceEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:66,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:68,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:68,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:69,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: QuantLib::MCPerformanceEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - QuantLib::MCPerformanceEngine::timeGrid
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:132,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 136
    functionName: QuantLib::MCPerformanceEngine<RNG, S>::MCPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCPerformanceEngine<RNG, S>::MCPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        bool brownianBridge,\n        bool antitheticVariate,\n        Size
      requiredSamples,\n        Real requiredTolerance,\n        Size maxSamples,\n
      \       BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:143,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:143,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:144,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:145,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:145,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:146,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 149
    functionName: QuantLib::MCPerformanceEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - resetDates::size
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - time
    - TimeGrid
    - exercise::lastDate
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCPerformanceEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PercentageStrikePayoff>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:160,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:165,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:169,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:169,1
    - Dst: resetDates::size
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:170,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:171,1
    - Dst: QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:171,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:174,1
    - Dst: QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:174,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:175,1
    - Dst: "ext::shared_ptr<\n            typename MCPerformanceEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:177,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:179,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:180,1
    - Dst: PerformanceOptionPathPricer::PerformanceOptionPathPricer
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 182
    functionName: QuantLib::MCPerformanceEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - resetDates::size
    - PerformanceOptionPathPricer::PerformanceOptionPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<PercentageStrikePayoff>
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - QuantLib::MCPerformanceEngine<RNG,S>::process_::riskFreeRate
    - "ext::shared_ptr<\n            typename MCPerformanceEngine<RNG,S>::path_pricer_type>"
    - exercise::lastDate
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCPerformanceEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCPerformanceEngine<RNG,S>::path_pricer_type>
      MCPerformanceEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:188,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::MakeMCPerformanceEngine<RNG, S>::MakeMCPerformanceEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCPerformanceEngine<RNG, S>::MakeMCPerformanceEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:208,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 212
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:217,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 224
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 238
    functionName: "&\n    MakeMCPerformanceEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>
    signature: "MakeMCPerformanceEngine<RNG,S> &\n    MakeMCPerformanceEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:244,1
    - Dst: MCPerformanceEngine<RNG,S>::MCPerformanceEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 252
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/cliquet/mcperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCPerformanceEngine<RNG,S>::MCPerformanceEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCPerformanceEngine<RNG,S>::operator
    signature: "MakeMCPerformanceEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:77,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:78,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:79,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:80,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - process
    - foreignRiskFreeRate
    - exchangeRateVolatility
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 82
    functionName: QuantLib::QuantoEngine<Instr, Engine>::QuantoEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoEngine<Instr, Engine>::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QuantoEngine<Instr, Engine>::QuantoEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Handle<YieldTermStructure> foreignRiskFreeRate,\n        Handle<BlackVolTermStructure>
      exchangeRateVolatility,\n        Handle<Quote> correlation)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:94,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:95,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:98,1
    - Dst: Handle::value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:98,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:99,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:104,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:110,1
    - Dst: QuantoTermStructure::QuantoTermStructure
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:103,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:111,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:114,1
    - Dst: Engine::Engine
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:117,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:118,1
    - Dst: dynamic_cast<typename Instr::arguments*>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:120,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:121,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:125,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:126,1
    - Dst: dynamic_cast<const typename Instr::results*>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:129,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:136,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:137,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:142,1
    - Dst: blackVol
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:145,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:146,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:148,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:149,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:157,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:158,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:159,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:160,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:161,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:162,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:163,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:164,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:171,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 173
    functionName: QuantLib::QuantoEngine<Instr,Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::getResults
    - Handle::value
    - stateVariable
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - Engine::Engine
    - ext::shared_ptr::getArguments
    - auto*::validate
    - dynamic_cast<typename Instr::arguments*>
    - ext::shared_ptr::strike
    - value
    - ext::shared_ptr::reset
    - Null<Real>
    - dynamic_cast<const typename Instr::results*>
    - QuantoTermStructure::QuantoTermStructure
    - QL_REQUIRE
    - blackVolatility
    - blackVol
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - ext::shared_ptr::calculate
    - QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void QuantoEngine<Instr,Engine>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:75,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:77,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:78,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:79,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:80,1
    - Dst: QuantLib::QuantoEngine<Instr, Engine>::registerWith
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - process
    - foreignRiskFreeRate
    - exchangeRateVolatility
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 82
    functionName: QuantLib::QuantoEngine<Instr, Engine>::QuantoEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoEngine<Instr, Engine>::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QuantoEngine<Instr, Engine>::QuantoEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Handle<YieldTermStructure> foreignRiskFreeRate,\n        Handle<BlackVolTermStructure>
      exchangeRateVolatility,\n        Handle<Quote> correlation)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:94,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:95,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:98,1
    - Dst: Handle::value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:98,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:99,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:104,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:106,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:110,1
    - Dst: QuantoTermStructure::QuantoTermStructure
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:103,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:111,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:114,1
    - Dst: Engine::Engine
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:117,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:118,1
    - Dst: dynamic_cast<typename Instr::arguments*>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:120,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:121,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:125,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:126,1
    - Dst: dynamic_cast<const typename Instr::results*>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:129,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:136,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:137,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:142,1
    - Dst: blackVol
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:145,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:146,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:148,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:149,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:157,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:158,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:159,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:160,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:161,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:162,1
    - Dst: QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:163,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:164,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp:171,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 173
    functionName: QuantLib::QuantoEngine<Instr,Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/quanto/quantoengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::getResults
    - Handle::value
    - stateVariable
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - Engine::Engine
    - ext::shared_ptr::getArguments
    - auto*::validate
    - dynamic_cast<typename Instr::arguments*>
    - ext::shared_ptr::strike
    - value
    - ext::shared_ptr::reset
    - Null<Real>
    - dynamic_cast<const typename Instr::results*>
    - QuantoTermStructure::QuantoTermStructure
    - QL_REQUIRE
    - blackVolatility
    - blackVol
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - ext::shared_ptr::calculate
    - QuantLib::QuantoEngine<Instr,Engine>::arguments_::exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void QuantoEngine<Instr,Engine>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    - numericalFix
    - accrualBias
    - forwardsInCouponPeriod
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    - NumericalFix
    - AccrualBias
    - ForwardsInCouponPeriod
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: QuantLib::IsdaCdsEngine::IsdaCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IsdaCdsEngine::IsdaCdsEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                 Real recoveryRate,\n                                 Handle<YieldTermStructure>
      discountCurve,\n                                 const ext::optional<bool>&
      includeSettlementDateFlows,\n                                 const NumericalFix
      numericalFix,\n                                 const AccrualBias accrualBias,\n
      \                                const ForwardsInCouponPeriod forwardsInCouponPeriod)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:75,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:76,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:81,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:81,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:89,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:89,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<FaceValueClaim>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:97,1
    - Dst: std::max<Date>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:102,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:110,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:111,1
    - Dst: "ext::dynamic_pointer_cast<\n                InterpolatedDiscountCurve<LogLinear>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:114,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:116,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<BackwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:118,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:120,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<ForwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:122,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:124,1
    - Dst: ext::dynamic_pointer_cast<FlatForward>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:126,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:129,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedSurvivalProbabilityCurve<LogLinear>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:133,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:136,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedHazardRateCurve<BackwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:139,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:141,1
    - Dst: ext::dynamic_pointer_cast<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:144,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:147,1
    - Dst: std::set_union
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:154,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:155,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:163,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:164,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:169,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:172,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:176,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:177,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:180,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:180,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:196,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:197,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:207,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:207,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:208,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:209,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:211,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:214,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:216,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:217,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:217,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:218,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:218,1
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:223,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:223,1
    - Dst: std::max<Date>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:225,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:225,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:227,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:229,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:229,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:232,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:239,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:239,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:241,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:244,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:245,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:246,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:247,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:249,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:250,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:251,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:252,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:253,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:253,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:254,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:254,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:282,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:293,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:296,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:296,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:297,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:298,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:304,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:305,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:307,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:307,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:308,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:323,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:329,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:336,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:346,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:355,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:363,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 130
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 365
    functionName: QuantLib::IsdaCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - ext::shared_ptr::dayCounter
    - accrualRebate::amount
    - "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<ForwardFlat>
      >"
    - dayCounter
    - Date
    - "ext::dynamic_pointer_cast<\n            InterpolatedHazardRateCurve<BackwardFlat>
      >"
    - hasOccurred
    - ext::shared_ptr::date
    - std::set_union
    - ext::shared_ptr::accrualEndDate
    - std::back_inserter
    - "ext::dynamic_pointer_cast<\n            InterpolatedSurvivalProbabilityCurve<LogLinear>
      >"
    - std::vector::insert
    - std::vector::push_back
    - ext::dynamic_pointer_cast<FlatHazardRate>
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - begin
    - QuantLib::detail::simple_event::simple_event
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<FlatForward>
    - std::upper_bound
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - QL_FAIL
    - claim::amount
    - end
    - "ext::dynamic_pointer_cast<\n                InterpolatedDiscountCurve<LogLinear>
      >"
    - QL_REQUIRE
    - std::max<Date>
    - std::lower_bound
    - timeFromReference
    - upfrontPayment::amount
    - std::log
    - std::vector::begin
    - std::vector::end
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - ext::dynamic_pointer_cast<FaceValueClaim>
    - ext::shared_ptr::dates
    - "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<BackwardFlat>
      >"
    - std::vector::empty
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void IsdaCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    - numericalFix
    - accrualBias
    - forwardsInCouponPeriod
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    - NumericalFix
    - AccrualBias
    - ForwardsInCouponPeriod
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: QuantLib::IsdaCdsEngine::IsdaCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IsdaCdsEngine::IsdaCdsEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                 Real recoveryRate,\n                                 Handle<YieldTermStructure>
      discountCurve,\n                                 const ext::optional<bool>&
      includeSettlementDateFlows,\n                                 const NumericalFix
      numericalFix,\n                                 const AccrualBias accrualBias,\n
      \                                const ForwardsInCouponPeriod forwardsInCouponPeriod)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:58,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:75,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:76,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:76,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:77,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:81,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:81,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:89,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:89,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<FaceValueClaim>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:97,1
    - Dst: std::max<Date>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:102,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:110,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:111,1
    - Dst: "ext::dynamic_pointer_cast<\n                InterpolatedDiscountCurve<LogLinear>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:114,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:116,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<BackwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:118,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:120,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<ForwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:122,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:124,1
    - Dst: ext::dynamic_pointer_cast<FlatForward>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:126,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:129,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedSurvivalProbabilityCurve<LogLinear>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:133,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:136,1
    - Dst: "ext::dynamic_pointer_cast<\n            InterpolatedHazardRateCurve<BackwardFlat>
        >"
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:139,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:141,1
    - Dst: ext::dynamic_pointer_cast<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:144,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:147,1
    - Dst: std::set_union
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:151,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:154,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:155,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:163,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:164,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:169,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:172,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:176,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:177,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:180,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:180,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:196,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:197,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:207,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:207,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:208,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:209,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:211,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:214,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:216,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:217,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:217,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:218,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:218,1
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:223,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:223,1
    - Dst: std::max<Date>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:225,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:225,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:227,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:229,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:229,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:232,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:236,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:238,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:239,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:239,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:241,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:244,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:245,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:246,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:247,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:249,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:250,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:251,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:252,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:253,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:253,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:254,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:254,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:282,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:293,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:296,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:296,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:297,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:298,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:304,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:305,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:307,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:307,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:308,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:323,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:329,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:336,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:346,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:355,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp:363,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 130
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 365
    functionName: QuantLib::IsdaCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - ext::shared_ptr::dayCounter
    - accrualRebate::amount
    - "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<ForwardFlat>
      >"
    - dayCounter
    - Date
    - "ext::dynamic_pointer_cast<\n            InterpolatedHazardRateCurve<BackwardFlat>
      >"
    - hasOccurred
    - ext::shared_ptr::date
    - std::set_union
    - ext::shared_ptr::accrualEndDate
    - std::back_inserter
    - "ext::dynamic_pointer_cast<\n            InterpolatedSurvivalProbabilityCurve<LogLinear>
      >"
    - std::vector::insert
    - std::vector::push_back
    - ext::dynamic_pointer_cast<FlatHazardRate>
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - begin
    - QuantLib::detail::simple_event::simple_event
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<FlatForward>
    - std::upper_bound
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - QL_FAIL
    - claim::amount
    - end
    - "ext::dynamic_pointer_cast<\n                InterpolatedDiscountCurve<LogLinear>
      >"
    - QL_REQUIRE
    - std::max<Date>
    - std::lower_bound
    - timeFromReference
    - upfrontPayment::amount
    - std::log
    - std::vector::begin
    - std::vector::end
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - ext::dynamic_pointer_cast<FaceValueClaim>
    - ext::shared_ptr::dates
    - "ext::dynamic_pointer_cast<\n            InterpolatedForwardCurve<BackwardFlat>
      >"
    - std::vector::empty
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void IsdaCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: QuantLib::MidPointCdsEngine::MidPointCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MidPointCdsEngine::MidPointCdsEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                         Real recoveryRate,\n
      \                                        Handle<YieldTermStructure> discountCurve,\n
      \                                        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:43,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:45,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:48,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:49,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:54,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:56,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:56,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:57,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:66,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:66,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:67,1
    - Dst: leg::size
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:72,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:73,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:78,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:85,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:86,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:95,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:96,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:103,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:104,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:110,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:114,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:115,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:125,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:150,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:157,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:166,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:175,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:183,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 185
    functionName: QuantLib::MidPointCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - accrualRebate::amount
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - QL_FAIL
    - claim::amount
    - ext::shared_ptr::accruedAmount
    - QL_REQUIRE
    - upfrontPayment::amount
    - leg::size
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - hasOccurred
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void MidPointCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: QuantLib::MidPointCdsEngine::MidPointCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MidPointCdsEngine::MidPointCdsEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                         Real recoveryRate,\n
      \                                        Handle<YieldTermStructure> discountCurve,\n
      \                                        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:43,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:45,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:48,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:49,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:54,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:56,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:56,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:57,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:66,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:66,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:67,1
    - Dst: leg::size
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:72,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:73,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:78,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:85,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:86,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:95,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:96,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:103,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:104,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:110,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:114,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:115,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:125,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:128,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:150,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:157,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:166,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:175,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp:183,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 185
    functionName: QuantLib::MidPointCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/midpointcdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - accrualRebate::amount
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - QL_FAIL
    - claim::amount
    - ext::shared_ptr::accruedAmount
    - QL_REQUIRE
    - upfrontPayment::amount
    - leg::size
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - hasOccurred
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void MidPointCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::IsdaCdsEngine::isdaRateCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> isdaRateCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::IsdaCdsEngine::isdaCreditCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: Handle<DefaultProbabilityTermStructure> isdaCreditCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::IsdaCdsEngine::isdaRateCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> isdaRateCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::IsdaCdsEngine::isdaCreditCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/isdacdsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: Handle<DefaultProbabilityTermStructure> isdaCreditCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' step'
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Period
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::IntegralCdsEngine::IntegralCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralCdsEngine::IntegralCdsEngine(const Period& step,\n                                         Handle<DefaultProbabilityTermStructure>
      probability,\n                                         Real recoveryRate,\n
      \                                        Handle<YieldTermStructure> discountCurve,\n
      \                                        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:44,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:46,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:48,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:51,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:52,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:57,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:59,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:59,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:60,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:69,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:69,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:70,1
    - Dst: leg::size
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:75,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:81,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:87,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:89,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:90,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:93,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:95,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:107,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:108,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:113,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:116,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:123,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:130,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:160,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:167,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:176,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:185,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:193,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 195
    functionName: QuantLib::IntegralCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - accrualRebate::amount
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - std::min
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - Period
    - QL_FAIL
    - claim::amount
    - ext::shared_ptr::accruedAmount
    - QL_REQUIRE
    - upfrontPayment::amount
    - leg::size
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - hasOccurred
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void IntegralCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' step'
    - probability
    - recoveryRate
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Period
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::IntegralCdsEngine::IntegralCdsEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralCdsEngine::IntegralCdsEngine(const Period& step,\n                                         Handle<DefaultProbabilityTermStructure>
      probability,\n                                         Real recoveryRate,\n
      \                                        Handle<YieldTermStructure> discountCurve,\n
      \                                        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:44,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:46,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:48,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:48,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:51,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:52,1
    - Dst: upfrontPayment::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:57,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:59,1
    - Dst: upfrontPayment::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:59,1
    - Dst: upfrontPayment::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:60,1
    - Dst: accrualRebate::hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:69,1
    - Dst: accrualRebate::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:69,1
    - Dst: accrualRebate::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:70,1
    - Dst: leg::size
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:75,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:81,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:87,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:89,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:90,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:93,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:95,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:100,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:107,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:108,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:113,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:116,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:123,1
    - Dst: claim::amount
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:130,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:160,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:167,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:176,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:185,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp:193,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 195
    functionName: QuantLib::IntegralCdsEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/credit/integralcdsengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - accrualRebate::date
    - accrualRebate::amount
    - ext::shared_ptr::date
    - ext::shared_ptr::accrualEndDate
    - upfrontPayment::date
    - referenceDate
    - empty
    - survivalProbability
    - Null<Rate>
    - ext::shared_ptr::accrualStartDate
    - std::min
    - defaultProbability
    - upfrontPayment::hasOccurred
    - Null<Real>
    - Period
    - QL_FAIL
    - claim::amount
    - ext::shared_ptr::accruedAmount
    - QL_REQUIRE
    - upfrontPayment::amount
    - leg::size
    - ext::shared_ptr::amount
    - discount
    - QuantLib::detail::instance
    - hasOccurred
    - accrualRebate::hasOccurred
    linkageType: ''
    returnType: void
    signature: void IntegralCdsEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 127
    functionName: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Size timeSteps,\n             Size timeStepsPerYear,\n             bool
      brownianBridge,\n             bool antitheticVariate,\n             Size requiredSamples,\n
      \            Real requiredTolerance,\n             Size maxSamples,\n             BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:135,1
    - Dst: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:137,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:138,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:143,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:153,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:155,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:158,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:161,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:162,1
    - Dst: ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 163
    functionName: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::MCForwardEuropeanBSEngine<RNG,S>::timeGrid
    - "ext::shared_ptr<typename\n            MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>"
    - QuantLib::MCForwardEuropeanBSEngine<RNG,S>::process_::time
    - TimeGrid::back
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>
      MCForwardEuropeanBSEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::MakeMCForwardEuropeanBSEngine<RNG, S>::MakeMCForwardEuropeanBSEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCForwardEuropeanBSEngine<RNG, S>::MakeMCForwardEuropeanBSEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:199,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 206
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:244,1
    - Dst: MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 253
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>::operator
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 127
    functionName: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            Size timeSteps,\n             Size timeStepsPerYear,\n             bool
      brownianBridge,\n             bool antitheticVariate,\n             Size requiredSamples,\n
      \            Real requiredTolerance,\n             Size maxSamples,\n             BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:135,1
    - Dst: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:137,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:138,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:143,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:153,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:155,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:158,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:161,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:162,1
    - Dst: ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 163
    functionName: QuantLib::MCForwardEuropeanBSEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::MCForwardEuropeanBSEngine<RNG,S>::timeGrid
    - "ext::shared_ptr<typename\n            MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>"
    - QuantLib::MCForwardEuropeanBSEngine<RNG,S>::process_::time
    - TimeGrid::back
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanBSEngine<RNG,S>::path_pricer_type>
      MCForwardEuropeanBSEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::MakeMCForwardEuropeanBSEngine<RNG, S>::MakeMCForwardEuropeanBSEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCForwardEuropeanBSEngine<RNG, S>::MakeMCForwardEuropeanBSEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:199,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 206
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S> &\n    MakeMCForwardEuropeanBSEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:240,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:242,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:244,1
    - Dst: MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 253
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCForwardEuropeanBSEngine<RNG,S>::MCForwardEuropeanBSEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanBSEngine<RNG,S>::operator
    signature: "MakeMCForwardEuropeanBSEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - moneyness
    - resetIndex
    - discount
    argTypes:
    - Option::Type
    - Real
    - Size
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 30
    functionName: QuantLib::ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer(\n                                          Option::Type
      type,\n                                          Real moneyness,\n                                          Size
      resetIndex,\n                                          DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:34,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:38,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:40,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: ForwardEuropeanBSPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - length
    - PlainVanillaPayoff
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ForwardEuropeanBSPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - moneyness
    - resetIndex
    - discount
    argTypes:
    - Option::Type
    - Real
    - Size
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 30
    functionName: QuantLib::ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardEuropeanBSPathPricer::ForwardEuropeanBSPathPricer(\n                                          Option::Type
      type,\n                                          Real moneyness,\n                                          Size
      resetIndex,\n                                          DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:34,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:38,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:40,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: ForwardEuropeanBSPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanbsengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - length
    - PlainVanillaPayoff
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ForwardEuropeanBSPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - process
    - dk
    - ' callStrikes'
    - ' putStrikes'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::ReplicatingVarianceSwapEngine::ReplicatingVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - std::max_element
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ReplicatingVarianceSwapEngine::ReplicatingVarianceSwapEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Real
      dk,\n        const std::vector<Real>& callStrikes,\n        const std::vector<Real>&
      putStrikes)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:98,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:107,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:107,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:114,1
    - Dst: std::unique
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:119,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:119,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:122,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:128,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:130,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:132,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:132,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:133,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:136,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:137,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:138,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:140,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - ' availStrikes'
    - type
    - ' optionWeights'
    argTypes:
    - std::vector<Real>
    - Option::Type
    - weights_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 143
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
    - PlainVanillaPayoff::PlainVanillaPayoff
    - empty
    - std::sort
    - std::vector::begin
    - std::vector::end
    - std::unique
    - std::max
    - QL_FAIL
    - std::fabs
    - emplace_back
    - std::vector::front
    - std::vector::back
    - std::vector::push_back
    - std::vector::erase
    linkageType: ''
    returnType: void
    signature: "void ReplicatingVarianceSwapEngine::computeOptionWeights(\n                                    const
      std::vector<Real>& availStrikes,\n                                    const
      Option::Type type,\n                                    weights_type& optionWeights)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:150,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - callPutStrikeBoundary
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real ReplicatingVarianceSwapEngine::computeLogPayoff(\n                         const
      Real strike,\n                         const Real callPutStrikeBoundary) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:159,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:161,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:164,1
    - Dst: EuropeanOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:167,1
    - Dst: EuropeanOption::NPV
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:169,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:172,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:172,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:173,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:174,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::underlying
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:175,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:176,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::underlying
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:176,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' optionWeights'
    argTypes:
    - weights_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 178
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - strike
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    - std::log
    - EuropeanExercise::EuropeanExercise
    - begin
    - EuropeanOption::setPricingEngine
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
    - EuropeanOption::NPV
    - end
    - QuantLib::ReplicatingVarianceSwapEngine::underlying
    - front
    linkageType: ''
    returnType: Real
    signature: "Real ReplicatingVarianceSwapEngine::computeReplicatingPortfolio(\n
      \                                   const weights_type& optionWeights) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:184,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:185,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:187,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:190,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 206
    functionName: QuantLib::ReplicatingVarianceSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
    - QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
    - QL_FAIL
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: void
    signature: void ReplicatingVarianceSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::ReplicatingVarianceSwapEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 1
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real ReplicatingVarianceSwapEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: QuantLib::ReplicatingVarianceSwapEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 2
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time ReplicatingVarianceSwapEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:220,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate ReplicatingVarianceSwapEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:227,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ReplicatingVarianceSwapEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:88,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - process
    - dk
    - ' callStrikes'
    - ' putStrikes'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: QuantLib::ReplicatingVarianceSwapEngine::ReplicatingVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - begin
    - std::max_element
    - end
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ReplicatingVarianceSwapEngine::ReplicatingVarianceSwapEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Real
      dk,\n        const std::vector<Real>& callStrikes,\n        const std::vector<Real>&
      putStrikes)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:98,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:106,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:107,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:107,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:111,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:114,1
    - Dst: std::unique
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:118,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:119,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:119,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:122,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:128,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:130,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:132,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:132,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:133,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:136,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:137,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:138,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:140,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - ' availStrikes'
    - type
    - ' optionWeights'
    argTypes:
    - std::vector<Real>
    - Option::Type
    - weights_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 143
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 1
    functionsReached:
    - std::greater<>
    - QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
    - PlainVanillaPayoff::PlainVanillaPayoff
    - empty
    - std::sort
    - std::vector::begin
    - std::vector::end
    - std::unique
    - std::max
    - QL_FAIL
    - std::fabs
    - emplace_back
    - std::vector::front
    - std::vector::back
    - std::vector::push_back
    - std::vector::erase
    linkageType: ''
    returnType: void
    signature: "void ReplicatingVarianceSwapEngine::computeOptionWeights(\n                                    const
      std::vector<Real>& availStrikes,\n                                    const
      Option::Type type,\n                                    weights_type& optionWeights)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:150,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - callPutStrikeBoundary
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeLogPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real ReplicatingVarianceSwapEngine::computeLogPayoff(\n                         const
      Real strike,\n                         const Real callPutStrikeBoundary) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:159,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:161,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:164,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:164,1
    - Dst: EuropeanOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:167,1
    - Dst: EuropeanOption::NPV
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:169,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:172,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:172,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:173,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:174,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::underlying
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:175,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:176,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::underlying
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:176,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' optionWeights'
    argTypes:
    - weights_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 154
    functionDepth: 3
    functionLinenumber: 154
    functionLinenumberEnd: 178
    functionName: QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - strike
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    - std::log
    - EuropeanExercise::EuropeanExercise
    - begin
    - EuropeanOption::setPricingEngine
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
    - EuropeanOption::NPV
    - end
    - QuantLib::ReplicatingVarianceSwapEngine::underlying
    - front
    linkageType: ''
    returnType: Real
    signature: "Real ReplicatingVarianceSwapEngine::computeReplicatingPortfolio(\n
      \                                   const weights_type& optionWeights) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:184,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:185,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:187,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:190,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 206
    functionName: QuantLib::ReplicatingVarianceSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::computeOptionWeights
    - QuantLib::ReplicatingVarianceSwapEngine::computeReplicatingPortfolio
    - QL_FAIL
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: void
    signature: void ReplicatingVarianceSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::ReplicatingVarianceSwapEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 2
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real ReplicatingVarianceSwapEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionName: QuantLib::ReplicatingVarianceSwapEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 6
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time ReplicatingVarianceSwapEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:220,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate ReplicatingVarianceSwapEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:227,1
    - Dst: QuantLib::ReplicatingVarianceSwapEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::ReplicatingVarianceSwapEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/replicatingvarianceswapengine.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ReplicatingVarianceSwapEngine::residualTime
    - QuantLib::ReplicatingVarianceSwapEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor ReplicatingVarianceSwapEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::ForwardPerformanceVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardPerformanceVanillaEngine<Engine>::ForwardPerformanceVanillaEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::setup
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:63,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::originalEngine_::calculate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:64,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::originalEngine_::calculate
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::setup
    linkageType: ''
    returnType: void
    signature: void ForwardPerformanceVanillaEngine<Engine>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:71,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:72,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:73,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:75,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::stateVariable
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:78,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::stateVariable
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
    - DayCounter::yearFraction
    linkageType: ''
    returnType: void
    signature: void ForwardPerformanceVanillaEngine<Engine>::getOriginalResults()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::ForwardPerformanceVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ForwardPerformanceVanillaEngine<Engine>::ForwardPerformanceVanillaEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::setup
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:63,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::originalEngine_::calculate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:64,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::originalEngine_::calculate
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::setup
    linkageType: ''
    returnType: void
    signature: void ForwardPerformanceVanillaEngine<Engine>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:71,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:72,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:73,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:75,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::stateVariable
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:78,1
    - Dst: QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: QuantLib::ForwardPerformanceVanillaEngine<Engine>::getOriginalResults
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardperformanceengine.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::stateVariable
    - QuantLib::ForwardPerformanceVanillaEngine<Engine>::process_::riskFreeRate
    - DayCounter::yearFraction
    linkageType: ''
    returnType: void
    signature: void ForwardPerformanceVanillaEngine<Engine>::getOriginalResults()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:71,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::ForwardVanillaEngine<Engine>::ForwardVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaEngine<Engine>::ForwardVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:82,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:85,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:87,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:85,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:93,1
    - Dst: Handle::value
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:93,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:95,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:96,1
    - Dst: ImpliedTermStructure::ImpliedTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:96,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:99,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:100,1
    - Dst: ImpliedTermStructure::ImpliedTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:100,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:108,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:109,1
    - Dst: ImpliedVolTermStructure::ImpliedVolTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:109,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:113,1
    - Dst: ext::shared_ptr<Engine>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:117,1
    - Dst: Engine::Engine
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:117,1
    - Dst: reset
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:118,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:121,1
    - Dst: getArguments
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:123,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:125,1
    - Dst: getResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:127,1
    - Dst: validate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 133
    functionName: QuantLib::ForwardVanillaEngine<Engine>::setup
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 0
    functionsReached:
    - getResults
    - getArguments
    - Handle::value
    - stateVariable
    - dividendYield
    - validate
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - Engine::Engine
    - ext::shared_ptr<BlackVolTermStructure>
    - x0
    - ImpliedTermStructure::ImpliedTermStructure
    - dynamic_cast<VanillaOption::arguments*>
    - ext::shared_ptr::optionType
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - reset
    - ImpliedVolTermStructure::ImpliedVolTermStructure
    - riskFreeRate
    - ext::shared_ptr<Engine>
    - dynamic_cast<const VanillaOption::results*>
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::setup() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::setup
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:137,1
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::calculate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:138,1
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: QuantLib::ForwardVanillaEngine<Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
    - QuantLib::ForwardVanillaEngine<Engine>::setup
    - QuantLib::ForwardVanillaEngine<Engine>::calculate
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:145,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:146,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:147,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:148,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:150,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:155,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:156,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:165,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 173
    functionName: QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 1
    functionsReached:
    - DayCounter::yearFraction
    - dividendYield
    - Null<Real>
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::getOriginalResults() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:71,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::ForwardVanillaEngine<Engine>::ForwardVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ForwardVanillaEngine<Engine>::ForwardVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:82,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:85,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:87,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:85,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:93,1
    - Dst: Handle::value
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:93,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:95,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:96,1
    - Dst: ImpliedTermStructure::ImpliedTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:96,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:99,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:100,1
    - Dst: ImpliedTermStructure::ImpliedTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:100,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:108,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:109,1
    - Dst: ImpliedVolTermStructure::ImpliedVolTermStructure
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:109,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:113,1
    - Dst: ext::shared_ptr<Engine>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:117,1
    - Dst: Engine::Engine
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:117,1
    - Dst: reset
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:118,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:121,1
    - Dst: getArguments
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:123,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:125,1
    - Dst: getResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:127,1
    - Dst: validate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 133
    functionName: QuantLib::ForwardVanillaEngine<Engine>::setup
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 1
    functionsReached:
    - getResults
    - getArguments
    - Handle::value
    - stateVariable
    - dividendYield
    - validate
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - Engine::Engine
    - ext::shared_ptr<BlackVolTermStructure>
    - x0
    - ImpliedTermStructure::ImpliedTermStructure
    - dynamic_cast<VanillaOption::arguments*>
    - ext::shared_ptr::optionType
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - reset
    - ImpliedVolTermStructure::ImpliedVolTermStructure
    - riskFreeRate
    - ext::shared_ptr<Engine>
    - dynamic_cast<const VanillaOption::results*>
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::setup() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::setup
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:137,1
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::calculate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:138,1
    - Dst: QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: QuantLib::ForwardVanillaEngine<Engine>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
    - QuantLib::ForwardVanillaEngine<Engine>::setup
    - QuantLib::ForwardVanillaEngine<Engine>::calculate
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:145,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:146,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:147,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:148,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:150,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:155,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:156,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:165,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:167,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 173
    functionName: QuantLib::ForwardVanillaEngine<Engine>::getOriginalResults
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/forwardengine.hpp
    functionUses: 2
    functionsReached:
    - DayCounter::yearFraction
    - dividendYield
    - Null<Real>
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void ForwardVanillaEngine<Engine>::getOriginalResults() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:78,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:80,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:81,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::MCForwardEuropeanHestonEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - HestonModel::HestonModel
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr<PricingEngine>
    - AnalyticHestonEngine::AnalyticHestonEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - controlVariate
    argTypes:
    - ext::shared_ptr<P>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 150
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             Size timeSteps,\n
      \            Size timeStepsPerYear,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             bool controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:157,1
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:159,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:160,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:165,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:170,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:174,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:176,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:179,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:182,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:183,1
    - Dst: ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 184
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::process_::time
    - "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - TimeGrid::back
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCForwardEuropeanHestonEngine<RNG,S,P>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:193,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:198,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:203,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:207,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:209,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:212,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:215,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:216,1
    - Dst: ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 217
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - TimeGrid::back
    - ext::dynamic_pointer_cast<P>
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCForwardEuropeanHestonEngine<RNG,S,P>::controlPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::MakeMCForwardEuropeanHestonEngine<RNG, S, P>::MakeMCForwardEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCForwardEuropeanHestonEngine<RNG, S, P>::MakeMCForwardEuropeanHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:242,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:252,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 259
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 266
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 280
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:296,1
    - Dst: MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:296,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 306
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine<RNG,S,P>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>::operator
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:78,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:80,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:81,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::MCForwardEuropeanHestonEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - HestonModel::HestonModel
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr<PricingEngine>
    - AnalyticHestonEngine::AnalyticHestonEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - controlVariate
    argTypes:
    - ext::shared_ptr<P>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 150
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             Size timeSteps,\n
      \            Size timeStepsPerYear,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             bool controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:157,1
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:159,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:160,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:165,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:170,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:174,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:176,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:179,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:182,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:183,1
    - Dst: ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 184
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::process_::time
    - "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - TimeGrid::back
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCForwardEuropeanHestonEngine<RNG,S,P>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:193,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:198,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:203,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:207,1
    - Dst: "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:209,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:212,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:215,1
    - Dst: TimeGrid::back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:216,1
    - Dst: ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 217
    functionName: QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - "ext::shared_ptr<typename\n            MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - TimeGrid::back
    - ext::dynamic_pointer_cast<P>
    - QuantLib::MCForwardEuropeanHestonEngine<RNG,S,P>::timeGrid
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
    signature: ext::shared_ptr<typename MCForwardEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCForwardEuropeanHestonEngine<RNG,S,P>::controlPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:222,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: QuantLib::MakeMCForwardEuropeanHestonEngine<RNG, S, P>::MakeMCForwardEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCForwardEuropeanHestonEngine<RNG, S, P>::MakeMCForwardEuropeanHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:242,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:252,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 259
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 266
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 280
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionName: "&\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P> &\n    MakeMCForwardEuropeanHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:292,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:294,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:296,1
    - Dst: MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp:296,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 306
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCForwardEuropeanHestonEngine<RNG,S,P>::MCForwardEuropeanHestonEngine<RNG,S,P>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCForwardEuropeanHestonEngine<RNG,S,P>::operator
    signature: "MakeMCForwardEuropeanHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - moneyness
    - resetIndex
    - discount
    argTypes:
    - Option::Type
    - Real
    - Size
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 30
    functionName: QuantLib::ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer(\n
      \                                         Option::Type type,\n                                          Real
      moneyness,\n                                          Size resetIndex,\n                                          DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:35,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:39,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:41,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: ForwardEuropeanHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - PlainVanillaPayoff
    - pathSize
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ForwardEuropeanHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - moneyness
    - resetIndex
    - discount
    argTypes:
    - Option::Type
    - Real
    - Size
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 30
    functionName: QuantLib::ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ForwardEuropeanHestonPathPricer::ForwardEuropeanHestonPathPricer(\n
      \                                         Option::Type type,\n                                          Real
      moneyness,\n                                          Size resetIndex,\n                                          DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:35,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:39,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:41,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: ForwardEuropeanHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardeuropeanhestonengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - PlainVanillaPayoff
    - pathSize
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ForwardEuropeanHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:71,1
    - Dst: QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:88,1
    - Dst: QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 100
    functionName: QuantLib::MCVarianceSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:109,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:111,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:113,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:113,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:115,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: QuantLib::MCVarianceSwapEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: QuantLib::VariancePathPricer::VariancePathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void VariancePathPricer(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 9
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 193
    functionName: QuantLib::MCVarianceSwapEngine<RNG, S>::MCVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCVarianceSwapEngine<RNG, S>::MCVarianceSwapEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVarianceSwapEngine<RNG,S>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:199,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:201,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:203,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:204,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:205,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:205,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 209
    functionName: QuantLib::MCVarianceSwapEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::MCVarianceSwapEngine<RNG,S>::process_::time
    - Null<Size>
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCVarianceSwapEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::shared_ptr<\n            typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:218,1
    - Dst: VariancePathPricer::VariancePathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 221
    functionName: QuantLib::MCVarianceSwapEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - VariancePathPricer::VariancePathPricer
    - "ext::shared_ptr<\n            typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>
      MCVarianceSwapEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::MakeMCVarianceSwapEngine<RNG, S>::MakeMCVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCVarianceSwapEngine<RNG, S>::MakeMCVarianceSwapEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:247,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:256,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 263
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 291
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:300,1
    - Dst: MCVarianceSwapEngine<RNG,S>::MCVarianceSwapEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 309
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCVarianceSwapEngine<RNG,S>::MCVarianceSwapEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCVarianceSwapEngine<RNG,S>::\n    operator"
    signature: "MakeMCVarianceSwapEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - path
    - process
    argTypes:
    - Path
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 317
    functionName: QuantLib::detail::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(Path path, ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 322
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - timeGrid
    - diffusion
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - path
    - process
    argTypes:
    - Path
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 317
    functionName: QuantLib::detail::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(Path path, ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: QuantLib::diffusion
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 322
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - timeGrid
    - QuantLib::diffusion
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:332,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:332,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:333,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:334,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:335,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:336,1
    - Dst: integrator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: VariancePathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - empty
    - integrator
    - timeGrid
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real VariancePathPricer::operator()(const Path& path) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:71,1
    - Dst: QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:75,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:88,1
    - Dst: QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 100
    functionName: QuantLib::MCVarianceSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::MCVarianceSwapEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    - riskFreeRate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:109,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:111,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:113,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:113,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:115,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: QuantLib::MCVarianceSwapEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: QuantLib::VariancePathPricer::VariancePathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void VariancePathPricer(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 9
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 193
    functionName: QuantLib::MCVarianceSwapEngine<RNG, S>::MCVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCVarianceSwapEngine<RNG, S>::MCVarianceSwapEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVarianceSwapEngine<RNG,S>::process_::time
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:199,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:201,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:203,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:204,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:205,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:205,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 209
    functionName: QuantLib::MCVarianceSwapEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - QuantLib::MCVarianceSwapEngine<RNG,S>::process_::time
    - Null<Size>
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCVarianceSwapEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::shared_ptr<\n            typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:218,1
    - Dst: VariancePathPricer::VariancePathPricer
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 221
    functionName: QuantLib::MCVarianceSwapEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - VariancePathPricer::VariancePathPricer
    - "ext::shared_ptr<\n            typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCVarianceSwapEngine<RNG,S>::path_pricer_type>
      MCVarianceSwapEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::MakeMCVarianceSwapEngine<RNG, S>::MakeMCVarianceSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCVarianceSwapEngine<RNG, S>::MakeMCVarianceSwapEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:247,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:256,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 263
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 291
    functionName: "&\n    MakeMCVarianceSwapEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCVarianceSwapEngine<RNG,S>
    signature: "MakeMCVarianceSwapEngine<RNG,S> &\n    MakeMCVarianceSwapEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:298,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:300,1
    - Dst: MCVarianceSwapEngine<RNG,S>::MCVarianceSwapEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 309
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCVarianceSwapEngine<RNG,S>::MCVarianceSwapEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCVarianceSwapEngine<RNG,S>::\n    operator"
    signature: "MakeMCVarianceSwapEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - path
    - process
    argTypes:
    - Path
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 317
    functionName: QuantLib::detail::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(Path path, ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 322
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - timeGrid
    - diffusion
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - path
    - process
    argTypes:
    - Path
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 317
    functionName: QuantLib::detail::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(Path path, ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:319,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 322
    functionName: operator()(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - timeGrid
    - diffusion
    linkageType: ''
    returnType: Real
    signature: Real operator()(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:332,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:332,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:333,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:334,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:335,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:336,1
    - Dst: integrator
      Src: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: VariancePathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcvarianceswapengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - empty
    - integrator
    - timeGrid
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real VariancePathPricer::operator()(const Path& path) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:58,1
    - Dst: QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:61,1
    - Dst: QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::MCForwardVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:73,1
    - Dst: QuantLib::MCForwardVanillaEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:74,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:76,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:76,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:77,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 80
    functionName: QuantLib::MCForwardVanillaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCForwardVanillaEngine::timeGrid
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:108,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:108,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - controlVariate
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 118
    functionName: QuantLib::MCForwardVanillaEngine<MC, RNG, S>::MCForwardVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCForwardVanillaEngine<MC, RNG, S>::MCForwardVanillaEngine(\n
      \       ext::shared_ptr<StochasticProcess> process,\n        Size timeSteps,\n
      \       Size timeStepsPerYear,\n        bool brownianBridge,\n        bool antitheticVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed,\n        bool controlVariate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:124,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:126,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:127,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:129,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:130,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:132,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:133,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:137,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:138,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - std::vector::begin
    - std::vector::end
    - time
    - TimeGrid
    - exercise::lastDate
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCForwardVanillaEngine<MC,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:156,1
    - Dst: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::process_::initialValues
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:158,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:163,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:162,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:165,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:165,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:169,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:172,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 175
    functionName: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dynamic_cast<VanillaOption::arguments*>
    - QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlPricingEngine
    - dynamic_cast<const VanillaOption::results*>
    - ext::shared_ptr::optionType
    - ext::shared_ptr::getResults
    - QuantLib::MCForwardVanillaEngine<MC,RNG,S>::process_::initialValues
    - ext::shared_ptr::getArguments
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCForwardVanillaEngine<MC,RNG,S>::controlVariateValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:58,1
    - Dst: QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:61,1
    - Dst: QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::MCForwardVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCForwardVanillaEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:73,1
    - Dst: QuantLib::MCForwardVanillaEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:74,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:76,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:76,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:77,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 80
    functionName: QuantLib::MCForwardVanillaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCForwardVanillaEngine::timeGrid
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:105,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:108,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:108,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - controlVariate
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 118
    functionName: QuantLib::MCForwardVanillaEngine<MC, RNG, S>::MCForwardVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCForwardVanillaEngine<MC, RNG, S>::MCForwardVanillaEngine(\n
      \       ext::shared_ptr<StochasticProcess> process,\n        Size timeSteps,\n
      \       Size timeStepsPerYear,\n        bool brownianBridge,\n        bool antitheticVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed,\n        bool controlVariate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:124,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:126,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:127,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:129,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:130,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:132,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:133,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:137,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:138,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - std::vector::begin
    - std::vector::end
    - time
    - TimeGrid
    - exercise::lastDate
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCForwardVanillaEngine<MC,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:156,1
    - Dst: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::process_::initialValues
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:158,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:163,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:162,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:165,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:165,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:169,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:172,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 175
    functionName: QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/forward/mcforwardvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dynamic_cast<VanillaOption::arguments*>
    - QuantLib::MCForwardVanillaEngine<MC,RNG,S>::controlPricingEngine
    - dynamic_cast<const VanillaOption::results*>
    - ext::shared_ptr::optionType
    - ext::shared_ptr::getResults
    - QuantLib::MCForwardVanillaEngine<MC,RNG,S>::process_::initialValues
    - ext::shared_ptr::getArguments
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCForwardVanillaEngine<MC,RNG,S>::controlVariateValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:30,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:30,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:32,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:33,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:35,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:36,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - BarrierOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 41
    functionName: QuantLib::DiscretizedBarrierOption::DiscretizedBarrierOption
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - empty
    - resize
    - closestTime
    - time
    - size
    - exercise::date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscretizedBarrierOption::DiscretizedBarrierOption(\n                                         const
      BarrierOption::arguments& args,\n                                         const
      StochasticProcess& process,\n                                         const
      TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:45,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::DiscretizedBarrierOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - time
    - adjustValues
    - initialize
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::reset(Size size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rollback
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:52,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:54,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:54,1
    - Dst: QuantLib::DiscretizedBarrierOption::checkBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 56
    functionName: QuantLib::DiscretizedBarrierOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - method
    - QuantLib::DiscretizedBarrierOption::checkBarrier
    - time
    - rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::postAdjustValuesImpl()
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:60,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:61,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:61,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:63,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:70,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:82,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:90,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:90,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:103,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:111,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:111,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:115,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:124,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:128,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 59
    argCount: 2
    argNames:
    - optvalues
    - grid
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 131
    functionName: QuantLib::DiscretizedBarrierOption::checkBarrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 1
    functionsReached:
    - isOnTime
    - time
    - std::max
    - QL_FAIL
    - Array::size
    - values
    - back
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::checkBarrier(Array &optvalues, const
      Array &grid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - BarrierOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 140
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::DiscretizedDermanKaniBarrierOption
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DiscretizedDermanKaniBarrierOption::DiscretizedDermanKaniBarrierOption(\n
      \                                        const BarrierOption::arguments& args,\n
      \                                        const StochasticProcess& process,\n
      \                                        const TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:144,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - time
    - adjustValues
    - initialize
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rollback
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:149,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:149,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:151,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:151,1
    - Dst: QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:152,1
    - Dst: checkBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
    - rollback
    - time
    - checkBarrier
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::postAdjustValuesImpl()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:157,1
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:158,1
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:161,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:168,1
    - Dst: vanilla
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:170,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:175,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:180,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:182,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:187,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:194,1
    - Dst: vanilla
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:195,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:201,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:208,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 31
    argCount: 2
    argNames:
    - optvalues
    - grid
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 213
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 1
    functionsReached:
    - arguments
    - std::max
    - Array::size
    - vanilla
    - values
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::adjustBarrier(Array &optvalues,
      const Array &grid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:30,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:30,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:32,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:32,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:33,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:35,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:36,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - BarrierOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 41
    functionName: QuantLib::DiscretizedBarrierOption::DiscretizedBarrierOption
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - empty
    - resize
    - closestTime
    - time
    - size
    - exercise::date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscretizedBarrierOption::DiscretizedBarrierOption(\n                                         const
      BarrierOption::arguments& args,\n                                         const
      StochasticProcess& process,\n                                         const
      TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:45,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::DiscretizedBarrierOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - time
    - adjustValues
    - initialize
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::reset(Size size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rollback
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:52,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:54,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:54,1
    - Dst: QuantLib::DiscretizedBarrierOption::checkBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 56
    functionName: QuantLib::DiscretizedBarrierOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - method
    - QuantLib::DiscretizedBarrierOption::checkBarrier
    - time
    - rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::postAdjustValuesImpl()
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:60,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:61,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:61,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:63,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:70,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:75,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:82,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:90,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:90,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:103,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:111,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:111,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:115,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:124,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:128,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 59
    argCount: 2
    argNames:
    - optvalues
    - grid
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 131
    functionName: QuantLib::DiscretizedBarrierOption::checkBarrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 2
    functionsReached:
    - isOnTime
    - time
    - std::max
    - QL_FAIL
    - Array::size
    - values
    - back
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedBarrierOption::checkBarrier(Array &optvalues, const
      Array &grid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - BarrierOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 140
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::DiscretizedDermanKaniBarrierOption
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DiscretizedDermanKaniBarrierOption::DiscretizedDermanKaniBarrierOption(\n
      \                                        const BarrierOption::arguments& args,\n
      \                                        const StochasticProcess& process,\n
      \                                        const TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:143,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:144,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - time
    - adjustValues
    - initialize
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rollback
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:149,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:149,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:151,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:151,1
    - Dst: QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:152,1
    - Dst: checkBarrier
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
    - rollback
    - time
    - checkBarrier
    - method
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::postAdjustValuesImpl()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:157,1
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:158,1
    - Dst: arguments
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:159,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:161,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:168,1
    - Dst: vanilla
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:170,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:175,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:180,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:182,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:187,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:194,1
    - Dst: vanilla
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:195,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:196,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:201,1
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp:208,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 31
    argCount: 2
    argNames:
    - optvalues
    - grid
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 213
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::adjustBarrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.cpp
    functionUses: 2
    functionsReached:
    - arguments
    - std::max
    - Array::size
    - vanilla
    - values
    linkageType: ''
    returnType: void
    signature: void DiscretizedDermanKaniBarrierOption::adjustBarrier(Array &optvalues,
      const Array &grid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: QuantLib::FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 71
    functionName: QuantLib::FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:80,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:82,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:82,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:87,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:87,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:89,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:99,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:104,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:103,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:114,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:122,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:123,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:126,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:127,1
    - Dst: ext::shared_ptr::dividendTimes
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:128,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:131,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:132,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:142,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:143,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:150,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:151,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:160,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:161,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:162,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:165,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:166,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:167,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:168,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:175,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:181,1
    - Dst: ext::make_shared<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:182,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:195,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:195,1
    - Dst: BarrierOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:197,1
    - Dst: ext::make_shared<FdBlackScholesRebateEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:197,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:198,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:202,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:202,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:203,1
    - Dst: BarrierOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:203,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:204,1
    - Dst: BarrierOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:204,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:205,1
    - Dst: BarrierOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:205,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 207
    functionName: QuantLib::FdBlackScholesBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdBlackScholesRebateEngine>
    - BarrierOption::delta
    - VanillaOption::setPricingEngine
    - BarrierOption::theta
    - ext::shared_ptr::dividendTimes
    - ext::make_shared<FdmDirichletBoundary>
    - VanillaOption::delta
    - ext::make_shared<FdBlackScholesVanillaEngine>
    - BarrierOption::setPricingEngine
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::NPV
    - BarrierOption::NPV
    - std::list::push_back
    - ext::make_shared<FdmDividendHandler>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::make_shared<FdmBlackScholesSolver>
    - FdmBoundaryConditionSet::push_back
    - x0
    - exercise::lastDate
    - std::min
    - ext::shared_ptr::strike
    - Size
    - Null<Real>
    - time
    - std::max
    - triggered
    - ext::shared_ptr::thetaAt
    - VanillaOption::theta
    - BarrierOption::gamma
    - QL_REQUIRE
    - std::make_pair
    - std::log
    - riskFreeRate
    - ext::make_shared<FdmLogInnerValue>
    - Handle<GeneralizedBlackScholesProcess>
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: QuantLib::FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 71
    functionName: QuantLib::FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesBarrierEngine::FdBlackScholesBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:80,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:82,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:82,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:85,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:87,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:87,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:89,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:95,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:99,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:104,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:106,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:103,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:114,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:122,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:123,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:126,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:127,1
    - Dst: ext::shared_ptr::dividendTimes
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:128,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:131,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:132,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:142,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:143,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:150,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:151,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:160,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:161,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:162,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:165,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:166,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:167,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:168,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:175,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:181,1
    - Dst: ext::make_shared<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:182,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:195,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:195,1
    - Dst: BarrierOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:197,1
    - Dst: ext::make_shared<FdBlackScholesRebateEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:197,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:198,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:202,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:202,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:203,1
    - Dst: BarrierOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:203,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:204,1
    - Dst: BarrierOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:204,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:205,1
    - Dst: BarrierOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp:205,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 207
    functionName: QuantLib::FdBlackScholesBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdBlackScholesRebateEngine>
    - BarrierOption::delta
    - VanillaOption::setPricingEngine
    - BarrierOption::theta
    - ext::shared_ptr::dividendTimes
    - ext::make_shared<FdmDirichletBoundary>
    - VanillaOption::delta
    - ext::make_shared<FdBlackScholesVanillaEngine>
    - BarrierOption::setPricingEngine
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::NPV
    - BarrierOption::NPV
    - std::list::push_back
    - ext::make_shared<FdmDividendHandler>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::make_shared<FdmBlackScholesSolver>
    - FdmBoundaryConditionSet::push_back
    - x0
    - exercise::lastDate
    - std::min
    - ext::shared_ptr::strike
    - Size
    - Null<Real>
    - time
    - std::max
    - triggered
    - ext::shared_ptr::thetaAt
    - VanillaOption::theta
    - BarrierOption::gamma
    - QL_REQUIRE
    - std::make_pair
    - std::log
    - riskFreeRate
    - ext::make_shared<FdmLogInnerValue>
    - Handle<GeneralizedBlackScholesProcess>
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::FdHestonRebateEngine::FdHestonRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonRebateEngine::FdHestonRebateEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                               DividendSchedule dividends,\n
      \                                              Size tGrid,\n                                               Size
      xGrid,\n                                               Size vGrid,\n                                               Size
      dampingSteps,\n                                               const FdmSchemeDesc&
      schemeDesc,\n                                               ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                               const Real mixingFactor)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:77,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:87,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:88,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:95,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:101,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:102,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:103,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:104,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:99,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:110,1
    - Dst: CashOrNothingPayoff::CashOrNothingPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:114,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:119,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:119,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:123,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:126,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:127,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:133,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:133,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:134,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:140,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:140,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:141,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:151,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:152,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:150,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:154,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:155,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:155,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:156,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:156,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:157,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:157,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:158,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:158,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 159
    functionName: QuantLib::FdHestonRebateEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - v0
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - CashOrNothingPayoff::CashOrNothingPayoff
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - Null<Real>
    - Handle<FdmQuantoHelper>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - Handle<HestonProcess>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING FdHestonRebateEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:63,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::FdHestonRebateEngine::FdHestonRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonRebateEngine::FdHestonRebateEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                               DividendSchedule dividends,\n
      \                                              Size tGrid,\n                                               Size
      xGrid,\n                                               Size vGrid,\n                                               Size
      dampingSteps,\n                                               const FdmSchemeDesc&
      schemeDesc,\n                                               ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                               const Real mixingFactor)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:77,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:85,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:87,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:88,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:95,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:101,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:102,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:102,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:103,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:104,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:106,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:99,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:110,1
    - Dst: CashOrNothingPayoff::CashOrNothingPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:114,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:119,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:119,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:123,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:126,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:127,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:133,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:133,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:134,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:140,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:140,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:141,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:151,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:152,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:150,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:154,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:155,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:155,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:156,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:156,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:157,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:157,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:158,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp:158,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 159
    functionName: QuantLib::FdHestonRebateEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonrebateengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - v0
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - CashOrNothingPayoff::CashOrNothingPayoff
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - Null<Real>
    - Handle<FdmQuantoHelper>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - Handle<HestonProcess>
    linkageType: ''
    returnType: QL_DEPRECATED_ENABLE_WARNING
    signature: QL_DEPRECATED_ENABLE_WARNING FdHestonRebateEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' process'
    - payoff
    - exercise
    - arguments
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<AmericanExercise>
    - BarrierOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::AnalyticBinaryBarrierEngine_helper::AnalyticBinaryBarrierEngine_helper
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticBinaryBarrierEngine_helper(\n             const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n             const ext::shared_ptr<StrikedTypePayoff> &payoff,\n             const
      ext::shared_ptr<AmericanExercise> &exercise,\n             const BarrierOption::arguments
      &arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticBinaryBarrierEngine::AnalyticBinaryBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBinaryBarrierEngine::AnalyticBinaryBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:66,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:67,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:67,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:68,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:73,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:76,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:79,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:79,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:82,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:106,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:105,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:109,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:112,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:113,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:114,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:115,1
    - Dst: VanillaOption::vega
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:116,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:117,1
    - Dst: VanillaOption::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:118,1
    - Dst: VanillaOption::dividendRho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:119,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:124,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:124,1
    - Dst: AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:128,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticBinaryBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - VanillaOption::setPricingEngine
    - VanillaOption::delta
    - VanillaOption::dividendRho
    - VanillaOption::vega
    - ext::shared_ptr::lastDate
    - stateVariable
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
    - VanillaOption::theta
    - QL_REQUIRE
    - blackVolatility
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - EuropeanExercise::EuropeanExercise
    - riskFreeRate
    - ext::shared_ptr::dates
    - ext::shared_ptr::payoffAtExpiry
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void AnalyticBinaryBarrierEngine::calculate() const
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:135,1
    - Dst: lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:146,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:149,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:156,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:157,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:162,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:164,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:169,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:176,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:177,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:178,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:179,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:198,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:199,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:200,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:201,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:315,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 101
    argCount: 3
    argNames:
    - spot
    - variance
    - discount
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - strike
    - std::log
    - f
    - ext::shared_ptr::cashPayoff
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - lastDate
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticBinaryBarrierEngine_helper::payoffAtExpiry(\n         Real
      spot, Real variance, Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' process'
    - payoff
    - exercise
    - arguments
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<AmericanExercise>
    - BarrierOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 44
    functionName: QuantLib::AnalyticBinaryBarrierEngine_helper::AnalyticBinaryBarrierEngine_helper
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticBinaryBarrierEngine_helper(\n             const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process,\n             const ext::shared_ptr<StrikedTypePayoff> &payoff,\n             const
      ext::shared_ptr<AmericanExercise> &exercise,\n             const BarrierOption::arguments
      &arguments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticBinaryBarrierEngine::AnalyticBinaryBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBinaryBarrierEngine::AnalyticBinaryBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:66,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:67,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:67,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:68,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:73,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:76,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:79,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:79,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:82,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:106,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:105,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:109,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:112,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:113,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:114,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:115,1
    - Dst: VanillaOption::vega
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:116,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:117,1
    - Dst: VanillaOption::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:118,1
    - Dst: VanillaOption::dividendRho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:119,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:124,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:124,1
    - Dst: AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:128,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticBinaryBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - VanillaOption::setPricingEngine
    - VanillaOption::delta
    - VanillaOption::dividendRho
    - VanillaOption::vega
    - ext::shared_ptr::lastDate
    - stateVariable
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
    - VanillaOption::theta
    - QL_REQUIRE
    - blackVolatility
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - EuropeanExercise::EuropeanExercise
    - riskFreeRate
    - ext::shared_ptr::dates
    - ext::shared_ptr::payoffAtExpiry
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void AnalyticBinaryBarrierEngine::calculate() const
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:135,1
    - Dst: lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:146,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:149,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:152,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:156,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:157,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:162,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:164,1
    - Dst: ext::dynamic_pointer_cast<AssetOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:169,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:176,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:177,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:178,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:179,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:198,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:199,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:200,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:201,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp:315,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 101
    argCount: 3
    argNames:
    - spot
    - variance
    - discount
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticBinaryBarrierEngine_helper::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbinarybarrierengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - strike
    - std::log
    - f
    - ext::shared_ptr::cashPayoff
    - QL_FAIL
    - std::pow
    - std::sqrt
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - lastDate
    - ext::dynamic_pointer_cast<AssetOrNothingPayoff>
    - optionType
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticBinaryBarrierEngine_helper::payoffAtExpiry(\n         Real
      spot, Real variance, Real discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process1
    - process2
    - rho
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::AnalyticTwoAssetBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticTwoAssetBarrierEngine::AnalyticTwoAssetBarrierEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Handle<Quote> rho)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:42,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:42,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:47,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:47,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:51,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:55,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:55,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::call
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::call
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:74,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:74,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::put
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::put
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:85,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::AnalyticTwoAssetBarrierEngine::B
    - QuantLib::AnalyticTwoAssetBarrierEngine::A
    - QuantLib::AnalyticTwoAssetBarrierEngine::put
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticTwoAssetBarrierEngine::call
    - QL_FAIL
    - triggered
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticTwoAssetBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::underlying1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::underlying2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:100,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticTwoAssetBarrierEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticTwoAssetBarrierEngine::volatility1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticTwoAssetBarrierEngine::volatility2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::barrier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:125,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:131,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::dividendYield1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::dividendYield2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:141,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::costOfCarry1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:145,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::costOfCarry2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::mu
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 4
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 4
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d3() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 5
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d4() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 3
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::mu
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 4
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::e1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 4
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::e1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e3() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 5
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - QuantLib::AnalyticTwoAssetBarrierEngine::e2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e4() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - b
    - vol
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::mu(Real b, Real vol) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 5
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::call
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - nd
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::call() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 5
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::put
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    - nd
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::put() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:198,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:198,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:199,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:200,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:202,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:203,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:208,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:209,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:210,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:211,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:212,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:212,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:214,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:215,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:216,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:217,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:218,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:223,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:223,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:228,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 232
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - value
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::M
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::A(Real eta, Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::B(Real, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - m_a
    - m_b
    - rho
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::M
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::M(Real m_a, Real m_b, Real rho)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process1
    - process2
    - rho
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::AnalyticTwoAssetBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticTwoAssetBarrierEngine::AnalyticTwoAssetBarrierEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Handle<Quote> rho)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:42,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:42,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:47,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:47,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:51,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:55,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:55,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::call
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::call
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:74,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:74,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::put
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::put
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:80,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:85,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 38
    functionDepth: 6
    functionLinenumber: 38
    functionLinenumberEnd: 87
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::AnalyticTwoAssetBarrierEngine::B
    - QuantLib::AnalyticTwoAssetBarrierEngine::A
    - QuantLib::AnalyticTwoAssetBarrierEngine::put
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticTwoAssetBarrierEngine::call
    - QL_FAIL
    - triggered
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticTwoAssetBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 4
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::underlying1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 6
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::underlying2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:100,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 6
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 16
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticTwoAssetBarrierEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 5
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticTwoAssetBarrierEngine::volatility1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 6
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticTwoAssetBarrierEngine::volatility2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::barrier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 4
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:125,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:131,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::dividendYield1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::dividendYield2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:141,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield1
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::costOfCarry1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:145,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::dividendYield2
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticTwoAssetBarrierEngine::costOfCarry2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:149,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::mu
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 4
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 4
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d3() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 5
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::d4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::d4() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:166,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 3
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::mu
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 4
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::rho
    - QuantLib::AnalyticTwoAssetBarrierEngine::e1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 4
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::e1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e3() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 5
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::e4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - QuantLib::AnalyticTwoAssetBarrierEngine::e2
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::e4() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - b
    - vol
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::mu(Real b, Real vol) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 5
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::call
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - nd
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::call() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: nd
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 5
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::put
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::d1
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::d2
    - nd
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::put() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:198,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:198,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:199,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:200,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:202,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:203,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:208,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:209,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:210,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:211,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:212,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:212,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:214,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:215,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:216,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:217,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:217,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:218,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:218,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:223,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:223,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:228,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticTwoAssetBarrierEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 232
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry2
    - QuantLib::AnalyticTwoAssetBarrierEngine::strike
    - std::exp
    - QuantLib::AnalyticTwoAssetBarrierEngine::costOfCarry1
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility2
    - value
    - std::log
    - QuantLib::AnalyticTwoAssetBarrierEngine::barrier
    - QuantLib::AnalyticTwoAssetBarrierEngine::residualTime
    - QuantLib::AnalyticTwoAssetBarrierEngine::riskFreeRate
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying1
    - std::sqrt
    - QuantLib::AnalyticTwoAssetBarrierEngine::volatility1
    - QuantLib::AnalyticTwoAssetBarrierEngine::M
    - QuantLib::AnalyticTwoAssetBarrierEngine::underlying2
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::A(Real eta, Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::B(Real, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - m_a
    - m_b
    - rho
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: QuantLib::AnalyticTwoAssetBarrierEngine::M
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analytictwoassetbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: Real AnalyticTwoAssetBarrierEngine::M(Real m_a, Real m_b, Real rho)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::FdHestonDoubleBarrierEngine::FdHestonDoubleBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonDoubleBarrierEngine::FdHestonDoubleBarrierEngine(\n        const
      ext::shared_ptr<HestonModel>& model,\n        Size tGrid,\n        Size xGrid,\n
      \       Size vGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc&
      schemeDesc,\n        ext::shared_ptr<LocalVolTermStructure> leverageFct,\n        const
      Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:51,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:56,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:60,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:63,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:71,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:76,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:77,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:78,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:78,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:79,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:74,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:82,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:92,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:92,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:96,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:100,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:100,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:101,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:104,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:104,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:105,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:114,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:115,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:113,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:117,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:118,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:118,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:119,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:119,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:120,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:120,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:121,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 122
    functionName: QuantLib::FdHestonDoubleBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - v0
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - Handle<FdmQuantoHelper>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonDoubleBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::FdHestonDoubleBarrierEngine::FdHestonDoubleBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonDoubleBarrierEngine::FdHestonDoubleBarrierEngine(\n        const
      ext::shared_ptr<HestonModel>& model,\n        Size tGrid,\n        Size xGrid,\n
      \       Size vGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc&
      schemeDesc,\n        ext::shared_ptr<LocalVolTermStructure> leverageFct,\n        const
      Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:51,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:56,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:60,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:63,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:71,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:76,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:77,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:78,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:78,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:79,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:74,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:82,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:92,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:92,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:96,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:100,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:100,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:101,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:104,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:104,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:105,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:114,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:115,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:113,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:117,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:118,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:118,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:119,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:119,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:120,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:120,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:121,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 122
    functionName: QuantLib::FdHestonDoubleBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestondoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - v0
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - Handle<FdmQuantoHelper>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonDoubleBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: QuantLib::FdBlackScholesRebateEngine::FdBlackScholesRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesRebateEngine::FdBlackScholesRebateEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 66
    functionName: QuantLib::FdBlackScholesRebateEngine::FdBlackScholesRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesRebateEngine::FdBlackScholesRebateEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:75,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:88,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:87,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:94,1
    - Dst: CashOrNothingPayoff::CashOrNothingPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:98,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:103,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:103,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:107,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:110,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:111,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:117,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:117,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:118,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:124,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:124,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:125,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:135,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:136,1
    - Dst: FdmBlackScholesSolver::FdmBlackScholesSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:134,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:139,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:140,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:141,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:142,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 144
    functionName: QuantLib::FdBlackScholesRebateEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - CashOrNothingPayoff::CashOrNothingPayoff
    - FdmBoundaryConditionSet::push_back
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - Null<Real>
    - FdmBlackScholesSolver::FdmBlackScholesSolver
    - time
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - std::log
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesRebateEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: QuantLib::FdBlackScholesRebateEngine::FdBlackScholesRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesRebateEngine::FdBlackScholesRebateEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:60,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 66
    functionName: QuantLib::FdBlackScholesRebateEngine::FdBlackScholesRebateEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesRebateEngine::FdBlackScholesRebateEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:75,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:88,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:90,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:87,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:94,1
    - Dst: CashOrNothingPayoff::CashOrNothingPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:98,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:103,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:103,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:107,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:110,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:111,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:117,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:117,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:118,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:124,1
    - Dst: FdmBoundaryConditionSet::value_type
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:124,1
    - Dst: FdmDirichletBoundary::FdmDirichletBoundary
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:125,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:135,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:136,1
    - Dst: FdmBlackScholesSolver::FdmBlackScholesSolver
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:134,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:139,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:140,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:141,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:142,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp:143,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 144
    functionName: QuantLib::FdBlackScholesRebateEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdblackscholesrebateengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmBoundaryConditionSet::value_type
    - FdmDirichletBoundary::FdmDirichletBoundary
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - CashOrNothingPayoff::CashOrNothingPayoff
    - FdmBoundaryConditionSet::push_back
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - Null<Real>
    - FdmBlackScholesSolver::FdmBlackScholesSolver
    - time
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - std::log
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesRebateEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - payoff
    - arguments
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<CashOrNothingPayoff>
    - DoubleBarrierOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::AnalyticDoubleBarrierBinaryEngine_helper
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierBinaryEngine_helper(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             const
      ext::shared_ptr<CashOrNothingPayoff> &payoff,\n             const DoubleBarrierOption::arguments
      &arguments)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:71,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:75,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:93,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:95,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:101,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:102,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:102,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:103,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:110,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:110,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:113,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:115,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:117,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spot
    - variance
    - barrierType
    - maxIteration
    - requiredConvergence
    argTypes:
    - Real
    - Real
    - DoubleBarrier::Type
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 121
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - std::log
    - cashPayoff
    - std::sin
    - time
    - riskFreeRate
    - std::max
    - std::pow
    - std::fabs
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry(\n         Real
      spot, Real variance, DoubleBarrier::Type barrierType,\n         Size maxIteration,
      Real requiredConvergence)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:134,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:135,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:138,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:142,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:145,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:147,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:152,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:153,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:154,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:159,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:160,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:160,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:169,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spot
    - variance
    - barrierType
    - maxIteration
    - requiredConvergence
    argTypes:
    - Real
    - Real
    - DoubleBarrier::Type
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 172
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - fabs
    - std::log
    - cashPayoff
    - std::sin
    - time
    - riskFreeRate
    - std::max
    - std::pow
    - exercise::lastDate
    - std::swap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO(\n         Real
      spot, Real variance, DoubleBarrier::Type barrierType,\n         Size maxIteration,
      Real requiredConvergence)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:176,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 178
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine::AnalyticDoubleBarrierBinaryEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierBinaryEngine::AnalyticDoubleBarrierBinaryEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:188,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:188,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:189,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:193,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:195,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:199,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:202,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:205,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:206,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:213,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:215,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:217,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:240,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:260,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:280,1
    - Dst: AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:296,1
    - Dst: AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:301,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 81
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 304
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::strike
    - AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
    - ext::dynamic_pointer_cast<AmericanExercise>
    - ext::shared_ptr::cashPayoff
    - AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
    - ext::shared_ptr::dates
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - stateVariable
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticDoubleBarrierBinaryEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - payoff
    - arguments
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<CashOrNothingPayoff>
    - DoubleBarrierOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::AnalyticDoubleBarrierBinaryEngine_helper
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierBinaryEngine_helper(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             const
      ext::shared_ptr<CashOrNothingPayoff> &payoff,\n             const DoubleBarrierOption::arguments
      &arguments)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:71,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:75,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:84,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:93,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:95,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:101,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:101,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:102,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:102,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:103,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:110,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:110,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:113,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:115,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:117,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spot
    - variance
    - barrierType
    - maxIteration
    - requiredConvergence
    argTypes:
    - Real
    - Real
    - DoubleBarrier::Type
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 121
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - std::log
    - cashPayoff
    - std::sin
    - time
    - riskFreeRate
    - std::max
    - std::pow
    - std::fabs
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry(\n         Real
      spot, Real variance, DoubleBarrier::Type barrierType,\n         Size maxIteration,
      Real requiredConvergence)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:131,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:134,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:135,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:138,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:142,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:145,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:147,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:152,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:153,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:154,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:159,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:160,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:160,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:169,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:169,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - spot
    - variance
    - barrierType
    - maxIteration
    - requiredConvergence
    argTypes:
    - Real
    - Real
    - DoubleBarrier::Type
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 172
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - std::exp
    - fabs
    - std::log
    - cashPayoff
    - std::sin
    - time
    - riskFreeRate
    - std::max
    - std::pow
    - exercise::lastDate
    - std::swap
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO(\n         Real
      spot, Real variance, DoubleBarrier::Type barrierType,\n         Size maxIteration,
      Real requiredConvergence)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:176,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 178
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine::AnalyticDoubleBarrierBinaryEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierBinaryEngine::AnalyticDoubleBarrierBinaryEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:188,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:188,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:189,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:193,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:195,1
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:199,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:202,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:205,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:206,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:213,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:215,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:217,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:240,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:260,1
    - Dst: ext::shared_ptr::cashPayoff
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:280,1
    - Dst: AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:296,1
    - Dst: AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp:301,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 81
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 304
    functionName: QuantLib::AnalyticDoubleBarrierBinaryEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierbinaryengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::strike
    - AnalyticDoubleBarrierBinaryEngine_helper::payoffAtExpiry
    - ext::dynamic_pointer_cast<AmericanExercise>
    - ext::shared_ptr::cashPayoff
    - AnalyticDoubleBarrierBinaryEngine_helper::payoffKIKO
    - ext::shared_ptr::dates
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - stateVariable
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticDoubleBarrierBinaryEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - barrierType
    - barrier
    - rebate
    - type
    - strike
    - discounts
    - diffProcess
    - sequenceGen
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    - ext::shared_ptr<StochasticProcess1D>
    - PseudoRandom::ursg_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::BarrierPathPricer::BarrierPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BarrierPathPricer::BarrierPathPricer(Barrier::Type barrierType,\n
      \                                        Real barrier,\n                                         Real
      rebate,\n                                         Option::Type type,\n                                         Real
      strike,\n                                         std::vector<DiscountFactor>
      discounts,\n                                         ext::shared_ptr<StochasticProcess1D>
      diffProcess,\n                                         PseudoRandom::ursg_type
      sequenceGen)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:46,1
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:52,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:56,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:58,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:67,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:72,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:86,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:91,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:105,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:106,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:110,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:124,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:139,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:143,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:143,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:148,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:153,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 88
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 156
    functionName: BarrierPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Null<Size>
    - std::log
    - front
    - nextSequence
    - length
    - QL_FAIL
    - diffusion
    - std::sqrt
    - payoff_
    - dt
    - timeGrid
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BarrierPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - barrierType
    - barrier
    - rebate
    - type
    - strike
    - discounts
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 171
    functionName: QuantLib::BiasedBarrierPathPricer::BiasedBarrierPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BiasedBarrierPathPricer::BiasedBarrierPathPricer(Barrier::Type
      barrierType,\n                                                     Real barrier,\n
      \                                                    Real rebate,\n                                                     Option::Type
      type,\n                                                     Real strike,\n                                                     std::vector<DiscountFactor>
      discounts)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:175,1
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:177,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:181,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:230,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:239,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:244,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 247
    functionName: BiasedBarrierPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_FAIL
    - length
    - payoff_
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BiasedBarrierPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - barrierType
    - barrier
    - rebate
    - type
    - strike
    - discounts
    - diffProcess
    - sequenceGen
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    - ext::shared_ptr<StochasticProcess1D>
    - PseudoRandom::ursg_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::BarrierPathPricer::BarrierPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BarrierPathPricer::BarrierPathPricer(Barrier::Type barrierType,\n
      \                                        Real barrier,\n                                         Real
      rebate,\n                                         Option::Type type,\n                                         Real
      strike,\n                                         std::vector<DiscountFactor>
      discounts,\n                                         ext::shared_ptr<StochasticProcess1D>
      diffProcess,\n                                         PseudoRandom::ursg_type
      sequenceGen)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:46,1
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:52,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:56,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:58,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:67,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:72,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:86,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:90,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:91,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:105,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:106,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:110,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:124,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:125,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:139,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:143,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:143,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:148,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:153,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 88
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 156
    functionName: BarrierPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Null<Size>
    - std::log
    - front
    - nextSequence
    - length
    - QL_FAIL
    - diffusion
    - std::sqrt
    - payoff_
    - dt
    - timeGrid
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BarrierPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - barrierType
    - barrier
    - rebate
    - type
    - strike
    - discounts
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Option::Type
    - Real
    - std::vector<DiscountFactor>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 171
    functionName: QuantLib::BiasedBarrierPathPricer::BiasedBarrierPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BiasedBarrierPathPricer::BiasedBarrierPathPricer(Barrier::Type
      barrierType,\n                                                     Real barrier,\n
      \                                                    Real rebate,\n                                                     Option::Type
      type,\n                                                     Real strike,\n                                                     std::vector<DiscountFactor>
      discounts)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:175,1
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:176,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:177,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:181,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:230,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:239,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp:244,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 247
    functionName: BiasedBarrierPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_FAIL
    - length
    - payoff_
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BiasedBarrierPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - series
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticDoubleBarrierEngine::AnalyticDoubleBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierEngine::AnalyticDoubleBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process, int series)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:35,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:40,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:43,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:48,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:48,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:52,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:54,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKI
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:62,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:72,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKI
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:82,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:94,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticDoubleBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::callKO
    - QuantLib::AnalyticDoubleBarrierEngine::putKO
    - QL_REQUIRE
    - exercise::type
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QuantLib::AnalyticDoubleBarrierEngine::putKI
    - triggered
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::callKI
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticDoubleBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticDoubleBarrierEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionName: QuantLib::AnalyticDoubleBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:112,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::AnalyticDoubleBarrierEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticDoubleBarrierEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::AnalyticDoubleBarrierEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticDoubleBarrierEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:120,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 3
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::volatilitySquared() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticDoubleBarrierEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::barrierLo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::barrierHi() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:141,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticDoubleBarrierEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:145,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 2
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticDoubleBarrierEngine::dividendDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::costOfCarry() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:160,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 167
    functionName: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
    - BlackCalculator::value
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::vanillaEquivalent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:177,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:177,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:178,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:185,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:185,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:187,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:187,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 169
    functionDepth: 4
    functionLinenumber: 169
    functionLinenumberEnd: 198
    functionName: QuantLib::AnalyticDoubleBarrierEngine::callKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    - std::exp
    - std::log
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    - QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    - QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    - std::pow
    - f_
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::callKO() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 5
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::AnalyticDoubleBarrierEngine::callKI
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::callKO
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::callKI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:212,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:212,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:213,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:213,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:225,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:225,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:227,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 205
    functionDepth: 4
    functionLinenumber: 205
    functionLinenumberEnd: 234
    functionName: QuantLib::AnalyticDoubleBarrierEngine::putKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    - std::exp
    - std::log
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    - QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    - QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    - std::pow
    - f_
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::putKO() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 5
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: QuantLib::AnalyticDoubleBarrierEngine::putKI
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    - QuantLib::AnalyticDoubleBarrierEngine::putKO
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::putKI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - series
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticDoubleBarrierEngine::AnalyticDoubleBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDoubleBarrierEngine::AnalyticDoubleBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process, int series)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:35,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:40,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:43,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:48,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:48,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:52,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:54,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKI
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:62,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:69,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:72,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKI
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:82,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:89,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:94,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 33
    functionDepth: 6
    functionLinenumber: 33
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticDoubleBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::callKO
    - QuantLib::AnalyticDoubleBarrierEngine::putKO
    - QL_REQUIRE
    - exercise::type
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QuantLib::AnalyticDoubleBarrierEngine::putKI
    - triggered
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::callKI
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticDoubleBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::AnalyticDoubleBarrierEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 5
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionName: QuantLib::AnalyticDoubleBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 3
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:112,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: QuantLib::AnalyticDoubleBarrierEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 8
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticDoubleBarrierEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::AnalyticDoubleBarrierEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - blackVolatility
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticDoubleBarrierEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:120,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 3
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::volatilitySquared() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticDoubleBarrierEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::barrierLo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::barrierHi() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:141,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticDoubleBarrierEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:145,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 2
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticDoubleBarrierEngine::dividendDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:154,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeRate
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticDoubleBarrierEngine::costOfCarry() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:160,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:161,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 167
    functionName: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 4
    functionsReached:
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - QuantLib::AnalyticDoubleBarrierEngine::dividendDiscount
    - BlackCalculator::value
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::vanillaEquivalent() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:171,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:177,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:177,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:178,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:178,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:179,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:180,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:181,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:182,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:184,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:185,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:185,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:186,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:187,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:187,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:189,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:190,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:191,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:192,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:196,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 169
    functionDepth: 4
    functionLinenumber: 169
    functionLinenumberEnd: 198
    functionName: QuantLib::AnalyticDoubleBarrierEngine::callKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    - std::exp
    - std::log
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    - QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    - QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    - std::pow
    - f_
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::callKO() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::callKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 5
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::AnalyticDoubleBarrierEngine::callKI
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::callKO
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::callKI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:212,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:212,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:213,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:213,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:214,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:215,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:216,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:217,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:219,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:220,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:221,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:222,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:224,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:225,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:225,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierLo
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::barrierHi
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:226,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:227,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:231,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:232,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 205
    functionDepth: 4
    functionLinenumber: 205
    functionLinenumberEnd: 234
    functionName: QuantLib::AnalyticDoubleBarrierEngine::putKO
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticDoubleBarrierEngine::barrierLo
    - std::exp
    - std::log
    - QuantLib::AnalyticDoubleBarrierEngine::residualTime
    - QuantLib::AnalyticDoubleBarrierEngine::strike
    - QuantLib::AnalyticDoubleBarrierEngine::stdDeviation
    - QuantLib::AnalyticDoubleBarrierEngine::costOfCarry
    - QuantLib::AnalyticDoubleBarrierEngine::dividendYield
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::barrierHi
    - std::pow
    - f_
    - QuantLib::AnalyticDoubleBarrierEngine::underlying
    - QuantLib::AnalyticDoubleBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticDoubleBarrierEngine::volatilitySquared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::putKO() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    - Dst: QuantLib::AnalyticDoubleBarrierEngine::putKO
      Src: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 5
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: QuantLib::AnalyticDoubleBarrierEngine::putKI
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticdoublebarrierengine.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::AnalyticDoubleBarrierEngine::vanillaEquivalent
    - QuantLib::AnalyticDoubleBarrierEngine::putKO
    linkageType: ''
    returnType: Real
    signature: Real AnalyticDoubleBarrierEngine::putKI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& vanilla() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached:
    - values
    linkageType: ''
    returnType: Array
    signature: Array & vanilla() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: '& arguments() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BarrierOption::arguments
    signature: BarrierOption::arguments & arguments() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::DiscretizedBarrierOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: values
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: '& vanilla() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached:
    - values
    linkageType: ''
    returnType: Array
    signature: Array & vanilla() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: '& arguments() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BarrierOption::arguments
    signature: BarrierOption::arguments & arguments() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::DiscretizedBarrierOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/discretizedbarrieroption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DiscretizedDermanKaniBarrierOption::mandatoryTimes
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:68,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:73,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - process
    - timeSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 75
    functionName: QuantLib::BinomialBarrierEngine::BinomialBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialBarrierEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                              Size timeSteps,\n                              Size
      maxTimeSteps = 0)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:93,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:97,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:99,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:100,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:101,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:102,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:104,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:106,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:107,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:109,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:111,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:124,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:128,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:127,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:141,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:143,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:144,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:146,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:161,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:160,1
    - Dst: BlackScholesLattice<T>::BlackScholesLattice<T>
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:164,1
    - Dst: D::initialize
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:167,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:175,1
    - Dst: D::values
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:176,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:177,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:177,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:181,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:182,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:183,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:192,1
    - Dst: D::values
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:194,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:194,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:197,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:198,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:203,1
    - Dst: D::presentValue
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:204,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 214
    functionName: QuantLib::BinomialBarrierEngine<T,D>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - close
    - T::T
    - stateVariable
    - dividendYield
    - QL_ENSURE
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - exercise::lastDate
    - ext::shared_ptr::strike
    - D::presentValue
    - DayCounter::yearFraction
    - Size
    - ext::shared_ptr::underlying
    - triggered
    - BlackScholesLattice<T>::BlackScholesLattice<T>
    - QL_REQUIRE
    - blackVolatility
    - D::rollback
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - std::log
    - D::initialize
    - riskFreeRate
    - D::values
    - Array::size
    linkageType: ''
    returnType: void
    signature: void BinomialBarrierEngine<T,D>::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:68,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:73,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - process
    - timeSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 75
    functionName: QuantLib::BinomialBarrierEngine::BinomialBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialBarrierEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                              Size timeSteps,\n                              Size
      maxTimeSteps = 0)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:93,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:97,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:99,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:100,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:101,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:102,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:104,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:106,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:107,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:109,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:111,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:124,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:128,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:127,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:141,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:143,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:144,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:146,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:161,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:160,1
    - Dst: BlackScholesLattice<T>::BlackScholesLattice<T>
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:164,1
    - Dst: D::initialize
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:167,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:175,1
    - Dst: D::values
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:176,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:177,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:177,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:181,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:182,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:183,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:192,1
    - Dst: D::values
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:194,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:194,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:197,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:198,1
    - Dst: D::rollback
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:203,1
    - Dst: D::presentValue
      Src: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp:204,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 214
    functionName: QuantLib::BinomialBarrierEngine<T,D>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/binomialbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - close
    - T::T
    - stateVariable
    - dividendYield
    - QL_ENSURE
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - exercise::lastDate
    - ext::shared_ptr::strike
    - D::presentValue
    - DayCounter::yearFraction
    - Size
    - ext::shared_ptr::underlying
    - triggered
    - BlackScholesLattice<T>::BlackScholesLattice<T>
    - QL_REQUIRE
    - blackVolatility
    - D::rollback
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - std::log
    - D::initialize
    - riskFreeRate
    - D::values
    - Array::size
    linkageType: ''
    returnType: void
    signature: void BinomialBarrierEngine<T,D>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::FdHestonBarrierEngine::FdHestonBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonBarrierEngine::FdHestonBarrierEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: QuantLib::FdHestonBarrierEngine::FdHestonBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonBarrierEngine::FdHestonBarrierEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:71,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:72,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:76,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:86,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:94,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:100,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:101,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:101,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:102,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:102,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:103,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:98,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:113,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:121,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:122,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:123,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:125,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:126,1
    - Dst: ext::shared_ptr::dividendTimes
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:127,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:130,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:134,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:134,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:144,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:145,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:151,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:152,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:165,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:166,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:166,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:167,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:167,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:168,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:168,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:169,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:169,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:176,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:180,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:180,1
    - Dst: ext::make_shared<FdHestonVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:181,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:193,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:193,1
    - Dst: BarrierOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:194,1
    - Dst: ext::make_shared<FdHestonRebateEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:195,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:197,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:198,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:202,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:202,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:203,1
    - Dst: BarrierOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:203,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:204,1
    - Dst: BarrierOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:204,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:205,1
    - Dst: BarrierOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:205,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 207
    functionName: QuantLib::FdHestonBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - BarrierOption::delta
    - VanillaOption::setPricingEngine
    - BarrierOption::theta
    - ext::shared_ptr::dividendTimes
    - ext::make_shared<FdmDirichletBoundary>
    - v0
    - VanillaOption::delta
    - BarrierOption::setPricingEngine
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::NPV
    - BarrierOption::NPV
    - std::list::push_back
    - ext::make_shared<FdmDividendHandler>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - std::min
    - Size
    - ext::make_shared<FdHestonVanillaEngine>
    - Null<Real>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::make_shared<FdHestonRebateEngine>
    - ext::shared_ptr::thetaAt
    - VanillaOption::theta
    - BarrierOption::gamma
    - QL_REQUIRE
    - std::make_pair
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - ext::make_shared<FdmLogInnerValue>
    - ext::shared_ptr<PricingEngine>
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void FdHestonBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::FdHestonBarrierEngine::FdHestonBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonBarrierEngine::FdHestonBarrierEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: QuantLib::FdHestonBarrierEngine::FdHestonBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonBarrierEngine::FdHestonBarrierEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:71,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:72,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:76,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:86,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:87,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:94,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:100,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:101,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:101,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:102,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:102,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:103,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:105,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:98,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:113,1
    - Dst: ext::make_shared<FdmDividendHandler>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:121,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:122,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:123,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:125,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:126,1
    - Dst: ext::shared_ptr::dividendTimes
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:127,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:130,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:134,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:134,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:144,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:145,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:151,1
    - Dst: ext::make_shared<FdmDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:152,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:165,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:166,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:166,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:167,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:167,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:168,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:168,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:169,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:169,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:176,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:180,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:180,1
    - Dst: ext::make_shared<FdHestonVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:181,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:193,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:193,1
    - Dst: BarrierOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:194,1
    - Dst: ext::make_shared<FdHestonRebateEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:195,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:197,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:198,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:202,1
    - Dst: BarrierOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:202,1
    - Dst: VanillaOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:203,1
    - Dst: BarrierOption::delta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:203,1
    - Dst: VanillaOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:204,1
    - Dst: BarrierOption::gamma
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:204,1
    - Dst: VanillaOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:205,1
    - Dst: BarrierOption::theta
      Src: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp:205,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 207
    functionName: QuantLib::FdHestonBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/fdhestonbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - BarrierOption::delta
    - VanillaOption::setPricingEngine
    - BarrierOption::theta
    - ext::shared_ptr::dividendTimes
    - ext::make_shared<FdmDirichletBoundary>
    - v0
    - VanillaOption::delta
    - BarrierOption::setPricingEngine
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::type
    - dividendYield
    - s0
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - VanillaOption::NPV
    - BarrierOption::NPV
    - std::list::push_back
    - ext::make_shared<FdmDividendHandler>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr::strike
    - std::min
    - Size
    - ext::make_shared<FdHestonVanillaEngine>
    - Null<Real>
    - time
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - ext::make_shared<FdHestonRebateEngine>
    - ext::shared_ptr::thetaAt
    - VanillaOption::theta
    - BarrierOption::gamma
    - QL_REQUIRE
    - std::make_pair
    - std::log
    - process
    - riskFreeRate
    - ext::shared_ptr::volaEstimate
    - ext::make_shared<FdmLogInnerValue>
    - ext::shared_ptr<PricingEngine>
    - VanillaOption::gamma
    linkageType: ''
    returnType: void
    signature: void FdHestonBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::AnalyticPartialTimeBarrierOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPartialTimeBarrierOptionEngine::AnalyticPartialTimeBarrierOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:39,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:39,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:41,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:41,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:44,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:50,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:52,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:56,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:66,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:68,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:75,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:77,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:81,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:93,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:97,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 3
    argNames:
    - ' arguments'
    - ' payoff'
    - ' process'
    argTypes:
    - PartialTimeBarrierOption::arguments
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
    - dividendYield
    - strike
    - riskFreeRate
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QL_FAIL
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticPartialTimeBarrierOptionEngine::calculate(PartialTimeBarrierOption::arguments&
      arguments,\n                                                          const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                                                          const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:105,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:109,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:119,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:122,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:124,1
    - Dst: getSymmetricBarrierType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:125,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:128,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:129,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:130,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:131,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    - ext::make_shared<PlainVanillaPayoff>
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::optionType
    - riskFreeRate
    - getSymmetricBarrierType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticPartialTimeBarrierOptionEngine::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:145,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:146,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:147,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:148,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:149,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:150,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:151,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:152,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:153,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:154,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:155,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:156,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:157,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:164,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:165,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:165,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:166,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:166,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:170,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:171,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:171,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:172,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:172,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:173,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:174,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:174,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:175,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:175,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:177,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:181,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 186
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - QL_FAIL
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticPartialTimeBarrierOptionEngine::CoB2(\n                                      Barrier::Type
      barrierType, \n                                      Real barrier, Real strike,
      Rate r, Rate q) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:191,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:192,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:193,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:194,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:195,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:196,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:197,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:198,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:199,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:200,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:201,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:202,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:203,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:204,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:208,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:213,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:215,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:215,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:216,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:216,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:219,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:219,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:220,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 223
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CoB1(Real barrier, Real
      strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:229,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:232,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:236,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:237,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:239,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - eta
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Integer
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - VanillaOption::setPricingEngine
    - VanillaOption::NPV
    - ext::make_shared<AnalyticEuropeanEngine>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CIA(Integer eta, Real
      barrier, Real strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:245,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:247,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:248,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:249,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:251,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:252,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:253,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:254,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:257,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:258,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:258,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:259,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:259,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:262,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - eta
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Integer
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 264
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CA(Integer eta, Real barrier,
      Real strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:271,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 4
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticPartialTimeBarrierOptionEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 0
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticPartialTimeBarrierOptionEngine::coverEventTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticPartialTimeBarrierOptionEngine::volatility(Time
      t, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:285,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:286,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:286,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:287,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::pow
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::f1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:291,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::f2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - b
    - rho
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - CmlNormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::M(Real a, Real b, Real
      rho) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:305,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticPartialTimeBarrierOptionEngine::mu(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:310,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:311,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::d1(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:316,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:317,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:318,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::d2(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:322,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:323,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - std::log
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:328,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:329,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:330,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:334,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e3(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:340,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 339
    functionDepth: 3
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e4(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:345,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:346,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 348
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:351,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:352,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:353,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 354
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:357,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:358,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g3(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:363,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:364,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:365,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 362
    functionDepth: 3
    functionLinenumber: 362
    functionLinenumberEnd: 366
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g4(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - S
    - H
    - power
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 3
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::HS(Real S, Real H, Real
      power) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::AnalyticPartialTimeBarrierOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPartialTimeBarrierOptionEngine::AnalyticPartialTimeBarrierOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:39,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:39,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:41,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:41,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:44,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:50,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:52,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:56,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:66,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:68,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:75,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:77,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:81,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:93,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:97,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 3
    argNames:
    - ' arguments'
    - ' payoff'
    - ' process'
    argTypes:
    - PartialTimeBarrierOption::arguments
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
    - dividendYield
    - strike
    - riskFreeRate
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QL_FAIL
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticPartialTimeBarrierOptionEngine::calculate(PartialTimeBarrierOption::arguments&
      arguments,\n                                                          const
      ext::shared_ptr<PlainVanillaPayoff>& payoff,\n                                                          const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:105,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:105,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:109,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:119,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:122,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:124,1
    - Dst: getSymmetricBarrierType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:125,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:128,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:129,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:130,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:131,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::calculate
    - ext::make_shared<PlainVanillaPayoff>
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::optionType
    - riskFreeRate
    - getSymmetricBarrierType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticPartialTimeBarrierOptionEngine::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:145,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:146,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:147,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:148,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:149,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:150,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:151,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:152,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:153,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:154,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:155,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:156,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:157,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:164,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:165,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:165,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:166,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:166,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:170,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:171,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:171,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:172,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:172,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:173,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:174,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:174,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:175,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:175,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:177,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:181,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 5
    argNames:
    - barrierType
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Barrier::Type
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 140
    functionDepth: 4
    functionLinenumber: 140
    functionLinenumberEnd: 186
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - QL_FAIL
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticPartialTimeBarrierOptionEngine::CoB2(\n                                      Barrier::Type
      barrierType, \n                                      Real barrier, Real strike,
      Rate r, Rate q) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:191,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:192,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:193,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:194,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:195,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:196,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:197,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:198,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:199,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:200,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:201,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:202,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:203,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:204,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:208,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:209,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:213,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:215,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:215,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:216,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:216,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:217,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:218,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:219,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:219,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:220,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 188
    functionDepth: 4
    functionLinenumber: 188
    functionLinenumberEnd: 223
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CoB1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CoB1(Real barrier, Real
      strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:229,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:232,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:236,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:237,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:239,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - eta
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Integer
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CIA
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 2
    functionsReached:
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - VanillaOption::setPricingEngine
    - VanillaOption::NPV
    - ext::make_shared<AnalyticEuropeanEngine>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CIA(Integer eta, Real
      barrier, Real strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:245,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:247,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:248,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:249,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:251,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:252,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:253,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:254,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:257,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:258,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:258,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:259,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:259,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:262,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - eta
    - barrier
    - strike
    - r
    - q
    argTypes:
    - Integer
    - Real
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 242
    functionDepth: 4
    functionLinenumber: 242
    functionLinenumberEnd: 264
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::CA
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    - std::exp
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::CA(Integer eta, Real barrier,
      Real strike, Rate r, Rate q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 12
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:271,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 17
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticPartialTimeBarrierOptionEngine::residualTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticPartialTimeBarrierOptionEngine::coverEventTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 13
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticPartialTimeBarrierOptionEngine::volatility(Time
      t, Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:285,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:286,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:286,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:287,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 7
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::pow
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::f1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:291,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::f2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::f1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::f2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - b
    - rho
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::M
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - CmlNormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::M(Real a, Real b, Real
      rho) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::rho
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:305,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticPartialTimeBarrierOptionEngine::mu(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:310,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:311,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 7
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::d1(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:316,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:317,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:318,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - b
    argTypes:
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::d2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::d1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::d2(Real strike, Rate b)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:322,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:323,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - std::log
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:328,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:329,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:330,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:334,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e3(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:340,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 339
    functionDepth: 3
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::e4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::e3
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::coverEventTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::e4(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:345,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:346,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 348
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g1(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:351,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:352,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:353,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 354
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g2
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g2(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:357,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:358,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g1
    - std::log
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::underlying
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g3(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:363,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:364,1
    - Dst: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:365,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - barrier
    - strike
    - b
    argTypes:
    - Real
    - Real
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 362
    functionDepth: 3
    functionLinenumber: 362
    functionLinenumberEnd: 366
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::g4
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::g3
    - std::sqrt
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::residualTime
    - QuantLib::AnalyticPartialTimeBarrierOptionEngine::volatility
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::g4(Real barrier, Real
      strike, Rate b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - S
    - H
    - power
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionName: QuantLib::AnalyticPartialTimeBarrierOptionEngine::HS
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticpartialtimebarrieroptionengine.cpp
    functionUses: 6
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPartialTimeBarrierOptionEngine::HS(Real S, Real H, Real
      power) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticBarrierEngine::AnalyticBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBarrierEngine::AnalyticBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:41,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:44,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:47,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:50,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:50,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:54,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:59,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:59,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:65,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:65,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:70,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:76,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:86,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:89,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:89,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:92,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:95,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:95,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:98,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:101,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:104,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:112,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 114
    functionName: QuantLib::AnalyticBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::C
    - QL_REQUIRE
    - exercise::type
    - QuantLib::AnalyticBarrierEngine::barrier
    - QuantLib::AnalyticBarrierEngine::D
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QuantLib::AnalyticBarrierEngine::F
    - triggered
    - QuantLib::AnalyticBarrierEngine::A
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticBarrierEngine::B
    - QuantLib::AnalyticBarrierEngine::E
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::AnalyticBarrierEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:124,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::AnalyticBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:129,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:130,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionName: QuantLib::AnalyticBarrierEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::strike
    - blackVolatility
    - exercise::lastDate
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticBarrierEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:135,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:135,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticBarrierEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::strike
    - blackVolatility
    - exercise::lastDate
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticBarrierEngine::barrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::barrier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticBarrierEngine::rebate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::rebate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:149,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionName: QuantLib::AnalyticBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - exercise::lastDate
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:156,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::lastDate
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticBarrierEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:161,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticBarrierEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - exercise::lastDate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:168,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::AnalyticBarrierEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - exercise::lastDate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticBarrierEngine::dividendDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:173,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:174,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 3
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::AnalyticBarrierEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - QuantLib::AnalyticBarrierEngine::volatility
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::mu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:178,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 4
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::AnalyticBarrierEngine::muSigma
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::muSigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:184,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:185,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:185,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:187,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:187,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 181
    functionDepth: 5
    functionLinenumber: 181
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticBarrierEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::A(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:194,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 191
    functionDepth: 5
    functionLinenumber: 191
    functionLinenumberEnd: 198
    functionName: QuantLib::AnalyticBarrierEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::B(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:201,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:202,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:205,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 200
    functionDepth: 5
    functionLinenumber: 200
    functionLinenumberEnd: 211
    functionName: QuantLib::AnalyticBarrierEngine::C
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::C(Real eta, Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:214,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:215,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:218,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 213
    functionDepth: 5
    functionLinenumber: 213
    functionLinenumberEnd: 224
    functionName: QuantLib::AnalyticBarrierEngine::D
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::D(Real eta, Real phi) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:227,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:233,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:233,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:234,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:234,1
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 226
    functionDepth: 5
    functionLinenumber: 226
    functionLinenumberEnd: 241
    functionName: QuantLib::AnalyticBarrierEngine::E
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::rebate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::E(Real eta) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:244,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:245,1
    - Dst: QuantLib::AnalyticBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:247,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:247,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:248,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:250,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:252,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:256,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:257,1
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 243
    functionDepth: 4
    functionLinenumber: 243
    functionLinenumberEnd: 264
    functionName: QuantLib::AnalyticBarrierEngine::F
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::volatility
    - std::sqrt
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    - QuantLib::AnalyticBarrierEngine::rebate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::F(Real eta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticBarrierEngine::AnalyticBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBarrierEngine::AnalyticBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:41,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:44,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:47,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:50,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:50,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:54,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:58,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:59,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:59,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:61,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:64,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:65,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:65,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:67,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:70,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:71,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:73,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:76,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:77,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:79,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:86,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:87,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:89,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:89,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:92,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:93,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:95,1
    - Dst: QuantLib::AnalyticBarrierEngine::E
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:95,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:98,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:99,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:101,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:104,1
    - Dst: QuantLib::AnalyticBarrierEngine::B
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::D
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:105,1
    - Dst: QuantLib::AnalyticBarrierEngine::A
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QuantLib::AnalyticBarrierEngine::C
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QuantLib::AnalyticBarrierEngine::F
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:107,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:112,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 36
    functionDepth: 6
    functionLinenumber: 36
    functionLinenumberEnd: 114
    functionName: QuantLib::AnalyticBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::C
    - QL_REQUIRE
    - exercise::type
    - QuantLib::AnalyticBarrierEngine::barrier
    - QuantLib::AnalyticBarrierEngine::D
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QuantLib::AnalyticBarrierEngine::F
    - triggered
    - QuantLib::AnalyticBarrierEngine::A
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticBarrierEngine::B
    - QuantLib::AnalyticBarrierEngine::E
    - x0
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticBarrierEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::AnalyticBarrierEngine::underlying
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 6
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::underlying() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:124,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::AnalyticBarrierEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 6
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:129,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:130,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionName: QuantLib::AnalyticBarrierEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::strike
    - blackVolatility
    - exercise::lastDate
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticBarrierEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:135,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:135,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:136,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionName: QuantLib::AnalyticBarrierEngine::stdDeviation
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::strike
    - blackVolatility
    - exercise::lastDate
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::stdDeviation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AnalyticBarrierEngine::barrier
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::barrier() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticBarrierEngine::rebate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::rebate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:149,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:150,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionName: QuantLib::AnalyticBarrierEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 5
    functionsReached:
    - exercise::lastDate
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:156,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 5
    functionsReached:
    - exercise::lastDate
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticBarrierEngine::riskFreeDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:161,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:162,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticBarrierEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - exercise::lastDate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:168,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::AnalyticBarrierEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - exercise::lastDate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticBarrierEngine::dividendDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:173,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:174,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 3
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::AnalyticBarrierEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::dividendYield
    - QuantLib::AnalyticBarrierEngine::volatility
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticBarrierEngine::mu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:178,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 4
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::AnalyticBarrierEngine::muSigma
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::muSigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:183,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:184,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:185,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:185,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:187,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:187,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:188,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 181
    functionDepth: 5
    functionLinenumber: 181
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticBarrierEngine::A
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::A(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:193,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:194,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:195,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:196,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:197,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 191
    functionDepth: 5
    functionLinenumber: 191
    functionLinenumberEnd: 198
    functionName: QuantLib::AnalyticBarrierEngine::B
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::B(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:201,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:201,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:202,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:202,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:204,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:205,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:206,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:209,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 200
    functionDepth: 5
    functionLinenumber: 200
    functionLinenumberEnd: 211
    functionName: QuantLib::AnalyticBarrierEngine::C
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::C(Real eta, Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:214,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:214,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:215,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:215,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:217,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:218,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:219,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticBarrierEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:222,1
    - Dst: QuantLib::AnalyticBarrierEngine::strike
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - eta
    - phi
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 213
    functionDepth: 5
    functionLinenumber: 213
    functionLinenumberEnd: 224
    functionName: QuantLib::AnalyticBarrierEngine::D
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::dividendDiscount
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::D(Real eta, Real phi) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:227,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:228,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:230,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: QuantLib::AnalyticBarrierEngine::muSigma
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:232,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:233,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:233,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:234,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:234,1
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 226
    functionDepth: 5
    functionLinenumber: 226
    functionLinenumberEnd: 241
    functionName: QuantLib::AnalyticBarrierEngine::E
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::muSigma
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::riskFreeDiscount
    - QuantLib::AnalyticBarrierEngine::rebate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::E(Real eta) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:244,1
    - Dst: QuantLib::AnalyticBarrierEngine::mu
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:245,1
    - Dst: QuantLib::AnalyticBarrierEngine::volatility
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:247,1
    - Dst: QuantLib::AnalyticBarrierEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:247,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:248,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:248,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:249,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:250,1
    - Dst: QuantLib::AnalyticBarrierEngine::stdDeviation
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:252,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: QuantLib::AnalyticBarrierEngine::barrier
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: QuantLib::AnalyticBarrierEngine::underlying
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:253,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:256,1
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:257,1
    - Dst: QuantLib::AnalyticBarrierEngine::rebate
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - eta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 243
    functionDepth: 4
    functionLinenumber: 243
    functionLinenumberEnd: 264
    functionName: QuantLib::AnalyticBarrierEngine::F
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/analyticbarrierengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticBarrierEngine::underlying
    - QuantLib::AnalyticBarrierEngine::barrier
    - std::log
    - QuantLib::AnalyticBarrierEngine::mu
    - QuantLib::AnalyticBarrierEngine::stdDeviation
    - Real
    - std::pow
    - f_
    - QuantLib::AnalyticBarrierEngine::volatility
    - std::sqrt
    - QuantLib::AnalyticBarrierEngine::riskFreeRate
    - QuantLib::AnalyticBarrierEngine::rebate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticBarrierEngine::F(Real eta) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:81,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:81,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:82,1
    - Dst: QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:85,1
    - Dst: QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 89
    functionName: QuantLib::MCBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - triggered
    - QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
    - x0
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:95,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:97,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:97,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:98,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 101
    functionName: QuantLib::MCBarrierEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:201,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:201,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:204,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:204,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:210,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - isBiased
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - bool
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 214
    functionName: QuantLib::MCBarrierEngine<RNG, S>::MCBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCBarrierEngine<RNG, S>::MCBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        bool isBiased,\n
      \       BigNatural seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:219,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:219,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:220,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:221,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:222,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:223,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:224,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:226,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 228
    functionName: QuantLib::MCBarrierEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCBarrierEngine<RNG,S>::timeGrid() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:236,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:237,1
    - Dst: QuantLib::MCBarrierEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:239,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:240,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:241,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:242,1
    - Dst: "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:246,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:252,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:253,1
    - Dst: BiasedBarrierPathPricer::BiasedBarrierPathPricer
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:248,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:256,1
    - Dst: PseudoRandom::urng_type
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:257,1
    - Dst: "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:258,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:264,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:265,1
    - Dst: BarrierPathPricer::BarrierPathPricer
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 270
    functionName: QuantLib::MCBarrierEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - BiasedBarrierPathPricer::BiasedBarrierPathPricer
    - TimeGrid::size
    - ext::shared_ptr::strike
    - BarrierPathPricer::BarrierPathPricer
    - PseudoRandom::urng_type
    - ext::shared_ptr::optionType
    - riskFreeRate
    - "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::MCBarrierEngine<RNG,S>::timeGrid
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCBarrierEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCBarrierEngine<RNG,S>::path_pricer_type>
      MCBarrierEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::MakeMCBarrierEngine<RNG, S>::MakeMCBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCBarrierEngine<RNG, S>::MakeMCBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 291
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 305
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:310,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 314
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:319,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 326
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 333
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - biased
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 340
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withBias(bool biased)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withBias(bool
      biased)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:357,1
    - Dst: MCBarrierEngine<RNG,S>::MCBarrierEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 367
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCBarrierEngine<RNG,S>::MCBarrierEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>::operator
    signature: "MakeMCBarrierEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:81,1
    - Dst: triggered
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:81,1
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:82,1
    - Dst: QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:85,1
    - Dst: QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 89
    functionName: QuantLib::MCBarrierEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - triggered
    - QuantLib::MCBarrierEngine::mcModel_::sampleAccumulator
    - x0
    - QuantLib::Instrument::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:95,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:97,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:97,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:98,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 101
    functionName: QuantLib::MCBarrierEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:197,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:201,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:201,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:204,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:204,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:210,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - isBiased
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - bool
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 214
    functionName: QuantLib::MCBarrierEngine<RNG, S>::MCBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCBarrierEngine<RNG, S>::MCBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        bool isBiased,\n
      \       BigNatural seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:219,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:219,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:220,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:221,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:222,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:223,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:224,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:226,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 228
    functionName: QuantLib::MCBarrierEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCBarrierEngine<RNG,S>::timeGrid() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:236,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:237,1
    - Dst: QuantLib::MCBarrierEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:239,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:240,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:241,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:242,1
    - Dst: "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:246,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:252,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:253,1
    - Dst: BiasedBarrierPathPricer::BiasedBarrierPathPricer
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:248,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:256,1
    - Dst: PseudoRandom::urng_type
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:257,1
    - Dst: "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:258,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:264,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:265,1
    - Dst: BarrierPathPricer::BarrierPathPricer
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 270
    functionName: QuantLib::MCBarrierEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - BiasedBarrierPathPricer::BiasedBarrierPathPricer
    - TimeGrid::size
    - ext::shared_ptr::strike
    - BarrierPathPricer::BarrierPathPricer
    - PseudoRandom::urng_type
    - ext::shared_ptr::optionType
    - riskFreeRate
    - "ext::shared_ptr<\n                        typename MCBarrierEngine<RNG,S>::path_pricer_type>"
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::MCBarrierEngine<RNG,S>::timeGrid
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCBarrierEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCBarrierEngine<RNG,S>::path_pricer_type>
      MCBarrierEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:276,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: QuantLib::MakeMCBarrierEngine<RNG, S>::MakeMCBarrierEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCBarrierEngine<RNG, S>::MakeMCBarrierEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 291
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 305
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:310,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 314
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:319,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 326
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 333
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - biased
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 340
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withBias(bool biased)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withBias(bool
      biased)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: "&\n    MakeMCBarrierEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>
    signature: "MakeMCBarrierEngine<RNG,S> &\n    MakeMCBarrierEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:353,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:355,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:357,1
    - Dst: MCBarrierEngine<RNG,S>::MCBarrierEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp:357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 367
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/barrier/mcbarrierengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCBarrierEngine<RNG,S>::MCBarrierEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCBarrierEngine<RNG,S>::operator
    signature: "MakeMCBarrierEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:57,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - processes
    - rho
    - lambda
    - maxNrIntegrationSteps
    - calcFwdDelta
    - controlVariate
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - Real
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 61
    functionName: QuantLib::ChoiBasketEngine::ChoiBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ChoiBasketEngine::ChoiBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > processes,\n        Matrix rho, Real lambda,\n        Size maxNrIntegrationSteps,\n
      \       bool calcFwdDelta, bool controlVariate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:66,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:68,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:71,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:72,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:73,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:73,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:74,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:81,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:83,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:85,1
    - Dst: ext::shared_ptr<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:89,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:92,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:92,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:95,1
    - Dst: getCovariance
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:99,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:99,1
    - Dst: CholeskyDecomposition
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:105,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:109,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:111,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:118,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:124,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:126,1
    - Dst: HouseholderTransformation
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:131,1
    - Dst: HouseholderReflection
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:132,1
    - Dst: Matrix
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:138,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:139,1
    - Dst: std::transform
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:143,1
    - Dst: column_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: column_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:150,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:150,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:154,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:157,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:161,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:166,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:166,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:169,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:170,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:170,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:172,1
    - Dst: ext::make_shared<BlackProcess>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:173,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:174,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:175,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:176,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:177,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:178,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:178,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:179,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:179,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:180,1
    - Dst: BasketOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:188,1
    - Dst: ext::make_shared<SingleFactorBsmBasketEngine>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:188,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:192,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: ext::make_shared<GaussHermiteIntegration>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:199,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:201,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:201,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:204,1
    - Dst: MultiDimGaussianIntegration::weights
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:204,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:206,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:208,1
    - Dst: setValue
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:209,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: BasketOption::additionalResults
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: BasketOption::NPV
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:215,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:219,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:219,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:220,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:221,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:232,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:234,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:239,1
    - Dst: std::to_string
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:241,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:248,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:250,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:252,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:252,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:254,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 260
    functionName: QuantLib::ChoiBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SingleFactorBsmBasketEngine>
    - std::to_string
    - ext::shared_ptr::basePayoff
    - HouseholderReflection
    - Matrix::row_end
    - std::vector::reserve
    - Real
    - BasketOption::additionalResults
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - Matrix::row_begin
    - Matrix::column_begin
    - std::transform
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - Handle::dayCounter
    - std::vector::push_back
    - Handle<BlackVolTermStructure>
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array
    - Array::begin
    - BasketOption::NPV
    - begin
    - Exp
    - std::pow
    - getCovariance
    - HouseholderTransformation
    - Handle<Quote>
    - std::abs
    - MultiDimGaussianIntegration::weights
    - ghq
    - Size
    - ext::make_shared<GaussHermiteIntegration>
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - setValue
    - ext::shared_ptr<AverageBasketPayoff>
    - Array::end
    - ext::any_cast<Real>
    - std::exp
    - BasketOption::setPricingEngine
    - ext::shared_ptr::optionType
    - column_end
    - Matrix
    - QuantLib::Ridder::sign
    - Sqrt
    - transpose
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Norm2
    - std::lround
    - std::vector::size
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - SVD::singularValues
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::copy
    - std::inner_product
    - ext::make_shared<AverageBasketPayoff>
    - CholeskyDecomposition
    - SVD::U
    - std::vector::begin
    - std::vector::end
    - ext::make_shared<BlackProcess>
    - riskFreeRate
    - ext::make_shared<BlackConstantVol>
    - Handle::calendar
    - N
    - Array::size
    - DotProduct
    - std::sqrt
    - std::accumulate
    - std::multiplies<>
    - Handle::referenceDate
    - column_begin
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void ChoiBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:57,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - processes
    - rho
    - lambda
    - maxNrIntegrationSteps
    - calcFwdDelta
    - controlVariate
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - Real
    - Size
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 61
    functionName: QuantLib::ChoiBasketEngine::ChoiBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ChoiBasketEngine::ChoiBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > processes,\n        Matrix rho, Real lambda,\n        Size maxNrIntegrationSteps,\n
      \       bool calcFwdDelta, bool controlVariate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:66,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:68,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:71,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:72,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:73,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:73,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:74,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:81,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:83,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:85,1
    - Dst: ext::shared_ptr<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:89,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:92,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:92,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:95,1
    - Dst: getCovariance
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:99,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:99,1
    - Dst: CholeskyDecomposition
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:105,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:109,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:111,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:118,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:119,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:121,1
    - Dst: transpose
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:124,1
    - Dst: Norm2
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:126,1
    - Dst: HouseholderTransformation
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:131,1
    - Dst: HouseholderReflection
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:132,1
    - Dst: Matrix
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:133,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:135,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:138,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:139,1
    - Dst: std::transform
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:143,1
    - Dst: column_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: column_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:144,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:150,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:150,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:154,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:157,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:161,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:166,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:166,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:168,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:169,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:170,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:170,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:172,1
    - Dst: ext::make_shared<BlackProcess>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:173,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:174,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:175,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:176,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:177,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:178,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:178,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:179,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:179,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:180,1
    - Dst: BasketOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:188,1
    - Dst: ext::make_shared<SingleFactorBsmBasketEngine>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:188,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:192,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:193,1
    - Dst: ext::make_shared<GaussHermiteIntegration>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:199,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:201,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:201,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:204,1
    - Dst: MultiDimGaussianIntegration::weights
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:204,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:206,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:208,1
    - Dst: setValue
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:209,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: BasketOption::additionalResults
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:211,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: BasketOption::NPV
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:212,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:215,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:219,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:219,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:220,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:221,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:232,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:233,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:234,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:236,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:239,1
    - Dst: std::to_string
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:241,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:248,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:249,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:250,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:252,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:252,1
    - Dst: ghq
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:254,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp:257,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 260
    functionName: QuantLib::ChoiBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/choibasketengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<SingleFactorBsmBasketEngine>
    - std::to_string
    - ext::shared_ptr::basePayoff
    - HouseholderReflection
    - Matrix::row_end
    - std::vector::reserve
    - Real
    - BasketOption::additionalResults
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - Matrix::row_begin
    - Matrix::column_begin
    - std::transform
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - Handle::dayCounter
    - std::vector::push_back
    - Handle<BlackVolTermStructure>
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array
    - Array::begin
    - BasketOption::NPV
    - begin
    - Exp
    - std::pow
    - getCovariance
    - HouseholderTransformation
    - Handle<Quote>
    - std::abs
    - MultiDimGaussianIntegration::weights
    - ghq
    - Size
    - ext::make_shared<GaussHermiteIntegration>
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - setValue
    - ext::shared_ptr<AverageBasketPayoff>
    - Array::end
    - ext::any_cast<Real>
    - std::exp
    - BasketOption::setPricingEngine
    - ext::shared_ptr::optionType
    - column_end
    - Matrix
    - QuantLib::Ridder::sign
    - Sqrt
    - transpose
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Norm2
    - std::lround
    - std::vector::size
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - SVD::singularValues
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::copy
    - std::inner_product
    - ext::make_shared<AverageBasketPayoff>
    - CholeskyDecomposition
    - SVD::U
    - std::vector::begin
    - std::vector::end
    - ext::make_shared<BlackProcess>
    - riskFreeRate
    - ext::make_shared<BlackConstantVol>
    - Handle::calendar
    - N
    - Array::size
    - DotProduct
    - std::sqrt
    - std::accumulate
    - std::multiplies<>
    - Handle::referenceDate
    - column_begin
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void ChoiBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - sig
    - K
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SumExponentialsRootSolver::SumExponentialsRootSolver(\n            Array
      a, Array sig, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: SumExponentialsRootSolver::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::detail::SumExponentialsRootSolver::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::detail::SumExponentialsRootSolver::secondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - squared
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::SumExponentialsRootSolver::getFCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getFCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::SumExponentialsRootSolver::getDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getDerivativeCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::SumExponentialsRootSolver::getSecondDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getSecondDerivativeCtr() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:84,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:85,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:98,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:107,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:111,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:113,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:115,1
    - Dst: QuantLib::Halley
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:117,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - xTol
    - strategy
    argTypes:
    - Real
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::SumExponentialsRootSolver::getRoot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Brent
    - QuantLib::Newton
    - Array::begin
    - Array::end
    - begin
    - std::min
    - Real
    - std::max
    - QL_FAIL
    - std::accumulate
    - QuantLib::Halley
    - end
    - QuantLib::Ridder
    - std::abs
    - std::all_of
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::getRoot(Real xTol, Strategy strategy)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - sig
    - K
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SumExponentialsRootSolver::SumExponentialsRootSolver(\n            Array
      a, Array sig, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: SumExponentialsRootSolver::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::detail::SumExponentialsRootSolver::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::detail::SumExponentialsRootSolver::secondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - squared
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::SumExponentialsRootSolver::getFCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getFCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::SumExponentialsRootSolver::getDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getDerivativeCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::SumExponentialsRootSolver::getSecondDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getSecondDerivativeCtr() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:84,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:85,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:98,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:107,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:111,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:113,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:115,1
    - Dst: QuantLib::Halley
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:117,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - xTol
    - strategy
    argTypes:
    - Real
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::SumExponentialsRootSolver::getRoot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Brent
    - QuantLib::Newton
    - Array::begin
    - Array::end
    - begin
    - std::min
    - Real
    - std::max
    - QL_FAIL
    - std::accumulate
    - QuantLib::Halley
    - end
    - QuantLib::Ridder
    - std::abs
    - std::all_of
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::getRoot(Real xTol, Strategy strategy)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:128,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - p
    - xTol
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: QuantLib::SingleFactorBsmBasketEngine::SingleFactorBsmBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - begin
    - std::move
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    linkageType: ''
    returnType: void
    signature: "void SingleFactorBsmBasketEngine::SingleFactorBsmBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > p,\n        Real xTol)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:137,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:139,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:140,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:141,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:144,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:144,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:149,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:150,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:153,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:154,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:155,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackStdDev
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:157,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:163,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:164,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:164,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:165,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:167,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:171,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:172,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:176,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:179,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:181,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:181,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:182,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 188
    functionName: QuantLib::SingleFactorBsmBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - ext::shared_ptr::basePayoff
    - Real
    - std::plus<>
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - std::all_of
    - QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array::begin
    - Exp
    - close_enough
    - ext::shared_ptr::strike
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - Array::end
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - detail::VectorBsmProcessExtractor::getBlackStdDev
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::inner_product
    - N
    - Array::size
    - std::accumulate
    linkageType: ''
    returnType: void
    signature: void SingleFactorBsmBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - sig
    - K
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SumExponentialsRootSolver::SumExponentialsRootSolver(\n            Array
      a, Array sig, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: SumExponentialsRootSolver::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::detail::SumExponentialsRootSolver::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::detail::SumExponentialsRootSolver::secondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - squared
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::SumExponentialsRootSolver::getFCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getFCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::SumExponentialsRootSolver::getDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getDerivativeCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::SumExponentialsRootSolver::getSecondDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getSecondDerivativeCtr() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:84,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:85,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:98,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:107,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:111,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:113,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:115,1
    - Dst: QuantLib::Halley
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:117,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - xTol
    - strategy
    argTypes:
    - Real
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::SumExponentialsRootSolver::getRoot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Brent
    - QuantLib::Newton
    - Array::begin
    - Array::end
    - begin
    - std::min
    - Real
    - std::max
    - QL_FAIL
    - std::accumulate
    - QuantLib::Halley
    - end
    - QuantLib::Ridder
    - std::abs
    - std::all_of
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::getRoot(Real xTol, Strategy strategy)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - sig
    - K
    argTypes:
    - Array
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 1
    functionsReached:
    - size
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SumExponentialsRootSolver::SumExponentialsRootSolver(\n            Array
      a, Array sig, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: SumExponentialsRootSolver::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:56,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: QuantLib::detail::SumExponentialsRootSolver::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:65,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::detail::SumExponentialsRootSolver::secondDerivative
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::exp
    - squared
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::secondDerivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::SumExponentialsRootSolver::getFCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getFCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::SumExponentialsRootSolver::getDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getDerivativeCtr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::SumExponentialsRootSolver::getSecondDerivativeCtr
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size SumExponentialsRootSolver::getSecondDerivativeCtr() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:84,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:85,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:86,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:93,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:98,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:102,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:104,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:107,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:111,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:113,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:115,1
    - Dst: QuantLib::Halley
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:117,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - xTol
    - strategy
    argTypes:
    - Real
    - Strategy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 121
    functionName: QuantLib::detail::SumExponentialsRootSolver::getRoot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Brent
    - QuantLib::Newton
    - Array::begin
    - Array::end
    - begin
    - std::min
    - Real
    - std::max
    - QL_FAIL
    - std::accumulate
    - QuantLib::Halley
    - end
    - QuantLib::Ridder
    - std::abs
    - std::all_of
    linkageType: ''
    returnType: Real
    signature: Real SumExponentialsRootSolver::getRoot(Real xTol, Strategy strategy)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:128,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:128,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:130,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - p
    - xTol
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: QuantLib::SingleFactorBsmBasketEngine::SingleFactorBsmBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - begin
    - std::move
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    linkageType: ''
    returnType: void
    signature: "void SingleFactorBsmBasketEngine::SingleFactorBsmBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > p,\n        Real xTol)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:137,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:139,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:140,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:141,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:144,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:144,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:149,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:150,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:153,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:154,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:155,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackStdDev
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:157,1
    - Dst: std::all_of
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:163,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:164,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:164,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:165,1
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:167,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:168,1
    - Dst: QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:171,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:172,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:176,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:179,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:180,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:181,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:181,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:182,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 188
    functionName: QuantLib::SingleFactorBsmBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/singlefactorbsmbasketengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - ext::shared_ptr::basePayoff
    - Real
    - std::plus<>
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - std::all_of
    - QuantLib::detail::SumExponentialsRootSolver::SumExponentialsRootSolver
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array::begin
    - Exp
    - close_enough
    - ext::shared_ptr::strike
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - Array::end
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - detail::VectorBsmProcessExtractor::getBlackStdDev
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::inner_product
    - N
    - Array::size
    - std::accumulate
    linkageType: ''
    returnType: void
    signature: void SingleFactorBsmBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' p1'
    - ' p2'
    - correlation
    - xGrid
    - yGrid
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::Fd2dBlackScholesVanillaEngine::Fd2dBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void Fd2dBlackScholesVanillaEngine::Fd2dBlackScholesVanillaEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& p1,\n        const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& p2,\n        Real correlation,\n
      \       Size xGrid, Size yGrid,\n        Size tGrid, Size dampingSteps,\n        const
      FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:62,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:63,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:63,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:60,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:68,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:69,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:69,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:66,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:72,1
    - Dst: FdmLogBasketInnerValue::FdmLogBasketInnerValue
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:76,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:80,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:81,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:83,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:84,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:96,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:97,1
    - Dst: Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:95,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:101,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:102,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:104,1
    - Dst: ext::shared_ptr::deltaXat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:105,1
    - Dst: ext::shared_ptr::deltaYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:105,1
    - Dst: ext::shared_ptr::gammaXat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::gammaYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::gammaXYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:107,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 109
    functionName: QuantLib::Fd2dBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogBasketInnerValue::FdmLogBasketInnerValue
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::gammaXYat
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::deltaXat
    - x0
    - exercise::lastDate
    - std::pair<Real, Real>
    - ext::shared_ptr::deltaYat
    - Null<Real>
    - ext::shared_ptr::gammaYat
    - time
    - DividendSchedule
    - ext::shared_ptr::thetaAt
    - ext::shared_ptr::gammaXat
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void Fd2dBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - ' p1'
    - ' p2'
    - correlation
    - xGrid
    - yGrid
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::Fd2dBlackScholesVanillaEngine::Fd2dBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void Fd2dBlackScholesVanillaEngine::Fd2dBlackScholesVanillaEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& p1,\n        const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& p2,\n        Real correlation,\n
      \       Size xGrid, Size yGrid,\n        Size tGrid, Size dampingSteps,\n        const
      FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:61,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:62,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:62,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:63,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:63,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:60,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:68,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:68,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:69,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:69,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:66,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:72,1
    - Dst: FdmLogBasketInnerValue::FdmLogBasketInnerValue
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:76,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:80,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:81,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:83,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:84,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:96,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:97,1
    - Dst: Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:95,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:101,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:102,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:104,1
    - Dst: ext::shared_ptr::deltaXat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:105,1
    - Dst: ext::shared_ptr::deltaYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:105,1
    - Dst: ext::shared_ptr::gammaXat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::gammaYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::gammaXYat
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:107,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 109
    functionName: QuantLib::Fd2dBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fd2dblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogBasketInnerValue::FdmLogBasketInnerValue
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::gammaXYat
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::deltaXat
    - x0
    - exercise::lastDate
    - std::pair<Real, Real>
    - ext::shared_ptr::deltaYat
    - Null<Real>
    - ext::shared_ptr::gammaYat
    - time
    - DividendSchedule
    - ext::shared_ptr::thetaAt
    - ext::shared_ptr::gammaXat
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - Fdm2dBlackScholesSolver::Fdm2dBlackScholesSolver
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void Fd2dBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - discount
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::EuropeanMultiPathPricer::EuropeanMultiPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EuropeanMultiPathPricer::EuropeanMultiPathPricer(ext::shared_ptr<BasketPayoff>
      payoff,\n                                                     DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:34,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:37,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 45
    functionName: "EuropeanMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - back
    - assetNumber
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - discount
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: QuantLib::EuropeanMultiPathPricer::EuropeanMultiPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EuropeanMultiPathPricer::EuropeanMultiPathPricer(ext::shared_ptr<BasketPayoff>
      payoff,\n                                                     DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:34,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:37,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 45
    functionName: "EuropeanMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - back
    - assetNumber
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:64,1
    - Dst: QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:67,1
    - Dst: QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 71
    functionName: QuantLib::MCEuropeanBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:83,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:85,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:87,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:87,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:89,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 92
    functionName: QuantLib::MCEuropeanBasketEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - ext::dynamic_pointer_cast<BasketPayoff>
    - size
    - timeGrid
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:158,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:158,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:161,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:161,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:167,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:170,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - processes
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 171
    functionName: QuantLib::MCEuropeanBasketEngine<RNG, S>::MCEuropeanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanBasketEngine<RNG, S>::MCEuropeanBasketEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:176,1
    - Dst: QuantLib::MCEuropeanBasketEngine<RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:177,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:178,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:180,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:181,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:182,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:182,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 186
    functionName: QuantLib::MCEuropeanBasketEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - QuantLib::MCEuropeanBasketEngine<RNG,S>::arguments_::exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCEuropeanBasketEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:195,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:198,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:200,1
    - Dst: "ext::shared_ptr<\n                    typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:202,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:205,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:206,1
    - Dst: EuropeanMultiPathPricer::EuropeanMultiPathPricer
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 207
    functionName: QuantLib::MCEuropeanBasketEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - "ext::shared_ptr<\n                    typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>"
    - process
    - EuropeanMultiPathPricer::EuropeanMultiPathPricer
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>
      MCEuropeanBasketEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::MakeMCEuropeanBasketEngine<RNG, S>::MakeMCEuropeanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanBasketEngine<RNG, S>::MakeMCEuropeanBasketEngine(\n
      \       ext::shared_ptr<StochasticProcessArray> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:247,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:256,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 263
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:287,1
    - Dst: MCEuropeanBasketEngine<RNG,S>::MCEuropeanBasketEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 296
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanBasketEngine<RNG,S>::MCEuropeanBasketEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>::operator
    signature: MakeMCEuropeanBasketEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:64,1
    - Dst: QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:67,1
    - Dst: QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 71
    functionName: QuantLib::MCEuropeanBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCEuropeanBasketEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:83,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:85,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:87,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:87,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:89,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 92
    functionName: QuantLib::MCEuropeanBasketEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - ext::dynamic_pointer_cast<BasketPayoff>
    - size
    - timeGrid
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:158,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:158,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:161,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:161,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:167,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:170,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - processes
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 171
    functionName: QuantLib::MCEuropeanBasketEngine<RNG, S>::MCEuropeanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanBasketEngine<RNG, S>::MCEuropeanBasketEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:176,1
    - Dst: QuantLib::MCEuropeanBasketEngine<RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:177,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:178,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:180,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:181,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:182,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:182,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 186
    functionName: QuantLib::MCEuropeanBasketEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - QuantLib::MCEuropeanBasketEngine<RNG,S>::arguments_::exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCEuropeanBasketEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:195,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:198,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:200,1
    - Dst: "ext::shared_ptr<\n                    typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:202,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:205,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:206,1
    - Dst: EuropeanMultiPathPricer::EuropeanMultiPathPricer
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 207
    functionName: QuantLib::MCEuropeanBasketEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - "ext::shared_ptr<\n                    typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>"
    - process
    - EuropeanMultiPathPricer::EuropeanMultiPathPricer
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEuropeanBasketEngine<RNG,S>::path_pricer_type>
      MCEuropeanBasketEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::MakeMCEuropeanBasketEngine<RNG, S>::MakeMCEuropeanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanBasketEngine<RNG, S>::MakeMCEuropeanBasketEngine(\n
      \       ext::shared_ptr<StochasticProcessArray> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:247,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:256,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 263
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeMCEuropeanBasketEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>
    signature: "MakeMCEuropeanBasketEngine<RNG,S> &\n    MakeMCEuropeanBasketEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:285,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:287,1
    - Dst: MCEuropeanBasketEngine<RNG,S>::MCEuropeanBasketEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 296
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mceuropeanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanBasketEngine<RNG,S>::MCEuropeanBasketEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanBasketEngine<RNG,S>::operator
    signature: MakeMCEuropeanBasketEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::KirkEngine::KirkEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void KirkEngine::KirkEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process1,\n                           ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n                           Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:41,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:45,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - f1
    - f2
    - strike
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 50
    functionName: QuantLib::KirkEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::value
    - std::sqrt
    - squared
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: Real
    signature: "Real KirkEngine::calculate(\n        Real f1, Real f2, Real strike,
      Option::Type optionType,\n        Real variance1, Real variance2, DiscountFactor
      df) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::KirkEngine::KirkEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void KirkEngine::KirkEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process1,\n                           ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n                           Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:41,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:45,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - f1
    - f2
    - strike
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 50
    functionName: QuantLib::KirkEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/kirkengine.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::value
    - std::sqrt
    - squared
    - ext::make_shared<PlainVanillaPayoff>
    linkageType: ''
    returnType: Real
    signature: "Real KirkEngine::calculate(\n        Real f1, Real f2, Real strike,
      Option::Type optionType,\n        Real variance1, Real variance2, DiscountFactor
      df) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - processes
    - rho
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: QuantLib::DengLiZhouBasketEngine::DengLiZhouBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DengLiZhouBasketEngine::DengLiZhouBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > processes,\n        Matrix rho)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:49,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:53,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:55,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:57,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:59,1
    - Dst: ext::shared_ptr<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:63,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:66,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:66,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:70,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:71,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:72,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:73,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:76,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:82,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:86,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:87,1
    - Dst: Matrix
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:88,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:98,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:103,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:104,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:110,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:110,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:120,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:120,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:124,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:127,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:127,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:136,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:136,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:146,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:146,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:154,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:155,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:157,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:157,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:162,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:163,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:165,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:167,1
    - Dst: QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:171,1
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:171,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:173,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:174,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:178,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 61
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 180
    functionName: QuantLib::DengLiZhouBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - ext::shared_ptr::basePayoff
    - std::get<4>
    - std::get<1>
    - std::vector::reserve
    - Real
    - QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - Matrix::row_begin
    - Log
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - std::vector::emplace_back
    - std::sort
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array
    - Array::begin
    - begin
    - std::get<2>
    - std::abs
    - ext::shared_ptr::strike
    - std::min
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - ext::shared_ptr<AverageBasketPayoff>
    - Array::end
    - ext::shared_ptr::optionType
    - std::max
    - Matrix
    - std::get<3>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::get<0>
    - row_begin
    - std::vector::size
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::copy
    - std::inner_product
    - ext::make_shared<AverageBasketPayoff>
    - std::vector::begin
    - std::vector::end
    - Array::size
    - std::accumulate
    - std::sqrt
    - row_end
    linkageType: ''
    returnType: void
    signature: void DengLiZhouBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:184,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:186,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:188,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:189,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:191,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:195,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:199,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - u
    - tF2
    - ' D'
    - ' DF'
    - i
    argTypes:
    - Real
    - Real
    - Matrix
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 205
    functionName: QuantLib::DengLiZhouBasketEngine::I
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 0
    functionsReached:
    - squared
    - std::inner_product
    - Real
    - CumulativeNormalDistribution
    - std::sqrt
    - row_end
    - row_begin
    - NormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real DengLiZhouBasketEngine::I(Real u, Real tF2, const Matrix& D, const
      Matrix& DF, Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:211,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:212,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:214,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:219,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:224,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:224,1
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:226,1
    - Dst: CholeskySolveFor
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:227,1
    - Dst: CholeskyDecomposition
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:227,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:230,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:231,1
    - Dst: E
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:237,1
    - Dst: E
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:237,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:239,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:239,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:246,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:247,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:253,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:263,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:264,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:264,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:268,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:270,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:270,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: Matrix::column_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:285,1
    - Dst: Array::back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:285,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 6
    argNames:
    - ' x'
    - dr
    - ' dq'
    - ' v'
    - ' rho'
    - K
    argTypes:
    - Array
    - DiscountFactor
    - Array
    - Array
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 291
    functionName: QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 1
    functionsReached:
    - Array::back
    - Matrix::row_end
    - Log
    - Real
    - Matrix::row_begin
    - Matrix::column_begin
    - QuantLib::DengLiZhouBasketEngine::I
    - E
    - squared
    - Array::begin
    - Array
    - Matrix::column_end
    - begin
    - Exp
    - CholeskySolveFor
    - size
    - pseudoSqrt
    - std::exp
    - Array::end
    - Sqrt
    - row_begin
    - end
    - QL_REQUIRE
    - std::copy
    - std::log
    - std::inner_product
    - CholeskyDecomposition
    - std::accumulate
    - DotProduct
    - std::sqrt
    - row_end
    linkageType: ''
    returnType: Real
    signature: "Real DengLiZhouBasketEngine::calculate_vanilla_call(\n        const
      Array& x, DiscountFactor dr, const Array& dq,\n        const Array& v, const
      Matrix& rho, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:39,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:42,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - processes
    - rho
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: QuantLib::DengLiZhouBasketEngine::DengLiZhouBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DengLiZhouBasketEngine::DengLiZhouBasketEngine(\n        std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > processes,\n        Matrix rho)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:49,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:53,1
    - Dst: ext::dynamic_pointer_cast<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:55,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:57,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:59,1
    - Dst: ext::shared_ptr<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:63,1
    - Dst: ext::shared_ptr::weights
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:66,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:66,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:70,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:71,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:72,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:73,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:76,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:79,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:82,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:86,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:87,1
    - Dst: Matrix
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:88,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:98,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::greater<>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:101,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:103,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:104,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:105,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:110,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:110,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:120,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:120,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:121,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:124,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:125,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:127,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:127,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:129,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:136,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:136,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:146,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:146,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:149,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:153,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:154,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:155,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:157,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:157,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:161,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:162,1
    - Dst: std::get<4>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:163,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:165,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:167,1
    - Dst: QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:171,1
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:171,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:173,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:174,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:177,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:178,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 61
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 180
    functionName: QuantLib::DengLiZhouBasketEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 0
    functionsReached:
    - std::greater<>
    - ext::shared_ptr::basePayoff
    - std::get<4>
    - std::get<1>
    - std::vector::reserve
    - Real
    - QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - Matrix::row_begin
    - Log
    - detail::VectorBsmProcessExtractor::getSpot
    - ext::shared_ptr::lastDate
    - std::vector::emplace_back
    - std::sort
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array
    - Array::begin
    - begin
    - std::get<2>
    - std::abs
    - ext::shared_ptr::strike
    - std::min
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - ext::shared_ptr::weights
    - ext::shared_ptr<AverageBasketPayoff>
    - Array::end
    - ext::shared_ptr::optionType
    - std::max
    - Matrix
    - std::get<3>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::get<0>
    - row_begin
    - std::vector::size
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::dynamic_pointer_cast<AverageBasketPayoff>
    - std::copy
    - std::inner_product
    - ext::make_shared<AverageBasketPayoff>
    - std::vector::begin
    - std::vector::end
    - Array::size
    - std::accumulate
    - std::sqrt
    - row_end
    linkageType: ''
    returnType: void
    signature: void DengLiZhouBasketEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:184,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:185,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:186,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:188,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:189,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:191,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:192,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:195,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:196,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:199,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - u
    - tF2
    - ' D'
    - ' DF'
    - i
    argTypes:
    - Real
    - Real
    - Matrix
    - Matrix
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 205
    functionName: QuantLib::DengLiZhouBasketEngine::I
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 1
    functionsReached:
    - squared
    - std::inner_product
    - Real
    - CumulativeNormalDistribution
    - std::sqrt
    - row_end
    - row_begin
    - NormalDistribution
    linkageType: ''
    returnType: Real
    signature: Real DengLiZhouBasketEngine::I(Real u, Real tF2, const Matrix& D, const
      Matrix& DF, Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:211,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:212,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:214,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:215,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:216,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:219,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:223,1
    - Dst: row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:224,1
    - Dst: row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:224,1
    - Dst: pseudoSqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:226,1
    - Dst: CholeskySolveFor
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:227,1
    - Dst: CholeskyDecomposition
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:227,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:230,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:231,1
    - Dst: E
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:237,1
    - Dst: E
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:237,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:238,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:239,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:239,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:246,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:247,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:248,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:253,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:256,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:263,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:264,1
    - Dst: DotProduct
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:264,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:268,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::row_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:269,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:270,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:270,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: Matrix::column_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: Matrix::column_end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:276,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:280,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:284,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:285,1
    - Dst: Array::back
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:285,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    - Dst: QuantLib::DengLiZhouBasketEngine::I
      Src: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp:288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 6
    argNames:
    - ' x'
    - dr
    - ' dq'
    - ' v'
    - ' rho'
    - K
    argTypes:
    - Array
    - DiscountFactor
    - Array
    - Array
    - Matrix
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 291
    functionName: QuantLib::DengLiZhouBasketEngine::calculate_vanilla_call
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/denglizhoubasketengine.cpp
    functionUses: 2
    functionsReached:
    - Array::back
    - Matrix::row_end
    - Log
    - Real
    - Matrix::row_begin
    - Matrix::column_begin
    - QuantLib::DengLiZhouBasketEngine::I
    - E
    - squared
    - Array::begin
    - Array
    - Matrix::column_end
    - begin
    - Exp
    - CholeskySolveFor
    - size
    - pseudoSqrt
    - std::exp
    - Array::end
    - Sqrt
    - row_begin
    - end
    - QL_REQUIRE
    - std::copy
    - std::log
    - std::inner_product
    - CholeskyDecomposition
    - std::accumulate
    - DotProduct
    - std::sqrt
    - row_end
    linkageType: ''
    returnType: Real
    signature: "Real DengLiZhouBasketEngine::calculate_vanilla_call(\n        const
      Array& x, DiscountFactor dr, const Array& dq,\n        const Array& v, const
      Matrix& rho, Real K)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 34
    functionName: QuantLib::SpreadBlackScholesVanillaEngine::SpreadBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadBlackScholesVanillaEngine::SpreadBlackScholesVanillaEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:39,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:46,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:49,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:50,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:54,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:55,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:56,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:58,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:59,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:63,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:68,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:68,1
    - Dst: QuantLib::SpreadBlackScholesVanillaEngine::calculate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 71
    functionName: QuantLib::SpreadBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::basePayoff
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - QuantLib::SpreadBlackScholesVanillaEngine::calculate
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SpreadBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 34
    functionName: QuantLib::SpreadBlackScholesVanillaEngine::SpreadBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadBlackScholesVanillaEngine::SpreadBlackScholesVanillaEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:39,1
    - Dst: ext::dynamic_pointer_cast<SpreadBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:46,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:49,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:50,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:54,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:55,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:56,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:58,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:59,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:63,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:68,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:68,1
    - Dst: QuantLib::SpreadBlackScholesVanillaEngine::calculate
      Src: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 71
    functionName: QuantLib::SpreadBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/spreadblackscholesvanillaengine.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - blackVolatility
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::basePayoff
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - ext::dynamic_pointer_cast<SpreadBasketPayoff>
    - QuantLib::SpreadBlackScholesVanillaEngine::calculate
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SpreadBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::detail::VectorBsmProcessExtractor::VectorBsmProcessExtractor
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VectorBsmProcessExtractor::VectorBsmProcessExtractor(\n            std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:38,1
    - Dst: std::transform
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<Real(\n                const ext::shared_ptr<GeneralizedBlackScholesProcess>&)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::extractProcesses(\n            const
      std::function<Real(\n                const ext::shared_ptr<GeneralizedBlackScholesProcess>&)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:46,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:52,1
    - Dst: std::equal
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:53,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 61
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getInterestRateDf
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    - close_enough
    - Array::begin
    - Array::end
    - std::equal
    - riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor VectorBsmProcessExtractor::getInterestRateDf(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:64,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getSpot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: Array VectorBsmProcessExtractor::getSpot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getDividendYieldDf
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getDividendYieldDf(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:80,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getBlackVariance
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - blackVolatility
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getBlackVariance(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:87,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:89,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getBlackStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - blackVolatility
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getBlackStdDev(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::detail::VectorBsmProcessExtractor::VectorBsmProcessExtractor
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VectorBsmProcessExtractor::VectorBsmProcessExtractor(\n            std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess>
      > p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:38,1
    - Dst: std::transform
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<Real(\n                const ext::shared_ptr<GeneralizedBlackScholesProcess>&)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 5
    functionsReached:
    - std::transform
    - Array::begin
    - begin
    - size
    - end
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::extractProcesses(\n            const
      std::function<Real(\n                const ext::shared_ptr<GeneralizedBlackScholesProcess>&)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:46,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:52,1
    - Dst: std::equal
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:53,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:54,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 61
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getInterestRateDf
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    - close_enough
    - Array::begin
    - Array::end
    - std::equal
    - riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: "DiscountFactor VectorBsmProcessExtractor::getInterestRateDf(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:64,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getSpot
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: Array VectorBsmProcessExtractor::getSpot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getDividendYieldDf
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getDividendYieldDf(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:80,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getBlackVariance
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - blackVolatility
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getBlackVariance(\n            const
      Date& maturityDate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:87,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:89,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' maturityDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: QuantLib::detail::VectorBsmProcessExtractor::getBlackStdDev
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/vectorbsmprocessextractor.cpp
    functionUses: 0
    functionsReached:
    - x0
    - blackVolatility
    - QuantLib::detail::VectorBsmProcessExtractor::extractProcesses
    - std::sqrt
    linkageType: ''
    returnType: Array
    signature: "Array VectorBsmProcessExtractor::getBlackStdDev(\n            const
      Date& maturityDate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:32,1
    - Dst: QuantLib::LsmBasisSystem::multiPathBasisSystem
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:34,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:46,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:46,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:49,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:52,1
    - Dst: QuantLib::AmericanBasketPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 4
    argNames:
    - assetNumber
    - payoff
    - polynomialOrder
    - polynomialType
    argTypes:
    - Size
    - ext::shared_ptr<Payoff>
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 27
    functionDepth: 3
    functionLinenumber: 27
    functionLinenumberEnd: 53
    functionName: QuantLib::AmericanBasketPathPricer::AmericanBasketPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::basePayoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - std::move
    - QuantLib::AmericanBasketPathPricer::payoff
    - emplace_back
    - ext::dynamic_pointer_cast<BasketPayoff>
    - QuantLib::LsmBasisSystem::multiPathBasisSystem
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanBasketPathPricer::AmericanBasketPathPricer(\n        Size
      assetNumber,\n        ext::shared_ptr<Payoff> payoff,\n        Size polynomialOrder,\n
      \       LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:57,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - MultiPath
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::AmericanBasketPathPricer::state
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array AmericanBasketPathPricer::state(const MultiPath& path,\n                                          Size
      t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:70,1
    - Dst: ext::shared_ptr::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' state'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::AmericanBasketPathPricer::payoff
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::accumulate
    - ext::dynamic_pointer_cast<BasketPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AmericanBasketPathPricer::payoff(const Array& state) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AmericanBasketPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:78,1
    - Dst: AmericanBasketPathPricer::state
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - MultiPath
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: "AmericanBasketPathPricer::operator()(const MultiPath& path,\n                                              Size
      t) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - AmericanBasketPathPricer::state
    - AmericanBasketPathPricer::payoff
    linkageType: ''
    returnType: Real
    signature: "Real AmericanBasketPathPricer::operator()(const MultiPath& path,\n
      \                                             Size t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::AmericanBasketPathPricer::basisSystem
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::function<Real(Array)> >
    signature: std::vector<std::function<Real(Array)> > AmericanBasketPathPricer::basisSystem()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:32,1
    - Dst: QuantLib::LsmBasisSystem::multiPathBasisSystem
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:34,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:46,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:46,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:49,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:52,1
    - Dst: QuantLib::AmericanBasketPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 4
    argNames:
    - assetNumber
    - payoff
    - polynomialOrder
    - polynomialType
    argTypes:
    - Size
    - ext::shared_ptr<Payoff>
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 27
    functionDepth: 3
    functionLinenumber: 27
    functionLinenumberEnd: 53
    functionName: QuantLib::AmericanBasketPathPricer::AmericanBasketPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::basePayoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - std::move
    - QuantLib::AmericanBasketPathPricer::payoff
    - emplace_back
    - ext::dynamic_pointer_cast<BasketPayoff>
    - QuantLib::LsmBasisSystem::multiPathBasisSystem
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanBasketPathPricer::AmericanBasketPathPricer(\n        Size
      assetNumber,\n        ext::shared_ptr<Payoff> payoff,\n        Size polynomialOrder,\n
      \       LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:57,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - MultiPath
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::AmericanBasketPathPricer::state
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: "Array AmericanBasketPathPricer::state(const MultiPath& path,\n                                          Size
      t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:70,1
    - Dst: ext::shared_ptr::accumulate
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' state'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::AmericanBasketPathPricer::payoff
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 2
    functionsReached:
    - ext::shared_ptr::accumulate
    - ext::dynamic_pointer_cast<BasketPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AmericanBasketPathPricer::payoff(const Array& state) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AmericanBasketPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:78,1
    - Dst: AmericanBasketPathPricer::state
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - MultiPath
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: "AmericanBasketPathPricer::operator()(const MultiPath& path,\n                                              Size
      t) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached:
    - AmericanBasketPathPricer::state
    - AmericanBasketPathPricer::payoff
    linkageType: ''
    returnType: Real
    signature: "Real AmericanBasketPathPricer::operator()(const MultiPath& path,\n
      \                                             Size t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::AmericanBasketPathPricer::basisSystem
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::function<Real(Array)> >
    signature: std::vector<std::function<Real(Array)> > AmericanBasketPathPricer::basisSystem()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - payoff
    - mesher
    - logS0
    - ' vols'
    - qTS
    - rTS
    - Q
    - l
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    - Array
    - Array
    - std::vector<ext::shared_ptr<YieldTermStructure>>
    - ext::shared_ptr<YieldTermStructure>
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::FdmPCABasketInnerValue::FdmPCABasketInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Array::size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmPCABasketInnerValue(\n                ext::shared_ptr<BasketPayoff>
      payoff,\n                ext::shared_ptr<FdmMesher> mesher,\n                Array
      logS0, const Array& vols,\n                std::vector<ext::shared_ptr<YieldTermStructure>>
      qTS,\n                ext::shared_ptr<YieldTermStructure> rTS,\n                Matrix
      Q, Array l)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:60,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:62,1
    - Dst: location
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:66,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::FdmPCABasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - discount
    - Exp
    - location
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::FdmPCABasketInnerValue::innerValue
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::FdmPCABasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::FdmPCABasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - payoff
    - mesher
    - logS0
    - ' vols'
    - qTS
    - rTS
    - Q
    - l
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    - Array
    - Array
    - std::vector<ext::shared_ptr<YieldTermStructure>>
    - ext::shared_ptr<YieldTermStructure>
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::FdmPCABasketInnerValue::FdmPCABasketInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Array::size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmPCABasketInnerValue(\n                ext::shared_ptr<BasketPayoff>
      payoff,\n                ext::shared_ptr<FdmMesher> mesher,\n                Array
      logS0, const Array& vols,\n                std::vector<ext::shared_ptr<YieldTermStructure>>
      qTS,\n                ext::shared_ptr<YieldTermStructure> rTS,\n                Matrix
      Q, Array l)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:60,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:62,1
    - Dst: location
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:66,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::FdmPCABasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 1
    functionsReached:
    - discount
    - Exp
    - location
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::FdmPCABasketInnerValue::innerValue
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::FdmPCABasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::FdmPCABasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:104,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - processes
    - rho
    - xGrids
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - std::vector<Size>
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 113
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - empty
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine(\n
      \       std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> > processes,\n
      \       Matrix rho,\n        std::vector<Size> xGrids,\n        Size tGrid,
      Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - processes
    - rho
    - xGrid
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 121
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: "void FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine(\n
      \       std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> > processes,\n
      \       Matrix rho, Size xGrid, Size tGrid, Size dampingSteps,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:129,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:134,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:136,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:139,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:140,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:141,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:141,1
    - Dst: getCovariance
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:146,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:152,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:153,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:156,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:162,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:163,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:165,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:165,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:169,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:173,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:179,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:180,1
    - Dst: ext::make_shared<detail::FdmPCABasketInnerValue>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:183,1
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:185,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:191,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:192,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:194,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:194,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:202,1
    - Dst: ext::make_shared<FdmWienerOp>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:204,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:209,1
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:217,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:219,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:219,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 224
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Predefined1dMesher>
    - ext::shared_ptr::dayCounter
    - ext::make_shared<FdmMesherComposite>
    - Log
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::make_shared<detail::FdmPCABasketInnerValue>
    - detail::VectorBsmProcessExtractor::getSpot
    - std::vector::emplace_back
    - dividendYield
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array::begin
    - SymmetricSchurDecomposition::eigenvalues
    - ext::shared_ptr<YieldTermStructure>
    - ext::make_shared<FdmWienerOp>
    - SymmetricSchurDecomposition::eigenvectors
    - std::pow
    - getCovariance
    - size
    - exercise::lastDate
    - InverseCumulativeNormal
    - Size
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - Array::end
    - time
    - std::max
    - DividendSchedule
    - ext::shared_ptr::referenceDate
    - QL_FAIL
    - Sqrt
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - riskFreeRate
    - BOOST_PP_LOCAL_ITERATE
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void FdndimBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 216
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - payoff
    - mesher
    - logS0
    - ' vols'
    - qTS
    - rTS
    - Q
    - l
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    - Array
    - Array
    - std::vector<ext::shared_ptr<YieldTermStructure>>
    - ext::shared_ptr<YieldTermStructure>
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::FdmPCABasketInnerValue::FdmPCABasketInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Array::size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmPCABasketInnerValue(\n                ext::shared_ptr<BasketPayoff>
      payoff,\n                ext::shared_ptr<FdmMesher> mesher,\n                Array
      logS0, const Array& vols,\n                std::vector<ext::shared_ptr<YieldTermStructure>>
      qTS,\n                ext::shared_ptr<YieldTermStructure> rTS,\n                Matrix
      Q, Array l)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:60,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:62,1
    - Dst: location
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:66,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::FdmPCABasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 2
    functionsReached:
    - discount
    - Exp
    - location
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::FdmPCABasketInnerValue::innerValue
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::FdmPCABasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::FdmPCABasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - payoff
    - mesher
    - logS0
    - ' vols'
    - qTS
    - rTS
    - Q
    - l
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmMesher>
    - Array
    - Array
    - std::vector<ext::shared_ptr<YieldTermStructure>>
    - ext::shared_ptr<YieldTermStructure>
    - Matrix
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::FdmPCABasketInnerValue::FdmPCABasketInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Array::size
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmPCABasketInnerValue(\n                ext::shared_ptr<BasketPayoff>
      payoff,\n                ext::shared_ptr<FdmMesher> mesher,\n                Array
      logS0, const Array& vols,\n                std::vector<ext::shared_ptr<YieldTermStructure>>
      qTS,\n                ext::shared_ptr<YieldTermStructure> rTS,\n                Matrix
      Q, Array l)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:60,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:62,1
    - Dst: location
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:66,1
    - Dst: Exp
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::FdmPCABasketInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 3
    functionsReached:
    - discount
    - Exp
    - location
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::FdmPCABasketInnerValue::innerValue
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::FdmPCABasketInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::FdmPCABasketInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:104,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size2
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:105,1
    - Dst: size1
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:108,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:111,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - processes
    - rho
    - xGrids
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - std::vector<Size>
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 113
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - empty
    - size1
    - std::move
    - begin
    - size2
    - registerWith
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine(\n
      \       std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> > processes,\n
      \       Matrix rho,\n        std::vector<Size> xGrids,\n        Size tGrid,
      Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - processes
    - rho
    - xGrid
    - tGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> >
    - Matrix
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 121
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: "void FdndimBlackScholesVanillaEngine::FdndimBlackScholesVanillaEngine(\n
      \       std::vector<ext::shared_ptr<GeneralizedBlackScholesProcess> > processes,\n
      \       Matrix rho, Size xGrid, Size tGrid, Size dampingSteps,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:129,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:134,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:136,1
    - Dst: detail::VectorBsmProcessExtractor::getSpot
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:139,1
    - Dst: detail::VectorBsmProcessExtractor::getDividendYieldDf
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:140,1
    - Dst: Sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:141,1
    - Dst: detail::VectorBsmProcessExtractor::getBlackVariance
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:141,1
    - Dst: getCovariance
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:145,1
    - Dst: SymmetricSchurDecomposition::eigenvectors
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:146,1
    - Dst: SymmetricSchurDecomposition::eigenvalues
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:152,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:153,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:156,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:162,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:163,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:165,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:165,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:169,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:173,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:179,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:180,1
    - Dst: ext::make_shared<detail::FdmPCABasketInnerValue>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:183,1
    - Dst: Log
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:185,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:191,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:192,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:194,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:194,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:202,1
    - Dst: ext::make_shared<FdmWienerOp>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:204,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:209,1
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:217,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:219,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:219,1
    - Dst: detail::VectorBsmProcessExtractor::getInterestRateDf
      Src: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp:223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 224
    functionName: QuantLib::FdndimBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<Predefined1dMesher>
    - ext::shared_ptr::dayCounter
    - ext::make_shared<FdmMesherComposite>
    - Log
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::make_shared<detail::FdmPCABasketInnerValue>
    - detail::VectorBsmProcessExtractor::getSpot
    - std::vector::emplace_back
    - dividendYield
    - detail::VectorBsmProcessExtractor::getInterestRateDf
    - Array::begin
    - SymmetricSchurDecomposition::eigenvalues
    - ext::shared_ptr<YieldTermStructure>
    - ext::make_shared<FdmWienerOp>
    - SymmetricSchurDecomposition::eigenvectors
    - std::pow
    - getCovariance
    - size
    - exercise::lastDate
    - InverseCumulativeNormal
    - Size
    - detail::VectorBsmProcessExtractor::getDividendYieldDf
    - Array::end
    - time
    - std::max
    - DividendSchedule
    - ext::shared_ptr::referenceDate
    - QL_FAIL
    - Sqrt
    - detail::VectorBsmProcessExtractor::getBlackVariance
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - riskFreeRate
    - BOOST_PP_LOCAL_ITERATE
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void FdndimBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 216
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/fdndimblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' processes'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - nCalibrationSamples
    - polynomialOrder
    - polynomialType
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 154
    functionName: QuantLib::MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine(\n                   const
      ext::shared_ptr<StochasticProcessArray>& processes,\n                   Size
      timeSteps,\n                   Size timeStepsPerYear,\n                   bool
      brownianBridge,\n                   bool antitheticVariate,\n                   Size
      requiredSamples,\n                   Real requiredTolerance,\n                   Size
      maxSamples,\n                   BigNatural seed,\n                   Size nCalibrationSamples,\n
      \                  Size polynomialOrder,\n                   LsmBasisSystem::PolynomialType
      polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StochasticProcessArray>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:163,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:167,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:169,1
    - Dst: ext::dynamic_pointer_cast<EarlyExercise>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:175,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:175,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:179,1
    - Dst: AmericanBasketPathPricer::AmericanBasketPathPricer
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:179,1
    - Dst: ext::make_shared<LongstaffSchwartzPathPricer<MultiPath> >
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:184,1
    - Dst: QuantLib::MCAmericanBasketEngine<RNG>::timeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:186,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 189
    functionName: QuantLib::MCAmericanBasketEngine<RNG>::lsmPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::process
    - ext::shared_ptr::size
    - QuantLib::MCAmericanBasketEngine<RNG>::timeGrid
    - ext::dynamic_pointer_cast<EarlyExercise>
    - ext::shared_ptr::payoffAtExpiry
    - AmericanBasketPathPricer::AmericanBasketPathPricer
    - ext::shared_ptr::riskFreeRate
    - ext::dynamic_pointer_cast<StochasticProcessArray>
    - ext::make_shared<LongstaffSchwartzPathPricer<MultiPath> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<LongstaffSchwartzPathPricer<MultiPath> >
    signature: ext::shared_ptr<LongstaffSchwartzPathPricer<MultiPath> > MCAmericanBasketEngine<RNG>::lsmPathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionName: QuantLib::MakeMCAmericanBasketEngine<RNG>::MakeMCAmericanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCAmericanBasketEngine<RNG>::MakeMCAmericanBasketEngine(\n
      \       ext::shared_ptr<StochasticProcessArray> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 204
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:230,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 267
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withCalibrationSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withCalibrationSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withPolynomialOrder(Size
      polynomialOrder)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withPolynomialOrder(Size
      polynomialOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialType
    argTypes:
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 281
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:291,1
    - Dst: MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine<RNG>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 304
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine<RNG>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>::operator
    signature: MakeMCAmericanBasketEngine<RNG>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' processes'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - nCalibrationSamples
    - polynomialOrder
    - polynomialType
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 154
    functionName: QuantLib::MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine(\n                   const
      ext::shared_ptr<StochasticProcessArray>& processes,\n                   Size
      timeSteps,\n                   Size timeStepsPerYear,\n                   bool
      brownianBridge,\n                   bool antitheticVariate,\n                   Size
      requiredSamples,\n                   Real requiredTolerance,\n                   Size
      maxSamples,\n                   BigNatural seed,\n                   Size nCalibrationSamples,\n
      \                  Size polynomialOrder,\n                   LsmBasisSystem::PolynomialType
      polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StochasticProcessArray>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:163,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:167,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:169,1
    - Dst: ext::dynamic_pointer_cast<EarlyExercise>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:175,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:175,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:179,1
    - Dst: AmericanBasketPathPricer::AmericanBasketPathPricer
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:179,1
    - Dst: ext::make_shared<LongstaffSchwartzPathPricer<MultiPath> >
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:184,1
    - Dst: QuantLib::MCAmericanBasketEngine<RNG>::timeGrid
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:186,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 189
    functionName: QuantLib::MCAmericanBasketEngine<RNG>::lsmPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::process
    - ext::shared_ptr::size
    - QuantLib::MCAmericanBasketEngine<RNG>::timeGrid
    - ext::dynamic_pointer_cast<EarlyExercise>
    - ext::shared_ptr::payoffAtExpiry
    - AmericanBasketPathPricer::AmericanBasketPathPricer
    - ext::shared_ptr::riskFreeRate
    - ext::dynamic_pointer_cast<StochasticProcessArray>
    - ext::make_shared<LongstaffSchwartzPathPricer<MultiPath> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<LongstaffSchwartzPathPricer<MultiPath> >
    signature: ext::shared_ptr<LongstaffSchwartzPathPricer<MultiPath> > MCAmericanBasketEngine<RNG>::lsmPathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:196,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionName: QuantLib::MakeMCAmericanBasketEngine<RNG>::MakeMCAmericanBasketEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCAmericanBasketEngine<RNG>::MakeMCAmericanBasketEngine(\n
      \       ext::shared_ptr<StochasticProcessArray> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 204
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withBrownianBridge(bool
      brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:230,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 246
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 267
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withCalibrationSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withCalibrationSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withPolynomialOrder(Size
      polynomialOrder)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withPolynomialOrder(Size
      polynomialOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialType
    argTypes:
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 281
    functionName: "&\n    MakeMCAmericanBasketEngine<RNG>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>
    signature: "MakeMCAmericanBasketEngine<RNG> &\n    MakeMCAmericanBasketEngine<RNG>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:287,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:289,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:291,1
    - Dst: MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine<RNG>
      Src: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 304
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/mcamericanbasketengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCAmericanBasketEngine<RNG>::MCAmericanBasketEngine<RNG>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanBasketEngine<RNG>::operator
    signature: MakeMCAmericanBasketEngine<RNG>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::BjerksundStenslandSpreadEngine::BjerksundStenslandSpreadEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BjerksundStenslandSpreadEngine::BjerksundStenslandSpreadEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:43,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:48,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - f1
    - f2
    - k
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 58
    functionName: QuantLib::BjerksundStenslandSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real BjerksundStenslandSpreadEngine::calculate(\n        Real f1,
      Real f2, Real k, Option::Type optionType,\n        Real variance1, Real variance2,
      DiscountFactor df) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::BjerksundStenslandSpreadEngine::BjerksundStenslandSpreadEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BjerksundStenslandSpreadEngine::BjerksundStenslandSpreadEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:43,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:48,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - f1
    - f2
    - k
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 58
    functionName: QuantLib::BjerksundStenslandSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/bjerksundstenslandspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - phi
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real BjerksundStenslandSpreadEngine::calculate(\n        Real f1,
      Real f2, Real k, Option::Type optionType,\n        Real variance1, Real variance2,
      DiscountFactor df) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - process1
    - process2
    - correlation
    - order
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Order
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::OperatorSplittingSpreadEngine::OperatorSplittingSpreadEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OperatorSplittingSpreadEngine::OperatorSplittingSpreadEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation,\n        Order order)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:49,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:53,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:53,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:58,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:61,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:63,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:70,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:95,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:102,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:108,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:108,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:109,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:140,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:169,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:182,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 7
    argNames:
    - f1
    - f2
    - k
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 183
    functionName: QuantLib::OperatorSplittingSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp
    functionUses: 0
    functionsReached:
    - callPutParityPrice
    - std::exp
    - squared
    - std::log
    - N
    - std::pow
    - std::sqrt
    - NormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real OperatorSplittingSpreadEngine::calculate(\n        Real f1, Real
      f2, Real k, Option::Type optionType,\n        Real variance1, Real variance2,
      DiscountFactor df) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - process1
    - process2
    - correlation
    - order
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Order
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::OperatorSplittingSpreadEngine::OperatorSplittingSpreadEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OperatorSplittingSpreadEngine::OperatorSplittingSpreadEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation,\n        Order order)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:49,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:53,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:53,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:58,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:58,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:61,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:63,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:70,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:95,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:101,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:102,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:108,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:108,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:109,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:128,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:140,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:169,1
    - Dst: callPutParityPrice
      Src: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp:182,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 7
    argNames:
    - f1
    - f2
    - k
    - optionType
    - variance1
    - variance2
    - df
    argTypes:
    - Real
    - Real
    - Real
    - Option::Type
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 183
    functionName: QuantLib::OperatorSplittingSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/operatorsplittingspreadengine.cpp
    functionUses: 0
    functionsReached:
    - callPutParityPrice
    - std::exp
    - squared
    - std::log
    - N
    - std::pow
    - std::sqrt
    - NormalDistribution
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real OperatorSplittingSpreadEngine::calculate(\n        Real f1, Real
      f2, Real k, Option::Type optionType,\n        Real variance1, Real variance2,
      DiscountFactor df) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:50,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:55,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:57,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:64,1
    - Dst: bivCNormMod1
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:65,1
    - Dst: bivCNormMod2
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:66,1
    - Dst: bivCNorm
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:67,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:70,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 78
    functionName: QuantLib::euroTwoAssetMinBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - BivariateCumulativeNormalDistribution
    - std::log
    - bivCNorm
    - bivCNormMod1
    - std::sqrt
    - bivCNormMod2
    - cum
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMinBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:87,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:91,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:94,1
    - Dst: QuantLib::euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 100
    functionName: QuantLib::euroTwoAssetMaxBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::blackFormula
    - ext::shared_ptr::optionType
    - QuantLib::euroTwoAssetMinBasketCall
    - std::sqrt
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMaxBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:50,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:55,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:57,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:64,1
    - Dst: bivCNormMod1
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:65,1
    - Dst: bivCNormMod2
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:66,1
    - Dst: bivCNorm
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:67,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:70,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 78
    functionName: QuantLib::euroTwoAssetMinBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 1
    functionsReached:
    - BivariateCumulativeNormalDistribution
    - std::log
    - bivCNorm
    - bivCNormMod1
    - std::sqrt
    - bivCNormMod2
    - cum
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMinBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:87,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:91,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:94,1
    - Dst: QuantLib::euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 100
    functionName: QuantLib::euroTwoAssetMaxBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::blackFormula
    - ext::shared_ptr::optionType
    - QuantLib::euroTwoAssetMinBasketCall
    - std::sqrt
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMaxBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:106,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:107,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: QuantLib::StulzEngine::StulzEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void StulzEngine::StulzEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process1,\n                             ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n                             Real correlation)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:113,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:113,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:118,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:121,1
    - Dst: ext::dynamic_pointer_cast<MinBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:124,1
    - Dst: ext::dynamic_pointer_cast<MaxBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:131,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:134,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:136,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:137,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:138,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:139,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:142,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:142,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:146,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:146,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:148,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:148,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:150,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:152,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:156,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:160,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:169,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:172,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:177,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:180,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:184,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:192,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:195,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:200,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:203,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 205
    functionName: QuantLib::StulzEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<MinBasketPayoff>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::basePayoff
    - dividendYield
    - euroTwoAssetMinBasketCall
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<MaxBasketPayoff>
    - riskFreeRate
    - ext::shared_ptr::optionType
    - QL_FAIL
    - euroTwoAssetMaxBasketCall
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - ext::shared_ptr::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void StulzEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:50,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:55,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:57,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:64,1
    - Dst: bivCNormMod1
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:65,1
    - Dst: bivCNormMod2
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:66,1
    - Dst: bivCNorm
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:67,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:70,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 78
    functionName: QuantLib::euroTwoAssetMinBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 2
    functionsReached:
    - BivariateCumulativeNormalDistribution
    - std::log
    - bivCNorm
    - bivCNormMod1
    - std::sqrt
    - bivCNormMod2
    - cum
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMinBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:87,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:91,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:94,1
    - Dst: QuantLib::euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 100
    functionName: QuantLib::euroTwoAssetMaxBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::blackFormula
    - ext::shared_ptr::optionType
    - QuantLib::euroTwoAssetMinBasketCall
    - std::sqrt
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMaxBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:41,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:50,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:55,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:57,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:64,1
    - Dst: bivCNormMod1
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:65,1
    - Dst: bivCNormMod2
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:66,1
    - Dst: bivCNorm
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:67,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:70,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 78
    functionName: QuantLib::euroTwoAssetMinBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 3
    functionsReached:
    - BivariateCumulativeNormalDistribution
    - std::log
    - bivCNorm
    - bivCNormMod1
    - std::sqrt
    - bivCNormMod2
    - cum
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMinBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:87,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:91,1
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:94,1
    - Dst: QuantLib::euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - forward1
    - forward2
    - strike
    - riskFreeDiscount
    - variance1
    - variance2
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - DiscountFactor
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 100
    functionName: QuantLib::euroTwoAssetMaxBasketCall
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - QuantLib::blackFormula
    - ext::shared_ptr::optionType
    - QuantLib::euroTwoAssetMinBasketCall
    - std::sqrt
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: Real
    signature: "Real euroTwoAssetMaxBasketCall(Real forward1, Real forward2,\n                                       Real
      strike,\n                                       DiscountFactor riskFreeDiscount,\n
      \                                      Real variance1, Real variance2,\n                                       Real
      rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:106,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:106,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:107,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: QuantLib::StulzEngine::StulzEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void StulzEngine::StulzEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process1,\n                             ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n                             Real correlation)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:113,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:113,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:118,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:121,1
    - Dst: ext::dynamic_pointer_cast<MinBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:124,1
    - Dst: ext::dynamic_pointer_cast<MaxBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:131,1
    - Dst: ext::shared_ptr::basePayoff
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:134,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:136,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:137,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:138,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:139,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:142,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:142,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:146,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:146,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:148,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:148,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:150,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:152,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:156,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:160,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:169,1
    - Dst: euroTwoAssetMaxBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:172,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:177,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:180,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:184,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:192,1
    - Dst: euroTwoAssetMinBasketCall
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:195,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:200,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp:203,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 205
    functionName: QuantLib::StulzEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/basket/stulzengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<MinBasketPayoff>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::basePayoff
    - dividendYield
    - euroTwoAssetMinBasketCall
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<MaxBasketPayoff>
    - riskFreeRate
    - ext::shared_ptr::optionType
    - QL_FAIL
    - euroTwoAssetMaxBasketCall
    - ext::dynamic_pointer_cast<BasketPayoff>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - stateVariable
    - ext::shared_ptr::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void StulzEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:43,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:46,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 27
    functionsReached:
    - cumNormalDist
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real phi(Real S, Real gamma, Real H, Real I,\n                 Real
      rT, Real bT, Real variance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:53,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::phi_S
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_S(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::phi_SS
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_SS(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::phi_gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_gamma(Real S, Real gamma, Real H, Real I, Real rT, Real bT,
      Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::phi_H
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_H(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::phi_I
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_I(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::phi_rt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real phi_rt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:98,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::phi_bt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_bt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:105,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:106,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::phi_v
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_v(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:43,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:46,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 27
    functionsReached:
    - cumNormalDist
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real phi(Real S, Real gamma, Real H, Real I,\n                 Real
      rT, Real bT, Real variance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:53,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::phi_S
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_S(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::phi_SS
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_SS(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::phi_gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_gamma(Real S, Real gamma, Real H, Real I, Real rT, Real bT,
      Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::phi_H
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_H(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::phi_I
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_I(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::phi_rt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real phi_rt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:98,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::phi_bt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_bt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:105,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:106,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::phi_v
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_v(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:129,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:130,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:131,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:133,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:134,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:135,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:137,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:137,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:138,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:139,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:141,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:141,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:142,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:143,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:145,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:145,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:146,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:147,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:148,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:149,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:151,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:152,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:152,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 5
    argNames:
    - S
    - X
    - rfD
    - dD
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 156
    functionName: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - BlackCalculator::delta
    - blackVolatility
    - DayCounter::yearFraction
    - squared
    - BlackCalculator::dividendRho
    - BlackCalculator::theta
    - BlackCalculator::vega
    - std::string
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - Real
    - BlackCalculator::value
    - BlackCalculator::rho
    - exercise::lastDate
    - BlackCalculator::gamma
    linkageType: ''
    returnType: OneAssetOption::results
    signature: "OneAssetOption::results BjerksundStenslandApproximationEngine::europeanCallResults(\n
      \       Real S, Real X, Real rfD, Real dD, Real variance) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:161,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:171,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - S
    - X
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 175
    functionName: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::string
    - Real
    linkageType: ''
    returnType: OneAssetOption::results
    signature: OneAssetOption::results BjerksundStenslandApproximationEngine::immediateExercise(Real
      S, Real X) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:182,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:186,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:190,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:190,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:193,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:194,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:196,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:199,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:202,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:211,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:213,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:215,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:216,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:220,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:221,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:224,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:226,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:231,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:237,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:238,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:240,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:241,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:242,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:243,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:246,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:246,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:249,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:253,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:255,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:256,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:257,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:260,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:262,1
    - Dst: phi_gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:264,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:266,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:268,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:270,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:272,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:274,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:276,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:278,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:280,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:282,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:284,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:286,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:289,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:290,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:290,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:292,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:308,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:312,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:312,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:314,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:317,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:319,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:320,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:321,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:325,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:325,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:327,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:331,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:335,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:338,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:342,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:345,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:349,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:349,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:351,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:352,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:353,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:355,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:356,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:356,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:357,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:358,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:359,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:360,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:361,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:361,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:363,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:364,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:367,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:368,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:370,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:374,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:377,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:379,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:382,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:384,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:387,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:387,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:389,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:391,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:392,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:395,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:398,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:400,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:401,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:403,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:405,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:406,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:407,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:408,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:409,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:410,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:411,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:418,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:418,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 5
    argNames:
    - S
    - X
    - rfD
    - dD
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 429
    functionName: QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - phi
    - Real
    - phi_S
    - dividendYield
    - phi_rt
    - squared
    - phi_gamma
    - phi_v
    - std::pow
    - phi_I
    - exercise::lastDate
    - std::exp
    - DayCounter::yearFraction
    - std::string
    - QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    - Period
    - std::max
    - phi_SS
    - blackVolatility
    - std::log
    - phi_H
    - QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    - riskFreeRate
    - std::sqrt
    - phi_bt
    linkageType: ''
    returnType: OneAssetOption::results
    signature: "OneAssetOption::results BjerksundStenslandApproximationEngine::americanCallApproximation(\n
      \       Real S, Real X, Real rfD, Real dD, Real variance) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:434,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:434,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:438,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:439,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:440,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:440,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:444,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:445,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:448,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:448,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:449,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:451,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:451,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:453,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:453,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:454,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:455,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:456,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:458,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:460,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:461,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:462,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:467,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:471,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:475,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:481,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:484,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:487,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:491,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:494,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:496,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:497,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:498,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:499,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:500,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:501,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 506
    functionName: QuantLib::BjerksundStenslandApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::lastDate
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::make_shared<PlainVanillaPayoff>
    - QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - ext::any_cast<Real>
    - QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::swap
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    - ext::shared_ptr::payoffAtExpiry
    linkageType: ''
    returnType: void
    signature: void BjerksundStenslandApproximationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:43,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:46,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 27
    functionsReached:
    - cumNormalDist
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real phi(Real S, Real gamma, Real H, Real I,\n                 Real
      rT, Real bT, Real variance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:53,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::phi_S
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_S(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::phi_SS
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_SS(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::phi_gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_gamma(Real S, Real gamma, Real H, Real I, Real rT, Real bT,
      Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::phi_H
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_H(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::phi_I
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_I(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::phi_rt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real phi_rt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:98,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::phi_bt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_bt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:105,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:106,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::phi_v
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_v(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:42,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:43,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:45,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:46,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 48
    functionName: QuantLib::phi
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 27
    functionsReached:
    - cumNormalDist
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real phi(Real S, Real gamma, Real H, Real I,\n                 Real
      rT, Real bT, Real variance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:51,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:53,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: QuantLib::phi_S
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_S(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:60,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: QuantLib::phi_SS
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_SS(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:71,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: QuantLib::phi_gamma
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_gamma(Real S, Real gamma, Real H, Real I, Real rT, Real bT,
      Real v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::phi_H
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_H(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:83,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: QuantLib::phi_I
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_I(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::phi_rt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real phi_rt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:98,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::phi_bt
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_bt(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:104,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:105,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:106,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:107,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::erfc
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    - Dst: QuantLib::squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - S
    - gamma
    - H
    - I
    - rT
    - bT
    - v
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: QuantLib::phi_v
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - std::erfc
    - std::pow
    - std::sqrt
    - QuantLib::squared
    linkageType: ''
    returnType: Real
    signature: Real phi_v(Real S, Real gamma, Real H, Real I, Real rT, Real bT, Real
      v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:115,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:129,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:130,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:131,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:133,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:134,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:135,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:137,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:137,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:138,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:139,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:141,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:141,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:142,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:143,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:145,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:145,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:146,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:147,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:148,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:149,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:151,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:152,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:152,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 5
    argNames:
    - S
    - X
    - rfD
    - dD
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 156
    functionName: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - BlackCalculator::delta
    - blackVolatility
    - DayCounter::yearFraction
    - squared
    - BlackCalculator::dividendRho
    - BlackCalculator::theta
    - BlackCalculator::vega
    - std::string
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - Real
    - BlackCalculator::value
    - BlackCalculator::rho
    - exercise::lastDate
    - BlackCalculator::gamma
    linkageType: ''
    returnType: OneAssetOption::results
    signature: "OneAssetOption::results BjerksundStenslandApproximationEngine::europeanCallResults(\n
      \       Real S, Real X, Real rfD, Real dD, Real variance) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:161,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:171,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - S
    - X
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 175
    functionName: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - std::string
    - Real
    linkageType: ''
    returnType: OneAssetOption::results
    signature: OneAssetOption::results BjerksundStenslandApproximationEngine::immediateExercise(Real
      S, Real X) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:182,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:186,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:190,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:190,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:193,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:194,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:196,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:199,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:202,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:211,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:213,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:215,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:216,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:220,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:221,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:224,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:226,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:228,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:229,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:231,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:237,1
    - Dst: phi_S
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:238,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:240,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:241,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:242,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:243,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:246,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:246,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:248,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:249,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:250,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:253,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:255,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:256,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:257,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:260,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:262,1
    - Dst: phi_gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:264,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:266,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:268,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:270,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:272,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:274,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:276,1
    - Dst: phi_H
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:278,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:280,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:282,1
    - Dst: phi_I
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:284,1
    - Dst: phi_bt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:286,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:289,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:290,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:290,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:292,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:308,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:309,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:312,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:312,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:314,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:315,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:317,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:319,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:320,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:321,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:325,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:325,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:327,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:331,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:335,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:338,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:342,1
    - Dst: phi_rt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:345,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:349,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:349,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:351,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:352,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:353,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:355,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:356,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:356,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:357,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:358,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:359,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:360,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:361,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:361,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:363,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:364,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:367,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:368,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:370,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:374,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:377,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:379,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:382,1
    - Dst: phi_v
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:384,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:387,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:387,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:389,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:391,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:392,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:395,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:398,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:400,1
    - Dst: phi_SS
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:401,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:403,1
    - Dst: Period
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:405,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:406,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:407,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:408,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:409,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:410,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:411,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:418,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:418,1
    - Dst: std::string
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 5
    argNames:
    - S
    - X
    - rfD
    - dD
    - variance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 429
    functionName: QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 1
    functionsReached:
    - phi
    - Real
    - phi_S
    - dividendYield
    - phi_rt
    - squared
    - phi_gamma
    - phi_v
    - std::pow
    - phi_I
    - exercise::lastDate
    - std::exp
    - DayCounter::yearFraction
    - std::string
    - QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    - Period
    - std::max
    - phi_SS
    - blackVolatility
    - std::log
    - phi_H
    - QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    - riskFreeRate
    - std::sqrt
    - phi_bt
    linkageType: ''
    returnType: OneAssetOption::results
    signature: "OneAssetOption::results BjerksundStenslandApproximationEngine::americanCallApproximation(\n
      \       Real S, Real X, Real rfD, Real dD, Real variance) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:434,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:434,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:438,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:439,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:440,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:440,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:444,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:445,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:448,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:448,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:449,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:451,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:451,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:453,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:453,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:454,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:455,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:456,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:458,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:460,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:461,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:462,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:467,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:471,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:475,1
    - Dst: QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:481,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:484,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:487,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:491,1
    - Dst: std::swap
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:494,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:496,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:497,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:498,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:499,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:500,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp:501,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 506
    functionName: QuantLib::BjerksundStenslandApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/bjerksundstenslandengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::lastDate
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::make_shared<PlainVanillaPayoff>
    - QuantLib::BjerksundStenslandApproximationEngine::americanCallApproximation
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - ext::any_cast<Real>
    - QuantLib::BjerksundStenslandApproximationEngine::europeanCallResults
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::swap
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - QuantLib::BjerksundStenslandApproximationEngine::immediateExercise
    - ext::shared_ptr::payoffAtExpiry
    linkageType: ''
    returnType: void
    signature: void BjerksundStenslandApproximationEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<AnalyticHestonEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:196,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:198,1
    - Dst: reserve
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:200,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:203,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ' model'
    - cv
    - scaling
    - alpha
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ControlVariate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 205
    functionName: QuantLib::ExponentialFittingHestonEngine::ExponentialFittingHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<AnalyticHestonEngine>
    - push_back
    - reserve
    - empty
    linkageType: ''
    returnType: void
    signature: "void ExponentialFittingHestonEngine::ExponentialFittingHestonEngine(\n
      \       const ext::shared_ptr<HestonModel>& model,\n        ControlVariate cv,\n
      \       Real scaling, Real alpha)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:208,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:208,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:211,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:215,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:217,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:219,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:221,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:224,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:226,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:229,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:235,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:236,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:237,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:238,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:241,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:246,1
    - Dst: get
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:250,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:252,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:257,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:262,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:267,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:270,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:271,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:272,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:274,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:280,1
    - Dst: helper
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:289,1
    - Dst: AnalyticHestonEngine::AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:293,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:295,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:304,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 306
    functionName: QuantLib::ExponentialFittingHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - kappa
    - v0
    - theta
    - Real
    - ext::shared_ptr::riskFreeRate
    - get
    - helper
    - ext::shared_ptr::s0
    - exercise::type
    - begin
    - std::fabs
    - ext::shared_ptr::time
    - size
    - exercise::lastDate
    - rho
    - ext::shared_ptr::strike
    - std::min
    - sigma
    - std::exp
    - Size
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - end
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - AnalyticHestonEngine::AP_Helper::controlVariateValue
    - std::log
    - process
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void ExponentialFittingHestonEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<AnalyticHestonEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:196,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:198,1
    - Dst: reserve
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:200,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:203,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ' model'
    - cv
    - scaling
    - alpha
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ControlVariate
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 205
    functionName: QuantLib::ExponentialFittingHestonEngine::ExponentialFittingHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<AnalyticHestonEngine>
    - push_back
    - reserve
    - empty
    linkageType: ''
    returnType: void
    signature: "void ExponentialFittingHestonEngine::ExponentialFittingHestonEngine(\n
      \       const ext::shared_ptr<HestonModel>& model,\n        ControlVariate cv,\n
      \       Real scaling, Real alpha)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:208,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:208,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:211,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:215,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:217,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:219,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:221,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:224,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:226,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:229,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:231,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:235,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:236,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:237,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:238,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:241,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:246,1
    - Dst: get
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:250,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:252,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:254,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:256,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:257,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:262,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:267,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:268,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:269,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:270,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:271,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:272,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:274,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:275,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:280,1
    - Dst: helper
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:289,1
    - Dst: AnalyticHestonEngine::AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:293,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:295,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp:304,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 306
    functionName: QuantLib::ExponentialFittingHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/exponentialfittinghestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - kappa
    - v0
    - theta
    - Real
    - ext::shared_ptr::riskFreeRate
    - get
    - helper
    - ext::shared_ptr::s0
    - exercise::type
    - begin
    - std::fabs
    - ext::shared_ptr::time
    - size
    - exercise::lastDate
    - rho
    - ext::shared_ptr::strike
    - std::min
    - sigma
    - std::exp
    - Size
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - end
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - AnalyticHestonEngine::AP_Helper::controlVariateValue
    - std::log
    - process
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void ExponentialFittingHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - payoff
    - exercise
    - discountTS
    - diffProcess
    - sequenceGen
    argTypes:
    - ext::shared_ptr<CashOrNothingPayoff>
    - ext::shared_ptr<AmericanExercise>
    - Handle<YieldTermStructure>
    - ext::shared_ptr<StochasticProcess1D>
    - PseudoRandom::ursg_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::DigitalPathPricer::DigitalPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DigitalPathPricer::DigitalPathPricer(ext::shared_ptr<CashOrNothingPayoff>
      payoff,\n                                         ext::shared_ptr<AmericanExercise>
      exercise,\n                                         Handle<YieldTermStructure>
      discountTS,\n                                         ext::shared_ptr<StochasticProcess1D>
      diffProcess,\n                                         PseudoRandom::ursg_type
      sequenceGen)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:38,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:40,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:43,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:46,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:46,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:52,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:55,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:60,1
    - Dst: payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:63,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:65,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:65,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:70,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:71,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:79,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:83,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:88,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:88,1
    - Dst: payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:90,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:92,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:92,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:98,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:98,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:105,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 109
    functionName: DigitalPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::exp
    - std::log
    - strike
    - cashPayoff
    - nextSequence
    - payoffAtExpiry
    - length
    - discount
    - QL_FAIL
    - diffusion
    - std::sqrt
    - dt
    - timeGrid
    - optionType
    - front
    linkageType: ''
    returnType: Real
    signature: Real DigitalPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - payoff
    - exercise
    - discountTS
    - diffProcess
    - sequenceGen
    argTypes:
    - ext::shared_ptr<CashOrNothingPayoff>
    - ext::shared_ptr<AmericanExercise>
    - Handle<YieldTermStructure>
    - ext::shared_ptr<StochasticProcess1D>
    - PseudoRandom::ursg_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::DigitalPathPricer::DigitalPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DigitalPathPricer::DigitalPathPricer(ext::shared_ptr<CashOrNothingPayoff>
      payoff,\n                                         ext::shared_ptr<AmericanExercise>
      exercise,\n                                         Handle<YieldTermStructure>
      discountTS,\n                                         ext::shared_ptr<StochasticProcess1D>
      diffProcess,\n                                         PseudoRandom::ursg_type
      sequenceGen)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:38,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:40,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:43,1
    - Dst: nextSequence
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:45,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:46,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:46,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:49,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:52,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:54,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:55,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:60,1
    - Dst: payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:63,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:64,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:65,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:65,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:70,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:71,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:79,1
    - Dst: diffusion
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:83,1
    - Dst: dt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:88,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:88,1
    - Dst: payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:90,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:92,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:92,1
    - Dst: cashPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:98,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:98,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp:105,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 109
    functionName: DigitalPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::exp
    - std::log
    - strike
    - cashPayoff
    - nextSequence
    - payoffAtExpiry
    - length
    - discount
    - QL_FAIL
    - diffusion
    - std::sqrt
    - dt
    - timeGrid
    - optionType
    - front
    linkageType: ''
    returnType: Real
    signature: Real DigitalPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:53,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - f0
    - alpha
    - beta
    - nu
    - rho
    - rTS
    - tGrid
    - fGrid
    - xGrid
    - dampingSteps
    - scalingFactor
    - eps
    - ' schemeDesc'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    - Size
    - Size
    - Size
    - Size
    - Real
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: QuantLib::FdSabrVanillaEngine::FdSabrVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - validateSabrParameters
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdSabrVanillaEngine::FdSabrVanillaEngine(Real f0,\n                                             Real
      alpha,\n                                             Real beta,\n                                             Real
      nu,\n                                             Real rho,\n                                             Handle<YieldTermStructure>
      rTS,\n                                             Size tGrid,\n                                             Size
      fGrid,\n                                             Size xGrid,\n                                             Size
      dampingSteps,\n                                             Real scalingFactor,\n
      \                                            Real eps,\n                                             const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:69,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:71,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:74,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: ext::make_shared<FdmCEV1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:84,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:84,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:89,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:92,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:95,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:96,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:99,1
    - Dst: ext::make_shared<FdmCellAveragingInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:103,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:107,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:108,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:114,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:115,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:117,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:118,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:119,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:123,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:124,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:125,1
    - Dst: ext::make_shared<FdmSabrOp>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:136,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:137,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:141,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 144
    functionName: QuantLib::FdSabrVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmDiscountDirichletBoundary>
    - ext::make_shared<Concentrating1dMesher>
    - dayCounter
    - ext::make_shared<FdmMesherComposite>
    - referenceDate
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<Fdm2DimSolver>
    - FdmBoundaryConditionSet::push_back
    - ext::make_shared<FdmSabrOp>
    - exercise::lastDate
    - InverseCumulativeNormal
    - ext::shared_ptr::strike
    - ext::make_shared<FdmCEV1dMesher>
    - ext::shared_ptr::interpolateAt
    - DayCounter::yearFraction
    - std::exp
    - ext::make_shared<FdmCellAveragingInnerValue>
    - DividendSchedule
    - ext::shared_ptr::locations
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - currentLink
    - std::log
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void FdSabrVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:53,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - f0
    - alpha
    - beta
    - nu
    - rho
    - rTS
    - tGrid
    - fGrid
    - xGrid
    - dampingSteps
    - scalingFactor
    - eps
    - ' schemeDesc'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    - Size
    - Size
    - Size
    - Size
    - Real
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: QuantLib::FdSabrVanillaEngine::FdSabrVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - validateSabrParameters
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FdSabrVanillaEngine::FdSabrVanillaEngine(Real f0,\n                                             Real
      alpha,\n                                             Real beta,\n                                             Real
      nu,\n                                             Real rho,\n                                             Handle<YieldTermStructure>
      rTS,\n                                             Size tGrid,\n                                             Size
      fGrid,\n                                             Size xGrid,\n                                             Size
      dampingSteps,\n                                             Real scalingFactor,\n
      \                                            Real eps,\n                                             const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:69,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:71,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:73,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:74,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:78,1
    - Dst: ext::make_shared<FdmCEV1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:81,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:84,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:84,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:89,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:92,1
    - Dst: ext::make_shared<Concentrating1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:95,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:96,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:99,1
    - Dst: ext::make_shared<FdmCellAveragingInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:103,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:107,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:108,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:114,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:115,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:117,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:118,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:119,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:123,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:124,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:125,1
    - Dst: ext::make_shared<FdmSabrOp>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:136,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:137,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:141,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 144
    functionName: QuantLib::FdSabrVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsabrvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmDiscountDirichletBoundary>
    - ext::make_shared<Concentrating1dMesher>
    - dayCounter
    - ext::make_shared<FdmMesherComposite>
    - referenceDate
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<Fdm2DimSolver>
    - FdmBoundaryConditionSet::push_back
    - ext::make_shared<FdmSabrOp>
    - exercise::lastDate
    - InverseCumulativeNormal
    - ext::shared_ptr::strike
    - ext::make_shared<FdmCEV1dMesher>
    - ext::shared_ptr::interpolateAt
    - DayCounter::yearFraction
    - std::exp
    - ext::make_shared<FdmCellAveragingInnerValue>
    - DividendSchedule
    - ext::shared_ptr::locations
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - currentLink
    - std::log
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void FdSabrVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - process
    - relativeAccuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<Merton76Process>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::JumpDiffusionEngine::JumpDiffusionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void JumpDiffusionEngine::JumpDiffusionEngine(ext::shared_ptr<Merton76Process>
      process,\n                                             Real relativeAccuracy,\n
      \                                            Size maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: logJumpVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:43,1
    - Dst: logJumpVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:44,1
    - Dst: logMeanJump
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:48,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:49,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:53,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:57,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:58,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:61,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:65,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:66,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:71,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:74,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:76,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:79,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:84,1
    - Dst: AnalyticEuropeanEngine::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:84,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:89,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:92,1
    - Dst: AnalyticEuropeanEngine::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:92,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:111,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:112,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:119,1
    - Dst: AnalyticEuropeanEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:120,1
    - Dst: p
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:122,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:126,1
    - Dst: p
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:135,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:135,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:141,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:142,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:144,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:146,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:148,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:149,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:150,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:152,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:153,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:154,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:156,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:157,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:158,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:160,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:161,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:162,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:164,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:165,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:166,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:171,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 177
    functionName: QuantLib::JumpDiffusionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp
    functionUses: 0
    functionsReached:
    - logJumpVolatility
    - AnalyticEuropeanEngine::calculate
    - std::max<Real>
    - stateVariable
    - dividendYield
    - jumpIntensity
    - QL_ENSURE
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - p
    - std::fabs
    - logMeanJump
    - ext::shared_ptr<BlackVolTermStructure>
    - auto*::validate
    - AnalyticEuropeanEngine::getArguments
    - exercise::lastDate
    - BlackConstantVol::BlackConstantVol
    - ext::shared_ptr::strike
    - std::exp
    - DayCounter::yearFraction
    - Size
    - dynamic_cast<VanillaOption::arguments*>
    - FlatForward::FlatForward
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - std::log
    - AnalyticEuropeanEngine::getResults
    - QuantLib::io::ordinal
    - riskFreeRate
    - std::sqrt
    - RelinkableHandle::linkTo
    - dynamic_cast<const VanillaOption::results*>
    linkageType: ''
    returnType: void
    signature: void JumpDiffusionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - process
    - relativeAccuracy
    - maxIterations
    argTypes:
    - ext::shared_ptr<Merton76Process>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: QuantLib::JumpDiffusionEngine::JumpDiffusionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void JumpDiffusionEngine::JumpDiffusionEngine(ext::shared_ptr<Merton76Process>
      process,\n                                             Real relativeAccuracy,\n
      \                                            Size maxIterations)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: logJumpVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:43,1
    - Dst: logJumpVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:44,1
    - Dst: logMeanJump
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:48,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:49,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:53,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:57,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:58,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:61,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:62,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:65,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:66,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:71,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:72,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:74,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:76,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:79,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:84,1
    - Dst: AnalyticEuropeanEngine::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:84,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:89,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:92,1
    - Dst: AnalyticEuropeanEngine::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:92,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:108,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:111,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:112,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:114,1
    - Dst: RelinkableHandle::linkTo
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:116,1
    - Dst: auto*::validate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:119,1
    - Dst: AnalyticEuropeanEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:120,1
    - Dst: p
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:122,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:122,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:126,1
    - Dst: p
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:135,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:135,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:141,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:142,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:144,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:145,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:146,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:148,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:149,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:150,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:152,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:153,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:154,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:156,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:157,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:158,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:160,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:161,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:162,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:164,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:165,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:166,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:171,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 177
    functionName: QuantLib::JumpDiffusionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/jumpdiffusionengine.cpp
    functionUses: 0
    functionsReached:
    - logJumpVolatility
    - AnalyticEuropeanEngine::calculate
    - std::max<Real>
    - stateVariable
    - dividendYield
    - jumpIntensity
    - QL_ENSURE
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - p
    - std::fabs
    - logMeanJump
    - ext::shared_ptr<BlackVolTermStructure>
    - auto*::validate
    - AnalyticEuropeanEngine::getArguments
    - exercise::lastDate
    - BlackConstantVol::BlackConstantVol
    - ext::shared_ptr::strike
    - std::exp
    - DayCounter::yearFraction
    - Size
    - dynamic_cast<VanillaOption::arguments*>
    - FlatForward::FlatForward
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - std::log
    - AnalyticEuropeanEngine::getResults
    - QuantLib::io::ordinal
    - riskFreeRate
    - std::sqrt
    - RelinkableHandle::linkTo
    - dynamic_cast<const VanillaOption::results*>
    linkageType: ''
    returnType: void
    signature: void JumpDiffusionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::CEVCalculator::f0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::CEVCalculator::alpha
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::CEVCalculator::beta
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta()  const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::CEVCalculator::f0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real f0()    const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::CEVCalculator::alpha
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::CEVCalculator::beta
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta()  const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:31,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:32,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:34,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:34,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:35,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - VanillaOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::DiscretizedVanillaOption::DiscretizedVanillaOption
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - empty
    - resize
    - closestTime
    - time
    - size
    - exercise::date
    linkageType: ''
    returnType: void
    signature: "void DiscretizedVanillaOption::DiscretizedVanillaOption(\n                                         const
      VanillaOption::arguments& args,\n                                         const
      StochasticProcess& process,\n                                         const
      TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:43,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::DiscretizedVanillaOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::reset(Size size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:49,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:50,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:54,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:57,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:58,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:62,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:67,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 69
    functionName: QuantLib::DiscretizedVanillaOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - time
    - QL_FAIL
    - QuantLib::DiscretizedVanillaOption::applySpecificCondition
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionName: QuantLib::DiscretizedVanillaOption::applySpecificCondition
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 1
    functionsReached:
    - size
    - method
    - time
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::applySpecificCondition()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:31,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:31,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:32,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:34,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:34,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:35,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ' args'
    - ' process'
    - ' grid'
    argTypes:
    - VanillaOption::arguments
    - StochasticProcess
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: QuantLib::DiscretizedVanillaOption::DiscretizedVanillaOption
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - empty
    - resize
    - closestTime
    - time
    - size
    - exercise::date
    linkageType: ''
    returnType: void
    signature: "void DiscretizedVanillaOption::DiscretizedVanillaOption(\n                                         const
      VanillaOption::arguments& args,\n                                         const
      StochasticProcess& process,\n                                         const
      TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:43,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::DiscretizedVanillaOption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::reset(Size size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:49,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:50,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:54,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:57,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:58,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:62,1
    - Dst: QuantLib::DiscretizedVanillaOption::applySpecificCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:67,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 69
    functionName: QuantLib::DiscretizedVanillaOption::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - time
    - QL_FAIL
    - QuantLib::DiscretizedVanillaOption::applySpecificCondition
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:72,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionName: QuantLib::DiscretizedVanillaOption::applySpecificCondition
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.cpp
    functionUses: 2
    functionsReached:
    - size
    - method
    - time
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedVanillaOption::applySpecificCondition()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:46,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:50,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:52,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:52,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:55,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - S
    - strike
    - rf
    - dy
    - vol
    - t
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 58
    functionName: QuantLib::QdPlusBoundaryEvaluator::QdPlusBoundaryEvaluator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::exp
    - squared
    - Null<Real>
    - Real
    - std::sqrt
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: "void QdPlusBoundaryEvaluator(\n            Real S, Real strike, Rate
      rf, Rate dy, Volatility vol, Time t, Time T)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:64,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - preCalculate
    - QuantLib::close_enough
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusBoundaryEvaluator::preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::QdPlusBoundaryEvaluator::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusBoundaryEvaluator::preCalculate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusBoundaryEvaluator::preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::QdPlusBoundaryEvaluator::fprime2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusBoundaryEvaluator::preCalculate
    linkageType: ''
    returnType: Real
    signature: Real fprime2(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::QdPlusBoundaryEvaluator::xmin
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xmin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::QdPlusBoundaryEvaluator::xmax
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::QdPlusBoundaryEvaluator::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:98,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:100,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:102,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:103,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 109
    functionName: QuantLib::QdPlusBoundaryEvaluator::preCalculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - Phi
    - phi
    - std::log
    linkageType: ''
    returnType: void
    signature: void preCalculate(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - T
    - S
    - K
    - r
    - q
    - vol
    - xmax
    - q_z
    argTypes:
    - Time
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Real
    - ext::shared_ptr<Interpolation>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: "detail::QdPlusAddOnValue::QdPlusAddOnValue(\n        Time T, Real
      S, Real K, Rate r, Rate q, Volatility vol,\n        const Real xmax, ext::shared_ptr<Interpolation>
      q_z)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void detail::QdPlusAddOnValue::QdPlusAddOnValue(\n        Time T,
      Real S, Real K, Rate r, Rate q, Volatility vol,\n        const Real xmax, ext::shared_ptr<Interpolation>
      q_z)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:134,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:139,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:144,1
    - Dst: Phi_
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:145,1
    - Dst: Phi_
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:145,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 158
    functionName: detail::QdPlusAddOnValue::operator()(Real z) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Phi_
    - std::exp
    - std::log
    - std::max
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real detail::QdPlusAddOnValue::operator()(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: "detail::QdPutCallParityEngine::QdPutCallParityEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void detail::QdPutCallParityEngine::QdPutCallParityEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:168,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:168,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:173,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:176,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:178,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:179,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:180,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:181,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:182,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:182,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:183,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:183,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:188,1
    - Dst: auto::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:190,1
    - Dst: calculatePutWithEdgeCases
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:191,1
    - Dst: auto::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:192,1
    - Dst: calculatePutWithEdgeCases
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 196
    functionName: detail::QdPutCallParityEngine::calculate() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - time
    - riskFreeRate
    - auto::optionType
    - QL_FAIL
    - calculatePutWithEdgeCases
    - auto::strike
    - x0
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void detail::QdPutCallParityEngine::calculate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:201,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:208,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:209,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:210,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:212,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:216,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:217,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:222,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:222,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:224,1
    - Dst: calculatePut
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 228
    functionName: "detail::QdPutCallParityEngine::calculatePutWithEdgeCases(\n        Real
      S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - close
    - intrinsic
    - std::exp
    - calculatePut
    - std::log
    - BlackCalculator
    - Real
    - std::max
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real detail::QdPutCallParityEngine::calculatePutWithEdgeCases(\n        Real
      S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:236,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:250,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 16
    argCount: 3
    argNames:
    - K
    - r
    - q
    argTypes:
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 251
    functionName: QuantLib::QdPlusAmericanEngine::xMax
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real QdPlusAmericanEngine::xMax(Real K, Rate r, Rate q)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:258,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 1
    argCount: 5
    argNames:
    - process
    - interpolationPoints
    - solverType
    - eps
    - maxIter
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - QdPlusAmericanEngine::SolverType
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 265
    functionName: QuantLib::QdPlusAmericanEngine::QdPlusAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void QdPlusAmericanEngine::QdPlusAmericanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size interpolationPoints,\n        QdPlusAmericanEngine::SolverType
      solverType,\n        Real eps, Size maxIter)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Solver::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:272,1
    - Dst: Solver::setLowerBound
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:273,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:273,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:275,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:277,1
    - Dst: evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:280,1
    - Dst: std::nextafter
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:284,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:284,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:285,1
    - Dst: std::nextafter
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:286,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:286,1
    - Dst: Solver::solve
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:288,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - ' eval'
    - solver
    - S
    - strike
    - maxIter
    - guess
    argTypes:
    - QdPlusBoundaryEvaluator
    - Solver
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 289
    functionName: QuantLib::QdPlusAmericanEngine::buildInSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - xmin
    - Solver::solve
    - Solver::setLowerBound
    - Null<Real>
    - Real
    - std::max
    - eval
    - evaluations
    - xmax
    - std::nextafter
    - Solver::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real QdPlusAmericanEngine::buildInSolver(\n        const QdPlusBoundaryEvaluator&
      eval,\n        Solver solver, Real S, Real strike, Size maxIter, Real guess)
      const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::pair<Size, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:296,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:297,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:297,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:304,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:304,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:307,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:307,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:310,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:310,1
    - Dst: QdPlusBoundaryEvaluator::xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:316,1
    - Dst: QdPlusBoundaryEvaluator::xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:318,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:322,1
    - Dst: QdPlusBoundaryEvaluator::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:323,1
    - Dst: QdPlusBoundaryEvaluator::fprime2
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:326,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:327,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:329,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:330,1
    - Dst: QdPlusBoundaryEvaluator::evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:332,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:334,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:334,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:335,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:335,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:340,1
    - Dst: std::pair<Size, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:343,1
    - Dst: QdPlusBoundaryEvaluator::evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:343,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 7
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    - tau
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 344
    functionName: QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - QuantLib::Brent
    - close
    - Size
    - QuantLib::QdPlusAmericanEngine::buildInSolver
    - QuantLib::Newton
    - QdPlusBoundaryEvaluator::evaluations
    - QdPlusBoundaryEvaluator::xmin
    - Real
    - std::pair<Size, Real>
    - std::max
    - QdPlusBoundaryEvaluator::xmax
    - eval
    - std::fabs
    - QL_FAIL
    - QdPlusBoundaryEvaluator::fprime2
    - QuantLib::Ridder
    - QdPlusBoundaryEvaluator::derivative
    linkageType: ''
    returnType: std::pair<Size, Real>
    signature: "std::pair<Size, Real> QdPlusAmericanEngine::putExerciseBoundaryAtTau(\n
      \           Real S, Real K, Rate r, Rate q,\n            Volatility vol, Time
      T, Time tau) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:350,1
    - Dst: ext::make_shared<ChebyshevInterpolation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:352,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:355,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:356,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:356,1
    - Dst: QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 362
    functionName: QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
    - squared
    - std::log
    - ext::make_shared<ChebyshevInterpolation>
    linkageType: ''
    returnType: ext::shared_ptr<ChebyshevInterpolation>
    signature: "ext::shared_ptr<ChebyshevInterpolation> QdPlusAmericanEngine::getPutExerciseBoundary(\n
      \       Real S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:368,1
    - Dst: QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:371,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:373,1
    - Dst: TanhSinhIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:377,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:377,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:379,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:380,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:383,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:386,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:388,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:390,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:391,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:391,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:394,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 364
    functionDepth: 4
    functionLinenumber: 364
    functionLinenumberEnd: 395
    functionName: QuantLib::QdPlusAmericanEngine::calculatePut
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::exp
    - BlackCalculator
    - TanhSinhIntegral
    - std::max
    - QL_FAIL
    - QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real QdPlusAmericanEngine::calculatePut(\n        Real S, Real K,
      Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:46,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:46,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:50,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:52,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:52,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:55,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - S
    - strike
    - rf
    - dy
    - vol
    - t
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 58
    functionName: QuantLib::QdPlusBoundaryEvaluator::QdPlusBoundaryEvaluator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::exp
    - squared
    - Null<Real>
    - Real
    - std::sqrt
    - std::abs
    - std::min
    linkageType: ''
    returnType: void
    signature: "void QdPlusBoundaryEvaluator(\n            Real S, Real strike, Rate
      rf, Rate dy, Volatility vol, Time t, Time T)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:64,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 73
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - preCalculate
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusBoundaryEvaluator::preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::QdPlusBoundaryEvaluator::derivative
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusBoundaryEvaluator::preCalculate
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real S) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusBoundaryEvaluator::preCalculate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionName: QuantLib::QdPlusBoundaryEvaluator::fprime2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QdPlusBoundaryEvaluator::preCalculate
    linkageType: ''
    returnType: Real
    signature: Real fprime2(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::QdPlusBoundaryEvaluator::xmin
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xmin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::QdPlusBoundaryEvaluator::xmax
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xmax() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::QdPlusBoundaryEvaluator::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:98,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:100,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:102,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:103,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 109
    functionName: QuantLib::QdPlusBoundaryEvaluator::preCalculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 4
    functionsReached:
    - std::max
    - Phi
    - phi
    - std::log
    linkageType: ''
    returnType: void
    signature: void preCalculate(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - T
    - S
    - K
    - r
    - q
    - vol
    - xmax
    - q_z
    argTypes:
    - Time
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Real
    - ext::shared_ptr<Interpolation>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: "detail::QdPlusAddOnValue::QdPlusAddOnValue(\n        Time T, Real
      S, Real K, Rate r, Rate q, Volatility vol,\n        const Real xmax, ext::shared_ptr<Interpolation>
      q_z)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void detail::QdPlusAddOnValue::QdPlusAddOnValue(\n        Time T,
      Real S, Real K, Rate r, Rate q, Volatility vol,\n        const Real xmax, ext::shared_ptr<Interpolation>
      q_z)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:134,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:134,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:137,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:139,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:144,1
    - Dst: Phi_
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:145,1
    - Dst: Phi_
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:145,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 158
    functionName: detail::QdPlusAddOnValue::operator()(Real z) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Phi_
    - std::exp
    - std::log
    - std::max
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: Real detail::QdPlusAddOnValue::operator()(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: "detail::QdPutCallParityEngine::QdPutCallParityEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void detail::QdPutCallParityEngine::QdPutCallParityEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:168,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:168,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:173,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:176,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:178,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:179,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:180,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:181,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:182,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:182,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:183,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:183,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:188,1
    - Dst: auto::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:190,1
    - Dst: calculatePutWithEdgeCases
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:191,1
    - Dst: auto::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:192,1
    - Dst: calculatePutWithEdgeCases
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:193,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 196
    functionName: detail::QdPutCallParityEngine::calculate() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - time
    - riskFreeRate
    - auto::optionType
    - QL_FAIL
    - calculatePutWithEdgeCases
    - auto::strike
    - x0
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void detail::QdPutCallParityEngine::calculate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:201,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:208,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:209,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:210,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:212,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:214,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:216,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:217,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:219,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:222,1
    - Dst: intrinsic
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:222,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:224,1
    - Dst: calculatePut
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 228
    functionName: "detail::QdPutCallParityEngine::calculatePutWithEdgeCases(\n        Real
      S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - close
    - intrinsic
    - std::exp
    - calculatePut
    - std::log
    - BlackCalculator
    - Real
    - std::max
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real detail::QdPutCallParityEngine::calculatePutWithEdgeCases(\n        Real
      S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:236,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:250,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 16
    argCount: 3
    argNames:
    - K
    - r
    - q
    argTypes:
    - Real
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 251
    functionName: QuantLib::QdPlusAmericanEngine::xMax
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 5
    functionsReached:
    - QL_FAIL
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real QdPlusAmericanEngine::xMax(Real K, Rate r, Rate q)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:258,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 1
    argCount: 5
    argNames:
    - process
    - interpolationPoints
    - solverType
    - eps
    - maxIter
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - QdPlusAmericanEngine::SolverType
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 265
    functionName: QuantLib::QdPlusAmericanEngine::QdPlusAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void QdPlusAmericanEngine::QdPlusAmericanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size interpolationPoints,\n        QdPlusAmericanEngine::SolverType
      solverType,\n        Real eps, Size maxIter)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Solver::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:272,1
    - Dst: Solver::setLowerBound
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:273,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:273,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:275,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:275,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:276,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:277,1
    - Dst: evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:277,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:280,1
    - Dst: std::nextafter
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:284,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:284,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:285,1
    - Dst: std::nextafter
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:286,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:286,1
    - Dst: Solver::solve
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:288,1
    - Dst: xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 6
    argNames:
    - ' eval'
    - solver
    - S
    - strike
    - maxIter
    - guess
    argTypes:
    - QdPlusBoundaryEvaluator
    - Solver
    - Real
    - Real
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 289
    functionName: QuantLib::QdPlusAmericanEngine::buildInSolver
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 1
    functionsReached:
    - xmin
    - Solver::solve
    - Solver::setLowerBound
    - Null<Real>
    - Real
    - std::max
    - eval
    - evaluations
    - xmax
    - std::nextafter
    - Solver::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real QdPlusAmericanEngine::buildInSolver(\n        const QdPlusBoundaryEvaluator&
      eval,\n        Solver solver, Real S, Real strike, Size maxIter, Real guess)
      const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: std::pair<Size, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:296,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:297,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:297,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:304,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:304,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:307,1
    - Dst: QuantLib::Newton
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:307,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:310,1
    - Dst: QuantLib::Ridder
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:310,1
    - Dst: QdPlusBoundaryEvaluator::xmax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:316,1
    - Dst: QdPlusBoundaryEvaluator::xmin
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:318,1
    - Dst: eval
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:322,1
    - Dst: QdPlusBoundaryEvaluator::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:323,1
    - Dst: QdPlusBoundaryEvaluator::fprime2
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:324,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:326,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:327,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:329,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:330,1
    - Dst: QdPlusBoundaryEvaluator::evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:332,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:334,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:334,1
    - Dst: QuantLib::QdPlusAmericanEngine::buildInSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:335,1
    - Dst: QuantLib::Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:335,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:340,1
    - Dst: std::pair<Size, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:343,1
    - Dst: QdPlusBoundaryEvaluator::evaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:343,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 7
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    - tau
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 344
    functionName: QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - QuantLib::Brent
    - close
    - Size
    - QuantLib::QdPlusAmericanEngine::buildInSolver
    - QuantLib::Newton
    - QdPlusBoundaryEvaluator::evaluations
    - QdPlusBoundaryEvaluator::xmin
    - Real
    - std::pair<Size, Real>
    - std::max
    - QdPlusBoundaryEvaluator::xmax
    - eval
    - std::fabs
    - QL_FAIL
    - QdPlusBoundaryEvaluator::fprime2
    - QuantLib::Ridder
    - QdPlusBoundaryEvaluator::derivative
    linkageType: ''
    returnType: std::pair<Size, Real>
    signature: "std::pair<Size, Real> QdPlusAmericanEngine::putExerciseBoundaryAtTau(\n
      \           Real S, Real K, Rate r, Rate q,\n            Volatility vol, Time
      T, Time tau) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:350,1
    - Dst: ext::make_shared<ChebyshevInterpolation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:352,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:355,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:356,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:356,1
    - Dst: QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 362
    functionName: QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::QdPlusAmericanEngine::xMax
    - QuantLib::QdPlusAmericanEngine::putExerciseBoundaryAtTau
    - squared
    - std::log
    - ext::make_shared<ChebyshevInterpolation>
    linkageType: ''
    returnType: ext::shared_ptr<ChebyshevInterpolation>
    signature: "ext::shared_ptr<ChebyshevInterpolation> QdPlusAmericanEngine::getPutExerciseBoundary(\n
      \       Real S, Real K, Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:368,1
    - Dst: QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:371,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:373,1
    - Dst: TanhSinhIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:377,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:377,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:379,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:380,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:383,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:386,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:388,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:390,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:391,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:391,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp:394,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 364
    functionDepth: 4
    functionLinenumber: 364
    functionLinenumberEnd: 395
    functionName: QuantLib::QdPlusAmericanEngine::calculatePut
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdplusamericanengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::exp
    - BlackCalculator
    - TanhSinhIntegral
    - std::max
    - QL_FAIL
    - QuantLib::QdPlusAmericanEngine::getPutExerciseBoundary
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real QdPlusAmericanEngine::calculatePut(\n        Real S, Real K,
      Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~QdFpIterationScheme()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~QdFpIterationScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~QdFpIterationScheme()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~QdFpIterationScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::integrand1::integrand1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand1(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::integrand2::integrand2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand2(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - ' f'
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::integrand3::integrand3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand3(Real c_inf, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: int_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - int_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::u_Max::u_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void u_Max(Real c_inf, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::u_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - v0T2
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::uHat_Max::uHat_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void uHat_Max(Real v0T2, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::uHat_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::integrand1::integrand1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand1(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::integrand2::integrand2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand2(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - ' f'
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::integrand3::integrand3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand3(Real c_inf, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: int_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - int_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::u_Max::u_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void u_Max(Real c_inf, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::u_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - v0T2
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::uHat_Max::uHat_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void uHat_Max(Real v0T2, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::uHat_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:172,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:173,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - s0
    - rho
    - engine
    - cpxLog
    - term
    - strike
    - ratio
    - j
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - AnalyticHestonEngine*
    - ComplexLogFormula
    - Time
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 181
    functionName: "AnalyticHestonEngine::Fj_Helper::Fj_Helper(Real kappa, Real theta,\n
      \       Real sigma, Real v0, Real s0, Real rho,\n        const AnalyticHestonEngine*
      const engine,\n        ComplexLogFormula cpxLog,\n        Time term, Real strike,
      Real ratio, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Real
    - std::log
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Fj_Helper::Fj_Helper(Real kappa, Real theta,\n
      \       Real sigma, Real v0, Real s0, Real rho,\n        const AnalyticHestonEngine*
      const engine,\n        ComplexLogFormula cpxLog,\n        Time term, Real strike,
      Real ratio, Size j)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:189,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:191,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:193,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:200,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:203,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:211,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:216,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:218,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:231,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:240,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:242,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:253,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:256,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:256,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:257,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:260,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:262,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:262,1
    - Dst: std::fmod
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:264,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:264,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:270,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:270,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:280,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:286,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:287,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:289,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:291,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:296,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 298
    functionName: AnalyticHestonEngine::Fj_Helper::operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - addOnTerm
    - std::exp
    - std::complex::imag
    - std::log
    - Real
    - std::complex<Real>
    - std::complex::real
    - QL_FAIL
    - std::fabs
    - std::fmod
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::Fj_Helper::operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:304,1
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:305,1
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:306,1
    - Dst: AnalyticHestonEngine*::model_::kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:307,1
    - Dst: AnalyticHestonEngine*::model_::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:308,1
    - Dst: AnalyticHestonEngine*::model_::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:309,1
    - Dst: AnalyticHestonEngine*::model_::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:310,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:311,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:314,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - enginePtr
    argTypes:
    - Time
    - AnalyticHestonEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 316
    functionName: "AnalyticHestonEngine::OptimalAlpha::OptimalAlpha(\n        const
      Time t,\n        const AnalyticHestonEngine* const enginePtr)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine*::model_::rho
    - AnalyticHestonEngine*::model_::kappa
    - std::pow
    - k
    - AnalyticHestonEngine*::model_::theta
    - AnalyticHestonEngine*::model_::process
    - AnalyticHestonEngine*::model_::sigma
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::OptimalAlpha::OptimalAlpha(\n        const
      Time t,\n        const AnalyticHestonEngine* const enginePtr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:320,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:325,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:327,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:334,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:335,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:340,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:347,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:348,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 356
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaMax(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - M
    - Brent
    - QL_REQUIRE
    - k
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::alphaMax(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alphaMax
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:360,1
    - Dst: findMinima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:362,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 363
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaGreaterZero(Real strike)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - alphaMax
    - findMinima
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::alphaGreaterZero(Real
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:366,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:368,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:370,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 377
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaMin(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - M
    - Brent
    - QL_REQUIRE
    - k
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::alphaMin(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alphaMin
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:381,1
    - Dst: findMinima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:383,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaSmallerMinusOne(Real strike)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - findMinima
    - alphaMin
    - std::min
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::alphaSmallerMinusOne(Real
      strike) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: alphaSmallerMinusOne
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:391,1
    - Dst: alphaGreaterZero
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 405
    functionName: AnalyticHestonEngine::OptimalAlpha::operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - alphaGreaterZero
    - alphaSmallerMinusOne
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionName: AnalyticHestonEngine::OptimalAlpha::numberOfEvaluations() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::OptimalAlpha::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:413,1
    - Dst: boost::math::tools::brent_find_minima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:415,1
    - Dst: lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:419,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - lower
    - upper
    - strike
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 424
    functionName: "AnalyticHestonEngine::OptimalAlpha::findMinima(\n        Real lower,
      Real upper, Real strike) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - boost::math::tools::brent_find_minima
    - lnChF
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::findMinima(\n
      \       Real lower, Real upper, Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:430,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:431,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:435,1
    - Dst: std::atan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 440
    functionName: AnalyticHestonEngine::OptimalAlpha::M(Real k) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::M(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:444,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - sgn
    argTypes:
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 448
    functionName: AnalyticHestonEngine::OptimalAlpha::k(Real x, Integer sgn) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::k(Real x, Integer sgn) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:457,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:461,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:463,1
    - Dst: AnalyticHestonEngine*::model_::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:465,1
    - Dst: AnalyticHestonEngine*::model_::kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:466,1
    - Dst: AnalyticHestonEngine*::model_::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:467,1
    - Dst: AnalyticHestonEngine*::model_::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:468,1
    - Dst: AnalyticHestonEngine*::model_::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:469,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:473,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:477,1
    - Dst: AnalyticHestonEngine*::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:477,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:478,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:482,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:482,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:484,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:486,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:487,1
    - Dst: std::atan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:489,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:489,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:493,1
    - Dst: std::tan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:499,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:500,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:505,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 6
    argNames:
    - term
    - fwd
    - strike
    - cpxLog
    - enginePtr
    - alpha
    argTypes:
    - Time
    - Real
    - Real
    - ComplexLogFormula
    - AnalyticHestonEngine*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 507
    functionName: "AnalyticHestonEngine::AP_Helper::AP_Helper(\n        Time term,
      Real fwd, Real strike, ComplexLogFormula cpxLog,\n        const AnalyticHestonEngine*
      const enginePtr,\n        const Real alpha)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine*::model_::rho
    - std::atan
    - std::exp
    - AnalyticHestonEngine*::model_::v0
    - std::log
    - AnalyticHestonEngine*::chF
    - std::complex<Real>
    - AnalyticHestonEngine*::model_::kappa
    - QL_FAIL
    - QuantLib::Ridder::sign
    - std::sqrt
    - std::tan
    - AnalyticHestonEngine*::model_::theta
    - AnalyticHestonEngine*::model_::sigma
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AP_Helper::AP_Helper(\n        Time term,
      Real fwd, Real strike, ComplexLogFormula cpxLog,\n        const AnalyticHestonEngine*
      const enginePtr,\n        const Real alpha)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:510,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:510,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:511,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:512,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:513,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:524,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:528,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:528,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:530,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:532,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:533,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:539,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:545,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 550
    functionName: AnalyticHestonEngine::AP_Helper::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - real
    - addOnTerm
    - std::exp
    - std::complex::imag
    - std::complex<Real>
    - std::complex::real
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::AP_Helper::operator()(Real u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:555,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:556,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:560,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:562,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:562,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:565,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:566,1
    - Dst: Ci
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:567,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:567,1
    - Dst: std::cos
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:568,1
    - Dst: Si
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:568,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:566,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:577,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 578
    functionName: AnalyticHestonEngine::AP_Helper::controlVariateValue() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Si
    - real
    - std::exp
    - BlackCalculator
    - std::sin
    - imag
    - QL_FAIL
    - std::sqrt
    - std::cos
    - Ci
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::AP_Helper::controlVariateValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:582,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:582,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:583,1
    - Dst: QuantLib::AnalyticHestonEngine::lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:583,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:586,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:587,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:588,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:589,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:590,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:595,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:596,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:598,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:600,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:603,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:610,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:612,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:619,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' z'
    - t
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 621
    functionName: QuantLib::AnalyticHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - real
    - std::exp
    - squared
    - v0
    - theta
    - std::complex<Real>
    - imag
    - QuantLib::AnalyticHestonEngine::lnChF
    - rho
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::chF(\n        const std::complex<Real>&
      z, Time t) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:626,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:627,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:628,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:629,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:630,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:637,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:647,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:647,1
    - Dst: expm1
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:648,1
    - Dst: log1p
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:654,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' z'
    - t
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 659
    functionName: QuantLib::AnalyticHestonEngine::lnChF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 1
    functionsReached:
    - kappa
    - sigma
    - real
    - std::complex::imag
    - v0
    - theta
    - std::complex<Real>
    - std::complex::real
    - imag
    - log1p
    - std::sqrt
    - expm1
    - rho
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::lnChF(\n        const std::complex<Real>&
      z, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:670,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:669,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 673
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:683,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:684,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 687
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLobatto
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:700,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:703,1
    - Dst: isAdaptiveIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - ' model'
    - cpxLog
    - ' integration'
    - andersenPiterbargEpsilon
    - alpha
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ComplexLogFormula
    - Integration
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 689
    functionDepth: 1
    functionLinenumber: 689
    functionLinenumberEnd: 707
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - isAdaptiveIntegration
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              ComplexLogFormula
      cpxLog,\n                              const Integration& integration,\n                              Real
      andersenPiterbargEpsilon,\n                              Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:713,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:715,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 6
    argNames:
    - t
    - v0
    - kappa
    - theta
    - sigma
    - rho
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 721
    functionName: QuantLib::AnalyticHestonEngine::optimalControlVariate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: AnalyticHestonEngine::ComplexLogFormula
    signature: "AnalyticHestonEngine::ComplexLogFormula AnalyticHestonEngine::optimalControlVariate(\n
      \       Time t, Real v0, Real kappa, Real theta, Real sigma, Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 725
    functionName: QuantLib::AnalyticHestonEngine::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:731,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:732,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:733,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:734,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:736,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' payoff'
    - ' maturity'
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 737
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - s0
    - process
    - riskFreeRate
    - time
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        const Date& maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:742,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:743,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:744,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:745,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' payoff'
    - maturity
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 739
    functionDepth: 1
    functionLinenumber: 739
    functionLinenumberEnd: 748
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - s0
    - process
    - riskFreeRate
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff, Time maturity) const"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:756,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:757,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:759,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:760,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:761,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:766,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:767,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:768,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:769,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:770,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:777,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:777,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:778,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:780,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:781,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:783,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:785,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:786,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:788,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:790,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:801,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:812,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:815,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:818,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:823,1
    - Dst: AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:830,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:832,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:836,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:839,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:841,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:843,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:852,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:857,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 3
    argNames:
    - ' payoff'
    - maturity
    - fwd
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 750
    functionDepth: 1
    functionLinenumber: 750
    functionLinenumberEnd: 861
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 2
    functionsReached:
    - kappa
    - v0
    - theta
    - Real
    - QuantLib::AnalyticHestonEngine::calculate
    - QuantLib::AnalyticHestonEngine::numberOfEvaluations
    - s0
    - strike
    - AP_Helper::controlVariateValue
    - rho
    - std::min
    - sigma
    - std::exp
    - std::max
    - QL_FAIL
    - Integration::andersenPiterbargIntegrationLimit
    - QL_REQUIRE
    - process
    - riskFreeRate
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - Fj_Helper
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Time maturity, Real fwd) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:866,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:866,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:871,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:872,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:874,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:876,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 863
    functionDepth: 2
    functionLinenumber: 863
    functionLinenumberEnd: 877
    functionName: QuantLib::AnalyticHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - intAlgo
    - integrator
    argTypes:
    - Algorithm
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 882
    functionName: "AnalyticHestonEngine::Integration::Integration(Algorithm intAlgo,\n
      \                                                  ext::shared_ptr<Integrator>
      integrator)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Integration::Integration(Algorithm intAlgo,\n
      \                                                  ext::shared_ptr<Integrator>
      integrator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - intAlgo
    - gaussianQuadrature
    argTypes:
    - Algorithm
    - ext::shared_ptr<GaussianQuadrature>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 886
    functionName: "AnalyticHestonEngine::Integration::Integration(\n        Algorithm
      intAlgo, ext::shared_ptr<GaussianQuadrature> gaussianQuadrature)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Integration::Integration(\n        Algorithm
      intAlgo, ext::shared_ptr<GaussianQuadrature> gaussianQuadrature)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:891,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:892,1
    - Dst: GaussLobattoIntegral::GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - relTolerance
    - absTolerance
    - maxEvaluations
    - useConvergenceEstimate
    argTypes:
    - Real
    - Real
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 888
    functionDepth: 0
    functionLinenumber: 888
    functionLinenumberEnd: 897
    functionName: "AnalyticHestonEngine::Integration::gaussLobatto(\n       Real relTolerance,
      Real absTolerance, Size maxEvaluations, bool useConvergenceEstimate)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral::GaussLobattoIntegral
    - ext::shared_ptr<Integrator>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLobatto(\n
      \      Real relTolerance, Real absTolerance, Size maxEvaluations, bool useConvergenceEstimate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:902,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:903,1
    - Dst: GaussKronrodAdaptive::GaussKronrodAdaptive
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 906
    functionName: "AnalyticHestonEngine::Integration::gaussKronrod(Real absTolerance,\n
      \                                                  Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - GaussKronrodAdaptive::GaussKronrodAdaptive
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussKronrod(Real
      absTolerance,\n                                                   Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:911,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:912,1
    - Dst: SimpsonIntegral::SimpsonIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:913,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 915
    functionName: "AnalyticHestonEngine::Integration::simpson(Real absTolerance,\n
      \                                              Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - SimpsonIntegral::SimpsonIntegral
    - ext::shared_ptr<Integrator>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::simpson(Real
      absTolerance,\n                                               Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:920,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:921,1
    - Dst: TrapezoidIntegral<Default>::TrapezoidIntegral<Default>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 924
    functionName: "AnalyticHestonEngine::Integration::trapezoid(Real absTolerance,\n
      \                                       Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - TrapezoidIntegral<Default>::TrapezoidIntegral<Default>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::trapezoid(Real
      absTolerance,\n                                        Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:928,1
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:929,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:930,1
    - Dst: GaussLaguerreIntegration::GaussLaguerreIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 932
    functionName: AnalyticHestonEngine::Integration::gaussLaguerre(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussLaguerreIntegration::GaussLaguerreIntegration
    - Integration
    - QL_REQUIRE
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLaguerre(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:936,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:937,1
    - Dst: GaussLegendreIntegration::GaussLegendreIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 939
    functionName: AnalyticHestonEngine::Integration::gaussLegendre(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLegendreIntegration::GaussLegendreIntegration
    - ext::shared_ptr<GaussianQuadrature>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLegendre(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:943,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:944,1
    - Dst: GaussChebyshevIntegration::GaussChebyshevIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 946
    functionName: AnalyticHestonEngine::Integration::gaussChebyshev(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussChebyshevIntegration::GaussChebyshevIntegration
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussChebyshev(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:950,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:951,1
    - Dst: GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 948
    functionDepth: 0
    functionLinenumber: 948
    functionLinenumberEnd: 953
    functionName: AnalyticHestonEngine::Integration::gaussChebyshev2nd(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussChebyshev2nd(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:957,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:958,1
    - Dst: DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 960
    functionName: AnalyticHestonEngine::Integration::discreteSimpson(Size evaluations)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - Integration
    - DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::discreteSimpson(Size
      evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:964,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:965,1
    - Dst: DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 962
    functionDepth: 0
    functionLinenumber: 962
    functionLinenumberEnd: 967
    functionName: AnalyticHestonEngine::Integration::discreteTrapezoid(Size evaluations)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::discreteTrapezoid(Size
      evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:971,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:972,1
    - Dst: ExpSinhIntegral::ExpSinhIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - relTolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 974
    functionName: AnalyticHestonEngine::Integration::expSinh(Real relTolerance)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - ExpSinhIntegral::ExpSinhIntegral
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::expSinh(Real
      relTolerance)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:978,1
    - Dst: order
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:980,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 984
    functionName: AnalyticHestonEngine::Integration::numberOfEvaluations() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - order
    - QL_FAIL
    - numberOfEvaluations
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::Integration::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 992
    functionName: AnalyticHestonEngine::Integration::isAdaptiveIntegration() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool AnalyticHestonEngine::Integration::isAdaptiveIntegration() const
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: integrand1
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1009,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1013,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1014,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1020,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1020,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1021,1
    - Dst: integrand2
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1023,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1027,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1027,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1028,1
    - Dst: integrand3
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1030,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1033,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 4
    argNames:
    - c_inf
    - ' f'
    - ' maxBound'
    - scaling
    argTypes:
    - Real
    - std::function<Real(Real)>
    - std::function<Real()>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 994
    functionDepth: 1
    functionLinenumber: 994
    functionLinenumberEnd: 1037
    functionName: "AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        const std::function<Real()>&
      maxBound,\n        const Real scaling) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - integrand1
    - Null<Real>
    - f
    - QL_FAIL
    - integrand2
    - maxBound
    - integrand3
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        const std::function<Real()>&
      maxBound,\n        const Real scaling) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1044,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - c_inf
    - ' f'
    - maxBound
    argTypes:
    - Real
    - std::function<Real(Real)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1039
    functionDepth: 2
    functionLinenumber: 1039
    functionLinenumberEnd: 1046
    functionName: "AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        Real maxBound) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        Real maxBound) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1051,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1054,1
    - Dst: u_Max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1054,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1058,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1058,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1059,1
    - Dst: uHat_Max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1059,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1062,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - c_inf
    - epsilon
    - v0
    - t
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1067
    functionName: "AnalyticHestonEngine::Integration::andersenPiterbargIntegrationLimit(\n
      \       Real c_inf, Real epsilon, Real v0, Real t)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Brent
    - std::log
    - uHat_Max
    - std::max
    - u_Max
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::andersenPiterbargIntegrationLimit(\n
      \       Real c_inf, Real epsilon, Real v0, Real t)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1090,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1090,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1091,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1093,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1094,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1096,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1098,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1099,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1101,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1103,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1128,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1131,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1136,1
    - Dst: AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1141,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1144,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1145,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1147,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1156,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1162,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 16
    argNames:
    - riskFreeDiscount
    - dividendDiscount
    - spotPrice
    - strikePrice
    - term
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - ' type'
    - ' integration'
    - cpxLog
    - enginePtr
    - ' value'
    - ' evaluations'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - TypePayoff
    - Integration
    - ComplexLogFormula
    - AnalyticHestonEngine*
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1070
    functionDepth: 3
    functionLinenumber: 1070
    functionLinenumberEnd: 1164
    functionName: QuantLib::AnalyticHestonEngine::doCalculation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - std::max
    - QL_FAIL
    - Fj_Helper
    - QuantLib::AnalyticHestonEngine::calculate
    - std::sqrt
    - AP_Helper::controlVariateValue
    - QuantLib::AnalyticHestonEngine::numberOfEvaluations
    - Integration::andersenPiterbargIntegrationLimit
    - optionType
    - std::min
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::doCalculation(Real riskFreeDiscount,\n
      \                                            Real dividendDiscount,\n                                             Real
      spotPrice,\n                                             Real strikePrice,\n
      \                                            Real term,\n                                             Real
      kappa, Real theta, Real sigma, Real v0, Real rho,\n                                             const
      TypePayoff& type,\n                                             const Integration&
      integration,\n                                             const ComplexLogFormula
      cpxLog,\n                                             const AnalyticHestonEngine*
      const enginePtr,\n                                             Real& value,\n
      \                                            Size& evaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::integrand1::integrand1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand1(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::integrand2::integrand2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand2(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - ' f'
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::integrand3::integrand3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand3(Real c_inf, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: int_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - int_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::u_Max::u_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void u_Max(Real c_inf, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::u_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - v0T2
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::uHat_Max::uHat_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void uHat_Max(Real v0T2, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::uHat_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::integrand1::integrand1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand1(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - f
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::integrand2::integrand2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void integrand2(Real c_inf, std::function<Real(Real)> f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - f_
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - ' f'
    argTypes:
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: QuantLib::integrand3::integrand3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand3(Real c_inf, const std::function<Real(Real)>& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: int_
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - int_
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - c_inf
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::u_Max::u_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void u_Max(Real c_inf, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::u_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - v0T2
    - epsilon
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::uHat_Max::uHat_Max
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: void
    signature: void uHat_Max(Real v0T2, Real epsilon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::uHat_Max::evaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size evaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:172,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:173,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:174,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - s0
    - rho
    - engine
    - cpxLog
    - term
    - strike
    - ratio
    - j
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - AnalyticHestonEngine*
    - ComplexLogFormula
    - Time
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 181
    functionName: "AnalyticHestonEngine::Fj_Helper::Fj_Helper(Real kappa, Real theta,\n
      \       Real sigma, Real v0, Real s0, Real rho,\n        const AnalyticHestonEngine*
      const engine,\n        ComplexLogFormula cpxLog,\n        Time term, Real strike,
      Real ratio, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Real
    - std::log
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Fj_Helper::Fj_Helper(Real kappa, Real theta,\n
      \       Real sigma, Real v0, Real s0, Real rho,\n        const AnalyticHestonEngine*
      const engine,\n        ComplexLogFormula cpxLog,\n        Time term, Real strike,
      Real ratio, Size j)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:189,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:191,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:193,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:193,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:200,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:203,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:205,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:211,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:216,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:218,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:231,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:240,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:242,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:253,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:256,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:256,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:257,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:260,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:262,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:262,1
    - Dst: std::fmod
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:264,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:264,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:270,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:270,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:280,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:286,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:287,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:289,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:291,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:296,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 298
    functionName: AnalyticHestonEngine::Fj_Helper::operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - addOnTerm
    - std::exp
    - std::complex::imag
    - std::log
    - Real
    - std::complex<Real>
    - std::complex::real
    - QL_FAIL
    - std::fabs
    - std::fmod
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::Fj_Helper::operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:304,1
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:305,1
    - Dst: AnalyticHestonEngine*::model_::process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:306,1
    - Dst: AnalyticHestonEngine*::model_::kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:307,1
    - Dst: AnalyticHestonEngine*::model_::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:308,1
    - Dst: AnalyticHestonEngine*::model_::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:309,1
    - Dst: AnalyticHestonEngine*::model_::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:310,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:311,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:314,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - enginePtr
    argTypes:
    - Time
    - AnalyticHestonEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 316
    functionName: "AnalyticHestonEngine::OptimalAlpha::OptimalAlpha(\n        const
      Time t,\n        const AnalyticHestonEngine* const enginePtr)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine*::model_::rho
    - AnalyticHestonEngine*::model_::kappa
    - std::pow
    - k
    - AnalyticHestonEngine*::model_::theta
    - AnalyticHestonEngine*::model_::process
    - AnalyticHestonEngine*::model_::sigma
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::OptimalAlpha::OptimalAlpha(\n        const
      Time t,\n        const AnalyticHestonEngine* const enginePtr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:320,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:325,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:327,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:334,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:335,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:340,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:347,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:348,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 356
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaMax(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - M
    - Brent
    - QL_REQUIRE
    - k
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::alphaMax(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alphaMax
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:360,1
    - Dst: findMinima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:362,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 363
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaGreaterZero(Real strike)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - alphaMax
    - findMinima
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::alphaGreaterZero(Real
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:366,1
    - Dst: k
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:368,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:370,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 377
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaMin(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - M
    - Brent
    - QL_REQUIRE
    - k
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::alphaMin(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: alphaMin
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:381,1
    - Dst: findMinima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:383,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionName: AnalyticHestonEngine::OptimalAlpha::alphaSmallerMinusOne(Real strike)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - findMinima
    - alphaMin
    - std::min
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::alphaSmallerMinusOne(Real
      strike) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: alphaSmallerMinusOne
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:391,1
    - Dst: alphaGreaterZero
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 405
    functionName: AnalyticHestonEngine::OptimalAlpha::operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - alphaGreaterZero
    - alphaSmallerMinusOne
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionName: AnalyticHestonEngine::OptimalAlpha::numberOfEvaluations() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::OptimalAlpha::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:413,1
    - Dst: boost::math::tools::brent_find_minima
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:415,1
    - Dst: lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:419,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - lower
    - upper
    - strike
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 424
    functionName: "AnalyticHestonEngine::OptimalAlpha::findMinima(\n        Real lower,
      Real upper, Real strike) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - boost::math::tools::brent_find_minima
    - lnChF
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonEngine::OptimalAlpha::findMinima(\n
      \       Real lower, Real upper, Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:430,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:431,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:435,1
    - Dst: std::atan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - k
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 440
    functionName: AnalyticHestonEngine::OptimalAlpha::M(Real k) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::M(Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:444,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - sgn
    argTypes:
    - Real
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 448
    functionName: AnalyticHestonEngine::OptimalAlpha::k(Real x, Integer sgn) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::OptimalAlpha::k(Real x, Integer sgn) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:457,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:461,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:463,1
    - Dst: AnalyticHestonEngine*::model_::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:465,1
    - Dst: AnalyticHestonEngine*::model_::kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:466,1
    - Dst: AnalyticHestonEngine*::model_::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:467,1
    - Dst: AnalyticHestonEngine*::model_::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:468,1
    - Dst: AnalyticHestonEngine*::model_::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:469,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:473,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:477,1
    - Dst: AnalyticHestonEngine*::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:477,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:478,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:482,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:482,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:484,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:486,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:487,1
    - Dst: std::atan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:489,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:489,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:493,1
    - Dst: std::tan
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:499,1
    - Dst: QuantLib::Ridder::sign
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:500,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:505,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 6
    argNames:
    - term
    - fwd
    - strike
    - cpxLog
    - enginePtr
    - alpha
    argTypes:
    - Time
    - Real
    - Real
    - ComplexLogFormula
    - AnalyticHestonEngine*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 507
    functionName: "AnalyticHestonEngine::AP_Helper::AP_Helper(\n        Time term,
      Real fwd, Real strike, ComplexLogFormula cpxLog,\n        const AnalyticHestonEngine*
      const enginePtr,\n        const Real alpha)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine*::model_::rho
    - std::atan
    - std::exp
    - AnalyticHestonEngine*::model_::v0
    - std::log
    - AnalyticHestonEngine*::chF
    - std::complex<Real>
    - AnalyticHestonEngine*::model_::kappa
    - QL_FAIL
    - QuantLib::Ridder::sign
    - std::sqrt
    - std::tan
    - AnalyticHestonEngine*::model_::theta
    - AnalyticHestonEngine*::model_::sigma
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AP_Helper::AP_Helper(\n        Time term,
      Real fwd, Real strike, ComplexLogFormula cpxLog,\n        const AnalyticHestonEngine*
      const enginePtr,\n        const Real alpha)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:510,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:510,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:511,1
    - Dst: addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:512,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:513,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:524,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:526,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:528,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:528,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:530,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:532,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:533,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:531,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:539,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:541,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:545,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:544,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 550
    functionName: AnalyticHestonEngine::AP_Helper::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - real
    - addOnTerm
    - std::exp
    - std::complex::imag
    - std::complex<Real>
    - std::complex::real
    - QL_FAIL
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::AP_Helper::operator()(Real u) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:555,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:556,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:560,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:562,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:562,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:565,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:566,1
    - Dst: Ci
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:567,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:567,1
    - Dst: std::cos
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:568,1
    - Dst: Si
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:568,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:566,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:577,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 578
    functionName: AnalyticHestonEngine::AP_Helper::controlVariateValue() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Si
    - real
    - std::exp
    - BlackCalculator
    - std::sin
    - imag
    - QL_FAIL
    - std::sqrt
    - std::cos
    - Ci
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHestonEngine::AP_Helper::controlVariateValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:582,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:582,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:583,1
    - Dst: QuantLib::AnalyticHestonEngine::lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:583,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:586,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:587,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:588,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:589,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:590,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:595,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:596,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:598,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:600,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:603,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:607,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:610,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:612,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:619,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' z'
    - t
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 621
    functionName: QuantLib::AnalyticHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - real
    - std::exp
    - squared
    - v0
    - theta
    - std::complex<Real>
    - imag
    - QuantLib::AnalyticHestonEngine::lnChF
    - rho
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::chF(\n        const std::complex<Real>&
      z, Time t) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:626,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:627,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:628,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:629,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:630,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:635,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:637,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:638,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:642,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:643,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:647,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:647,1
    - Dst: expm1
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:648,1
    - Dst: log1p
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:654,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:656,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' z'
    - t
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 659
    functionName: QuantLib::AnalyticHestonEngine::lnChF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 2
    functionsReached:
    - kappa
    - sigma
    - real
    - std::complex::imag
    - v0
    - theta
    - std::complex<Real>
    - std::complex::real
    - imag
    - log1p
    - std::sqrt
    - expm1
    - rho
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::lnChF(\n        const std::complex<Real>&
      z, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:670,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:669,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 673
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:683,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:684,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 687
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLobatto
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:700,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:703,1
    - Dst: isAdaptiveIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 5
    argNames:
    - ' model'
    - cpxLog
    - ' integration'
    - andersenPiterbargEpsilon
    - alpha
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ComplexLogFormula
    - Integration
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 689
    functionDepth: 1
    functionLinenumber: 689
    functionLinenumberEnd: 707
    functionName: QuantLib::AnalyticHestonEngine::AnalyticHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - isAdaptiveIntegration
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::AnalyticHestonEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              ComplexLogFormula
      cpxLog,\n                              const Integration& integration,\n                              Real
      andersenPiterbargEpsilon,\n                              Real alpha)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:713,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:715,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 6
    argNames:
    - t
    - v0
    - kappa
    - theta
    - sigma
    - rho
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 721
    functionName: QuantLib::AnalyticHestonEngine::optimalControlVariate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 4
    functionsReached:
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: AnalyticHestonEngine::ComplexLogFormula
    signature: "AnalyticHestonEngine::ComplexLogFormula AnalyticHestonEngine::optimalControlVariate(\n
      \       Time t, Real v0, Real kappa, Real theta, Real sigma, Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 725
    functionName: QuantLib::AnalyticHestonEngine::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:731,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:732,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:733,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:734,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:736,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' payoff'
    - ' maturity'
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 737
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 4
    functionsReached:
    - dividendYield
    - s0
    - process
    - riskFreeRate
    - time
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        const Date& maturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:742,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:743,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:744,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:745,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' payoff'
    - maturity
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 739
    functionDepth: 1
    functionLinenumber: 739
    functionLinenumberEnd: 748
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 5
    functionsReached:
    - dividendYield
    - s0
    - process
    - riskFreeRate
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff, Time maturity) const"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:756,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:757,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:759,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:760,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:761,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:766,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:767,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:768,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:769,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:770,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:777,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:777,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:778,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:780,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:781,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:783,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:785,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:786,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:788,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:790,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:801,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:812,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:815,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:818,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:823,1
    - Dst: AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:830,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:832,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:835,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:836,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:839,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:841,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:843,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:852,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:857,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 3
    argNames:
    - ' payoff'
    - maturity
    - fwd
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 750
    functionDepth: 3
    functionLinenumber: 750
    functionLinenumberEnd: 861
    functionName: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 5
    functionsReached:
    - kappa
    - v0
    - theta
    - Real
    - QuantLib::AnalyticHestonEngine::calculate
    - QuantLib::AnalyticHestonEngine::numberOfEvaluations
    - s0
    - strike
    - AP_Helper::controlVariateValue
    - rho
    - std::min
    - sigma
    - std::exp
    - std::max
    - QL_FAIL
    - Integration::andersenPiterbargIntegrationLimit
    - QL_REQUIRE
    - process
    - riskFreeRate
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - Fj_Helper
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::priceVanillaPayoff(\n        const ext::shared_ptr<PlainVanillaPayoff>&
      payoff,\n        Time maturity, Real fwd) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:866,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:866,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:871,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:872,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:874,1
    - Dst: QuantLib::AnalyticHestonEngine::priceVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:876,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 863
    functionDepth: 2
    functionLinenumber: 863
    functionLinenumberEnd: 877
    functionName: QuantLib::AnalyticHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 3
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticHestonEngine::priceVanillaPayoff
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - intAlgo
    - integrator
    argTypes:
    - Algorithm
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 882
    functionName: "AnalyticHestonEngine::Integration::Integration(Algorithm intAlgo,\n
      \                                                  ext::shared_ptr<Integrator>
      integrator)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Integration::Integration(Algorithm intAlgo,\n
      \                                                  ext::shared_ptr<Integrator>
      integrator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - intAlgo
    - gaussianQuadrature
    argTypes:
    - Algorithm
    - ext::shared_ptr<GaussianQuadrature>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 886
    functionName: "AnalyticHestonEngine::Integration::Integration(\n        Algorithm
      intAlgo, ext::shared_ptr<GaussianQuadrature> gaussianQuadrature)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::Integration::Integration(\n        Algorithm
      intAlgo, ext::shared_ptr<GaussianQuadrature> gaussianQuadrature)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:891,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:892,1
    - Dst: GaussLobattoIntegral::GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - relTolerance
    - absTolerance
    - maxEvaluations
    - useConvergenceEstimate
    argTypes:
    - Real
    - Real
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 888
    functionDepth: 0
    functionLinenumber: 888
    functionLinenumberEnd: 897
    functionName: "AnalyticHestonEngine::Integration::gaussLobatto(\n       Real relTolerance,
      Real absTolerance, Size maxEvaluations, bool useConvergenceEstimate)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLobattoIntegral::GaussLobattoIntegral
    - ext::shared_ptr<Integrator>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLobatto(\n
      \      Real relTolerance, Real absTolerance, Size maxEvaluations, bool useConvergenceEstimate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:902,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:903,1
    - Dst: GaussKronrodAdaptive::GaussKronrodAdaptive
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 906
    functionName: "AnalyticHestonEngine::Integration::gaussKronrod(Real absTolerance,\n
      \                                                  Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - GaussKronrodAdaptive::GaussKronrodAdaptive
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussKronrod(Real
      absTolerance,\n                                                   Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:911,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:912,1
    - Dst: SimpsonIntegral::SimpsonIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:913,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 915
    functionName: "AnalyticHestonEngine::Integration::simpson(Real absTolerance,\n
      \                                              Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - SimpsonIntegral::SimpsonIntegral
    - ext::shared_ptr<Integrator>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::simpson(Real
      absTolerance,\n                                               Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:920,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:921,1
    - Dst: TrapezoidIntegral<Default>::TrapezoidIntegral<Default>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - absTolerance
    - maxEvaluations
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 924
    functionName: "AnalyticHestonEngine::Integration::trapezoid(Real absTolerance,\n
      \                                       Size maxEvaluations)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - TrapezoidIntegral<Default>::TrapezoidIntegral<Default>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: "AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::trapezoid(Real
      absTolerance,\n                                        Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:928,1
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:929,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:930,1
    - Dst: GaussLaguerreIntegration::GaussLaguerreIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 932
    functionName: AnalyticHestonEngine::Integration::gaussLaguerre(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussLaguerreIntegration::GaussLaguerreIntegration
    - Integration
    - QL_REQUIRE
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLaguerre(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:936,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:937,1
    - Dst: GaussLegendreIntegration::GaussLegendreIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 939
    functionName: AnalyticHestonEngine::Integration::gaussLegendre(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - GaussLegendreIntegration::GaussLegendreIntegration
    - ext::shared_ptr<GaussianQuadrature>
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussLegendre(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:943,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:944,1
    - Dst: GaussChebyshevIntegration::GaussChebyshevIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 946
    functionName: AnalyticHestonEngine::Integration::gaussChebyshev(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussChebyshevIntegration::GaussChebyshevIntegration
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussChebyshev(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:950,1
    - Dst: ext::shared_ptr<GaussianQuadrature>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:951,1
    - Dst: GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - intOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 948
    functionDepth: 0
    functionLinenumber: 948
    functionLinenumberEnd: 953
    functionName: AnalyticHestonEngine::Integration::gaussChebyshev2nd(Size intOrder)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<GaussianQuadrature>
    - GaussChebyshev2ndIntegration::GaussChebyshev2ndIntegration
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::gaussChebyshev2nd(Size
      intOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:957,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:958,1
    - Dst: DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 960
    functionName: AnalyticHestonEngine::Integration::discreteSimpson(Size evaluations)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - Integration
    - DiscreteSimpsonIntegrator::DiscreteSimpsonIntegrator
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::discreteSimpson(Size
      evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:964,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:965,1
    - Dst: DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - evaluations
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 962
    functionDepth: 0
    functionLinenumber: 962
    functionLinenumberEnd: 967
    functionName: AnalyticHestonEngine::Integration::discreteTrapezoid(Size evaluations)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - DiscreteTrapezoidIntegrator::DiscreteTrapezoidIntegrator
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::discreteTrapezoid(Size
      evaluations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:971,1
    - Dst: ext::shared_ptr<Integrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:972,1
    - Dst: ExpSinhIntegral::ExpSinhIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - relTolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 974
    functionName: AnalyticHestonEngine::Integration::expSinh(Real relTolerance)
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Integrator>
    - ExpSinhIntegral::ExpSinhIntegral
    - Integration
    linkageType: ''
    returnType: AnalyticHestonEngine::Integration
    signature: AnalyticHestonEngine::Integration AnalyticHestonEngine::Integration::expSinh(Real
      relTolerance)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:978,1
    - Dst: order
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:980,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 984
    functionName: AnalyticHestonEngine::Integration::numberOfEvaluations() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - order
    - QL_FAIL
    - numberOfEvaluations
    linkageType: ''
    returnType: Size
    signature: Size AnalyticHestonEngine::Integration::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 992
    functionName: AnalyticHestonEngine::Integration::isAdaptiveIntegration() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool AnalyticHestonEngine::Integration::isAdaptiveIntegration() const
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: integrand1
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1009,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1013,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1014,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1020,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1020,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1021,1
    - Dst: integrand2
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1023,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1027,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1027,1
    - Dst: maxBound
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1028,1
    - Dst: integrand3
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1030,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1033,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 4
    argNames:
    - c_inf
    - ' f'
    - ' maxBound'
    - scaling
    argTypes:
    - Real
    - std::function<Real(Real)>
    - std::function<Real()>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 994
    functionDepth: 1
    functionLinenumber: 994
    functionLinenumberEnd: 1037
    functionName: "AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        const std::function<Real()>&
      maxBound,\n        const Real scaling) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - integrand1
    - Null<Real>
    - f
    - QL_FAIL
    - integrand2
    - maxBound
    - integrand3
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        const std::function<Real()>&
      maxBound,\n        const Real scaling) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1044,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - c_inf
    - ' f'
    - maxBound
    argTypes:
    - Real
    - std::function<Real(Real)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1039
    functionDepth: 2
    functionLinenumber: 1039
    functionLinenumberEnd: 1046
    functionName: "AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        Real maxBound) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::calculate(\n        Real c_inf,\n
      \       const std::function<Real(Real)>& f,\n        Real maxBound) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1051,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1054,1
    - Dst: u_Max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1054,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1058,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1058,1
    - Dst: Brent
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1059,1
    - Dst: uHat_Max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1059,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1062,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - c_inf
    - epsilon
    - v0
    - t
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1067
    functionName: "AnalyticHestonEngine::Integration::andersenPiterbargIntegrationLimit(\n
      \       Real c_inf, Real epsilon, Real v0, Real t)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - Brent
    - std::log
    - uHat_Max
    - std::max
    - u_Max
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonEngine::Integration::andersenPiterbargIntegrationLimit(\n
      \       Real c_inf, Real epsilon, Real v0, Real t)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1090,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1090,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1091,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1093,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1094,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1096,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1098,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1099,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1101,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1103,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1123,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1128,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1131,1
    - Dst: QuantLib::AnalyticHestonEngine::optimalControlVariate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1136,1
    - Dst: AP_Helper::controlVariateValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1141,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1144,1
    - Dst: QuantLib::AnalyticHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1145,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1147,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1156,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp:1162,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 16
    argNames:
    - riskFreeDiscount
    - dividendDiscount
    - spotPrice
    - strikePrice
    - term
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - ' type'
    - ' integration'
    - cpxLog
    - enginePtr
    - ' value'
    - ' evaluations'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - TypePayoff
    - Integration
    - ComplexLogFormula
    - AnalyticHestonEngine*
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1070
    functionDepth: 3
    functionLinenumber: 1070
    functionLinenumberEnd: 1164
    functionName: QuantLib::AnalyticHestonEngine::doCalculation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHestonEngine::optimalControlVariate
    - std::max
    - QL_FAIL
    - Fj_Helper
    - QuantLib::AnalyticHestonEngine::calculate
    - std::sqrt
    - AP_Helper::controlVariateValue
    - QuantLib::AnalyticHestonEngine::numberOfEvaluations
    - Integration::andersenPiterbargIntegrationLimit
    - optionType
    - std::min
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonEngine::doCalculation(Real riskFreeDiscount,\n
      \                                            Real dividendDiscount,\n                                             Real
      spotPrice,\n                                             Real strikePrice,\n
      \                                            Real term,\n                                             Real
      kappa, Real theta, Real sigma, Real v0, Real rho,\n                                             const
      TypePayoff& type,\n                                             const Integration&
      integration,\n                                             const ComplexLogFormula
      cpxLog,\n                                             const AnalyticHestonEngine*
      const enginePtr,\n                                             Real& value,\n
      \                                            Size& evaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:59,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:60,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:61,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:62,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:66,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:67,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' model'
    - term
    - strike
    - j
    argTypes:
    - Handle<PiecewiseTimeDependentHestonModel>
    - Time
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 74
    functionName: "AnalyticPTDHestonEngine::Fj_Helper::Fj_Helper(\n        const Handle<PiecewiseTimeDependentHestonModel>&
      model,\n        Time term, Real strike, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - s0
    - std::log
    - v0
    - riskFreeRate
    - size
    - timeGrid
    - std::min
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::Fj_Helper::Fj_Helper(\n        const
      Handle<PiecewiseTimeDependentHestonModel>& model,\n        Time term, Real strike,
      Size j)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:85,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:88,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:92,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:93,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:94,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:95,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:98,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:102,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:108,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:112,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:112,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:118,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 120
    functionName: AnalyticPTDHestonEngine::Fj_Helper::operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - std::numeric_limits<float>::epsilon
    - std::exp
    - std::log
    - theta
    - Real
    - std::complex<Real>
    - std::max
    - std::sqrt
    - size
    - rho
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPTDHestonEngine::Fj_Helper::operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:129,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:130,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - term
    - s0
    - strike
    - ratio
    - sigmaBS
    - enginePtr
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Volatility
    - AnalyticPTDHestonEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: QuantLib::AnalyticPTDHestonEngine::AP_Helper::AP_Helper
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::log
    linkageType: ''
    returnType: void
    signature: "void AP_Helper(Time term, Real s0, Real strike, Real ratio,\n                  Volatility
      sigmaBS,\n                  const AnalyticPTDHestonEngine* const enginePtr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:140,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:144,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - real
    - std::exp
    - std::complex::imag
    - std::complex::real
    - std::complex<Real>
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:158,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:163,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:166,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:170,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:170,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:175,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:179,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:180,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:181,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:182,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:189,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' z'
    - T
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 204
    functionName: QuantLib::AnalyticPTDHestonEngine::lnChF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - real
    - v0
    - theta
    - back
    - begin
    - timeGrid
    - rho
    - std::min
    - sigma
    - std::exp
    - end
    - std::distance
    - QL_REQUIRE
    - std::lower_bound
    - std::log
    - std::complex<Real>
    - imag
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticPTDHestonEngine::lnChF(\n        const
      std::complex<Real>& z, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:208,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' z'
    - T
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::AnalyticPTDHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticPTDHestonEngine::lnChF
    - std::exp
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticPTDHestonEngine::chF(\n        const std::complex<Real>&
      z, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:220,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:232,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:233,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:232,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLobatto
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' model'
    - cpxLog
    - ' itg'
    - andersenPiterbargEpsilon
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - ComplexLogFormula
    - Integration
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 249
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        ComplexLogFormula
      cpxLog,\n        const Integration& itg,\n        Real andersenPiterbargEpsilon)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:254,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:254,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:259,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:260,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:262,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:263,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:264,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:266,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:268,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:269,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:270,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:272,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:272,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:273,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:273,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:275,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:277,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:278,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:279,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:280,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:286,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:291,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:292,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:293,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:294,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:302,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:302,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:303,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:303,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:306,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:307,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:308,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:310,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:311,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:312,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:314,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:325,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:332,1
    - Dst: at
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:334,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:337,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:339,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:339,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:341,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:341,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:347,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:351,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:352,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:353,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:354,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:357,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:357,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:365,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:367,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:370,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:374,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:378,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:379,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:382,1
    - Dst: AP_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:383,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:385,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:386,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:388,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:398,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:404,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 406
    functionName: QuantLib::AnalyticPTDHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 1
    functionsReached:
    - kappa
    - real
    - v0
    - theta
    - back
    - QuantLib::AnalyticPTDHestonEngine::calculate
    - exercise::type
    - dividendYield
    - s0
    - squared
    - begin
    - size
    - timeGrid
    - exercise::lastDate
    - rho
    - close_enough
    - ext::shared_ptr::strike
    - sigma
    - std::min
    - std::exp
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - AP_Helper
    - QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Integration::andersenPiterbargIntegrationLimit
    - end
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - at
    - BlackCalculator
    - riskFreeRate
    - std::complex<Real>
    - Fj_Helper
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticPTDHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticPTDHestonEngine::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:59,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:59,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:60,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:61,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:62,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:64,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:66,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:67,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' model'
    - term
    - strike
    - j
    argTypes:
    - Handle<PiecewiseTimeDependentHestonModel>
    - Time
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 74
    functionName: "AnalyticPTDHestonEngine::Fj_Helper::Fj_Helper(\n        const Handle<PiecewiseTimeDependentHestonModel>&
      model,\n        Time term, Real strike, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - s0
    - std::log
    - v0
    - riskFreeRate
    - size
    - timeGrid
    - std::min
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::Fj_Helper::Fj_Helper(\n        const
      Handle<PiecewiseTimeDependentHestonModel>& model,\n        Time term, Real strike,
      Size j)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:85,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:88,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:92,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:93,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:94,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:95,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:98,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:102,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:103,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:108,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:109,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:112,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:112,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:118,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 120
    functionName: AnalyticPTDHestonEngine::Fj_Helper::operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - std::numeric_limits<float>::epsilon
    - std::exp
    - std::log
    - theta
    - Real
    - std::complex<Real>
    - std::max
    - std::sqrt
    - size
    - rho
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPTDHestonEngine::Fj_Helper::operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:129,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:130,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - term
    - s0
    - strike
    - ratio
    - sigmaBS
    - enginePtr
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Volatility
    - AnalyticPTDHestonEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: QuantLib::AnalyticPTDHestonEngine::AP_Helper::AP_Helper
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::log
    linkageType: ''
    returnType: void
    signature: "void AP_Helper(Time term, Real s0, Real strike, Real ratio,\n                  Volatility
      sigmaBS,\n                  const AnalyticPTDHestonEngine* const enginePtr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:140,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::complex::imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::complex::real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:141,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    - Dst: chF
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:144,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - real
    - std::exp
    - std::complex::imag
    - std::complex::real
    - std::complex<Real>
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:158,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:163,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:164,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:166,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:170,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:170,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:171,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:175,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:179,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:180,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:181,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:182,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:189,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: imag
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:190,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:197,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' z'
    - T
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 204
    functionName: QuantLib::AnalyticPTDHestonEngine::lnChF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 1
    functionsReached:
    - kappa
    - real
    - v0
    - theta
    - back
    - begin
    - timeGrid
    - rho
    - std::min
    - sigma
    - std::exp
    - end
    - std::distance
    - QL_REQUIRE
    - std::lower_bound
    - std::log
    - std::complex<Real>
    - imag
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticPTDHestonEngine::lnChF(\n        const
      std::complex<Real>& z, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:208,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::lnChF
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' z'
    - T
    argTypes:
    - std::complex<Real>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::AnalyticPTDHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticPTDHestonEngine::lnChF
    - std::exp
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticPTDHestonEngine::chF(\n        const std::complex<Real>&
      z, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:220,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:232,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:233,1
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:232,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    - Null<Real>
    - Integration::gaussLobatto
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integration::Integration
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' model'
    - cpxLog
    - ' itg'
    - andersenPiterbargEpsilon
    argTypes:
    - ext::shared_ptr<PiecewiseTimeDependentHestonModel>
    - ComplexLogFormula
    - Integration
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 249
    functionName: QuantLib::AnalyticPTDHestonEngine::AnalyticPTDHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 0
    functionsReached:
    - Integration::Integration
    linkageType: ''
    returnType: void
    signature: "void AnalyticPTDHestonEngine::AnalyticPTDHestonEngine(\n        const
      ext::shared_ptr<PiecewiseTimeDependentHestonModel>& model,\n        ComplexLogFormula
      cpxLog,\n        const Integration& itg,\n        Real andersenPiterbargEpsilon)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:254,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:254,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:259,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:260,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:262,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:263,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:264,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:266,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:268,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:269,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:270,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:272,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:272,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:273,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:273,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:275,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:277,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:278,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:279,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:280,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:283,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:284,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:286,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:291,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:292,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:293,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:294,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:302,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:302,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:303,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:303,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:306,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:307,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:308,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:310,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:311,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:312,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:314,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:325,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:332,1
    - Dst: at
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:334,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:337,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:338,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:339,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:339,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:341,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:341,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:342,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:347,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:351,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:352,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:353,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:354,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:357,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:357,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:365,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:367,1
    - Dst: Integration::andersenPiterbargIntegrationLimit
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:370,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:374,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:378,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:379,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:382,1
    - Dst: AP_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:383,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:384,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:385,1
    - Dst: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:386,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:388,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:398,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp:404,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 406
    functionName: QuantLib::AnalyticPTDHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 2
    functionsReached:
    - kappa
    - real
    - v0
    - theta
    - back
    - QuantLib::AnalyticPTDHestonEngine::calculate
    - exercise::type
    - dividendYield
    - s0
    - squared
    - begin
    - size
    - timeGrid
    - exercise::lastDate
    - rho
    - close_enough
    - ext::shared_ptr::strike
    - sigma
    - std::min
    - std::exp
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - AP_Helper
    - QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Integration::andersenPiterbargIntegrationLimit
    - end
    - QL_REQUIRE
    - std::distance
    - std::lower_bound
    - at
    - BlackCalculator
    - riskFreeRate
    - std::complex<Real>
    - Fj_Helper
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticPTDHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: QuantLib::AnalyticPTDHestonEngine::numberOfEvaluations
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticptdhestonengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size AnalyticPTDHestonEngine::numberOfEvaluations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::JuQuadraticApproximationEngine::JuQuadraticApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void JuQuadraticApproximationEngine::JuQuadraticApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:46,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:52,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:52,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:59,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:60,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:60,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:61,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:62,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:63,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:64,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:66,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:71,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:73,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:74,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:75,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:76,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:77,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:79,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:81,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:83,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:83,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:84,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:85,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:87,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:88,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:89,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:91,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:91,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:92,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:93,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:94,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:95,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:97,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:98,1
    - Dst: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:105,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:116,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:127,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:133,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:135,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:137,1
    - Dst: normalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:139,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:140,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:141,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:141,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:142,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:142,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:148,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:152,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:153,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:158,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:159,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:162,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:164,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:164,1
    - Dst: normalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:166,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:167,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:173,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:175,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 181
    functionName: QuantLib::JuQuadraticApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp
    functionUses: 0
    functionsReached:
    - cumNormalDist
    - BlackCalculator::vega
    - QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    - ext::shared_ptr::lastDate
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - std::pow
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - std::log
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - blackFormula
    - ext::shared_ptr::payoffAtExpiry
    - std::sqrt
    - BlackCalculator::theta
    - normalDist
    linkageType: ''
    returnType: void
    signature: void JuQuadraticApproximationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::JuQuadraticApproximationEngine::JuQuadraticApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void JuQuadraticApproximationEngine::JuQuadraticApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:46,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:52,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:52,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:59,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:60,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:60,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:61,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:62,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:63,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:64,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:66,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:71,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:73,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:74,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:75,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:76,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:77,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:79,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:81,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:83,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:83,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:84,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:85,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:87,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:88,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:89,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:91,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:91,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:92,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:93,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:94,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:95,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:97,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:98,1
    - Dst: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:105,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:116,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:127,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:131,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:133,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:135,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:135,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:137,1
    - Dst: normalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:139,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:140,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:141,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:141,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:142,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:142,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:148,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:152,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:153,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:158,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:158,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:159,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:162,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:164,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:164,1
    - Dst: normalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:166,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:167,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:173,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp:175,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 181
    functionName: QuantLib::JuQuadraticApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/juquadraticengine.cpp
    functionUses: 0
    functionsReached:
    - cumNormalDist
    - BlackCalculator::vega
    - QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    - ext::shared_ptr::lastDate
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - std::pow
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - std::log
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - blackFormula
    - ext::shared_ptr::payoffAtExpiry
    - std::sqrt
    - BlackCalculator::theta
    - normalDist
    linkageType: ''
    returnType: void
    signature: void JuQuadraticApproximationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~HestonExpansion()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~HestonExpansion()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: ~HestonExpansion()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~HestonExpansion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - integrationEps_
    - maxIntegrationIterations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::AnalyticPDFHestonEngine::AnalyticPDFHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPDFHestonEngine::AnalyticPDFHestonEngine(ext::shared_ptr<HestonModel>
      model,\n                                                     Real integrationEps_,\n
      \                                                    Size maxIntegrationIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:39,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:42,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:44,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:46,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:46,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:47,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:50,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:51,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:54,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:56,1
    - Dst: QuantLib::AnalyticPDFHestonEngine::weightedPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticPDFHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - dividendYield
    - QL_REQUIRE
    - s0
    - GaussLobattoIntegral
    - std::exp
    - std::log
    - v0
    - theta
    - QuantLib::AnalyticPDFHestonEngine::weightedPayoff
    - process
    - time
    - riskFreeRate
    - std::sqrt
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticPDFHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HestonRNDCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:62,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x_t
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::AnalyticPDFHestonEngine::Pv
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - process
    - HestonRNDCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::Pv(Real x_t, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:68,1
    - Dst: HestonRNDCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:69,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::AnalyticPDFHestonEngine::cdf
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - process
    - HestonRNDCalculator
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::cdf(Real s, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:78,1
    - Dst: QuantLib::AnalyticPDFHestonEngine::Pv
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x_t
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticPDFHestonEngine::weightedPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 1
    functionsReached:
    - Real
    - process
    - std::exp
    - QuantLib::AnalyticPDFHestonEngine::Pv
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::weightedPayoff(Real x_t, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - integrationEps_
    - maxIntegrationIterations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::AnalyticPDFHestonEngine::AnalyticPDFHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticPDFHestonEngine::AnalyticPDFHestonEngine(ext::shared_ptr<HestonModel>
      model,\n                                                     Real integrationEps_,\n
      \                                                    Size maxIntegrationIterations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:39,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:42,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:44,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:44,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:46,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:46,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:47,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:48,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:50,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:51,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:54,1
    - Dst: GaussLobattoIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:56,1
    - Dst: QuantLib::AnalyticPDFHestonEngine::weightedPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 59
    functionName: QuantLib::AnalyticPDFHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - dividendYield
    - QL_REQUIRE
    - s0
    - GaussLobattoIntegral
    - std::exp
    - std::log
    - v0
    - theta
    - QuantLib::AnalyticPDFHestonEngine::weightedPayoff
    - process
    - time
    - riskFreeRate
    - std::sqrt
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticPDFHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HestonRNDCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:62,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x_t
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: QuantLib::AnalyticPDFHestonEngine::Pv
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 1
    functionsReached:
    - process
    - HestonRNDCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::Pv(Real x_t, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:68,1
    - Dst: HestonRNDCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:69,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionName: QuantLib::AnalyticPDFHestonEngine::cdf
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 0
    functionsReached:
    - process
    - HestonRNDCalculator
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::cdf(Real s, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:76,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:78,1
    - Dst: QuantLib::AnalyticPDFHestonEngine::Pv
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:81,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x_t
    - t
    argTypes:
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticPDFHestonEngine::weightedPayoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticpdfhestonengine.cpp
    functionUses: 2
    functionsReached:
    - Real
    - process
    - std::exp
    - QuantLib::AnalyticPDFHestonEngine::Pv
    linkageType: ''
    returnType: Real
    signature: Real AnalyticPDFHestonEngine::weightedPayoff(Real x_t, Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - cirProcess
    - bsProcess
    - tGrid
    - xGrid
    - rGrid
    - dampingSteps
    - rho
    - ' schemeDesc'
    - quantoHelper
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: QuantLib::FdCIRVanillaEngine::FdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCIRVanillaEngine::FdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       Size tGrid,\n        Size xGrid,\n        Size rGrid,\n        Size
      dampingSteps,\n        const Real rho,\n        const FdmSchemeDesc& schemeDesc,\n
      \       ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - cirProcess
    - bsProcess
    - dividends
    - tGrid
    - xGrid
    - rGrid
    - dampingSteps
    - rho
    - ' schemeDesc'
    - quantoHelper
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::FdCIRVanillaEngine::FdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCIRVanillaEngine::FdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       DividendSchedule dividends,\n        Size tGrid,\n        Size xGrid,\n
      \       Size rGrid,\n        Size dampingSteps,\n        const Real rho,\n        const
      FdmSchemeDesc& schemeDesc,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:70,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:74,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:79,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:80,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:81,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:81,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:78,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:86,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:90,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:94,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 109
    functionName: QuantLib::FdCIRVanillaEngine::getSolverDesc
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::pair<Real, Real>
    - FdmMesherComposite::FdmMesherComposite
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - Null<Real>
    - time
    - riskFreeRate
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::lastDate
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: FdmSolverDesc
    signature: FdmSolverDesc FdCIRVanillaEngine::getSolverDesc(Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:113,1
    - Dst: Handle<CoxIngersollRossProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:116,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:117,1
    - Dst: QuantLib::FdCIRVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:119,1
    - Dst: FdmCIRSolver::FdmCIRSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:115,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:121,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:122,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:124,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:125,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:126,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 128
    functionName: QuantLib::FdCIRVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::gammaAt
    - FdmCIRSolver::FdmCIRSolver
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - QuantLib::FdCIRVanillaEngine::getSolverDesc
    - Handle<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::thetaAt
    - x0
    - Handle<CoxIngersollRossProcess>
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void FdCIRVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:134,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:135,1
    - Dst: QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - cirProcess
    - bsProcess
    - rho
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: QuantLib::MakeFdCIRVanillaEngine::MakeFdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - std::move
    - QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
    linkageType: ''
    returnType: void
    signature: "void MakeFdCIRVanillaEngine::MakeFdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       const Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: "& MakeFdCIRVanillaEngine::withQuantoHelper(\n        const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine & MakeFdCIRVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: "&\n    MakeFdCIRVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: "&\n    MakeFdCIRVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "&\n    MakeFdCIRVanillaEngine::withRGrid(Size rGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withRGrid(Size
      rGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: "&\n    MakeFdCIRVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: "&\n    MakeFdCIRVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 180
    functionName: "&\n    MakeFdCIRVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdCIRVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 192
    functionName: "MakeFdCIRVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdCIRVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdCIRVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - cirProcess
    - bsProcess
    - tGrid
    - xGrid
    - rGrid
    - dampingSteps
    - rho
    - ' schemeDesc'
    - quantoHelper
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: QuantLib::FdCIRVanillaEngine::FdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCIRVanillaEngine::FdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       Size tGrid,\n        Size xGrid,\n        Size rGrid,\n        Size
      dampingSteps,\n        const Real rho,\n        const FdmSchemeDesc& schemeDesc,\n
      \       ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - cirProcess
    - bsProcess
    - dividends
    - tGrid
    - xGrid
    - rGrid
    - dampingSteps
    - rho
    - ' schemeDesc'
    - quantoHelper
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: QuantLib::FdCIRVanillaEngine::FdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCIRVanillaEngine::FdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       DividendSchedule dividends,\n        Size tGrid,\n        Size xGrid,\n
      \       Size rGrid,\n        Size dampingSteps,\n        const Real rho,\n        const
      FdmSchemeDesc& schemeDesc,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:70,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:74,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:79,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:80,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:81,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:81,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:78,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:86,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:90,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:94,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 109
    functionName: QuantLib::FdCIRVanillaEngine::getSolverDesc
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::pair<Real, Real>
    - FdmMesherComposite::FdmMesherComposite
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - Null<Real>
    - time
    - riskFreeRate
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - exercise::lastDate
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: FdmSolverDesc
    signature: FdmSolverDesc FdCIRVanillaEngine::getSolverDesc(Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:113,1
    - Dst: Handle<CoxIngersollRossProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:116,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:117,1
    - Dst: QuantLib::FdCIRVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:119,1
    - Dst: FdmCIRSolver::FdmCIRSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:115,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:121,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:122,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:124,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:125,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:126,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 128
    functionName: QuantLib::FdCIRVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::gammaAt
    - FdmCIRSolver::FdmCIRSolver
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - QuantLib::FdCIRVanillaEngine::getSolverDesc
    - Handle<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::thetaAt
    - x0
    - Handle<CoxIngersollRossProcess>
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void FdCIRVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:134,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:135,1
    - Dst: QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - cirProcess
    - bsProcess
    - rho
    argTypes:
    - ext::shared_ptr<CoxIngersollRossProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: QuantLib::MakeFdCIRVanillaEngine::MakeFdCIRVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - std::move
    - QuantLib::FdmSchemeDesc::ModifiedHundsdorfer
    linkageType: ''
    returnType: void
    signature: "void MakeFdCIRVanillaEngine::MakeFdCIRVanillaEngine(\n        ext::shared_ptr<CoxIngersollRossProcess>
      cirProcess,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> bsProcess,\n
      \       const Real rho)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: "& MakeFdCIRVanillaEngine::withQuantoHelper(\n        const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine & MakeFdCIRVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: "&\n    MakeFdCIRVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: "&\n    MakeFdCIRVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "&\n    MakeFdCIRVanillaEngine::withRGrid(Size rGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withRGrid(Size
      rGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: "&\n    MakeFdCIRVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: "&\n    MakeFdCIRVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 180
    functionName: "&\n    MakeFdCIRVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdCIRVanillaEngine
    signature: "MakeFdCIRVanillaEngine &\n    MakeFdCIRVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdCIRVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 192
    functionName: "MakeFdCIRVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcirvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdCIRVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdCIRVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 125
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine(\n              const
      ext::shared_ptr<HybridHestonHullWhiteProcess> & process,\n              Size
      timeSteps,\n              Size timeStepsPerYear,\n              bool antitheticVariate,\n
      \             bool controlVariate,\n              Size requiredSamples,\n              Real
      requiredTolerance,\n              Size maxSamples,\n              BigNatural
      seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:129,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 136
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void MCHestonHullWhiteEngine<RNG,S>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:144,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:144,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:147,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:147,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:149,1
    - Dst: HestonHullWhitePathPricer::HestonHullWhitePathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 153
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - HestonHullWhitePathPricer::HestonHullWhitePathPricer
    - time
    - ext::shared_ptr::type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
      MCHestonHullWhiteEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:168,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:168,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:171,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:171,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:173,1
    - Dst: HestonHullWhitePathPricer::HestonHullWhitePathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 178
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - HestonHullWhitePathPricer::HestonHullWhitePathPricer
    - time
    - ext::shared_ptr::type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr::lastDate
    - hestonProcess
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
      MCHestonHullWhiteEngine<RNG,S>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:185,1
    - Dst: hullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:188,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:191,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:193,1
    - Dst: ext::shared_ptr::a
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:194,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:195,1
    - Dst: HullWhite::HullWhite
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:193,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:197,1
    - Dst: AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 199
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::sigma
    - HestonModel::HestonModel
    - HullWhite::HullWhite
    - hullWhiteProcess
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::a
    - ext::shared_ptr<PricingEngine>
    - AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    - hestonProcess
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> MCHestonHullWhiteEngine<RNG,S>::controlPricingEngine()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:206,1
    - Dst: QuantLib::MCHestonHullWhiteEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:207,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:209,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:209,1
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:213,1
    - Dst: hullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:214,1
    - Dst: discretization
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:216,1
    - Dst: HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:213,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:218,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 220
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - hullWhiteProcess
    - path_generator_type::path_generator_type
    - factors
    - QuantLib::MCHestonHullWhiteEngine<RNG,S>::timeGrid
    - HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
    - discretization
    - ext::shared_ptr<path_generator_type>
    - hestonProcess
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_generator_type>"
    signature: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_generator_type>
      MCHestonHullWhiteEngine<RNG,S>::controlPathGenerator() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: QuantLib::MakeMCHestonHullWhiteEngine<RNG, S>::MakeMCHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHestonHullWhiteEngine<RNG, S>::MakeMCHestonHullWhiteEngine(\n
      \       ext::shared_ptr<HybridHestonHullWhiteProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:260,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:269,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:269,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 290
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:300,1
    - Dst: MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:300,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 310
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>::operator
    signature: MakeMCHestonHullWhiteEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 125
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine(\n              const
      ext::shared_ptr<HybridHestonHullWhiteProcess> & process,\n              Size
      timeSteps,\n              Size timeStepsPerYear,\n              bool antitheticVariate,\n
      \             bool controlVariate,\n              Size requiredSamples,\n              Real
      requiredTolerance,\n              Size maxSamples,\n              BigNatural
      seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:129,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 136
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void MCHestonHullWhiteEngine<RNG,S>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:144,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:144,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:147,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:147,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:149,1
    - Dst: HestonHullWhitePathPricer::HestonHullWhitePathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 153
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - HestonHullWhitePathPricer::HestonHullWhitePathPricer
    - time
    - ext::shared_ptr::type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
      MCHestonHullWhiteEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:168,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:168,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:171,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:171,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:173,1
    - Dst: HestonHullWhitePathPricer::HestonHullWhitePathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 178
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - HestonHullWhitePathPricer::HestonHullWhitePathPricer
    - time
    - ext::shared_ptr::type
    - ext::shared_ptr<path_pricer_type>
    - ext::shared_ptr::lastDate
    - hestonProcess
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_pricer_type>
      MCHestonHullWhiteEngine<RNG,S>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:185,1
    - Dst: hullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:188,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:191,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:193,1
    - Dst: ext::shared_ptr::a
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:194,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:195,1
    - Dst: HullWhite::HullWhite
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:193,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:197,1
    - Dst: AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 199
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::sigma
    - HestonModel::HestonModel
    - HullWhite::HullWhite
    - hullWhiteProcess
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::a
    - ext::shared_ptr<PricingEngine>
    - AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    - hestonProcess
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> MCHestonHullWhiteEngine<RNG,S>::controlPricingEngine()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:206,1
    - Dst: QuantLib::MCHestonHullWhiteEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:207,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:209,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:209,1
    - Dst: hestonProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:213,1
    - Dst: hullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:214,1
    - Dst: discretization
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:216,1
    - Dst: HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:213,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:218,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 220
    functionName: QuantLib::MCHestonHullWhiteEngine<RNG,S>::controlPathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - hullWhiteProcess
    - path_generator_type::path_generator_type
    - factors
    - QuantLib::MCHestonHullWhiteEngine<RNG,S>::timeGrid
    - HybridHestonHullWhiteProcess::HybridHestonHullWhiteProcess
    - discretization
    - ext::shared_ptr<path_generator_type>
    - hestonProcess
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_generator_type>"
    signature: "ext::shared_ptr<\n        typename MCHestonHullWhiteEngine<RNG,S>::path_generator_type>
      MCHestonHullWhiteEngine<RNG,S>::controlPathGenerator() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:226,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: QuantLib::MakeMCHestonHullWhiteEngine<RNG, S>::MakeMCHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHestonHullWhiteEngine<RNG, S>::MakeMCHestonHullWhiteEngine(\n
      \       ext::shared_ptr<HybridHestonHullWhiteProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:260,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:269,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:269,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 290
    functionName: "&\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>
    signature: "MakeMCHestonHullWhiteEngine<RNG,S> &\n    MakeMCHestonHullWhiteEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:298,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:300,1
    - Dst: MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp:300,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 310
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHestonHullWhiteEngine<RNG,S>::MCHestonHullWhiteEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHestonHullWhiteEngine<RNG,S>::operator
    signature: MakeMCHestonHullWhiteEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - s0
    - drift
    - variance
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(ext::shared_ptr<Payoff> payoff, Real s0, Rate drift,
      Real variance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - s0
    - drift
    - variance
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(ext::shared_ptr<Payoff> payoff, Real s0, Rate drift,
      Real variance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::IntegralEngine::IntegralEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void IntegralEngine::IntegralEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:64,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:64,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:67,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:71,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:78,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:80,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:82,1
    - Dst: integrator
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 84
    functionName: QuantLib::IntegralEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - ext::shared_ptr::strike
    - riskFreeRate
    - integrator
    - std::sqrt
    - stateVariable
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void IntegralEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - s0
    - drift
    - variance
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(ext::shared_ptr<Payoff> payoff, Real s0, Rate drift,
      Real variance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - s0
    - drift
    - variance
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Integrand(ext::shared_ptr<Payoff> payoff, Real s0, Rate drift,
      Real variance)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:35,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::IntegralEngine::IntegralEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void IntegralEngine::IntegralEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:60,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:64,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:64,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:67,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:70,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:71,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:78,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:80,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:82,1
    - Dst: integrator
      Src: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 84
    functionName: QuantLib::IntegralEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/integralengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - ext::shared_ptr::strike
    - riskFreeRate
    - integrator
    - std::sqrt
    - stateVariable
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void IntegralEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:57,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:58,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:59,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:60,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:61,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' hestonModel'
    - ' hullWhiteModel'
    - rhoSr
    - term
    - j
    argTypes:
    - Handle<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: "AnalyticH1HWEngine::Fj_Helper::Fj_Helper(\n        const Handle<HestonModel>&
      hestonModel,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Time term, Real, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - a
    - v0
    - theta
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::Fj_Helper::Fj_Helper(\n        const Handle<HestonModel>&
      hestonModel,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Time term, Real, Size j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: AnalyticH1HWEngine::Fj_Helper::c(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::c(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: AnalyticH1HWEngine::Fj_Helper::lambda(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::lambda(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:79,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: AnalyticH1HWEngine::Fj_Helper::LambdaApprox(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - lambda
    - c
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::LambdaApprox(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:83,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:85,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:93,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:93,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 101
    functionName: AnalyticH1HWEngine::Fj_Helper::Lambda(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<float>::epsilon
    - c
    - std::exp
    - std::log
    - GammaFunction::logValue
    - static_cast<Real>
    - GammaFunction
    - lambda
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::Lambda(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:111,1
    - Dst: LambdaApprox
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:114,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:115,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:115,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:116,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:121,1
    - Dst: Lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:122,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:125,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:131,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 135
    functionName: AnalyticH1HWEngine::Fj_Helper::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - LambdaApprox
    - GammaFunction
    - std::complex<Real>
    - std::sqrt
    - Lambda
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> AnalyticH1HWEngine::Fj_Helper::operator()(Real u)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' model'
    - ' hullWhiteModel'
    - rhoSr
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticH1HWEngine::AnalyticH1HWEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::AnalyticH1HWEngine(\n        const ext::shared_ptr<HestonModel>&
      model,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' model'
    - ' hullWhiteModel'
    - rhoSr
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticH1HWEngine::AnalyticH1HWEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::AnalyticH1HWEngine(\n        const ext::shared_ptr<HestonModel>&
      model,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:159,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - u
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionName: QuantLib::AnalyticH1HWEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - Fj_Helper
    - QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticH1HWEngine::addOnTerm(Real u, Time t, Size
      j)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:57,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:58,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:59,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:60,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:61,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' hestonModel'
    - ' hullWhiteModel'
    - rhoSr
    - term
    - j
    argTypes:
    - Handle<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: "AnalyticH1HWEngine::Fj_Helper::Fj_Helper(\n        const Handle<HestonModel>&
      hestonModel,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Time term, Real, Size j)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - a
    - v0
    - theta
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::Fj_Helper::Fj_Helper(\n        const Handle<HestonModel>&
      hestonModel,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Time term, Real, Size j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: AnalyticH1HWEngine::Fj_Helper::c(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::c(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:73,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: AnalyticH1HWEngine::Fj_Helper::lambda(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::lambda(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:78,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:79,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: AnalyticH1HWEngine::Fj_Helper::LambdaApprox(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - lambda
    - c
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::LambdaApprox(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:83,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:85,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:91,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:92,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:93,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:93,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    - Dst: c
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 101
    functionName: AnalyticH1HWEngine::Fj_Helper::Lambda(Time t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<float>::epsilon
    - c
    - std::exp
    - std::log
    - GammaFunction::logValue
    - static_cast<Real>
    - GammaFunction
    - lambda
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticH1HWEngine::Fj_Helper::Lambda(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:109,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:110,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:111,1
    - Dst: LambdaApprox
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:114,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:115,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:115,1
    - Dst: GammaFunction
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:116,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:121,1
    - Dst: Lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:122,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:125,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:129,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:130,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:131,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:132,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 135
    functionName: AnalyticH1HWEngine::Fj_Helper::operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - LambdaApprox
    - GammaFunction
    - std::complex<Real>
    - std::sqrt
    - Lambda
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> AnalyticH1HWEngine::Fj_Helper::operator()(Real u)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' model'
    - ' hullWhiteModel'
    - rhoSr
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionName: QuantLib::AnalyticH1HWEngine::AnalyticH1HWEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::AnalyticH1HWEngine(\n        const ext::shared_ptr<HestonModel>&
      model,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' model'
    - ' hullWhiteModel'
    - rhoSr
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticH1HWEngine::AnalyticH1HWEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticH1HWEngine::AnalyticH1HWEngine(\n        const ext::shared_ptr<HestonModel>&
      model,\n        const ext::shared_ptr<HullWhite>& hullWhiteModel,\n        Real
      rhoSr, Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:159,1
    - Dst: Fj_Helper
      Src: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - u
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionName: QuantLib::AnalyticH1HWEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytich1hwengine.cpp
    functionUses: 0
    functionsReached:
    - Fj_Helper
    - QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticH1HWEngine::addOnTerm(Real u, Time t, Size
      j)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::AnalyticDigitalAmericanEngine::knock_in
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool knock_in() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - engine
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::AnalyticDigitalAmericanKOEngine::AnalyticDigitalAmericanKOEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticDigitalAmericanKOEngine(\n                    const ext::shared_ptr<GeneralizedBlackScholesProcess>
      \n                                 &engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::AnalyticDigitalAmericanKOEngine::knock_in
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool knock_in() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::AnalyticDigitalAmericanEngine::knock_in
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool knock_in() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - engine
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::AnalyticDigitalAmericanKOEngine::AnalyticDigitalAmericanKOEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticDigitalAmericanKOEngine(\n                    const ext::shared_ptr<GeneralizedBlackScholesProcess>
      \n                                 &engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::AnalyticDigitalAmericanKOEngine::knock_in
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool knock_in() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:34,1
    - Dst: QuantLib::LsmBasisSystem::pathBasisSystem
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:37,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:45,1
    - Dst: QuantLib::AmericanPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - payoff
    - polynomialOrder
    - polynomialType
    argTypes:
    - ext::shared_ptr<Payoff>
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 53
    functionName: QuantLib::AmericanPathPricer::AmericanPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AmericanPathPricer::payoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - QuantLib::LsmBasisSystem::pathBasisSystem
    - std::move
    - emplace_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPathPricer::AmericanPathPricer(ext::shared_ptr<Payoff>
      payoff,\n                                           Size polynomialOrder,\n
      \                                          LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - state
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::AmericanPathPricer::payoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::payoff(Real state) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:60,1
    - Dst: state
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - Path
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: AmericanPathPricer::operator()(const Path& path, Size t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - state
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::operator()(const Path& path, Size t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - Path
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::AmericanPathPricer::state
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::state(const Path& path, Size t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::AmericanPathPricer::basisSystem
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::function<Real(Real)> >
    signature: std::vector<std::function<Real(Real)> > AmericanPathPricer::basisSystem()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:34,1
    - Dst: QuantLib::LsmBasisSystem::pathBasisSystem
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:37,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:45,1
    - Dst: QuantLib::AmericanPathPricer::payoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - payoff
    - polynomialOrder
    - polynomialType
    argTypes:
    - ext::shared_ptr<Payoff>
    - Size
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 53
    functionName: QuantLib::AmericanPathPricer::AmericanPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AmericanPathPricer::payoff
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - QuantLib::LsmBasisSystem::pathBasisSystem
    - std::move
    - emplace_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AmericanPathPricer::AmericanPathPricer(ext::shared_ptr<Payoff>
      payoff,\n                                           Size polynomialOrder,\n
      \                                          LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - state
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: QuantLib::AmericanPathPricer::payoff
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::payoff(Real state) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: payoff
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:60,1
    - Dst: state
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - Path
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: AmericanPathPricer::operator()(const Path& path, Size t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - state
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::operator()(const Path& path, Size t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - t
    argTypes:
    - Path
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::AmericanPathPricer::state
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AmericanPathPricer::state(const Path& path, Size t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: QuantLib::AmericanPathPricer::basisSystem
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::function<Real(Real)> >
    signature: std::vector<std::function<Real(Real)> > AmericanPathPricer::basisSystem()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite,\n        CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:62,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite,\n        CashDividendModel
      cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:82,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - process
    - quantoHelper
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper,\n        Size
      tGrid,\n        Size xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc&
      schemeDesc,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - process
    - dividends
    - quantoHelper
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 106
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite,\n        CashDividendModel cashDividendModel)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:112,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:113,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:114,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:117,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:126,1
    - Dst: DividendSchedule::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:129,1
    - Dst: ext::make_shared<FixedDividend>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:130,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:132,1
    - Dst: ext::make_shared<EscrowedDividendAdjustment>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:135,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:137,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:138,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:139,1
    - Dst: ext::shared_ptr::dividendAdjustment
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:144,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:146,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:151,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:156,1
    - Dst: ext::make_shared<FdmBlackScholesMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:161,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:161,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:162,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:162,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:167,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:173,1
    - Dst: ext::make_shared<FdmEscrowedLogInnerValueCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:181,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:186,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:188,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:189,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:199,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:200,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:201,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:203,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:205,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:207,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:208,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:210,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 211
    functionName: QuantLib::FdBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<FdmBlackScholesMesher>
    - exercise::type
    - dividendYield
    - ext::shared_ptr::gammaAt
    - date
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - DividendSchedule::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::make_shared<FixedDividend>
    - ext::make_shared<FdmEscrowedLogInnerValueCalculator>
    - ext::make_shared<FdmBlackScholesSolver>
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - Null<Real>
    - Handle<FdmQuantoHelper>
    - time
    - DividendSchedule
    - QL_FAIL
    - ext::make_shared<EscrowedDividendAdjustment>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::shared_ptr::dividendAdjustment
    - riskFreeRate
    - ext::make_shared<FdmLogInnerValue>
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:215,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:216,1
    - Dst: QuantLib::FdmSchemeDesc::Douglas
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:216,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::MakeFdBlackScholesVanillaEngine::MakeFdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - Null<Real>
    - std::move
    - QuantLib::FdmSchemeDesc::Douglas
    linkageType: ''
    returnType: void
    signature: "void MakeFdBlackScholesVanillaEngine::MakeFdBlackScholesVanillaEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withQuantoHelper(\n        const
      ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - localVol
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withLocalVol(bool localVol)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withLocalVol(bool
      localVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - illegalLocalVolOverwrite
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 262
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withIllegalLocalVolOverwrite(\n
      \       Real illegalLocalVolOverwrite)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withIllegalLocalVolOverwrite(\n
      \       Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 270
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cashDividendModel
    argTypes:
    - FdBlackScholesVanillaEngine::CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 277
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withCashDividendModel(\n
      \       FdBlackScholesVanillaEngine::CashDividendModel cashDividendModel)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withCashDividendModel(\n
      \       FdBlackScholesVanillaEngine::CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 290
    functionName: "MakeFdBlackScholesVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdBlackScholesVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdBlackScholesVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite,\n        CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:62,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:62,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc,\n
      \       bool localVol,\n        Real illegalLocalVolOverwrite,\n        CashDividendModel
      cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:82,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - process
    - quantoHelper
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 86
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        ext::shared_ptr<FdmQuantoHelper> quantoHelper,\n        Size
      tGrid,\n        Size xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc&
      schemeDesc,\n        bool localVol,\n        Real illegalLocalVolOverwrite,\n
      \       CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:99,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 10
    argNames:
    - process
    - dividends
    - quantoHelper
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    - localVol
    - illegalLocalVolOverwrite
    - cashDividendModel
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - bool
    - Real
    - CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 106
    functionName: QuantLib::FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesVanillaEngine::FdBlackScholesVanillaEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc,\n        bool localVol,\n        Real
      illegalLocalVolOverwrite,\n        CashDividendModel cashDividendModel)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:112,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:113,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:114,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:117,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:126,1
    - Dst: DividendSchedule::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:129,1
    - Dst: ext::make_shared<FixedDividend>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:130,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:132,1
    - Dst: ext::make_shared<EscrowedDividendAdjustment>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:135,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:137,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:138,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:139,1
    - Dst: ext::shared_ptr::dividendAdjustment
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:144,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:146,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:151,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:156,1
    - Dst: ext::make_shared<FdmBlackScholesMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:161,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:161,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:162,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:162,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:167,1
    - Dst: ext::make_shared<FdmLogInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:173,1
    - Dst: ext::make_shared<FdmEscrowedLogInnerValueCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:181,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:186,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:188,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:189,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:199,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:200,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:201,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:203,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:205,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:207,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:208,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:210,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 211
    functionName: QuantLib::FdBlackScholesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<FdmBlackScholesMesher>
    - exercise::type
    - dividendYield
    - ext::shared_ptr::gammaAt
    - date
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - DividendSchedule::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::make_shared<FixedDividend>
    - ext::make_shared<FdmEscrowedLogInnerValueCalculator>
    - ext::make_shared<FdmBlackScholesSolver>
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - Null<Real>
    - Handle<FdmQuantoHelper>
    - time
    - DividendSchedule
    - QL_FAIL
    - ext::make_shared<EscrowedDividendAdjustment>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::shared_ptr::dividendAdjustment
    - riskFreeRate
    - ext::make_shared<FdmLogInnerValue>
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:215,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:216,1
    - Dst: QuantLib::FdmSchemeDesc::Douglas
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:216,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::MakeFdBlackScholesVanillaEngine::MakeFdBlackScholesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - Null<Real>
    - std::move
    - QuantLib::FdmSchemeDesc::Douglas
    linkageType: ''
    returnType: void
    signature: "void MakeFdBlackScholesVanillaEngine::MakeFdBlackScholesVanillaEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withQuantoHelper(\n        const
      ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - localVol
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withLocalVol(bool localVol)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withLocalVol(bool
      localVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - illegalLocalVolOverwrite
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 262
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withIllegalLocalVolOverwrite(\n
      \       Real illegalLocalVolOverwrite)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withIllegalLocalVolOverwrite(\n
      \       Real illegalLocalVolOverwrite)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 270
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cashDividendModel
    argTypes:
    - FdBlackScholesVanillaEngine::CashDividendModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 277
    functionName: "&\n    MakeFdBlackScholesVanillaEngine::withCashDividendModel(\n
      \       FdBlackScholesVanillaEngine::CashDividendModel cashDividendModel)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdBlackScholesVanillaEngine
    signature: "MakeFdBlackScholesVanillaEngine &\n    MakeFdBlackScholesVanillaEngine::withCashDividendModel(\n
      \       FdBlackScholesVanillaEngine::CashDividendModel cashDividendModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdBlackScholesVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 290
    functionName: "MakeFdBlackScholesVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdBlackScholesVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdBlackScholesVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - formula
    argTypes:
    - ext::shared_ptr<HestonModel>
    - HestonExpansionFormula
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonExpansionEngine::HestonExpansionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HestonExpansionEngine::HestonExpansionEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              HestonExpansionFormula
      formula)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:51,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:57,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:61,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:64,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:67,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:70,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:78,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:79,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:79,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:80,1
    - Dst: LPP2HestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:81,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:85,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:85,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:86,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:86,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:87,1
    - Dst: LPP3HestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:88,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:92,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:92,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:93,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:93,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:94,1
    - Dst: FordeHestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:99,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:101,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 104
    functionName: QuantLib::HestonExpansionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - FordeHestonExpansion::impliedVolatility
    - v0
    - theta
    - exercise::type
    - sqrt
    - dividendYield
    - s0
    - exercise::lastDate
    - rho
    - ext::shared_ptr::strike
    - sigma
    - time
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - LPP2HestonExpansion::impliedVolatility
    - QL_REQUIRE
    - LPP3HestonExpansion::impliedVolatility
    - process
    - riskFreeRate
    - blackFormula
    linkageType: ''
    returnType: void
    signature: void HestonExpansionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:108,1
    - Dst: QuantLib::LPP2HestonExpansion::z0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:112,1
    - Dst: QuantLib::LPP2HestonExpansion::z1
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:113,1
    - Dst: QuantLib::LPP2HestonExpansion::z2
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionName: QuantLib::LPP2HestonExpansion::LPP2HestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LPP2HestonExpansion::z2
    - QuantLib::LPP2HestonExpansion::z0
    - QuantLib::LPP2HestonExpansion::z1
    - exp
    linkageType: ''
    returnType: void
    signature: "void LPP2HestonExpansion::LPP2HestonExpansion(Real kappa, Real theta,
      Real sigma,\n                                             Real v0, Real rho,
      Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::fastpow
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: Real fastpow(Real x, int y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:123,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::LPP2HestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::impliedVolatility(const Real strike,\n                                                const
      Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:130,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:133,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:134,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:135,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:139,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:139,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:141,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:144,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:147,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:147,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:148,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:150,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:153,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:155,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:156,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:156,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:159,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:161,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:163,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:163,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 165
    functionName: QuantLib::LPP2HestonExpansion::z0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z0(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:169,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:170,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:170,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:175,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:176,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:178,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:179,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:179,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 182
    functionName: QuantLib::LPP2HestonExpansion::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - fastpow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z1(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:186,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:186,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:187,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:187,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:191,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:193,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 196
    functionName: QuantLib::LPP2HestonExpansion::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - fastpow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z2(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 214
    functionName: QuantLib::FordeHestonExpansion::FordeHestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void FordeHestonExpansion::FordeHestonExpansion(Real kappa, Real theta,\n
      \                                              Real sigma, Real v0,\n                                               Real
      rho, Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:218,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:220,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 222
    functionName: QuantLib::FordeHestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - sqrt
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real FordeHestonExpansion::impliedVolatility(const Real strike,\n
      \                                                const Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:226,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:226,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:230,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:231,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:232,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:232,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:236,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:240,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:247,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:250,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:255,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:257,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:257,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:258,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:260,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:260,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:262,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:265,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:267,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:269,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:272,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:272,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:273,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:275,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:275,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:276,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:279,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:279,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:282,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:285,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:289,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:293,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:293,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:295,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:295,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:296,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:296,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:297,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:298,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:300,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:300,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:301,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:301,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:302,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:304,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:304,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:306,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:310,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:310,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:312,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:313,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:314,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:314,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:315,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:316,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:319,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:319,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:320,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:322,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:322,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:325,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:329,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:331,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:332,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:332,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:336,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:338,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:340,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:340,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:343,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:345,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:346,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:346,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:349,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:351,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:353,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:357,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:359,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:360,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:360,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:365,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:367,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:369,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:371,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:371,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:372,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:373,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:373,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:374,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:376,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:376,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:377,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:378,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:382,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:383,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:383,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:384,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:385,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:385,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:388,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:388,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:389,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:390,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:390,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:391,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:392,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:392,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:394,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:395,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:397,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:397,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:398,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:398,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:400,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:401,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:401,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:402,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:404,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:404,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:410,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:410,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:411,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:411,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:412,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:412,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:413,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:416,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:418,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:418,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 420
    functionName: QuantLib::LPP3HestonExpansion::z0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z0(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:424,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:427,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:427,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:428,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:433,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:433,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:434,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:438,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:440,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:442,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:444,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:445,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:445,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:446,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:449,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:452,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:456,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:456,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:457,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:460,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:460,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:463,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:466,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:470,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:470,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:473,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:476,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:480,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:485,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:485,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:487,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:488,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:489,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:489,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:490,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:491,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:493,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:493,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:494,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:494,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:495,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:497,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:498,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:501,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:506,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:508,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:510,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:513,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:515,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:517,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:522,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:524,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:526,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:526,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:528,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:528,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:529,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:530,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:530,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:531,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:532,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:532,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:534,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:535,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:538,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:538,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:540,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:541,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:541,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:542,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:544,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:547,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:547,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:548,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:549,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:549,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:550,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:551,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:551,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:553,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:554,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:557,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:557,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:559,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:560,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:560,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:561,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:563,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:563,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:569,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:569,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:570,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:570,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:571,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:572,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:573,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:573,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:574,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:574,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:576,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:577,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:578,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:584,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:584,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:585,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:585,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:586,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:587,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:588,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:588,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:589,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:589,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:591,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:593,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:593,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 595
    functionName: QuantLib::LPP3HestonExpansion::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z1(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:600,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:600,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:601,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:601,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:602,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:602,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:603,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:603,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:604,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:604,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:605,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:607,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:607,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:608,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:608,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:609,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:610,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:611,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:612,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:612,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:613,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:614,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:615,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:616,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:617,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:617,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:618,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:619,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:619,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:620,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:621,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:621,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:622,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:622,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:623,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:624,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:624,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:625,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:625,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:626,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:627,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:628,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:628,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:629,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:629,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:630,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:631,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:632,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:632,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:633,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:633,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:634,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:634,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:636,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:636,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:637,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:637,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:638,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:638,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:640,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:640,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:641,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:641,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:642,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:642,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:643,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:644,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:644,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:645,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:649,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:649,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:651,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:651,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:653,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:653,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:655,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:655,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 658
    functionName: QuantLib::LPP3HestonExpansion::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z2(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:662,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:663,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:663,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:664,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:664,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:666,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:666,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:667,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:667,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:669,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:669,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:670,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:670,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:671,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:671,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:674,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:674,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:680,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:680,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:682,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:682,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:684,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:684,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:685,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:685,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:686,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:686,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:689,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:689,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:695,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:696,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:696,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:698,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:698,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:699,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:699,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:700,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:700,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:703,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:703,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:704,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:704,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:707,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:710,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:710,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:711,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:711,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:713,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:713,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:714,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:714,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:717,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 719
    functionName: QuantLib::LPP3HestonExpansion::z3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z3(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:723,1
    - Dst: QuantLib::LPP3HestonExpansion::z0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:727,1
    - Dst: QuantLib::LPP3HestonExpansion::z1
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:728,1
    - Dst: QuantLib::LPP3HestonExpansion::z2
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:729,1
    - Dst: QuantLib::LPP3HestonExpansion::z3
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 731
    functionName: QuantLib::LPP3HestonExpansion::LPP3HestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LPP3HestonExpansion::z3
    - QuantLib::LPP3HestonExpansion::z1
    - QuantLib::LPP3HestonExpansion::z0
    - exp
    - QuantLib::LPP3HestonExpansion::z2
    linkageType: ''
    returnType: void
    signature: "void LPP3HestonExpansion::LPP3HestonExpansion(Real kappa, Real theta,
      Real sigma,\n                                             Real v0, Real rho,
      Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:735,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 733
    functionDepth: 0
    functionLinenumber: 733
    functionLinenumberEnd: 738
    functionName: QuantLib::LPP3HestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::impliedVolatility(const Real strike,\n                                                const
      Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - formula
    argTypes:
    - ext::shared_ptr<HestonModel>
    - HestonExpansionFormula
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: QuantLib::HestonExpansionEngine::HestonExpansionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void HestonExpansionEngine::HestonExpansionEngine(\n                              const
      ext::shared_ptr<HestonModel>& model,\n                              HestonExpansionFormula
      formula)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:51,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:57,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:61,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:64,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:67,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:70,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:78,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:79,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:79,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:80,1
    - Dst: LPP2HestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:81,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:85,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:85,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:86,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:86,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:87,1
    - Dst: LPP3HestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:88,1
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:92,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:92,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:93,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:93,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:94,1
    - Dst: FordeHestonExpansion::impliedVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:99,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:101,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 104
    functionName: QuantLib::HestonExpansionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - FordeHestonExpansion::impliedVolatility
    - v0
    - theta
    - exercise::type
    - sqrt
    - dividendYield
    - s0
    - exercise::lastDate
    - rho
    - ext::shared_ptr::strike
    - sigma
    - time
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - LPP2HestonExpansion::impliedVolatility
    - QL_REQUIRE
    - LPP3HestonExpansion::impliedVolatility
    - process
    - riskFreeRate
    - blackFormula
    linkageType: ''
    returnType: void
    signature: void HestonExpansionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:108,1
    - Dst: QuantLib::LPP2HestonExpansion::z0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:112,1
    - Dst: QuantLib::LPP2HestonExpansion::z1
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:113,1
    - Dst: QuantLib::LPP2HestonExpansion::z2
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionName: QuantLib::LPP2HestonExpansion::LPP2HestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LPP2HestonExpansion::z2
    - QuantLib::LPP2HestonExpansion::z0
    - QuantLib::LPP2HestonExpansion::z1
    - exp
    linkageType: ''
    returnType: void
    signature: "void LPP2HestonExpansion::LPP2HestonExpansion(Real kappa, Real theta,
      Real sigma,\n                                             Real v0, Real rho,
      Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: QuantLib::fastpow
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: Real fastpow(Real x, int y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:123,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: QuantLib::LPP2HestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::impliedVolatility(const Real strike,\n                                                const
      Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:130,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:133,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:134,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:135,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:139,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:139,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:141,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:143,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:144,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:147,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:147,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:148,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:150,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:153,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:155,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:156,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:156,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:159,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:161,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:163,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:163,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 165
    functionName: QuantLib::LPP2HestonExpansion::z0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 2
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z0(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:169,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:170,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:170,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:175,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:176,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:178,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:179,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:179,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 182
    functionName: QuantLib::LPP2HestonExpansion::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 2
    functionsReached:
    - fastpow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z1(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:186,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:186,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:187,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:187,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:191,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:193,1
    - Dst: fastpow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 196
    functionName: QuantLib::LPP2HestonExpansion::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 2
    functionsReached:
    - fastpow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP2HestonExpansion::z2(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 214
    functionName: QuantLib::FordeHestonExpansion::FordeHestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void FordeHestonExpansion::FordeHestonExpansion(Real kappa, Real theta,\n
      \                                              Real sigma, Real v0,\n                                               Real
      rho, Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:218,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:220,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 222
    functionName: QuantLib::FordeHestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - sqrt
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real FordeHestonExpansion::impliedVolatility(const Real strike,\n
      \                                                const Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:226,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:226,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:230,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:231,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:232,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:232,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:236,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:240,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:245,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:247,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:249,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:250,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:253,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:255,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:257,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:257,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:258,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:260,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:260,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:262,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:264,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:265,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:267,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:268,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:269,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:272,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:272,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:273,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:275,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:275,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:276,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:279,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:279,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:282,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:284,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:285,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:287,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:289,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:292,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:293,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:293,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:295,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:295,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:296,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:296,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:297,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:298,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:299,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:300,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:300,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:301,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:301,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:302,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:304,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:304,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:305,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:306,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:309,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:310,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:310,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:312,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:313,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:314,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:314,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:315,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:316,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:317,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:319,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:319,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:320,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:322,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:322,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:323,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:325,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:329,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:331,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:332,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:332,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:336,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:338,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:340,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:340,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:343,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:345,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:346,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:346,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:349,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:351,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:353,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:357,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:359,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:360,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:360,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:365,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:367,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:369,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:371,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:371,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:372,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:373,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:373,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:374,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:375,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:376,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:376,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:377,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:378,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:379,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:380,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:381,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:382,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:383,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:383,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:384,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:385,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:385,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:388,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:388,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:389,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:390,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:390,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:391,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:392,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:392,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:393,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:394,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:395,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:396,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:397,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:397,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:398,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:398,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:399,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:400,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:401,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:401,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:402,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:404,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:404,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:407,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:408,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:410,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:410,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:411,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:411,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:412,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:412,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:413,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:414,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:415,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:416,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:418,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:418,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 420
    functionName: QuantLib::LPP3HestonExpansion::z0
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z0(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:424,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:427,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:427,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:428,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:431,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:433,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:433,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:434,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:437,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:438,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:440,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:441,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:442,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:444,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:445,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:445,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:446,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:449,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:452,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:456,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:456,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:457,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:460,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:460,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:463,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:465,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:466,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:468,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:470,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:470,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:473,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:475,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:476,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:478,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:480,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:484,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:485,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:485,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:487,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:488,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:489,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:489,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:490,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:491,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:492,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:493,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:493,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:494,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:494,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:495,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:497,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:498,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:499,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:501,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:506,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:508,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:510,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:513,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:515,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:517,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:522,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:524,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:526,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:526,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:528,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:528,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:529,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:530,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:530,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:531,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:532,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:532,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:533,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:534,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:535,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:536,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:537,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:538,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:538,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:539,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:540,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:541,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:541,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:542,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:544,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:547,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:547,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:548,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:549,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:549,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:550,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:551,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:551,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:552,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:553,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:554,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:555,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:556,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:557,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:557,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:558,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:559,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:560,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:560,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:561,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:563,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:563,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:566,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:567,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:569,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:569,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:570,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:570,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:571,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:572,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:573,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:573,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:574,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:574,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:575,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:576,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:577,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:578,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:581,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:582,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:584,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:584,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:585,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:585,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:586,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:587,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:588,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:588,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:589,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:589,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:590,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:591,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:593,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:593,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 595
    functionName: QuantLib::LPP3HestonExpansion::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z1(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:599,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:600,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:600,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:601,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:601,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:602,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:602,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:603,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:603,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:604,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:604,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:605,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:607,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:607,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:608,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:608,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:609,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:610,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:611,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:612,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:612,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:613,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:614,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:615,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:616,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:617,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:617,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:618,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:619,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:619,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:620,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:621,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:621,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:622,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:622,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:623,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:624,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:624,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:625,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:625,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:626,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:627,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:628,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:628,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:629,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:629,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:630,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:631,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:632,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:632,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:633,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:633,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:634,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:634,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:635,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:636,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:636,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:637,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:637,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:638,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:638,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:639,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:640,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:640,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:641,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:641,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:642,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:642,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:643,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:644,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:644,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:645,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:646,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:647,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:648,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:649,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:649,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:651,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:651,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:652,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:653,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:653,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:654,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:655,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:655,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 658
    functionName: QuantLib::LPP3HestonExpansion::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - pow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z2(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:662,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:663,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:663,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:664,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:664,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:665,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:666,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:666,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:667,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:667,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:668,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:669,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:669,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:670,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:670,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:671,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:671,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:672,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:673,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:674,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:674,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:675,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:676,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:677,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:678,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:680,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:680,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:681,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:682,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:682,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:683,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:684,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:684,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:685,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:685,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:686,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:686,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:687,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:688,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:689,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:689,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:690,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:691,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:692,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:693,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:695,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:696,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:696,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:697,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:698,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:698,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:699,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:699,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:700,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:700,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:701,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:702,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:703,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:703,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:704,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:704,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:705,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:706,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:707,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:709,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:710,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:710,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:711,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:711,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:712,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:713,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:713,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:714,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:714,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:715,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:716,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:717,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - t
    - kappa
    - theta
    - delta
    - y
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 719
    functionName: QuantLib::LPP3HestonExpansion::z3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 1
    functionsReached:
    - pow
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::z3(Real t, Real kappa, Real theta,\n                                 Real
      delta, Real y, Real rho) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:723,1
    - Dst: QuantLib::LPP3HestonExpansion::z0
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:727,1
    - Dst: QuantLib::LPP3HestonExpansion::z1
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:728,1
    - Dst: QuantLib::LPP3HestonExpansion::z2
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:729,1
    - Dst: QuantLib::LPP3HestonExpansion::z3
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 6
    argNames:
    - kappa
    - theta
    - sigma
    - v0
    - rho
    - term
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 731
    functionName: QuantLib::LPP3HestonExpansion::LPP3HestonExpansion
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LPP3HestonExpansion::z3
    - QuantLib::LPP3HestonExpansion::z1
    - QuantLib::LPP3HestonExpansion::z0
    - exp
    - QuantLib::LPP3HestonExpansion::z2
    linkageType: ''
    returnType: void
    signature: "void LPP3HestonExpansion::LPP3HestonExpansion(Real kappa, Real theta,
      Real sigma,\n                                             Real v0, Real rho,
      Real term)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:735,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - forward
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 733
    functionDepth: 0
    functionLinenumber: 733
    functionLinenumberEnd: 738
    functionName: QuantLib::LPP3HestonExpansion::impliedVolatility
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/hestonexpansionengine.cpp
    functionUses: 0
    functionsReached:
    - log
    - std::max
    linkageType: ''
    returnType: Real
    signature: "Real LPP3HestonExpansion::impliedVolatility(const Real strike,\n                                                const
      Real forward) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:49,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FdmQuantoHelper>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:66,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FdmQuantoHelper>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - quantoHelper
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                                 Size tGrid,\n
      \                                                Size xGrid,\n                                                 Size
      vGrid,\n                                                 Size dampingSteps,\n
      \                                                const FdmSchemeDesc& schemeDesc,\n
      \                                                ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' model'
    - dividends
    - quantoHelper
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 101
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                                 Size tGrid,\n
      \                                                Size xGrid,\n                                                 Size
      vGrid,\n                                                 Size dampingSteps,\n
      \                                                const FdmSchemeDesc& schemeDesc,\n
      \                                                ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:107,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:107,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:111,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:113,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:116,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:120,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:123,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:124,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:127,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:128,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:128,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:129,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:131,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:131,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:132,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:137,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:139,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:142,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:143,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:143,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:144,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:146,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:146,1
    - Dst: FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:140,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:150,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:154,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:158,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:161,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 173
    functionName: QuantLib::FdHestonVanillaEngine::getSolverDesc
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - ext::shared_ptr::riskFreeRate
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::s0
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    - ext::shared_ptr::time
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - Null<Real>
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - process
    - ext::shared_ptr::volaEstimate
    linkageType: ''
    returnType: FdmSolverDesc
    signature: FdmSolverDesc FdHestonVanillaEngine::getSolverDesc(Real) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: first::exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:179,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:179,1
    - Dst: first::exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:180,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:180,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:182,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:185,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:188,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:189,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:189,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:197,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:200,1
    - Dst: QuantLib::FdHestonVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:201,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:202,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:199,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:205,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:206,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:208,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:210,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:211,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:213,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:213,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:216,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:219,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:220,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:221,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:224,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:225,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:226,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 229
    functionName: QuantLib::FdHestonVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - ext::shared_ptr::s0
    - exercise::type
    - QuantLib::FdHestonVanillaEngine::getSolverDesc
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<PlainVanillaPayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::v0
    - first::exercise::dates
    - size
    - ext::shared_ptr::strike
    - Handle<FdmQuantoHelper>
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - first::exercise::type
    - resize
    - process
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:232,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 236
    functionName: QuantLib::FdHestonVanillaEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FdHestonVanillaEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: QuantLib::FdHestonVanillaEngine::enableMultipleStrikesCaching
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::enableMultipleStrikesCaching(\n                                        const
      std::vector<Real>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:246,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:247,1
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - hestonModel
    argTypes:
    - ext::shared_ptr<HestonModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::MakeFdHestonVanillaEngine::MakeFdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - std::move
    linkageType: ''
    returnType: void
    signature: void MakeFdHestonVanillaEngine::MakeFdHestonVanillaEngine(ext::shared_ptr<HestonModel>
      hestonModel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: "& MakeFdHestonVanillaEngine::withQuantoHelper(\n        const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine & MakeFdHestonVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeFdHestonVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeFdHestonVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - vGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeFdHestonVanillaEngine::withVGrid(Size vGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withVGrid(Size
      vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeFdHestonVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 284
    functionName: "&\n    MakeFdHestonVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' leverageFct'
    argTypes:
    - ext::shared_ptr<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionName: "&\n    MakeFdHestonVanillaEngine::withLeverageFunction(\n        ext::shared_ptr<LocalVolTermStructure>&
      leverageFct)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withLeverageFunction(\n
      \       ext::shared_ptr<LocalVolTermStructure>& leverageFct)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 299
    functionName: "&\n    MakeFdHestonVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdHestonVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 310
    functionName: "MakeFdHestonVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdHestonVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdHestonVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:49,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FdmQuantoHelper>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:66,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FdmQuantoHelper>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                Size tGrid,\n                                                 Size
      xGrid,\n                                                 Size vGrid,\n                                                 Size
      dampingSteps,\n                                                 const FdmSchemeDesc&
      schemeDesc,\n                                                 ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' model'
    - quantoHelper
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                                 Size tGrid,\n
      \                                                Size xGrid,\n                                                 Size
      vGrid,\n                                                 Size dampingSteps,\n
      \                                                const FdmSchemeDesc& schemeDesc,\n
      \                                                ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:98,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:100,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' model'
    - dividends
    - quantoHelper
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    - leverageFct
    - mixingFactor
    argTypes:
    - ext::shared_ptr<HestonModel>
    - DividendSchedule
    - ext::shared_ptr<FdmQuantoHelper>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    - ext::shared_ptr<LocalVolTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 101
    functionName: QuantLib::FdHestonVanillaEngine::FdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::FdHestonVanillaEngine(const ext::shared_ptr<HestonModel>&
      model,\n                                                 DividendSchedule dividends,\n
      \                                                ext::shared_ptr<FdmQuantoHelper>
      quantoHelper,\n                                                 Size tGrid,\n
      \                                                Size xGrid,\n                                                 Size
      vGrid,\n                                                 Size dampingSteps,\n
      \                                                const FdmSchemeDesc& schemeDesc,\n
      \                                                ext::shared_ptr<LocalVolTermStructure>
      leverageFct,\n                                                 const Real mixingFactor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:107,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:107,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:111,1
    - Dst: ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:113,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:116,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:120,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:123,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:124,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:127,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:128,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:128,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:129,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:131,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:131,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:132,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:132,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:137,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:139,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:142,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:143,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:143,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:144,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:146,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:146,1
    - Dst: FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:140,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:150,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:154,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:158,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:161,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 173
    functionName: QuantLib::FdHestonVanillaEngine::getSolverDesc
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::dividendYield
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - ext::shared_ptr::riskFreeRate
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::s0
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    - ext::shared_ptr::time
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - Null<Real>
    - std::max
    - ext::make_shared<FdmHestonLocalVolatilityVarianceMesher>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - process
    - ext::shared_ptr::volaEstimate
    linkageType: ''
    returnType: FdmSolverDesc
    signature: FdmSolverDesc FdHestonVanillaEngine::getSolverDesc(Real) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: first::exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:179,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:179,1
    - Dst: first::exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:180,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:180,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:182,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:185,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:188,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:189,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:189,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:197,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:200,1
    - Dst: QuantLib::FdHestonVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:201,1
    - Dst: Handle<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:202,1
    - Dst: FdmHestonSolver::FdmHestonSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:199,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:205,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:206,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:208,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:210,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:211,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:213,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:213,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:216,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:219,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:220,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:221,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:224,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:225,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:226,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 229
    functionName: QuantLib::FdHestonVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - ext::shared_ptr::s0
    - exercise::type
    - QuantLib::FdHestonVanillaEngine::getSolverDesc
    - FdmHestonSolver::FdmHestonSolver
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<PlainVanillaPayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::v0
    - first::exercise::dates
    - size
    - ext::shared_ptr::strike
    - Handle<FdmQuantoHelper>
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - first::exercise::type
    - resize
    - process
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:232,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 236
    functionName: QuantLib::FdHestonVanillaEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FdHestonVanillaEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: QuantLib::FdHestonVanillaEngine::enableMultipleStrikesCaching
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: "void FdHestonVanillaEngine::enableMultipleStrikesCaching(\n                                        const
      std::vector<Real>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:246,1
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:247,1
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - hestonModel
    argTypes:
    - ext::shared_ptr<HestonModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::MakeFdHestonVanillaEngine::MakeFdHestonVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - std::move
    linkageType: ''
    returnType: void
    signature: void MakeFdHestonVanillaEngine::MakeFdHestonVanillaEngine(ext::shared_ptr<HestonModel>
      hestonModel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' quantoHelper'
    argTypes:
    - ext::shared_ptr<FdmQuantoHelper>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: "& MakeFdHestonVanillaEngine::withQuantoHelper(\n        const ext::shared_ptr<FdmQuantoHelper>&
      quantoHelper)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine & MakeFdHestonVanillaEngine::withQuantoHelper(\n
      \       const ext::shared_ptr<FdmQuantoHelper>& quantoHelper)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: "&\n    MakeFdHestonVanillaEngine::withTGrid(Size tGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withTGrid(Size
      tGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - xGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: "&\n    MakeFdHestonVanillaEngine::withXGrid(Size xGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withXGrid(Size
      xGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - vGrid
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeFdHestonVanillaEngine::withVGrid(Size vGrid)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withVGrid(Size
      vGrid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dampingSteps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: "&\n    MakeFdHestonVanillaEngine::withDampingSteps(Size dampingSteps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withDampingSteps(Size
      dampingSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdmSchemeDesc>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' schemeDesc'
    argTypes:
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 284
    functionName: "&\n    MakeFdHestonVanillaEngine::withFdmSchemeDesc(\n        const
      FdmSchemeDesc& schemeDesc)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmSchemeDesc>
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withFdmSchemeDesc(\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' leverageFct'
    argTypes:
    - ext::shared_ptr<LocalVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionName: "&\n    MakeFdHestonVanillaEngine::withLeverageFunction(\n        ext::shared_ptr<LocalVolTermStructure>&
      leverageFct)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withLeverageFunction(\n
      \       ext::shared_ptr<LocalVolTermStructure>& leverageFct)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendVector
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividendAmounts'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 299
    functionName: "&\n    MakeFdHestonVanillaEngine::withCashDividends(\n            const
      std::vector<Date>& dividendDates,\n            const std::vector<Real>& dividendAmounts)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - DividendVector
    linkageType: ''
    returnType: MakeFdHestonVanillaEngine
    signature: "MakeFdHestonVanillaEngine &\n    MakeFdHestonVanillaEngine::withCashDividends(\n
      \           const std::vector<Date>& dividendDates,\n            const std::vector<Real>&
      dividendAmounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<FdHestonVanillaEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 310
    functionName: "MakeFdHestonVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdHestonVanillaEngine>
    linkageType: ''
    returnType: void
    signature: "void MakeFdHestonVanillaEngine::operator\n    ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:38,1
    - Dst: calendar
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - varianceOffset
    - ' volTS'
    argTypes:
    - Real
    - Handle<BlackVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: void
    signature: "void ShiftedBlackVolTermStructure(\n                Real varianceOffset,\n
      \               const Handle<BlackVolTermStructure> & volTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::minStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ShiftedBlackVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real blackVarianceImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:38,1
    - Dst: calendar
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - varianceOffset
    - ' volTS'
    argTypes:
    - Real
    - Handle<BlackVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: void
    signature: "void ShiftedBlackVolTermStructure(\n                Real varianceOffset,\n
      \               const Handle<BlackVolTermStructure> & volTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::minStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ShiftedBlackVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 1
    functionsReached:
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real blackVarianceImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - equityShortRateCorrelation
    - process
    - ' model'
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<HullWhite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::AnalyticBSMHullWhiteEngine::AnalyticBSMHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticBSMHullWhiteEngine::AnalyticBSMHullWhiteEngine(\n        Real
      equityShortRateCorrelation,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        const ext::shared_ptr<HullWhite>& model)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:78,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:78,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:82,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:87,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:88,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:90,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:91,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:93,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:100,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:113,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:115,1
    - Dst: ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:114,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:118,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:119,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:120,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:118,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:124,1
    - Dst: VanillaOption
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:126,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:127,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:128,1
    - Dst: dynamic_cast<const OneAssetOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:130,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 132
    functionName: QuantLib::AnalyticBSMHullWhiteEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    - ext::shared_ptr::getResults
    - VanillaOption
    - ext::shared_ptr::lastDate
    - stateVariable
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - ext::shared_ptr::getArguments
    - ext::shared_ptr<BlackVolTermStructure>
    - x0
    - ext::shared_ptr::strike
    - dynamic_cast<const OneAssetOption::results*>
    - std::exp
    - QL_REQUIRE
    - blackVolatility
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - ext::shared_ptr::calculate
    - params
    linkageType: ''
    returnType: void
    signature: void AnalyticBSMHullWhiteEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:38,1
    - Dst: calendar
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - varianceOffset
    - ' volTS'
    argTypes:
    - Real
    - Handle<BlackVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: void
    signature: "void ShiftedBlackVolTermStructure(\n                Real varianceOffset,\n
      \               const Handle<BlackVolTermStructure> & volTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::minStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ShiftedBlackVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 2
    functionsReached:
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real blackVarianceImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:38,1
    - Dst: calendar
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - varianceOffset
    - ' volTS'
    argTypes:
    - Real
    - Handle<BlackVolTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: QuantLib::ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - dayCounter
    - referenceDate
    linkageType: ''
    returnType: void
    signature: "void ShiftedBlackVolTermStructure(\n                Real varianceOffset,\n
      \               const Handle<BlackVolTermStructure> & volTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::minStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::ShiftedBlackVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxStrike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::maxDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::ShiftedBlackVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 3
    functionsReached:
    - blackVariance
    linkageType: ''
    returnType: Real
    signature: Real blackVarianceImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::ShiftedBlackVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ShiftedBlackVolTermStructure::blackVarianceImpl
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - equityShortRateCorrelation
    - process
    - ' model'
    argTypes:
    - Real
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<HullWhite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: QuantLib::AnalyticBSMHullWhiteEngine::AnalyticBSMHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticBSMHullWhiteEngine::AnalyticBSMHullWhiteEngine(\n        Real
      equityShortRateCorrelation,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        const ext::shared_ptr<HullWhite>& model)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:78,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:78,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:82,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:87,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:88,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:90,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:91,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:93,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:94,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:99,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:100,1
    - Dst: ext::shared_ptr<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:113,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:115,1
    - Dst: ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:114,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:118,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:119,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:120,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:118,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:124,1
    - Dst: VanillaOption
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:126,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:127,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:128,1
    - Dst: dynamic_cast<const OneAssetOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:130,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 132
    functionName: QuantLib::AnalyticBSMHullWhiteEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticbsmhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - ShiftedBlackVolTermStructure::ShiftedBlackVolTermStructure
    - ext::shared_ptr::getResults
    - VanillaOption
    - ext::shared_ptr::lastDate
    - stateVariable
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - ext::shared_ptr::getArguments
    - ext::shared_ptr<BlackVolTermStructure>
    - x0
    - ext::shared_ptr::strike
    - dynamic_cast<const OneAssetOption::results*>
    - std::exp
    - QL_REQUIRE
    - blackVolatility
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - ext::shared_ptr::calculate
    - params
    linkageType: ''
    returnType: void
    signature: void AnalyticBSMHullWhiteEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - exerciseTime
    - payoff
    - process
    argTypes:
    - Time
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::HestonHullWhitePathPricer::HestonHullWhitePathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonHullWhitePathPricer::HestonHullWhitePathPricer(\n        Time
      exerciseTime,\n        ext::shared_ptr<Payoff> payoff,\n        ext::shared_ptr<HybridHestonHullWhiteProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:36,1
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:36,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:38,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:39,1
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:40,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: HestonHullWhitePathPricer::operator()(const MultiPath& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - numeraire
    - Array::size
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real HestonHullWhitePathPricer::operator()(const MultiPath& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - exerciseTime
    - payoff
    - process
    argTypes:
    - Time
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<HybridHestonHullWhiteProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::HestonHullWhitePathPricer::HestonHullWhitePathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HestonHullWhitePathPricer::HestonHullWhitePathPricer(\n        Time
      exerciseTime,\n        ext::shared_ptr<Payoff> payoff,\n        ext::shared_ptr<HybridHestonHullWhiteProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:36,1
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:36,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:38,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:39,1
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:40,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: HestonHullWhitePathPricer::operator()(const MultiPath& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mchestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - numeraire
    - Array::size
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real HestonHullWhitePathPricer::operator()(const MultiPath& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticEuropeanEngine::AnalyticEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanEngine::AnalyticEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - discountCurve
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::AnalyticEuropeanEngine::AnalyticEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanEngine::AnalyticEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:48,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:51,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:56,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:60,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:64,1
    - Dst: ext::shared_ptr::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:65,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:67,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:69,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:75,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:76,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:77,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:78,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:79,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:81,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:84,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:85,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:86,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:88,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:89,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:90,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:92,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:92,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:93,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:94,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:96,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:100,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:101,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:104,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:105,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:107,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:112,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:113,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 115
    functionName: QuantLib::AnalyticEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - BlackCalculator::vega
    - Real
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::shared_ptr::discount
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - currentLink
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: void AnalyticEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticEuropeanEngine::AnalyticEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanEngine::AnalyticEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - discountCurve
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::AnalyticEuropeanEngine::AnalyticEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanEngine::AnalyticEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:47,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:48,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:51,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:56,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:60,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:64,1
    - Dst: ext::shared_ptr::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:65,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:67,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:69,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:75,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:76,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:77,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:78,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:79,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:81,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:84,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:85,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:86,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:88,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:88,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:89,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:90,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:92,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:92,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:93,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:94,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:96,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:100,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:101,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:104,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:105,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:107,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:112,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:113,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 115
    functionName: QuantLib::AnalyticEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - BlackCalculator::vega
    - Real
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::shared_ptr::discount
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - Null<Real>
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - currentLink
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: void AnalyticEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticDigitalAmericanEngine::AnalyticDigitalAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDigitalAmericanEngine::AnalyticDigitalAmericanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:41,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:41,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:47,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:50,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:53,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:53,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:54,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:56,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:58,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:58,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:60,1
    - Dst: AmericanPayoffAtExpiry::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:64,1
    - Dst: AmericanPayoffAtHit::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:68,1
    - Dst: AmericanPayoffAtHit::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:69,1
    - Dst: AmericanPayoffAtHit::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:73,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:75,1
    - Dst: AmericanPayoffAtHit::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: QuantLib::AnalyticDigitalAmericanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - dividendYield
    - AmericanPayoffAtHit::gamma
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - riskFreeRate
    - AmericanPayoffAtHit::value
    - ext::shared_ptr::dates
    - AmericanPayoffAtHit::rho
    - ext::shared_ptr::payoffAtExpiry
    - stateVariable
    - AmericanPayoffAtHit::delta
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - AmericanPayoffAtExpiry::value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticDigitalAmericanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticDigitalAmericanEngine::AnalyticDigitalAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDigitalAmericanEngine::AnalyticDigitalAmericanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:41,1
    - Dst: ext::shared_ptr::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:41,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:47,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:50,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:53,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:53,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:54,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:56,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:58,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:58,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:60,1
    - Dst: AmericanPayoffAtExpiry::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:64,1
    - Dst: AmericanPayoffAtHit::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:68,1
    - Dst: AmericanPayoffAtHit::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:69,1
    - Dst: AmericanPayoffAtHit::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:73,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:75,1
    - Dst: AmericanPayoffAtHit::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 78
    functionName: QuantLib::AnalyticDigitalAmericanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdigitalamericanengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - dividendYield
    - AmericanPayoffAtHit::gamma
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - riskFreeRate
    - AmericanPayoffAtHit::value
    - ext::shared_ptr::dates
    - AmericanPayoffAtHit::rho
    - ext::shared_ptr::payoffAtExpiry
    - stateVariable
    - AmericanPayoffAtHit::delta
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - AmericanPayoffAtExpiry::value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticDigitalAmericanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - timeSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::BinomialVanillaEngine::BinomialVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialVanillaEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                              Size timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:80,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:83,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:91,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:106,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:108,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:112,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:111,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:118,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:117,1
    - Dst: BlackScholesLattice<T>::BlackScholesLattice<T>
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:121,1
    - Dst: DiscretizedVanillaOption::initialize
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:125,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:133,1
    - Dst: DiscretizedVanillaOption::values
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:134,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:135,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:135,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:139,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:140,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:141,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:150,1
    - Dst: DiscretizedVanillaOption::values
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:151,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:152,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:155,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:156,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:161,1
    - Dst: DiscretizedVanillaOption::presentValue
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:162,1
    - Dst: blackScholesTheta
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 172
    functionName: QuantLib::BinomialVanillaEngine<T>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp
    functionUses: 0
    functionsReached:
    - DiscretizedVanillaOption::values
    - DiscretizedVanillaOption::presentValue
    - T::T
    - DiscretizedVanillaOption::initialize
    - stateVariable
    - dividendYield
    - QL_ENSURE
    - exercise::lastDate
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - DiscretizedVanillaOption::rollback
    - ext::shared_ptr::underlying
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - BlackScholesLattice<T>::BlackScholesLattice<T>
    - blackScholesTheta
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - Array::size
    linkageType: ''
    returnType: void
    signature: void BinomialVanillaEngine<T>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - timeSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::BinomialVanillaEngine::BinomialVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialVanillaEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                              Size timeSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:80,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:83,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:91,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:106,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:108,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:112,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:111,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:118,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:117,1
    - Dst: BlackScholesLattice<T>::BlackScholesLattice<T>
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:121,1
    - Dst: DiscretizedVanillaOption::initialize
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:125,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:133,1
    - Dst: DiscretizedVanillaOption::values
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:134,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:135,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:135,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:139,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:140,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:141,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:150,1
    - Dst: DiscretizedVanillaOption::values
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:151,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:152,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:155,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:156,1
    - Dst: DiscretizedVanillaOption::rollback
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:161,1
    - Dst: DiscretizedVanillaOption::presentValue
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:162,1
    - Dst: blackScholesTheta
      Src: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 172
    functionName: QuantLib::BinomialVanillaEngine<T>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/binomialengine.hpp
    functionUses: 0
    functionsReached:
    - DiscretizedVanillaOption::values
    - DiscretizedVanillaOption::presentValue
    - T::T
    - DiscretizedVanillaOption::initialize
    - stateVariable
    - dividendYield
    - QL_ENSURE
    - exercise::lastDate
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - DiscretizedVanillaOption::rollback
    - ext::shared_ptr::underlying
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - BlackScholesLattice<T>::BlackScholesLattice<T>
    - blackScholesTheta
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - Array::size
    linkageType: ''
    returnType: void
    signature: void BinomialVanillaEngine<T>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<GJRGARCHModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionName: QuantLib::AnalyticGJRGARCHEngine::AnalyticGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticGJRGARCHEngine::AnalyticGJRGARCHEngine(\n                              const
      ext::shared_ptr<GJRGARCHModel>& model)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:50,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:54,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:55,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:57,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:59,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:60,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:61,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:61,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:63,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:63,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:64,1
    - Dst: omega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:65,1
    - Dst: alpha
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:66,1
    - Dst: beta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:67,1
    - Dst: gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:68,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:69,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:70,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:71,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:92,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:93,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:94,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:96,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:97,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:98,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:100,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:101,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:101,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:102,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:102,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:104,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:106,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:107,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:109,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:110,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:110,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:112,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:112,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:113,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:115,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:117,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:118,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:119,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:140,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:141,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:142,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:173,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:173,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:174,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:193,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:194,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:195,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:198,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:199,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:231,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:237,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:237,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:247,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:248,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:257,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:259,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:261,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:261,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:262,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:262,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:264,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:266,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:267,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:267,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:268,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:272,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:281,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 119
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 283
    functionName: QuantLib::AnalyticGJRGARCHEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp
    functionUses: 0
    functionsReached:
    - daysPerYear
    - gamma
    - v0
    - CumulativeNormalDistribution
    - exercise::type
    - dividendYield
    - s0
    - beta
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - exercise::lastDate
    - exp
    - ext::shared_ptr::strike
    - Size
    - std::exp
    - ext::shared_ptr::optionType
    - time
    - QL_FAIL
    - Real::Real
    - omega
    - std::lround
    - QL_REQUIRE
    - std::log
    - alpha
    - process
    - riskFreeRate
    - lambda
    - pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticGJRGARCHEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<GJRGARCHModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionName: QuantLib::AnalyticGJRGARCHEngine::AnalyticGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticGJRGARCHEngine::AnalyticGJRGARCHEngine(\n                              const
      ext::shared_ptr<GJRGARCHModel>& model)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:44,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:50,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:54,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:55,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:57,1
    - Dst: s0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:59,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:60,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:61,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:61,1
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:62,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:63,1
    - Dst: daysPerYear
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:63,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:64,1
    - Dst: omega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:65,1
    - Dst: alpha
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:66,1
    - Dst: beta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:67,1
    - Dst: gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:68,1
    - Dst: lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:69,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:70,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:71,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:92,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:93,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:94,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:96,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:97,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:98,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:99,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:100,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:101,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:101,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:102,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:102,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:104,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:106,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:107,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:109,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:110,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:110,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:112,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:112,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:113,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:115,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:117,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:118,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:119,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:140,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:141,1
    - Dst: Real::Real
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:142,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:173,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:173,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:174,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:174,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:193,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:194,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:195,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:198,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:199,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:231,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:237,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:237,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:247,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:248,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:257,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:259,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:261,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:261,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:262,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:262,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:264,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:265,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:266,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:267,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:267,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:268,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:272,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp:281,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 119
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 283
    functionName: QuantLib::AnalyticGJRGARCHEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticgjrgarchengine.cpp
    functionUses: 0
    functionsReached:
    - daysPerYear
    - gamma
    - v0
    - CumulativeNormalDistribution
    - exercise::type
    - dividendYield
    - s0
    - beta
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::pow
    - exercise::lastDate
    - exp
    - ext::shared_ptr::strike
    - Size
    - std::exp
    - ext::shared_ptr::optionType
    - time
    - QL_FAIL
    - Real::Real
    - omega
    - std::lround
    - QL_REQUIRE
    - std::log
    - alpha
    - process
    - riskFreeRate
    - lambda
    - pow
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticGJRGARCHEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::FdBatesVanillaEngine::FdBatesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdBatesVanillaEngine::FdBatesVanillaEngine(\n            const
      ext::shared_ptr<BatesModel>& model,\n            Size tGrid, Size xGrid, \n
      \           Size vGrid, Size dampingSteps,\n            const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<BatesModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionName: QuantLib::FdBatesVanillaEngine::FdBatesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBatesVanillaEngine::FdBatesVanillaEngine(\n            const
      ext::shared_ptr<BatesModel>& model,\n            DividendSchedule dividends,\n
      \           Size tGrid, Size xGrid, \n            Size vGrid, Size dampingSteps,\n
      \           const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:59,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:64,1
    - Dst: FdHestonVanillaEngine::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:65,1
    - Dst: FdHestonVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:67,1
    - Dst: ext::dynamic_pointer_cast<BatesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:70,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:70,1
    - Dst: Handle<BatesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:73,1
    - Dst: FdmBatesSolver::FdmBatesSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:73,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:76,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:77,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:79,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:80,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:81,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 83
    functionName: QuantLib::FdBatesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - FdHestonVanillaEngine::getSolverDesc
    - ext::shared_ptr::gammaAt
    - currentLink
    - dynamic_cast<VanillaOption::arguments*>
    - FdmBatesSolver::FdmBatesSolver
    - process
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdHestonVanillaEngine::getArguments
    - ext::shared_ptr::v0
    - Handle<BatesProcess>
    - ext::shared_ptr::thetaAt
    - ext::dynamic_pointer_cast<BatesProcess>
    - ext::shared_ptr::s0
    linkageType: ''
    returnType: void
    signature: void FdBatesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: QuantLib::FdBatesVanillaEngine::FdBatesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdBatesVanillaEngine::FdBatesVanillaEngine(\n            const
      ext::shared_ptr<BatesModel>& model,\n            Size tGrid, Size xGrid, \n
      \           Size vGrid, Size dampingSteps,\n            const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - dividends
    - tGrid
    - xGrid
    - vGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<BatesModel>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionName: QuantLib::FdBatesVanillaEngine::FdBatesVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBatesVanillaEngine::FdBatesVanillaEngine(\n            const
      ext::shared_ptr<BatesModel>& model,\n            DividendSchedule dividends,\n
      \           Size tGrid, Size xGrid, \n            Size vGrid, Size dampingSteps,\n
      \           const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:59,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:64,1
    - Dst: FdHestonVanillaEngine::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:65,1
    - Dst: FdHestonVanillaEngine::getSolverDesc
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:67,1
    - Dst: ext::dynamic_pointer_cast<BatesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:70,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:70,1
    - Dst: Handle<BatesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:73,1
    - Dst: FdmBatesSolver::FdmBatesSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:73,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:76,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:77,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:79,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:80,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:81,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 83
    functionName: QuantLib::FdBatesVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdbatesvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - FdHestonVanillaEngine::getSolverDesc
    - ext::shared_ptr::gammaAt
    - currentLink
    - dynamic_cast<VanillaOption::arguments*>
    - FdmBatesSolver::FdmBatesSolver
    - process
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdHestonVanillaEngine::getArguments
    - ext::shared_ptr::v0
    - Handle<BatesProcess>
    - ext::shared_ptr::thetaAt
    - ext::dynamic_pointer_cast<BatesProcess>
    - ext::shared_ptr::s0
    linkageType: ''
    returnType: void
    signature: void FdBatesVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 129
    functionName: QuantLib::MCEuropeanEngine<RNG,S>::MCEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanEngine<RNG,S>::MCEuropeanEngine(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             Size
      timeSteps,\n             Size timeStepsPerYear,\n             bool brownianBridge,\n
      \            bool antitheticVariate,\n             Size requiredSamples,\n             Real
      requiredTolerance,\n             Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:140,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:145,1
    - Dst: "ext::shared_ptr<\n                       typename MCEuropeanEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:147,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:150,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:151,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:152,1
    - Dst: QuantLib::MCEuropeanEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:152,1
    - Dst: EuropeanPathPricer::EuropeanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 153
    functionName: QuantLib::MCEuropeanEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::strike
    - "ext::shared_ptr<\n                       typename MCEuropeanEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::optionType
    - EuropeanPathPricer::EuropeanPathPricer
    - QuantLib::MCEuropeanEngine<RNG,S>::timeGrid
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEuropeanEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEuropeanEngine<RNG,S>::path_pricer_type>
      MCEuropeanEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::MakeMCEuropeanEngine<RNG, S>::MakeMCEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanEngine<RNG, S>::MakeMCEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 202
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:233,1
    - Dst: MCEuropeanEngine<RNG,S>::MCEuropeanEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 242
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanEngine<RNG,S>::MCEuropeanEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>::operator
    signature: "MakeMCEuropeanEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionName: QuantLib::EuropeanPathPricer::EuropeanPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanPathPricer::EuropeanPathPricer(Option::Type type,\n                                                  Real
      strike,\n                                                  DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:255,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:255,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:256,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionName: EuropeanPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - back
    - payoff_
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EuropeanPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 129
    functionName: QuantLib::MCEuropeanEngine<RNG,S>::MCEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanEngine<RNG,S>::MCEuropeanEngine(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             Size
      timeSteps,\n             Size timeStepsPerYear,\n             bool brownianBridge,\n
      \            bool antitheticVariate,\n             Size requiredSamples,\n             Real
      requiredTolerance,\n             Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:140,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:145,1
    - Dst: "ext::shared_ptr<\n                       typename MCEuropeanEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:147,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:150,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:151,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:152,1
    - Dst: QuantLib::MCEuropeanEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:152,1
    - Dst: EuropeanPathPricer::EuropeanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 153
    functionName: QuantLib::MCEuropeanEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::strike
    - "ext::shared_ptr<\n                       typename MCEuropeanEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::optionType
    - EuropeanPathPricer::EuropeanPathPricer
    - QuantLib::MCEuropeanEngine<RNG,S>::timeGrid
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEuropeanEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEuropeanEngine<RNG,S>::path_pricer_type>
      MCEuropeanEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:159,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::MakeMCEuropeanEngine<RNG, S>::MakeMCEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanEngine<RNG, S>::MakeMCEuropeanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:188,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 202
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCEuropeanEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>
    signature: "MakeMCEuropeanEngine<RNG,S> &\n    MakeMCEuropeanEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:231,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:233,1
    - Dst: MCEuropeanEngine<RNG,S>::MCEuropeanEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 242
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanEngine<RNG,S>::MCEuropeanEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanEngine<RNG,S>::operator
    signature: "MakeMCEuropeanEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionName: QuantLib::EuropeanPathPricer::EuropeanPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanPathPricer::EuropeanPathPricer(Option::Type type,\n                                                  Real
      strike,\n                                                  DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:255,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:255,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:256,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionName: EuropeanPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanengine.hpp
    functionUses: 0
    functionsReached:
    - back
    - payoff_
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real EuropeanPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - dividends
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticDividendEuropeanEngine::AnalyticDividendEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDividendEuropeanEngine::AnalyticDividendEuropeanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        DividendSchedule
      dividends)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:36,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:36,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:41,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:46,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:47,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:50,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:54,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:59,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:64,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:66,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:66,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:71,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:72,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:77,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:78,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:81,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:84,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:86,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:90,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:91,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:94,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:96,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:97,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:98,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:99,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:100,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:102,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:104,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:105,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:108,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:108,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:110,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:111,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:113,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:116,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:117,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticDividendEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::vega
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - date
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::rho
    - size
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - Null<Real>
    - time
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - BlackCalculator::value
    - BlackCalculator::theta
    - amount
    linkageType: ''
    returnType: void
    signature: void AnalyticDividendEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:30,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - dividends
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticDividendEuropeanEngine::AnalyticDividendEuropeanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDividendEuropeanEngine::AnalyticDividendEuropeanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        DividendSchedule
      dividends)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:36,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:36,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:41,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:46,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:47,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:50,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:54,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:59,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:64,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:66,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:66,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:70,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:71,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:72,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:77,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:78,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:79,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:81,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:84,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:86,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:90,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:91,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:94,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:96,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:97,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:98,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:99,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:100,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:102,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:103,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:104,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:105,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:108,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:108,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:110,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:111,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:113,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:116,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp:117,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticDividendEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticdividendeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::vega
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - date
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::rho
    - size
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - Null<Real>
    - time
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - BlackCalculator::value
    - BlackCalculator::theta
    - amount
    linkageType: ''
    returnType: void
    signature: void AnalyticDividendEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::BaroneAdesiWhaleyApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BaroneAdesiWhaleyApproximationEngine::BaroneAdesiWhaleyApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:46,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:48,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:53,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:55,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:55,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:56,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:57,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:57,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:61,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:63,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:63,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:64,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:65,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:75,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:76,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:78,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:79,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:83,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:86,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:87,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:88,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:89,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:92,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:92,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:95,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:96,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:97,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:99,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:100,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:101,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:108,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:109,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:110,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:111,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:113,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:114,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:114,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:117,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:118,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:119,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:121,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:122,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:123,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 5
    argNames:
    - ' payoff'
    - riskFreeDiscount
    - dividendDiscount
    - variance
    - tolerance
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - DiscountFactor
    - DiscountFactor
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 133
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 2
    functionsReached:
    - close
    - cumNormalDist
    - std::exp
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - Real
    - QL_FAIL
    - blackFormula
    - std::fabs
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real BaroneAdesiWhaleyApproximationEngine::criticalPrice(\n        const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n        DiscountFactor riskFreeDiscount,\n
      \       DiscountFactor dividendDiscount,\n        Real variance, Real tolerance)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:137,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:137,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:143,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:143,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:148,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:150,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:151,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:151,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:152,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:153,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:154,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:155,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:157,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:162,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:164,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:165,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:166,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:167,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:168,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:170,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:171,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:172,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:174,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:174,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:175,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:176,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:178,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:178,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:179,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:180,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:182,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:182,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:183,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:184,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:185,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:186,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:188,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:189,1
    - Dst: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:194,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:197,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:197,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:198,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:199,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:200,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:201,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:201,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:205,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:207,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:208,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:210,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:211,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:217,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:219,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:222,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:228,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 231
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 0
    functionsReached:
    - close
    - cumNormalDist
    - BlackCalculator::vega
    - Real
    - QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    - ext::shared_ptr::lastDate
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - std::pow
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - std::log
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - ext::shared_ptr::payoffAtExpiry
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: void BaroneAdesiWhaleyApproximationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::BaroneAdesiWhaleyApproximationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BaroneAdesiWhaleyApproximationEngine::BaroneAdesiWhaleyApproximationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:46,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:47,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:48,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:53,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:55,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:55,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:56,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:57,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:57,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:58,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:61,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:62,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:63,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:63,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:64,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:65,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:65,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:68,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:75,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:76,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:78,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:79,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:79,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:82,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:83,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:86,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:87,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:88,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:89,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:92,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:92,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:95,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:96,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:97,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:99,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:100,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:101,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:103,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:108,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:109,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:110,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:111,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:113,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:114,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:114,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:117,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:118,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:119,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:120,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:121,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:122,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:123,1
    - Dst: CumulativeNormalDistribution::derivative
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:124,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:125,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 5
    argNames:
    - ' payoff'
    - riskFreeDiscount
    - dividendDiscount
    - variance
    - tolerance
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - DiscountFactor
    - DiscountFactor
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 133
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 3
    functionsReached:
    - close
    - cumNormalDist
    - std::exp
    - strike
    - std::log
    - CumulativeNormalDistribution::derivative
    - Real
    - QL_FAIL
    - blackFormula
    - std::fabs
    - std::sqrt
    - optionType
    linkageType: ''
    returnType: Real
    signature: "Real BaroneAdesiWhaleyApproximationEngine::criticalPrice(\n        const
      ext::shared_ptr<StrikedTypePayoff>& payoff,\n        DiscountFactor riskFreeDiscount,\n
      \       DiscountFactor dividendDiscount,\n        Real variance, Real tolerance)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:137,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:137,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:141,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:143,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:143,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:148,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:150,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:151,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:151,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:152,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:153,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:154,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:155,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:157,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:162,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:164,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:165,1
    - Dst: BlackCalculator::deltaForward
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:166,1
    - Dst: BlackCalculator::elasticity
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:167,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:168,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:170,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:171,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:172,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:174,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:174,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:175,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:176,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:178,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:178,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:179,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:180,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:182,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:182,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:183,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:184,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:185,1
    - Dst: BlackCalculator::thetaPerDay
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:186,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:188,1
    - Dst: BlackCalculator::itmCashProbability
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:189,1
    - Dst: QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:194,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:197,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:197,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:198,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:199,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:200,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:201,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:201,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:205,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:207,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:208,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:210,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:211,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:217,1
    - Dst: cumNormalDist
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:219,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:221,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:222,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp:228,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 231
    functionName: QuantLib::BaroneAdesiWhaleyApproximationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/baroneadesiwhaleyengine.cpp
    functionUses: 0
    functionsReached:
    - close
    - cumNormalDist
    - BlackCalculator::vega
    - Real
    - QuantLib::BaroneAdesiWhaleyApproximationEngine::criticalPrice
    - ext::shared_ptr::lastDate
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - BlackCalculator::deltaForward
    - BlackCalculator::itmCashProbability
    - std::pow
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<AmericanExercise>
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - QL_FAIL
    - QL_REQUIRE
    - blackVolatility
    - BlackCalculator::elasticity
    - std::log
    - BlackCalculator::thetaPerDay
    - riskFreeRate
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - ext::shared_ptr::payoffAtExpiry
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: void BaroneAdesiWhaleyApproximationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - polynomialOrder
    - polynomialType
    - nCalibrationSamples
    - ' antitheticVariateCalibration'
    - seedCalibration
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - LsmBasisSystem::PolynomialType
    - Size
    - ext::optional<bool>
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 172
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n        Size
      timeSteps,\n        Size timeStepsPerYear,\n        bool antitheticVariate,\n
      \       bool controlVariate,\n        Size requiredSamples,\n        Real requiredTolerance,\n
      \       Size maxSamples,\n        BigNatural seed,\n        Size polynomialOrder,\n
      \       LsmBasisSystem::PolynomialType polynomialType,\n        Size nCalibrationSamples,\n
      \       const ext::optional<bool>& antitheticVariateCalibration,\n        BigNatural
      seedCalibration)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:176,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 183
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void MCAmericanEngine<RNG, S, RNG_Calibration>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:191,1
    - Dst: ext::dynamic_pointer_cast<EarlyExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:197,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:197,1
    - Dst: AmericanPathPricer::AmericanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:201,1
    - Dst: ext::make_shared<LongstaffSchwartzPathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:204,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:206,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 209
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::lsmPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - AmericanPathPricer::AmericanPathPricer
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
    - ext::dynamic_pointer_cast<EarlyExercise>
    - ext::shared_ptr::payoffAtExpiry
    - ext::make_shared<LongstaffSchwartzPathPricer<Path> >
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<LongstaffSchwartzPathPricer<Path> >
    signature: ext::shared_ptr<LongstaffSchwartzPathPricer<Path> > MCAmericanEngine<RNG,
      S, RNG_Calibration>::lsmPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:215,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:217,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:220,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:222,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:224,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:226,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:227,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:228,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:228,1
    - Dst: EuropeanPathPricer::EuropeanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 230
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
    - ext::shared_ptr::optionType
    - EuropeanPathPricer::EuropeanPathPricer
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: ext::shared_ptr<PathPricer<Path> > MCAmericanEngine<RNG, S, RNG_Calibration>::controlPathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:236,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:238,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:240,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 242
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<PricingEngine>
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:250,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:254,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:254,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:256,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:257,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:257,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:259,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:262,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 265
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Exercise>
    - dynamic_cast<VanillaOption::arguments*>
    - EuropeanExercise::EuropeanExercise
    - dynamic_cast<const VanillaOption::results*>
    - ext::shared_ptr::getResults
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
    - ext::shared_ptr::getArguments
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::arguments_::exercise::lastDate
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCAmericanEngine<RNG, S, RNG_Calibration>::controlVariateValue()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: QuantLib::MakeMCAmericanEngine<RNG, S, RNG_Calibration>::MakeMCAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCAmericanEngine<RNG, S, RNG_Calibration>::MakeMCAmericanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withPolynomialOrder(Size
      polynomialOrder)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withPolynomialOrder(Size polynomialOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialType
    argTypes:
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 286
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withBasisSystem(LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 293
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSteps(Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 301
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withStepsPerYear(\n
      \       Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withStepsPerYear(\n        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:306,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSamples(Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:316,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:316,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 323
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withAbsoluteTolerance(\n
      \       Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withAbsoluteTolerance(\n        Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 331
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withMaxSamples(\n
      \       Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withMaxSamples(\n        Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withCalibrationSamples(\n
      \       Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withCalibrationSamples(\n        Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 346
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSeed(BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 354
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withAntitheticVariate(\n
      \       bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withAntitheticVariate(\n        bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 361
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withControlVariate(bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionName: "&MakeMCAmericanEngine<\n        RNG, S, RNG_Calibration>::withAntitheticVariateCalibration(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &MakeMCAmericanEngine<\n
      \       RNG, S, RNG_Calibration>::withAntitheticVariateCalibration(bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSeedCalibration(\n
      \       BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSeedCalibration(\n        BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:385,1
    - Dst: MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine<RNG, S, RNG_Calibration>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 399
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine<RNG, S, RNG_Calibration>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCAmericanEngine<RNG, S, RNG_Calibration>::\n    operator"
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 14
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - polynomialOrder
    - polynomialType
    - nCalibrationSamples
    - ' antitheticVariateCalibration'
    - seedCalibration
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - LsmBasisSystem::PolynomialType
    - Size
    - ext::optional<bool>
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 172
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine(\n
      \       const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n        Size
      timeSteps,\n        Size timeStepsPerYear,\n        bool antitheticVariate,\n
      \       bool controlVariate,\n        Size requiredSamples,\n        Real requiredTolerance,\n
      \       Size maxSamples,\n        BigNatural seed,\n        Size polynomialOrder,\n
      \       LsmBasisSystem::PolynomialType polynomialType,\n        Size nCalibrationSamples,\n
      \       const ext::optional<bool>& antitheticVariateCalibration,\n        BigNatural
      seedCalibration)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:176,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 183
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void MCAmericanEngine<RNG, S, RNG_Calibration>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:191,1
    - Dst: ext::dynamic_pointer_cast<EarlyExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:194,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:196,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:197,1
    - Dst: ext::shared_ptr::payoffAtExpiry
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:197,1
    - Dst: AmericanPathPricer::AmericanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:201,1
    - Dst: ext::make_shared<LongstaffSchwartzPathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:204,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:206,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 209
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::lsmPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - AmericanPathPricer::AmericanPathPricer
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
    - ext::dynamic_pointer_cast<EarlyExercise>
    - ext::shared_ptr::payoffAtExpiry
    - ext::make_shared<LongstaffSchwartzPathPricer<Path> >
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<LongstaffSchwartzPathPricer<Path> >
    signature: ext::shared_ptr<LongstaffSchwartzPathPricer<Path> > MCAmericanEngine<RNG,
      S, RNG_Calibration>::lsmPathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:215,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:217,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:220,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:222,1
    - Dst: ext::shared_ptr<PathPricer<Path> >
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:224,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:226,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:227,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:228,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:228,1
    - Dst: EuropeanPathPricer::EuropeanPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 230
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::timeGrid
    - ext::shared_ptr::optionType
    - EuropeanPathPricer::EuropeanPathPricer
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr<PathPricer<Path> >
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PathPricer<Path> >
    signature: ext::shared_ptr<PathPricer<Path> > MCAmericanEngine<RNG, S, RNG_Calibration>::controlPathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:236,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:238,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:240,1
    - Dst: AnalyticEuropeanEngine::AnalyticEuropeanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 242
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<PricingEngine>
    - AnalyticEuropeanEngine::AnalyticEuropeanEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:250,1
    - Dst: dynamic_cast<VanillaOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:254,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:254,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:256,1
    - Dst: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:257,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:257,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:259,1
    - Dst: dynamic_cast<const VanillaOption::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:262,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 265
    functionName: QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Exercise>
    - dynamic_cast<VanillaOption::arguments*>
    - EuropeanExercise::EuropeanExercise
    - dynamic_cast<const VanillaOption::results*>
    - ext::shared_ptr::getResults
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::controlPricingEngine
    - ext::shared_ptr::getArguments
    - QuantLib::MCAmericanEngine<RNG, S, RNG_Calibration>::arguments_::exercise::lastDate
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCAmericanEngine<RNG, S, RNG_Calibration>::controlVariateValue()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:270,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:271,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: QuantLib::MakeMCAmericanEngine<RNG, S, RNG_Calibration>::MakeMCAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCAmericanEngine<RNG, S, RNG_Calibration>::MakeMCAmericanEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialOrder
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withPolynomialOrder(Size
      polynomialOrder)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withPolynomialOrder(Size polynomialOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - polynomialType
    argTypes:
    - LsmBasisSystem::PolynomialType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 286
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withBasisSystem(LsmBasisSystem::PolynomialType
      polynomialType)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withBasisSystem(LsmBasisSystem::PolynomialType polynomialType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 293
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSteps(Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 301
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withStepsPerYear(\n
      \       Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withStepsPerYear(\n        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:306,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSamples(Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:316,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:316,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 323
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withAbsoluteTolerance(\n
      \       Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withAbsoluteTolerance(\n        Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 331
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withMaxSamples(\n
      \       Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withMaxSamples(\n        Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withCalibrationSamples(\n
      \       Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withCalibrationSamples(\n        Size samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 346
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSeed(BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 354
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withAntitheticVariate(\n
      \       bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withAntitheticVariate(\n        bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 361
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withControlVariate(bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionName: "&MakeMCAmericanEngine<\n        RNG, S, RNG_Calibration>::withAntitheticVariateCalibration(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &MakeMCAmericanEngine<\n
      \       RNG, S, RNG_Calibration>::withAntitheticVariateCalibration(bool b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: "&\n    MakeMCAmericanEngine<RNG, S, RNG_Calibration>::withSeedCalibration(\n
      \       BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCAmericanEngine<RNG, S, RNG_Calibration>
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration> &\n    MakeMCAmericanEngine<RNG,
      S, RNG_Calibration>::withSeedCalibration(\n        BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:381,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:383,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:385,1
    - Dst: MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine<RNG, S, RNG_Calibration>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp:385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 399
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcamericanengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCAmericanEngine<RNG, S, RNG_Calibration>::MCAmericanEngine<RNG, S, RNG_Calibration>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCAmericanEngine<RNG, S, RNG_Calibration>::\n    operator"
    signature: "MakeMCAmericanEngine<RNG, S, RNG_Calibration>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<P>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: QuantLib::MCEuropeanHestonEngine<RNG, S, P>::MCEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanHestonEngine<RNG, S, P>::MCEuropeanHestonEngine(\n
      \               const ext::shared_ptr<P>& process,\n                Size timeSteps,
      Size timeStepsPerYear, bool antitheticVariate,\n                Size requiredSamples,
      Real requiredTolerance,\n                Size maxSamples, BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:123,1
    - Dst: "ext::shared_ptr<\n            typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:125,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:128,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:129,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:130,1
    - Dst: QuantLib::MCEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:131,1
    - Dst: EuropeanHestonPathPricer::EuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 132
    functionName: QuantLib::MCEuropeanHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<P>
    - "ext::shared_ptr<\n            typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - QuantLib::MCEuropeanHestonEngine<RNG,S,P>::timeGrid
    - EuropeanHestonPathPricer::EuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCEuropeanHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: QuantLib::MakeMCEuropeanHestonEngine<RNG, S, P>::MakeMCEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanHestonEngine<RNG, S, P>::MakeMCEuropeanHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:144,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 166
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:171,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 185
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 199
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:207,1
    - Dst: MCEuropeanHestonEngine<RNG,S,P>::MCEuropeanHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 215
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanHestonEngine<RNG,S,P>::MCEuropeanHestonEngine<RNG,S,P>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCEuropeanHestonEngine<RNG,S,P>::\n    operator"
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 226
    functionName: QuantLib::EuropeanHestonPathPricer::EuropeanHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanHestonPathPricer::EuropeanHestonPathPricer(\n                                                 Option::Type
      type,\n                                                 Real strike,\n                                                 DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:232,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: "EuropeanHestonPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - payoff_
    - back
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanHestonPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<P>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionName: QuantLib::MCEuropeanHestonEngine<RNG, S, P>::MCEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanHestonEngine<RNG, S, P>::MCEuropeanHestonEngine(\n
      \               const ext::shared_ptr<P>& process,\n                Size timeSteps,
      Size timeStepsPerYear, bool antitheticVariate,\n                Size requiredSamples,
      Real requiredTolerance,\n                Size maxSamples, BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:123,1
    - Dst: "ext::shared_ptr<\n            typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:125,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:128,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:129,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:130,1
    - Dst: QuantLib::MCEuropeanHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:131,1
    - Dst: EuropeanHestonPathPricer::EuropeanHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 132
    functionName: QuantLib::MCEuropeanHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<P>
    - "ext::shared_ptr<\n            typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    - QuantLib::MCEuropeanHestonEngine<RNG,S,P>::timeGrid
    - EuropeanHestonPathPricer::EuropeanHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCEuropeanHestonEngine<RNG,S,P>::path_pricer_type>
      MCEuropeanHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:138,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: QuantLib::MakeMCEuropeanHestonEngine<RNG, S, P>::MakeMCEuropeanHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanHestonEngine<RNG, S, P>::MakeMCEuropeanHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:144,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:153,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:162,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 166
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:171,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 185
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 199
    functionName: "&\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanHestonEngine<RNG,S,P>
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P> &\n    MakeMCEuropeanHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:205,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:207,1
    - Dst: MCEuropeanHestonEngine<RNG,S,P>::MCEuropeanHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 215
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanHestonEngine<RNG,S,P>::MCEuropeanHestonEngine<RNG,S,P>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCEuropeanHestonEngine<RNG,S,P>::\n    operator"
    signature: "MakeMCEuropeanHestonEngine<RNG,S,P>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 226
    functionName: QuantLib::EuropeanHestonPathPricer::EuropeanHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanHestonPathPricer::EuropeanHestonPathPricer(\n                                                 Option::Type
      type,\n                                                 Real strike,\n                                                 DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:232,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:234,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: "EuropeanHestonPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeanhestonengine.hpp
    functionUses: 0
    functionsReached:
    - payoff_
    - back
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanHestonPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::DiscretizedVanillaOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::DiscretizedVanillaOption::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/discretizedvanillaoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - j
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.hpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonHullWhiteEngine::addOnTerm(Real u,\n
      \                                                               Time,\n                                                                Size
      j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - j
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.hpp
    functionUses: 2
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonHullWhiteEngine::addOnTerm(Real u,\n
      \                                                               Time,\n                                                                Size
      j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:40,1
    - Dst: ext::make_shared<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - l
    - m
    - n
    - p
    argTypes:
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: QuantLib::QdFpLegendreScheme::QdFpLegendreScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLegendreIntegrator>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void QdFpLegendreScheme::QdFpLegendreScheme(\n        Size l, Size
      m, Size n, Size p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfChebyshevInterpolationNodes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size QdFpLegendreScheme::getNumberOfChebyshevInterpolationNodes()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfNaiveFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size QdFpLegendreScheme::getNumberOfNaiveFixedPointSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfJacobiNewtonFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size QdFpLegendreScheme::getNumberOfJacobiNewtonFixedPointSteps()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::QdFpLegendreScheme::getFixedPointIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpLegendreScheme::getFixedPointIntegrator()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::QdFpLegendreScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: "ext::shared_ptr<Integrator> QdFpLegendreScheme::getExerciseBoundaryToPriceIntegrator()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TanhSinhIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:74,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - m
    - n
    - eps
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 79
    functionName: QuantLib::QdFpTanhSinhIterationScheme::QdFpTanhSinhIterationScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLobattoIntegral>
    - ext::make_shared<TanhSinhIntegral>
    linkageType: ''
    returnType: void
    signature: "void QdFpTanhSinhIterationScheme::QdFpTanhSinhIterationScheme(\n        Size
      m, Size n, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfChebyshevInterpolationNodes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size QdFpTanhSinhIterationScheme::getNumberOfChebyshevInterpolationNodes()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfNaiveFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size QdFpTanhSinhIterationScheme::getNumberOfNaiveFixedPointSteps()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfJacobiNewtonFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size QdFpTanhSinhIterationScheme::getNumberOfJacobiNewtonFixedPointSteps()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getFixedPointIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpTanhSinhIterationScheme::getFixedPointIntegrator()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: "ext::shared_ptr<Integrator> QdFpTanhSinhIterationScheme::getExerciseBoundaryToPriceIntegrator()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - l
    - m
    - n
    - eps
    argTypes:
    - Size
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::QdFpLegendreTanhSinhScheme::QdFpLegendreTanhSinhScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QdFpLegendreTanhSinhScheme::QdFpLegendreTanhSinhScheme(\n        Size
      l, Size m, Size n, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TanhSinhIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:111,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 116
    functionName: QuantLib::QdFpLegendreTanhSinhScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLobattoIntegral>
    - ext::make_shared<TanhSinhIntegral>
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpLegendreTanhSinhScheme::getExerciseBoundaryToPriceIntegrator()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:126,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:126,1
    - Dst: ext::dynamic_pointer_cast<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:128,1
    - Dst: auto::getIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:131,1
    - Dst: auto::getIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 134
    functionName: QuantLib::DqFpEquation::DqFpEquation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GaussLegendreIntegrator>
    - std::move
    - auto::getIntegration
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation(Rate _r,\n                     Rate _q,\n                     Volatility
      _vol,\n                     std::function<Real(Real)> B,\n                     ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: ~DqFpEquation()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DqFpEquation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:144,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - z
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::DqFpEquation::d
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> d(Time t, Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:198,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - K
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Real
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 198
    functionName: QuantLib::DqFpEquation_A::DqFpEquation_A
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation_A::DqFpEquation_A(Real K,\n                                   Rate
      _r,\n                                   Rate _q,\n                                   Volatility
      _vol,\n                                   std::function<Real(Real)> B,\n                                   ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:201,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:204,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:205,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:215,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:221,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:223,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:224,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:226,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:227,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:228,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:228,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:232,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:233,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:236,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:236,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:242,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:242,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:243,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:243,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:248,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:249,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:252,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:252,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:261,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:262,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:263,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:266,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:268,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:269,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:274,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:274,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:283,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 284
    functionName: QuantLib::DqFpEquation_A::f
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - empty
    - squared
    - d
    - B
    - phi
    - Real
    - std::sqrt
    - size
    - Phi
    - std::make_tuple
    - close_enough
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> DqFpEquation_A::f(Real tau, Real b) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:289,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:290,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:291,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:303,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:304,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:305,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 309
    functionName: QuantLib::DqFpEquation_A::NDd
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - d
    - squared
    - phi
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> DqFpEquation_A::NDd(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:318,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - K
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Real
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 318
    functionName: QuantLib::DqFpEquation_B::DqFpEquation_B
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation_B::DqFpEquation_B(Real K,\n                                   Rate
      _r,\n                                   Rate _q,\n                                   Volatility
      _vol,\n                                   std::function<Real(Real)> B,\n                                   ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:323,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:324,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:333,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:337,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:339,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:339,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:340,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:340,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:341,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:341,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:347,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:349,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:349,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:352,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:358,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:360,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:360,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:363,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:370,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:372,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:373,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:377,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:378,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:379,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:382,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:382,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:391,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 392
    functionName: QuantLib::DqFpEquation_B::f
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - d
    - empty
    - squared
    - B
    - Real
    - size
    - Phi
    - std::make_tuple
    - close_enough
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> DqFpEquation_B::f(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:395,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:396,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:397,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:397,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:398,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: QuantLib::DqFpEquation_B::NDd
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - std::make_pair
    - d
    - phi
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> DqFpEquation_B::NDd(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:406,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - bsProcess
    - iterationScheme
    - fpEquation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<QdFpIterationScheme>
    - FixedPointEquation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 409
    functionName: QuantLib::QdFpAmericanEngine::QdFpAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QdFpAmericanEngine::QdFpAmericanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      bsProcess,\n        ext::shared_ptr<QdFpIterationScheme> iterationScheme,\n
      \       FixedPointEquation fpEquation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpLegendreScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 415
    functionName: QuantLib::QdFpAmericanEngine::fastScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpLegendreScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::fastScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpLegendreTanhSinhScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 421
    functionName: QuantLib::QdFpAmericanEngine::accurateScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpLegendreTanhSinhScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::accurateScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpTanhSinhIterationScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 427
    functionName: QuantLib::QdFpAmericanEngine::highPrecisionScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpTanhSinhIterationScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::highPrecisionScheme()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:433,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:435,1
    - Dst: getNumberOfChebyshevInterpolationNodes
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:436,1
    - Dst: QdPlusAmericanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:439,1
    - Dst: ext::shared_ptr::nodes
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:443,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:444,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:447,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:447,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:452,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:452,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:457,1
    - Dst: ext::shared_ptr<DqFpEquation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:458,1
    - Dst: getFixedPointIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:460,1
    - Dst: DqFpEquation_A::DqFpEquation_A
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:458,1
    - Dst: ext::shared_ptr<DqFpEquation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:461,1
    - Dst: getFixedPointIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:463,1
    - Dst: DqFpEquation_B::DqFpEquation_B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:461,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:465,1
    - Dst: getNumberOfJacobiNewtonFixedPointSteps
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:469,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:471,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:472,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:473,1
    - Dst: ext::shared_ptr::f
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:475,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:476,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:477,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:478,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:481,1
    - Dst: ext::shared_ptr::NDd
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:483,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:484,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:485,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:487,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:489,1
    - Dst: ext::shared_ptr::updateY
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:492,1
    - Dst: getNumberOfNaiveFixedPointSteps
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:495,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:497,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:498,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: ext::shared_ptr::f
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:501,1
    - Dst: ext::shared_ptr::updateY
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:503,1
    - Dst: getExerciseBoundaryToPriceIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:508,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:509,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:511,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:512,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:513,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:513,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:515,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:515,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 429
    functionDepth: 2
    functionLinenumber: 429
    functionLinenumberEnd: 516
    functionName: QuantLib::QdFpAmericanEngine::calculatePut
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - QdPlusAmericanEngine
    - ext::shared_ptr::updateY
    - B
    - Real
    - DqFpEquation_A::DqFpEquation_A
    - ext::shared_ptr::NDd
    - getNumberOfChebyshevInterpolationNodes
    - ext::shared_ptr::nodes
    - squared
    - h
    - getNumberOfNaiveFixedPointSteps
    - getExerciseBoundaryToPriceIntegrator
    - std::get<2>
    - std::abs
    - DqFpEquation_B::DqFpEquation_B
    - std::exp
    - std::max
    - QL_FAIL
    - std::get<0>
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::log
    - getFixedPointIntegrator
    - BlackCalculator
    - ext::shared_ptr<DqFpEquation>
    - Array::size
    - std::sqrt
    - getNumberOfJacobiNewtonFixedPointSteps
    - ext::shared_ptr::f
    linkageType: ''
    returnType: Real
    signature: "Real QdFpAmericanEngine::calculatePut(\n            Real S, Real K,
      Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:40,1
    - Dst: ext::make_shared<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - l
    - m
    - n
    - p
    argTypes:
    - Size
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: QuantLib::QdFpLegendreScheme::QdFpLegendreScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLegendreIntegrator>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void QdFpLegendreScheme::QdFpLegendreScheme(\n        Size l, Size
      m, Size n, Size p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfChebyshevInterpolationNodes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size QdFpLegendreScheme::getNumberOfChebyshevInterpolationNodes()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfNaiveFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size QdFpLegendreScheme::getNumberOfNaiveFixedPointSteps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::QdFpLegendreScheme::getNumberOfJacobiNewtonFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size QdFpLegendreScheme::getNumberOfJacobiNewtonFixedPointSteps()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::QdFpLegendreScheme::getFixedPointIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpLegendreScheme::getFixedPointIntegrator()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::QdFpLegendreScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: "ext::shared_ptr<Integrator> QdFpLegendreScheme::getExerciseBoundaryToPriceIntegrator()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TanhSinhIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:74,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - m
    - n
    - eps
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 79
    functionName: QuantLib::QdFpTanhSinhIterationScheme::QdFpTanhSinhIterationScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLobattoIntegral>
    - ext::make_shared<TanhSinhIntegral>
    linkageType: ''
    returnType: void
    signature: "void QdFpTanhSinhIterationScheme::QdFpTanhSinhIterationScheme(\n        Size
      m, Size n, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfChebyshevInterpolationNodes
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: "Size QdFpTanhSinhIterationScheme::getNumberOfChebyshevInterpolationNodes()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfNaiveFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size QdFpTanhSinhIterationScheme::getNumberOfNaiveFixedPointSteps()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getNumberOfJacobiNewtonFixedPointSteps
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: Size
    signature: "Size QdFpTanhSinhIterationScheme::getNumberOfJacobiNewtonFixedPointSteps()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getFixedPointIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpTanhSinhIterationScheme::getFixedPointIntegrator()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::QdFpTanhSinhIterationScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: "ext::shared_ptr<Integrator> QdFpTanhSinhIterationScheme::getExerciseBoundaryToPriceIntegrator()\n
      \       const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - l
    - m
    - n
    - eps
    argTypes:
    - Size
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::QdFpLegendreTanhSinhScheme::QdFpLegendreTanhSinhScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void QdFpLegendreTanhSinhScheme::QdFpLegendreTanhSinhScheme(\n        Size
      l, Size m, Size n, Real eps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TanhSinhIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:111,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 116
    functionName: QuantLib::QdFpLegendreTanhSinhScheme::getExerciseBoundaryToPriceIntegrator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussLobattoIntegral>
    - ext::make_shared<TanhSinhIntegral>
    linkageType: ''
    returnType: ext::shared_ptr<Integrator>
    signature: ext::shared_ptr<Integrator> QdFpLegendreTanhSinhScheme::getExerciseBoundaryToPriceIntegrator()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:126,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:126,1
    - Dst: ext::dynamic_pointer_cast<GaussLegendreIntegrator>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:128,1
    - Dst: auto::getIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:131,1
    - Dst: auto::getIntegration
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 134
    functionName: QuantLib::DqFpEquation::DqFpEquation
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GaussLegendreIntegrator>
    - std::move
    - auto::getIntegration
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation(Rate _r,\n                     Rate _q,\n                     Volatility
      _vol,\n                     std::function<Real(Real)> B,\n                     ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: ~DqFpEquation()
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DqFpEquation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:143,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:144,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - z
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::DqFpEquation::d
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::sqrt
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> d(Time t, Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:198,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - K
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Real
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 198
    functionName: QuantLib::DqFpEquation_A::DqFpEquation_A
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation_A::DqFpEquation_A(Real K,\n                                   Rate
      _r,\n                                   Rate _q,\n                                   Volatility
      _vol,\n                                   std::function<Real(Real)> B,\n                                   ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:201,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:204,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:205,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:215,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:221,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:223,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:224,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:226,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:227,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:227,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:228,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:228,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:232,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:233,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:236,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:236,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:242,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:242,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:243,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:243,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:248,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:249,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:252,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:252,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:258,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:261,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:262,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:263,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:263,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:266,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:268,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:269,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:274,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:274,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:283,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 284
    functionName: QuantLib::DqFpEquation_A::f
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - empty
    - squared
    - d
    - B
    - phi
    - Real
    - std::sqrt
    - size
    - Phi
    - std::make_tuple
    - close_enough
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> DqFpEquation_A::f(Real tau, Real b) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:289,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:290,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:291,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:303,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:304,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:304,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:305,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 309
    functionName: QuantLib::DqFpEquation_A::NDd
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - d
    - squared
    - phi
    - std::sqrt
    - close_enough
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> DqFpEquation_A::NDd(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:318,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - K
    - _r
    - _q
    - _vol
    - B
    - _integrator
    argTypes:
    - Real
    - Rate
    - Rate
    - Volatility
    - std::function<Real(Real)>
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 318
    functionName: QuantLib::DqFpEquation_B::DqFpEquation_B
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DqFpEquation_B::DqFpEquation_B(Real K,\n                                   Rate
      _r,\n                                   Rate _q,\n                                   Volatility
      _vol,\n                                   std::function<Real(Real)> B,\n                                   ext::shared_ptr<Integrator>
      _integrator)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:323,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:324,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:333,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:337,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:339,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:339,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:340,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:340,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:341,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:341,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:347,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:349,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:349,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:352,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:355,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:358,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:360,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:360,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:363,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:366,1
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:370,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:372,1
    - Dst: Phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:373,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:377,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:378,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:379,1
    - Dst: close_enough
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:382,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:382,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:391,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 392
    functionName: QuantLib::DqFpEquation_B::f
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - d
    - empty
    - squared
    - B
    - Real
    - size
    - Phi
    - std::make_tuple
    - close_enough
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: std::tuple<Real, Real, Real> DqFpEquation_B::f(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: d
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:395,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:396,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:397,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:397,1
    - Dst: phi
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:398,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tau
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: QuantLib::DqFpEquation_B::NDd
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - std::make_pair
    - d
    - phi
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: std::pair<Real, Real> DqFpEquation_B::NDd(Real tau, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:406,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - bsProcess
    - iterationScheme
    - fpEquation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<QdFpIterationScheme>
    - FixedPointEquation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 409
    functionName: QuantLib::QdFpAmericanEngine::QdFpAmericanEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void QdFpAmericanEngine::QdFpAmericanEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      bsProcess,\n        ext::shared_ptr<QdFpIterationScheme> iterationScheme,\n
      \       FixedPointEquation fpEquation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpLegendreScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 415
    functionName: QuantLib::QdFpAmericanEngine::fastScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpLegendreScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::fastScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpLegendreTanhSinhScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 421
    functionName: QuantLib::QdFpAmericanEngine::accurateScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpLegendreTanhSinhScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::accurateScheme()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<QdFpTanhSinhIterationScheme>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 427
    functionName: QuantLib::QdFpAmericanEngine::highPrecisionScheme
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<QdFpTanhSinhIterationScheme>
    linkageType: ''
    returnType: ext::shared_ptr<QdFpIterationScheme>
    signature: ext::shared_ptr<QdFpIterationScheme> QdFpAmericanEngine::highPrecisionScheme()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:433,1
    - Dst: QuantLib::QdPlusAmericanEngine::xMax
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:435,1
    - Dst: getNumberOfChebyshevInterpolationNodes
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:436,1
    - Dst: QdPlusAmericanEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:439,1
    - Dst: ext::shared_ptr::nodes
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:443,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:444,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:447,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:447,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:448,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:452,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:452,1
    - Dst: std::abs
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:457,1
    - Dst: ext::shared_ptr<DqFpEquation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:458,1
    - Dst: getFixedPointIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:460,1
    - Dst: DqFpEquation_A::DqFpEquation_A
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:458,1
    - Dst: ext::shared_ptr<DqFpEquation>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:461,1
    - Dst: getFixedPointIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:463,1
    - Dst: DqFpEquation_B::DqFpEquation_B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:461,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:465,1
    - Dst: getNumberOfJacobiNewtonFixedPointSteps
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:469,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:471,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:472,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:473,1
    - Dst: ext::shared_ptr::f
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:475,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:476,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:477,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:478,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:481,1
    - Dst: ext::shared_ptr::NDd
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:483,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:484,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:485,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:487,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:489,1
    - Dst: ext::shared_ptr::updateY
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:492,1
    - Dst: getNumberOfNaiveFixedPointSteps
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:495,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:497,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:498,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: ext::shared_ptr::f
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: B
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:499,1
    - Dst: h
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:501,1
    - Dst: ext::shared_ptr::updateY
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:503,1
    - Dst: getExerciseBoundaryToPriceIntegrator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:508,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:509,1
    - Dst: BlackCalculator
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:511,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:512,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:513,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:513,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:515,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp:515,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 6
    argNames:
    - S
    - K
    - r
    - q
    - vol
    - T
    argTypes:
    - Real
    - Real
    - Rate
    - Rate
    - Volatility
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 429
    functionDepth: 2
    functionLinenumber: 429
    functionLinenumberEnd: 516
    functionName: QuantLib::QdFpAmericanEngine::calculatePut
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/qdfpamericanengine.cpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - QdPlusAmericanEngine
    - ext::shared_ptr::updateY
    - B
    - Real
    - DqFpEquation_A::DqFpEquation_A
    - ext::shared_ptr::NDd
    - getNumberOfChebyshevInterpolationNodes
    - ext::shared_ptr::nodes
    - squared
    - h
    - getNumberOfNaiveFixedPointSteps
    - getExerciseBoundaryToPriceIntegrator
    - std::get<2>
    - std::abs
    - DqFpEquation_B::DqFpEquation_B
    - std::exp
    - std::max
    - QL_FAIL
    - std::get<0>
    - QuantLib::QdPlusAmericanEngine::xMax
    - std::log
    - getFixedPointIntegrator
    - BlackCalculator
    - ext::shared_ptr<DqFpEquation>
    - Array::size
    - std::sqrt
    - getNumberOfJacobiNewtonFixedPointSteps
    - ext::shared_ptr::f
    linkageType: ''
    returnType: Real
    signature: "Real QdFpAmericanEngine::calculatePut(\n            Real S, Real K,
      Rate r, Rate q, Volatility vol, Time T) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.hpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::AnalyticHestonEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.hpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::addOnTerm(\n        Real,
      Time, Size) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.hpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: QuantLib::AnalyticHestonEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonengine.hpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> AnalyticHestonEngine::addOnTerm(\n        Real,
      Time, Size) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::MCEuropeanGJRGARCHEngine<RNG, S>::MCEuropeanGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanGJRGARCHEngine<RNG, S>::MCEuropeanGJRGARCHEngine(\n
      \               const ext::shared_ptr<GJRGARCHProcess>& process,\n                Size
      timeSteps, Size timeStepsPerYear, bool antitheticVariate,\n                Size
      requiredSamples, Real requiredTolerance,\n                Size maxSamples, BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:116,1
    - Dst: ext::dynamic_pointer_cast<GJRGARCHProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:120,1
    - Dst: "ext::shared_ptr<\n            typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:122,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:125,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:126,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:127,1
    - Dst: QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:128,1
    - Dst: EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 129
    functionName: QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::timeGrid
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
    - ext::dynamic_pointer_cast<GJRGARCHProcess>
    - "ext::shared_ptr<\n            typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>
      MCEuropeanGJRGARCHEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::MakeMCEuropeanGJRGARCHEngine<RNG, S>::MakeMCEuropeanGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanGJRGARCHEngine<RNG, S>::MakeMCEuropeanGJRGARCHEngine(\n
      \       ext::shared_ptr<GJRGARCHProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:141,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:159,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:204,1
    - Dst: MCEuropeanGJRGARCHEngine<RNG,S>::MCEuropeanGJRGARCHEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 212
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanGJRGARCHEngine<RNG,S>::MCEuropeanGJRGARCHEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCEuropeanGJRGARCHEngine<RNG,S>::\n    operator"
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: QuantLib::EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer(\n                                                 Option::Type
      type,\n                                                 Real strike,\n                                                 DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:229,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: "EuropeanGJRGARCHPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - payoff_
    - back
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanGJRGARCHPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    - Size
    - Size
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::MCEuropeanGJRGARCHEngine<RNG, S>::MCEuropeanGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCEuropeanGJRGARCHEngine<RNG, S>::MCEuropeanGJRGARCHEngine(\n
      \               const ext::shared_ptr<GJRGARCHProcess>& process,\n                Size
      timeSteps, Size timeStepsPerYear, bool antitheticVariate,\n                Size
      requiredSamples, Real requiredTolerance,\n                Size maxSamples, BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:116,1
    - Dst: ext::dynamic_pointer_cast<GJRGARCHProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:120,1
    - Dst: "ext::shared_ptr<\n            typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:122,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:125,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:126,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:127,1
    - Dst: QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:128,1
    - Dst: EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 129
    functionName: QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCEuropeanGJRGARCHEngine<RNG,S>::timeGrid
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
    - ext::dynamic_pointer_cast<GJRGARCHProcess>
    - "ext::shared_ptr<\n            typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n        typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n        typename MCEuropeanGJRGARCHEngine<RNG,S>::path_pricer_type>
      MCEuropeanGJRGARCHEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:135,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GJRGARCHProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: QuantLib::MakeMCEuropeanGJRGARCHEngine<RNG, S>::MakeMCEuropeanGJRGARCHEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEuropeanGJRGARCHEngine<RNG, S>::MakeMCEuropeanGJRGARCHEngine(\n
      \       ext::shared_ptr<GJRGARCHProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:141,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:150,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:159,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEuropeanGJRGARCHEngine<RNG,S>
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S> &\n    MakeMCEuropeanGJRGARCHEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:202,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:204,1
    - Dst: MCEuropeanGJRGARCHEngine<RNG,S>::MCEuropeanGJRGARCHEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 212
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEuropeanGJRGARCHEngine<RNG,S>::MCEuropeanGJRGARCHEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: "MakeMCEuropeanGJRGARCHEngine<RNG,S>::\n    operator"
    signature: "MakeMCEuropeanGJRGARCHEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - strike
    - discount
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: QuantLib::EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void EuropeanGJRGARCHPathPricer::EuropeanGJRGARCHPathPricer(\n                                                 Option::Type
      type,\n                                                 Real strike,\n                                                 DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:229,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: "EuropeanGJRGARCHPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mceuropeangjrgarchengine.hpp
    functionUses: 0
    functionsReached:
    - payoff_
    - back
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EuropeanGJRGARCHPathPricer::operator()(\n                                           const
      MultiPath& multiPath) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:41,1
    - Dst: QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:44,1
    - Dst: QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::MCVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:74,1
    - Dst: QuantLib::MCVanillaEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:75,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:77,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:77,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:78,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::MCVanillaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCVanillaEngine::timeGrid
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:111,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:111,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:114,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:114,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:120,1
    - Dst: QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 124
    functionName: QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::MCVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::registerWith
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCVanillaEngine<MC, RNG, S, Inst>::MCVanillaEngine(\n        ext::shared_ptr<StochasticProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        bool controlVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:132,1
    - Dst: dynamic_cast<typename Inst::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:136,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:138,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:141,1
    - Dst: dynamic_cast<const typename Inst::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:144,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:145,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 149
    functionName: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlPricingEngine
    - dynamic_cast<const typename Inst::results*>
    - ext::shared_ptr::getResults
    - result_type
    - ext::shared_ptr::getArguments
    - dynamic_cast<typename Inst::arguments*>
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: typename MCVanillaEngine<MC,RNG,S,Inst>::result_type
    signature: typename MCVanillaEngine<MC,RNG,S,Inst>::result_type MCVanillaEngine<MC,RNG,S,Inst>::controlVariateValue()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:154,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:155,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:156,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:158,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:159,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:160,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:160,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 164
    functionName: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::arguments_::exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCVanillaEngine<MC,RNG,S,Inst>::timeGrid() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:41,1
    - Dst: QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:44,1
    - Dst: QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::MCVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCVanillaEngine::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:74,1
    - Dst: QuantLib::MCVanillaEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:75,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:77,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:77,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:78,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::MCVanillaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCVanillaEngine::timeGrid
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:111,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:111,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:114,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:114,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:120,1
    - Dst: QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 10
    argNames:
    - process
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - Size
    - Size
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 124
    functionName: QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::MCVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - QuantLib::MCVanillaEngine<MC, RNG, S, Inst>::registerWith
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCVanillaEngine<MC, RNG, S, Inst>::MCVanillaEngine(\n        ext::shared_ptr<StochasticProcess>
      process,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        bool controlVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:132,1
    - Dst: dynamic_cast<typename Inst::arguments*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:136,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:138,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:141,1
    - Dst: dynamic_cast<const typename Inst::results*>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:144,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:145,1
    - Dst: result_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 149
    functionName: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::controlPricingEngine
    - dynamic_cast<const typename Inst::results*>
    - ext::shared_ptr::getResults
    - result_type
    - ext::shared_ptr::getArguments
    - dynamic_cast<typename Inst::arguments*>
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: typename MCVanillaEngine<MC,RNG,S,Inst>::result_type
    signature: typename MCVanillaEngine<MC,RNG,S,Inst>::result_type MCVanillaEngine<MC,RNG,S,Inst>::controlVariateValue()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:154,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:155,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:156,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:158,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:159,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:160,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:160,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 164
    functionName: QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcvanillaengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - time
    - TimeGrid
    - QL_FAIL
    - QuantLib::MCVanillaEngine<MC,RNG,S,Inst>::arguments_::exercise::lastDate
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCVanillaEngine<MC,RNG,S,Inst>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::BatesEngine::BatesEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void BatesEngine::BatesEngine(const ext::shared_ptr<BatesModel> &
      model,\n                             Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:36,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::BatesEngine::BatesEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void BatesEngine::BatesEngine(const ext::shared_ptr<BatesModel>& model,\n
      \                            Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BatesModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:43,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:45,1
    - Dst: ext::shared_ptr::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:46,1
    - Dst: ext::shared_ptr::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:46,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: QuantLib::BatesEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::delta
    - std::exp
    - ext::shared_ptr::nu
    - ext::shared_ptr::lambda
    - ext::dynamic_pointer_cast<BatesModel>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesEngine::addOnTerm(\n                                            Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDetJumpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::BatesDetJumpEngine::BatesDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpEngine::BatesDetJumpEngine(\n        const ext::shared_ptr<BatesDetJumpModel>&
      model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDetJumpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::BatesDetJumpEngine::BatesDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpEngine::BatesDetJumpEngine(\n        const ext::shared_ptr<BatesDetJumpModel>&
      model,\n        Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BatesEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:71,1
    - Dst: ext::dynamic_pointer_cast<BatesDetJumpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:74,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:76,1
    - Dst: ext::shared_ptr::kappaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:77,1
    - Dst: ext::shared_ptr::thetaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:78,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 83
    functionName: QuantLib::BatesDetJumpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<BatesDetJumpModel>
    - std::exp
    - ext::shared_ptr::kappaLambda
    - QuantLib::BatesEngine::addOnTerm
    - ext::shared_ptr::thetaLambda
    - ext::shared_ptr::lambda
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDetJumpEngine::addOnTerm(\n        Real phi,
      Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDoubleExpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: QuantLib::BatesDoubleExpEngine::BatesDoubleExpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpEngine::BatesDoubleExpEngine(\n        const ext::shared_ptr<BatesDoubleExpModel>
      & model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDoubleExpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::BatesDoubleExpEngine::BatesDoubleExpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpEngine::BatesDoubleExpEngine(\n        const ext::shared_ptr<BatesDoubleExpModel>&
      model,\n        Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BatesDoubleExpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:104,1
    - Dst: ext::shared_ptr::p
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:106,1
    - Dst: ext::shared_ptr::nuDown
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:108,1
    - Dst: ext::shared_ptr::nuUp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:109,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 116
    functionName: QuantLib::BatesDoubleExpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::p
    - ext::dynamic_pointer_cast<BatesDoubleExpModel>
    - ext::shared_ptr::lambda
    - ext::shared_ptr::nuDown
    - ext::shared_ptr::nuUp
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDoubleExpEngine::addOnTerm(\n        Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDoubleExpDetJumpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine(\n        const
      ext::shared_ptr<BatesDoubleExpDetJumpModel> & model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDoubleExpDetJumpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine(\n        const
      ext::shared_ptr<BatesDoubleExpDetJumpModel>& model,\n        Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BatesDoubleExpEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:131,1
    - Dst: ext::dynamic_pointer_cast<BatesDoubleExpDetJumpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:134,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:136,1
    - Dst: ext::shared_ptr::kappaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:137,1
    - Dst: ext::shared_ptr::thetaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 143
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - ext::shared_ptr::kappaLambda
    - ext::dynamic_pointer_cast<BatesDoubleExpDetJumpModel>
    - ext::shared_ptr::thetaLambda
    - ext::shared_ptr::lambda
    - QuantLib::BatesDoubleExpEngine::addOnTerm
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDoubleExpDetJumpEngine::addOnTerm(\n        Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::BatesEngine::BatesEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void BatesEngine::BatesEngine(const ext::shared_ptr<BatesModel> &
      model,\n                             Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:36,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::BatesEngine::BatesEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void BatesEngine::BatesEngine(const ext::shared_ptr<BatesModel>& model,\n
      \                            Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BatesModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:43,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:45,1
    - Dst: ext::shared_ptr::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:46,1
    - Dst: ext::shared_ptr::delta
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:46,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:47,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: QuantLib::BatesEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::delta
    - std::exp
    - ext::shared_ptr::nu
    - ext::shared_ptr::lambda
    - ext::dynamic_pointer_cast<BatesModel>
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesEngine::addOnTerm(\n                                            Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDetJumpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::BatesDetJumpEngine::BatesDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpEngine::BatesDetJumpEngine(\n        const ext::shared_ptr<BatesDetJumpModel>&
      model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDetJumpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::BatesDetJumpEngine::BatesDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDetJumpEngine::BatesDetJumpEngine(\n        const ext::shared_ptr<BatesDetJumpModel>&
      model,\n        Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BatesEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:71,1
    - Dst: ext::dynamic_pointer_cast<BatesDetJumpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:74,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:76,1
    - Dst: ext::shared_ptr::kappaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:77,1
    - Dst: ext::shared_ptr::thetaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:78,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:80,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 83
    functionName: QuantLib::BatesDetJumpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<BatesDetJumpModel>
    - std::exp
    - ext::shared_ptr::kappaLambda
    - QuantLib::BatesEngine::addOnTerm
    - ext::shared_ptr::thetaLambda
    - ext::shared_ptr::lambda
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDetJumpEngine::addOnTerm(\n        Real phi,
      Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDoubleExpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: QuantLib::BatesDoubleExpEngine::BatesDoubleExpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpEngine::BatesDoubleExpEngine(\n        const ext::shared_ptr<BatesDoubleExpModel>
      & model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDoubleExpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::BatesDoubleExpEngine::BatesDoubleExpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpEngine::BatesDoubleExpEngine(\n        const ext::shared_ptr<BatesDoubleExpModel>&
      model,\n        Real relTolerance, Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<BatesDoubleExpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:104,1
    - Dst: ext::shared_ptr::p
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:106,1
    - Dst: ext::shared_ptr::nuDown
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:108,1
    - Dst: ext::shared_ptr::nuUp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:109,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 116
    functionName: QuantLib::BatesDoubleExpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::p
    - ext::dynamic_pointer_cast<BatesDoubleExpModel>
    - ext::shared_ptr::lambda
    - ext::shared_ptr::nuDown
    - ext::shared_ptr::nuUp
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDoubleExpEngine::addOnTerm(\n        Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' model'
    - integrationOrder
    argTypes:
    - ext::shared_ptr<BatesDoubleExpDetJumpModel>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine(\n        const
      ext::shared_ptr<BatesDoubleExpDetJumpModel> & model,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<BatesDoubleExpDetJumpModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BatesDoubleExpDetJumpEngine::BatesDoubleExpDetJumpEngine(\n        const
      ext::shared_ptr<BatesDoubleExpDetJumpModel>& model,\n        Real relTolerance,
      Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BatesDoubleExpEngine::addOnTerm
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:131,1
    - Dst: ext::dynamic_pointer_cast<BatesDoubleExpDetJumpModel>
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:134,1
    - Dst: ext::shared_ptr::lambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:136,1
    - Dst: ext::shared_ptr::kappaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:137,1
    - Dst: ext::shared_ptr::thetaLambda
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - phi
    - t
    - j
    argTypes:
    - Real
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 143
    functionName: QuantLib::BatesDoubleExpDetJumpEngine::addOnTerm
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/batesengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - ext::shared_ptr::kappaLambda
    - ext::dynamic_pointer_cast<BatesDoubleExpDetJumpModel>
    - ext::shared_ptr::thetaLambda
    - ext::shared_ptr::lambda
    - QuantLib::BatesDoubleExpEngine::addOnTerm
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> BatesDoubleExpDetJumpEngine::addOnTerm(\n        Real
      phi, Time t, Size j) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:32,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:33,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:34,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:35,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - L
    - N
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::COSHestonEngine::COSHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: void
    signature: "void COSHestonEngine::COSHestonEngine(\n       const ext::shared_ptr<HestonModel>&
      model, Real L, Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:40,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:41,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:43,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:44,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::COSHestonEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void COSHestonEngine::update()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:61,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:65,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:66,1
    - Dst: QuantLib::COSHestonEngine::c1
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:74,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:76,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:79,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:83,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:104,1
    - Dst: QuantLib::COSHestonEngine::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:105,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: std::cos
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: QuantLib::COSHestonEngine::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:112,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:113,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:113,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:116,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:118,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:120,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:124,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 125
    functionName: QuantLib::COSHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - real
    - QuantLib::COSHestonEngine::chF
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::s0
    - exercise::type
    - QuantLib::COSHestonEngine::c1
    - std::fabs
    - ext::shared_ptr::time
    - QuantLib::COSHestonEngine::c2
    - std::cos
    - exercise::lastDate
    - ext::shared_ptr::strike
    - std::exp
    - std::sin
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - std::log
    - process
    - std::complex<Real>
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void COSHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:128,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:128,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::COSHestonEngine::muT
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - process
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::muT(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:136,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:137,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:137,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:145,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:145,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - t
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 149
    functionName: QuantLib::COSHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - squared
    - std::log
    - std::complex<Real>
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> COSHestonEngine::chF(Real u, Real t)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: QuantLib::COSHestonEngine::c1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c1(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 197
    functionName: QuantLib::COSHestonEngine::c2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c2(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:217,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 226
    functionName: QuantLib::COSHestonEngine::c3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c3(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:245,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:255,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:258,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:269,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 286
    functionName: QuantLib::COSHestonEngine::c4
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c4(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c1
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::COSHestonEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c1
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::mu(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: QuantLib::COSHestonEngine::var
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c2
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::var(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c3
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: QuantLib::COSHestonEngine::skew
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::COSHestonEngine::c3
    - QuantLib::COSHestonEngine::c2
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::skew(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c4
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: QuantLib::COSHestonEngine::kurtosis
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c4
    - QuantLib::COSHestonEngine::c2
    - squared
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::kurtosis(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:32,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:33,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:34,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:35,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - L
    - N
    argTypes:
    - ext::shared_ptr<HestonModel>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::COSHestonEngine::COSHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    linkageType: ''
    returnType: void
    signature: "void COSHestonEngine::COSHestonEngine(\n       const ext::shared_ptr<HestonModel>&
      model, Real L, Size N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kappa
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:40,1
    - Dst: theta
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:41,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:42,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:43,1
    - Dst: v0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:44,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: QuantLib::COSHestonEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - v0
    - theta
    - rho
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void COSHestonEngine::update()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:61,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:65,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:66,1
    - Dst: QuantLib::COSHestonEngine::c1
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:68,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:69,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:74,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:76,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:79,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:81,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:83,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:93,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:94,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:104,1
    - Dst: QuantLib::COSHestonEngine::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:105,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: std::cos
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: std::sin
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:110,1
    - Dst: QuantLib::COSHestonEngine::chF
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:112,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:113,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:113,1
    - Dst: real
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:112,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:116,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:118,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:120,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:124,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 125
    functionName: QuantLib::COSHestonEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - real
    - QuantLib::COSHestonEngine::chF
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::s0
    - exercise::type
    - QuantLib::COSHestonEngine::c1
    - std::fabs
    - ext::shared_ptr::time
    - QuantLib::COSHestonEngine::c2
    - std::cos
    - exercise::lastDate
    - ext::shared_ptr::strike
    - std::exp
    - std::sin
    - ext::shared_ptr::optionType
    - std::max
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - std::log
    - process
    - std::complex<Real>
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void COSHestonEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:128,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:128,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::COSHestonEngine::muT
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - process
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::muT(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:136,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:137,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:137,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:138,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:145,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:145,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - u
    - t
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 149
    functionName: QuantLib::COSHestonEngine::chF
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - squared
    - std::log
    - std::complex<Real>
    - std::sqrt
    linkageType: ''
    returnType: std::complex<Real>
    signature: "std::complex<Real> COSHestonEngine::chF(Real u, Real t)\n    const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:178,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: QuantLib::COSHestonEngine::c1
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 3
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c1(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 197
    functionName: QuantLib::COSHestonEngine::c2
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 5
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c2(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:214,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:217,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 226
    functionName: QuantLib::COSHestonEngine::c3
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c3(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:245,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:255,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:258,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:269,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 286
    functionName: QuantLib::COSHestonEngine::c4
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::c4(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c1
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::COSHestonEngine::mu
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c1
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::mu(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: QuantLib::COSHestonEngine::var
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c2
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::var(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c3
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: QuantLib::COSHestonEngine::skew
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::COSHestonEngine::c3
    - QuantLib::COSHestonEngine::c2
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::skew(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::COSHestonEngine::c4
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    - Dst: QuantLib::COSHestonEngine::c2
      Src: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: QuantLib::COSHestonEngine::kurtosis
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/coshestonengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::COSHestonEngine::c4
    - QuantLib::COSHestonEngine::c2
    - squared
    linkageType: ''
    returnType: Real
    signature: Real COSHestonEngine::kurtosis(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: QuantLib::FdBlackScholesShoutEngine::FdBlackScholesShoutEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesShoutEngine::FdBlackScholesShoutEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::FdBlackScholesShoutEngine::FdBlackScholesShoutEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesShoutEngine::FdBlackScholesShoutEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:62,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:64,1
    - Dst: ext::make_shared<EscrowedDividendAdjustment>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:67,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:70,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:71,1
    - Dst: auto::dividendAdjustment
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:74,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:77,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:83,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:87,1
    - Dst: ext::make_shared<FdmBlackScholesMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:88,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:89,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:90,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:91,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:91,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:93,1
    - Dst: ext::make_shared<FdmShoutLogInnerValueCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:97,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:98,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:101,1
    - Dst: DividendSchedule::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:103,1
    - Dst: ext::make_shared<FixedDividend>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:104,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:104,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:107,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:111,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:112,1
    - Dst: FdmBoundaryConditionSet
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:115,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:120,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:121,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:122,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:124,1
    - Dst: auto::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:126,1
    - Dst: auto::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:127,1
    - Dst: auto::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:128,1
    - Dst: auto::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 130
    functionName: QuantLib::FdBlackScholesShoutEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - auto::dividendAdjustment
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<FdmBlackScholesMesher>
    - dividendYield
    - date
    - DividendSchedule::push_back
    - ext::make_shared<FixedDividend>
    - ext::make_shared<FdmBlackScholesSolver>
    - x0
    - exercise::lastDate
    - auto::valueAt
    - std::pair<Real, Real>
    - auto::deltaAt
    - Null<Real>
    - time
    - ext::shared_ptr<FdmQuantoHelper>
    - DividendSchedule
    - FdmBoundaryConditionSet
    - ext::make_shared<EscrowedDividendAdjustment>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - auto::thetaAt
    - auto::strike
    - ext::make_shared<FdmShoutLogInnerValueCalculator>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - blackVolatility
    - auto::gammaAt
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesShoutEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - process
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: QuantLib::FdBlackScholesShoutEngine::FdBlackScholesShoutEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesShoutEngine::FdBlackScholesShoutEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - process
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: QuantLib::FdBlackScholesShoutEngine::FdBlackScholesShoutEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesShoutEngine::FdBlackScholesShoutEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:62,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:64,1
    - Dst: ext::make_shared<EscrowedDividendAdjustment>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:67,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:70,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:71,1
    - Dst: auto::dividendAdjustment
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:74,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:77,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:77,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:83,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:87,1
    - Dst: ext::make_shared<FdmBlackScholesMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:88,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:89,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:90,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:91,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:91,1
    - Dst: ext::shared_ptr<FdmQuantoHelper>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:93,1
    - Dst: ext::make_shared<FdmShoutLogInnerValueCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:97,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:98,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:101,1
    - Dst: DividendSchedule::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:103,1
    - Dst: ext::make_shared<FixedDividend>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:104,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:104,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:107,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:111,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:112,1
    - Dst: FdmBoundaryConditionSet
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:115,1
    - Dst: ext::make_shared<FdmBlackScholesSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:120,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:121,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:122,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:124,1
    - Dst: auto::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:126,1
    - Dst: auto::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:127,1
    - Dst: auto::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:128,1
    - Dst: auto::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 130
    functionName: QuantLib::FdBlackScholesShoutEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdblackscholesshoutengine.cpp
    functionUses: 0
    functionsReached:
    - auto::dividendAdjustment
    - ext::make_shared<FdmMesherComposite>
    - ext::make_shared<FdmBlackScholesMesher>
    - dividendYield
    - date
    - DividendSchedule::push_back
    - ext::make_shared<FixedDividend>
    - ext::make_shared<FdmBlackScholesSolver>
    - x0
    - exercise::lastDate
    - auto::valueAt
    - std::pair<Real, Real>
    - auto::deltaAt
    - Null<Real>
    - time
    - ext::shared_ptr<FdmQuantoHelper>
    - DividendSchedule
    - FdmBoundaryConditionSet
    - ext::make_shared<EscrowedDividendAdjustment>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - auto::thetaAt
    - auto::strike
    - ext::make_shared<FdmShoutLogInnerValueCalculator>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - blackVolatility
    - auto::gammaAt
    - riskFreeRate
    - Handle<GeneralizedBlackScholesProcess>
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesShoutEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 153
    functionName: QuantLib::MCDigitalEngine<RNG,S>::MCDigitalEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDigitalEngine<RNG,S>::MCDigitalEngine(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             Size
      timeSteps,\n             Size timeStepsPerYear,\n             bool brownianBridge,\n
      \            bool antitheticVariate,\n             Size requiredSamples,\n             Real
      requiredTolerance,\n             Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:168,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:173,1
    - Dst: QuantLib::MCDigitalEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:175,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:176,1
    - Dst: PseudoRandom::urng_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:177,1
    - Dst: "ext::shared_ptr<\n                        typename MCDigitalEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:179,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:183,1
    - Dst: DigitalPathPricer::DigitalPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 186
    functionName: QuantLib::MCDigitalEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - QL_REQUIRE
    - "ext::shared_ptr<\n                        typename MCDigitalEngine<RNG,S>::path_pricer_type>"
    - TimeGrid::size
    - DigitalPathPricer::DigitalPathPricer
    - QuantLib::MCDigitalEngine<RNG,S>::timeGrid
    - PseudoRandom::urng_type
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::dynamic_pointer_cast<AmericanExercise>
    linkageType: ''
    returnType: ext::shared_ptr<typename MCDigitalEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCDigitalEngine<RNG,S>::path_pricer_type>
      MCDigitalEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::MakeMCDigitalEngine<RNG, S>::MakeMCDigitalEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDigitalEngine<RNG, S>::MakeMCDigitalEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 207
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:212,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:221,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:266,1
    - Dst: MCDigitalEngine<RNG,S>::MCDigitalEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 275
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDigitalEngine<RNG,S>::MCDigitalEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>::operator
    signature: "MakeMCDigitalEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' process'
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 153
    functionName: QuantLib::MCDigitalEngine<RNG,S>::MCDigitalEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDigitalEngine<RNG,S>::MCDigitalEngine(\n             const
      ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n             Size
      timeSteps,\n             Size timeStepsPerYear,\n             bool brownianBridge,\n
      \            bool antitheticVariate,\n             Size requiredSamples,\n             Real
      requiredTolerance,\n             Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CashOrNothingPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:168,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:173,1
    - Dst: QuantLib::MCDigitalEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:175,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:176,1
    - Dst: PseudoRandom::urng_type
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:177,1
    - Dst: "ext::shared_ptr<\n                        typename MCDigitalEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:179,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:183,1
    - Dst: DigitalPathPricer::DigitalPathPricer
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 186
    functionName: QuantLib::MCDigitalEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - QL_REQUIRE
    - "ext::shared_ptr<\n                        typename MCDigitalEngine<RNG,S>::path_pricer_type>"
    - TimeGrid::size
    - DigitalPathPricer::DigitalPathPricer
    - QuantLib::MCDigitalEngine<RNG,S>::timeGrid
    - PseudoRandom::urng_type
    - ext::dynamic_pointer_cast<CashOrNothingPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::dynamic_pointer_cast<AmericanExercise>
    linkageType: ''
    returnType: ext::shared_ptr<typename MCDigitalEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCDigitalEngine<RNG,S>::path_pricer_type>
      MCDigitalEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:192,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::MakeMCDigitalEngine<RNG, S>::MakeMCDigitalEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDigitalEngine<RNG, S>::MakeMCDigitalEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 207
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:212,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:221,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionName: "&\n    MakeMCDigitalEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>
    signature: "MakeMCDigitalEngine<RNG,S> &\n    MakeMCDigitalEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:264,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:266,1
    - Dst: MCDigitalEngine<RNG,S>::MCDigitalEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 275
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/mcdigitalengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDigitalEngine<RNG,S>::MCDigitalEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDigitalEngine<RNG,S>::operator
    signature: "MakeMCDigitalEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maturityTime
    - payoff
    - rTS
    - calculator
    argTypes:
    - Time
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<CEVCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::PriceAtBoundary::PriceAtBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PriceAtBoundary(Time maturityTime,\n                            ext::shared_ptr<StrikedTypePayoff>
      payoff,\n                            ext::shared_ptr<YieldTermStructure> rTS,\n
      \                           ext::shared_ptr<CEVCalculator> calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:53,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:57,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::discount
    - strike
    - std::max
    - optionType
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maturityTime
    - payoff
    - rTS
    - calculator
    argTypes:
    - Time
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<CEVCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::PriceAtBoundary::PriceAtBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PriceAtBoundary(Time maturityTime,\n                            ext::shared_ptr<StrikedTypePayoff>
      payoff,\n                            ext::shared_ptr<YieldTermStructure> rTS,\n
      \                           ext::shared_ptr<CEVCalculator> calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:53,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: QuantLib::discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:57,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - QuantLib::discount
    - strike
    - std::max
    - optionType
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - f0
    - alpha
    - beta
    - discountCurve
    - tGrid
    - xGrid
    - dampingSteps
    - scalingFactor
    - eps
    - ' schemeDesc'
    argTypes:
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    - Size
    - Size
    - Size
    - Real
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: QuantLib::FdCEVVanillaEngine::FdCEVVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCEVVanillaEngine::FdCEVVanillaEngine(Real f0,\n                                           Real
      alpha,\n                                           Real beta,\n                                           Handle<YieldTermStructure>
      discountCurve,\n                                           Size tGrid,\n                                           Size
      xGrid,\n                                           Size dampingSteps,\n                                           Real
      scalingFactor,\n                                           Real eps,\n                                           const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:90,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:93,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:95,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:97,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:99,1
    - Dst: ext::make_shared<FdmCEV1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:102,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:108,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:109,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:112,1
    - Dst: ext::make_shared<FdmCellAveragingInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:116,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:120,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:121,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:132,1
    - Dst: ext::make_shared<FdmTimeDepDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:132,1
    - Dst: std::function<Real (Real)>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:133,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:140,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:141,1
    - Dst: ext::make_shared<FdmCEVOp>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:153,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:154,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:157,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::derivativeX
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:160,1
    - Dst: ext::shared_ptr::derivativeXX
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:161,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 163
    functionName: QuantLib::FdCEVVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmDiscountDirichletBoundary>
    - ext::shared_ptr::dayCounter
    - ext::make_shared<FdmMesherComposite>
    - ext::shared_ptr::derivativeX
    - ext::make_shared<FdmCEVOp>
    - ext::shared_ptr::derivativeXX
    - std::function<Real (Real)>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::make_shared<FdmCEV1dMesher>
    - ext::shared_ptr::interpolateAt
    - DayCounter::yearFraction
    - ext::make_shared<Fdm1DimSolver>
    - ext::make_shared<FdmCellAveragingInnerValue>
    - ext::shared_ptr::referenceDate
    - DividendSchedule
    - ext::shared_ptr::locations
    - ext::shared_ptr::thetaAt
    - ext::make_shared<FdmTimeDepDirichletBoundary>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdCEVVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maturityTime
    - payoff
    - rTS
    - calculator
    argTypes:
    - Time
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<CEVCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::PriceAtBoundary::PriceAtBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PriceAtBoundary(Time maturityTime,\n                            ext::shared_ptr<StrikedTypePayoff>
      payoff,\n                            ext::shared_ptr<YieldTermStructure> rTS,\n
      \                           ext::shared_ptr<CEVCalculator> calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:53,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:57,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - value
    - strike
    - std::max
    - discount
    - optionType
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - maturityTime
    - payoff
    - rTS
    - calculator
    argTypes:
    - Time
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<CEVCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::PriceAtBoundary::PriceAtBoundary
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void PriceAtBoundary(Time maturityTime,\n                            ext::shared_ptr<StrikedTypePayoff>
      payoff,\n                            ext::shared_ptr<YieldTermStructure> rTS,\n
      \                           ext::shared_ptr<CEVCalculator> calculator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:53,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:55,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:57,1
    - Dst: optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    - Dst: strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - value
    - strike
    - std::max
    - discount
    - optionType
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:79,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - f0
    - alpha
    - beta
    - discountCurve
    - tGrid
    - xGrid
    - dampingSteps
    - scalingFactor
    - eps
    - ' schemeDesc'
    argTypes:
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    - Size
    - Size
    - Size
    - Real
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: QuantLib::FdCEVVanillaEngine::FdCEVVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdCEVVanillaEngine::FdCEVVanillaEngine(Real f0,\n                                           Real
      alpha,\n                                           Real beta,\n                                           Handle<YieldTermStructure>
      discountCurve,\n                                           Size tGrid,\n                                           Size
      xGrid,\n                                           Size dampingSteps,\n                                           Real
      scalingFactor,\n                                           Real eps,\n                                           const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:90,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:93,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:95,1
    - Dst: ext::shared_ptr::referenceDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:97,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:98,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:99,1
    - Dst: ext::make_shared<FdmCEV1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:102,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:106,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:108,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:109,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:112,1
    - Dst: ext::make_shared<FdmCellAveragingInnerValue>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:116,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:120,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:121,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:132,1
    - Dst: ext::make_shared<FdmTimeDepDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:132,1
    - Dst: std::function<Real (Real)>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:133,1
    - Dst: FdmBoundaryConditionSet::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:140,1
    - Dst: ext::make_shared<FdmDiscountDirichletBoundary>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:141,1
    - Dst: ext::make_shared<FdmCEVOp>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:153,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:154,1
    - Dst: ext::make_shared<Fdm1DimSolver>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:157,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::derivativeX
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:160,1
    - Dst: ext::shared_ptr::derivativeXX
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:161,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 163
    functionName: QuantLib::FdCEVVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdcevvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<FdmDiscountDirichletBoundary>
    - ext::shared_ptr::dayCounter
    - ext::make_shared<FdmMesherComposite>
    - ext::shared_ptr::derivativeX
    - ext::make_shared<FdmCEVOp>
    - ext::shared_ptr::derivativeXX
    - std::function<Real (Real)>
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBoundaryConditionSet::push_back
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::make_shared<FdmCEV1dMesher>
    - ext::shared_ptr::interpolateAt
    - DayCounter::yearFraction
    - ext::make_shared<Fdm1DimSolver>
    - ext::make_shared<FdmCellAveragingInnerValue>
    - ext::shared_ptr::referenceDate
    - DividendSchedule
    - ext::shared_ptr::locations
    - ext::shared_ptr::thetaAt
    - ext::make_shared<FdmTimeDepDirichletBoundary>
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - std::make_pair
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdCEVVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - process
    - tGrid
    - xGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::FdSimpleBSSwingEngine::FdSimpleBSSwingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleBSSwingEngine::FdSimpleBSSwingEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:46,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:54,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:54,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:57,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:56,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:61,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:60,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:65,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:69,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:77,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:80,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:82,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:85,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:87,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:87,1
    - Dst: FdmSimpleSwingCondition::FdmSimpleSwingCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:88,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:93,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:104,1
    - Dst: FdmSimple2dBSSolver::FdmSimple2dBSSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:102,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:106,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:108,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:109,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:110,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 112
    functionName: QuantLib::FdSimpleBSSwingEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - static_cast<Real>
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - std::vector::push_back
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::list::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmSimpleSwingCondition::FdmSimpleSwingCondition
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::shared_ptr<StepCondition<Array> >
    - time
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - Uniform1dMesher::Uniform1dMesher
    - Handle<GeneralizedBlackScholesProcess>
    - FdmZeroInnerValue::FdmZeroInnerValue
    - FdmSimple2dBSSolver::FdmSimple2dBSSolver
    linkageType: ''
    returnType: void
    signature: void FdSimpleBSSwingEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - process
    - tGrid
    - xGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::FdSimpleBSSwingEngine::FdSimpleBSSwingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleBSSwingEngine::FdSimpleBSSwingEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:46,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:54,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:54,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:57,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:56,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:61,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:60,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:65,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:69,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:77,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:80,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:82,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:85,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:87,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:87,1
    - Dst: FdmSimpleSwingCondition::FdmSimpleSwingCondition
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:88,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:93,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:103,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:104,1
    - Dst: FdmSimple2dBSSolver::FdmSimple2dBSSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:102,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:106,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:108,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:109,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:110,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 112
    functionName: QuantLib::FdSimpleBSSwingEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdsimplebsswingengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - static_cast<Real>
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - std::vector::push_back
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::list::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - FdmSimpleSwingCondition::FdmSimpleSwingCondition
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    - ext::shared_ptr<StepCondition<Array> >
    - time
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - Uniform1dMesher::Uniform1dMesher
    - Handle<GeneralizedBlackScholesProcess>
    - FdmZeroInnerValue::FdmZeroInnerValue
    - FdmSimple2dBSSolver::FdmSimple2dBSSolver
    linkageType: ''
    returnType: void
    signature: void FdSimpleBSSwingEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVCalculator::X
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - f0
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::CEVCalculator::CEVCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVCalculator::X
    linkageType: ''
    returnType: void
    signature: void CEVCalculator::CEVCalculator(Real f0, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::CEVCalculator::X
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVCalculator::X(Real f) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVCalculator::X
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:48,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:52,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:53,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:54,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:55,1
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:59,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:61,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:62,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:63,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:64,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:69,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:70,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:71,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:72,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:75,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:76,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:77,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - optionType
    - strike
    - t
    argTypes:
    - Option::Type
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 84
    functionName: QuantLib::CEVCalculator::value
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    - QuantLib::CEVCalculator::X
    - QL_FAIL
    - nc_chi2
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: "Real CEVCalculator::value(\n        Option::Type optionType, Real
      strike, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CEVCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:91,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - f0
    - alpha
    - beta
    - discountCurve
    argTypes:
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionName: QuantLib::AnalyticCEVEngine::AnalyticCEVEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - ext::make_shared<CEVCalculator>
    linkageType: ''
    returnType: void
    signature: "void AnalyticCEVEngine::AnalyticCEVEngine(Real f0,\n                                         Real
      alpha,\n                                         Real beta,\n                                         Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:97,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:102,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:104,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:106,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:108,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticCEVEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - timeFromReference
    - value
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - discount
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticCEVEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVCalculator::X
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - f0
    - alpha
    - beta
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::CEVCalculator::CEVCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CEVCalculator::X
    linkageType: ''
    returnType: void
    signature: void CEVCalculator::CEVCalculator(Real f0, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:39,1
    - Dst: squared
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::CEVCalculator::X
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 3
    functionsReached:
    - std::pow
    - squared
    linkageType: ''
    returnType: Real
    signature: Real CEVCalculator::X(Real f) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CEVCalculator::X
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:48,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:52,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:53,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:54,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:55,1
    - Dst: boost::math::gamma_p
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:59,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:61,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:62,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:63,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:64,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:69,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:70,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:71,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:72,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:75,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:76,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:77,1
    - Dst: nc_chi2
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - optionType
    - strike
    - t
    argTypes:
    - Option::Type
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 84
    functionName: QuantLib::CEVCalculator::value
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::cdf
    - QuantLib::CEVCalculator::X
    - QL_FAIL
    - nc_chi2
    - boost::math::gamma_p
    linkageType: ''
    returnType: Real
    signature: "Real CEVCalculator::value(\n        Option::Type optionType, Real
      strike, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<CEVCalculator>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:91,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - f0
    - alpha
    - beta
    - discountCurve
    argTypes:
    - Real
    - Real
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionName: QuantLib::AnalyticCEVEngine::AnalyticCEVEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - ext::make_shared<CEVCalculator>
    linkageType: ''
    returnType: void
    signature: "void AnalyticCEVEngine::AnalyticCEVEngine(Real f0,\n                                         Real
      alpha,\n                                         Real beta,\n                                         Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:97,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:102,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:104,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:106,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:107,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:108,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:109,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 111
    functionName: QuantLib::AnalyticCEVEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticcevengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - timeFromReference
    - value
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - discount
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticCEVEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' hestonModel'
    - hwProcess
    - corrEquityShortRate
    - tGrid
    - xGrid
    - vGrid
    - rGrid
    - dampingSteps
    - controlVariate
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhiteProcess>
    - Real
    - Size
    - Size
    - Size
    - Size
    - Size
    - bool
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhiteProcess>
      hwProcess,\n        Real corrEquityShortRate,\n        Size tGrid,\n        Size
      xGrid,\n        Size vGrid,\n        Size rGrid,\n        Size dampingSteps,\n
      \       bool controlVariate,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' hestonModel'
    - hwProcess
    - dividends
    - corrEquityShortRate
    - tGrid
    - xGrid
    - vGrid
    - rGrid
    - dampingSteps
    - controlVariate
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhiteProcess>
    - DividendSchedule
    - Real
    - Size
    - Size
    - Size
    - Size
    - Size
    - bool
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhiteProcess>
      hwProcess,\n        DividendSchedule dividends,\n        Real corrEquityShortRate,\n
      \       Size tGrid,\n        Size xGrid,\n        Size vGrid,\n        Size
      rGrid,\n        Size dampingSteps,\n        bool controlVariate,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: first::exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:79,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:79,1
    - Dst: first::exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:80,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:85,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:87,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:88,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:89,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:89,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:98,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:99,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:105,1
    - Dst: FdmHestonVarianceMesher::FdmHestonVarianceMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:104,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:110,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:113,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:114,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:117,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:119,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:120,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:121,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:122,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:123,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:123,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:127,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:127,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:129,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:132,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:134,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:135,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:137,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:137,1
    - Dst: FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:130,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:144,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:147,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:152,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:156,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:160,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:171,1
    - Dst: Handle<HullWhiteProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:172,1
    - Dst: FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:171,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:176,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:177,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:178,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:179,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:180,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:181,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:184,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:188,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:189,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:192,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:193,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:194,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:195,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:200,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:202,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:202,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:205,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:206,1
    - Dst: FdHestonVanillaEngine::FdHestonVanillaEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::enableMultipleStrikesCaching
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:212,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:213,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:217,1
    - Dst: ext::shared_ptr<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:219,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:220,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:220,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:222,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:223,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:225,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:226,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 230
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - exercise::dates
    - Handle<HullWhiteProcess>
    - FdmMesherComposite::FdmMesherComposite
    - VanillaOption::setPricingEngine
    - FdmLogInnerValue::FdmLogInnerValue
    - ext::shared_ptr::riskFreeRate
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::s0
    - exercise::type
    - FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    - ext::make_shared<PlainVanillaPayoff>
    - VanillaOption::NPV
    - ext::shared_ptr::enableMultipleStrikesCaching
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::v0
    - ext::shared_ptr::time
    - first::exercise::dates
    - size
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - sigma
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::max
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - PlainVanillaPayoff::PlainVanillaPayoff
    - first::exercise::type
    - a
    - FdHestonVanillaEngine::FdHestonVanillaEngine
    - resize
    - EuropeanExercise::EuropeanExercise
    - process
    - ext::shared_ptr::volaEstimate
    - FdmHestonVarianceMesher::FdmHestonVarianceMesher
    - AnalyticHestonEngine::AnalyticHestonEngine
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonHullWhiteVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:233,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 237
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FdHestonHullWhiteVanillaEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdHestonHullWhiteVanillaEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::enableMultipleStrikesCaching
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdHestonHullWhiteVanillaEngine::update
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::enableMultipleStrikesCaching(\n
      \                                       const std::vector<Real>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' hestonModel'
    - hwProcess
    - corrEquityShortRate
    - tGrid
    - xGrid
    - vGrid
    - rGrid
    - dampingSteps
    - controlVariate
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhiteProcess>
    - Real
    - Size
    - Size
    - Size
    - Size
    - Size
    - bool
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhiteProcess>
      hwProcess,\n        Real corrEquityShortRate,\n        Size tGrid,\n        Size
      xGrid,\n        Size vGrid,\n        Size rGrid,\n        Size dampingSteps,\n
      \       bool controlVariate,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:70,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' hestonModel'
    - hwProcess
    - dividends
    - corrEquityShortRate
    - tGrid
    - xGrid
    - vGrid
    - rGrid
    - dampingSteps
    - controlVariate
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhiteProcess>
    - DividendSchedule
    - Real
    - Size
    - Size
    - Size
    - Size
    - Size
    - bool
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::FdHestonHullWhiteVanillaEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhiteProcess>
      hwProcess,\n        DividendSchedule dividends,\n        Real corrEquityShortRate,\n
      \       Size tGrid,\n        Size xGrid,\n        Size vGrid,\n        Size
      rGrid,\n        Size dampingSteps,\n        bool controlVariate,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: first::exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:79,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:79,1
    - Dst: first::exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:80,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:80,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:85,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:87,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:87,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:88,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:89,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:89,1
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:98,1
    - Dst: ext::shared_ptr::time
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:99,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:105,1
    - Dst: FdmHestonVarianceMesher::FdmHestonVarianceMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:104,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:110,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:113,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:114,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:117,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:118,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:119,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:120,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:121,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:122,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:123,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:123,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:127,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:127,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:129,1
    - Dst: QuantLib::FdmBlackScholesMesher::processHelper
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:132,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:134,1
    - Dst: ext::shared_ptr::volaEstimate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:135,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:137,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:137,1
    - Dst: FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:130,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:142,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:144,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:147,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:152,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:156,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:159,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:160,1
    - Dst: Handle<HestonProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:171,1
    - Dst: Handle<HullWhiteProcess>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:172,1
    - Dst: FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:171,1
    - Dst: ext::shared_ptr::s0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:176,1
    - Dst: ext::shared_ptr::v0
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:177,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:178,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:179,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:180,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:181,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:184,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:187,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:188,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:189,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:192,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:193,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:194,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:195,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:200,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:202,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:202,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:205,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:206,1
    - Dst: FdHestonVanillaEngine::FdHestonVanillaEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:209,1
    - Dst: ext::shared_ptr::enableMultipleStrikesCaching
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:212,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:213,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:217,1
    - Dst: ext::shared_ptr<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:219,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:220,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:220,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:222,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:223,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:225,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:226,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 230
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - exercise::dates
    - Handle<HullWhiteProcess>
    - FdmMesherComposite::FdmMesherComposite
    - VanillaOption::setPricingEngine
    - FdmLogInnerValue::FdmLogInnerValue
    - ext::shared_ptr::riskFreeRate
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - ext::shared_ptr::s0
    - exercise::type
    - FdmHestonHullWhiteSolver::FdmHestonHullWhiteSolver
    - ext::shared_ptr::gammaAt
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmBlackScholesMultiStrikeMesher::FdmBlackScholesMultiStrikeMesher
    - ext::make_shared<PlainVanillaPayoff>
    - VanillaOption::NPV
    - ext::shared_ptr::enableMultipleStrikesCaching
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - ext::shared_ptr::v0
    - ext::shared_ptr::time
    - first::exercise::dates
    - size
    - exercise::lastDate
    - QuantLib::FdmBlackScholesMesher::processHelper
    - ext::shared_ptr<Fdm1dMesher>
    - ext::shared_ptr::strike
    - std::pair<Real, Real>
    - sigma
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - Null<Real>
    - ext::shared_ptr::optionType
    - std::max
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::thetaAt
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - PlainVanillaPayoff::PlainVanillaPayoff
    - first::exercise::type
    - a
    - FdHestonVanillaEngine::FdHestonVanillaEngine
    - resize
    - EuropeanExercise::EuropeanExercise
    - process
    - ext::shared_ptr::volaEstimate
    - FdmHestonVarianceMesher::FdmHestonVarianceMesher
    - AnalyticHestonEngine::AnalyticHestonEngine
    - Handle<HestonProcess>
    linkageType: ''
    returnType: void
    signature: void FdHestonHullWhiteVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:233,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 237
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 1
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FdHestonHullWhiteVanillaEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdHestonHullWhiteVanillaEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: QuantLib::FdHestonHullWhiteVanillaEngine::enableMultipleStrikesCaching
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/fdhestonhullwhitevanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdHestonHullWhiteVanillaEngine::update
    linkageType: ''
    returnType: void
    signature: "void FdHestonHullWhiteVanillaEngine::enableMultipleStrikesCaching(\n
      \                                       const std::vector<Real>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:33,1
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' hestonModel'
    - hullWhiteModel
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    - registerWith
    - std::move
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhite>
      hullWhiteModel,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:47,1
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' hestonModel'
    - hullWhiteModel
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    - std::move
    - registerWith
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhite>
      hullWhiteModel,\n        Real relTolerance,\n        Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:53,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:62,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 70
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - process
    - std::pow
    - QuantLib::AnalyticHestonEngine::calculate
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:73,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 3
    functionsReached:
    - params
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::setParameters()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLaguerre
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:33,1
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' hestonModel'
    - hullWhiteModel
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLaguerre
    - registerWith
    - std::move
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhite>
      hullWhiteModel,\n        Size integrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AnalyticHestonEngine::Integration::gaussLobatto
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:47,1
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' hestonModel'
    - hullWhiteModel
    - relTolerance
    - maxEvaluations
    argTypes:
    - ext::shared_ptr<HestonModel>
    - ext::shared_ptr<HullWhite>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - AnalyticHestonEngine::Integration::gaussLobatto
    - Null<Real>
    - std::move
    - registerWith
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonHullWhiteEngine::AnalyticHestonHullWhiteEngine(\n
      \       const ext::shared_ptr<HestonModel>& hestonModel,\n        ext::shared_ptr<HullWhite>
      hullWhiteModel,\n        Real relTolerance,\n        Size maxEvaluations)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:53,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::update
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:62,1
    - Dst: QuantLib::AnalyticHestonEngine::calculate
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 70
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - process
    - std::pow
    - QuantLib::AnalyticHestonEngine::calculate
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:73,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticHestonHullWhiteEngine::setParameters
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analytichestonhullwhiteengine.cpp
    functionUses: 6
    functionsReached:
    - params
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonHullWhiteEngine::setParameters()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - kappa
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::g_k
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real g_k(Real t, Real kappa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - sigma_s
    - sigma_r
    - correlation
    - kappa
    - T
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::integrand_vasicek::integrand_vasicek
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_vasicek(Real sigma_s, Real sigma_r, Real correlation,
      Real kappa, Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::g_k
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::g_k
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - kappa
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::g_k
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real g_k(Real t, Real kappa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - sigma_s
    - sigma_r
    - correlation
    - kappa
    - T
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::integrand_vasicek::integrand_vasicek
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_vasicek(Real sigma_s, Real sigma_r, Real correlation,
      Real kappa, Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::g_k
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::g_k
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:56,1
    - Dst: SimpsonIntegral::SimpsonIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - blackProcess
    - vasicekProcess
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<Vasicek>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticBlackVasicekEngine::AnalyticBlackVasicekEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - SimpsonIntegral::SimpsonIntegral
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBlackVasicekEngine::AnalyticBlackVasicekEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      blackProcess,\n        ext::shared_ptr<Vasicek> vasicekProcess,\n        Real
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:63,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:63,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:75,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:76,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:77,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:79,1
    - Dst: r0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:80,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:82,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:83,1
    - Dst: integrand_vasicek
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:85,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:85,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticBlackVasicekEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - sigma
    - a
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - integrand_vasicek
    - discountBond
    - f
    - std::sqrt
    - r0
    - x0
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticBlackVasicekEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - kappa
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::g_k
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real g_k(Real t, Real kappa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - sigma_s
    - sigma_r
    - correlation
    - kappa
    - T
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::integrand_vasicek::integrand_vasicek
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_vasicek(Real sigma_s, Real sigma_r, Real correlation,
      Real kappa, Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: g_k
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - g_k
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - kappa
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::g_k
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real g_k(Real t, Real kappa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - sigma_s
    - sigma_r
    - correlation
    - kappa
    - T
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::integrand_vasicek::integrand_vasicek
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_vasicek(Real sigma_s, Real sigma_r, Real correlation,
      Real kappa, Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: g_k
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: operator()(Real u) const
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - g_k
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:56,1
    - Dst: SimpsonIntegral::SimpsonIntegral
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - blackProcess
    - vasicekProcess
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<Vasicek>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticBlackVasicekEngine::AnalyticBlackVasicekEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - SimpsonIntegral::SimpsonIntegral
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticBlackVasicekEngine::AnalyticBlackVasicekEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      blackProcess,\n        ext::shared_ptr<Vasicek> vasicekProcess,\n        Real
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:63,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:63,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:74,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:75,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:76,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:77,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:78,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:79,1
    - Dst: r0
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:80,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:82,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:83,1
    - Dst: integrand_vasicek
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:84,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:85,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:85,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:86,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:86,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:87,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 91
    functionName: QuantLib::AnalyticBlackVasicekEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/vanilla/analyticeuropeanvasicekengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - sigma
    - a
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - integrand_vasicek
    - discountBond
    - f
    - std::sqrt
    - r0
    - x0
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void AnalyticBlackVasicekEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::AnalyticHolderExtensibleOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHolderExtensibleOptionEngine::AnalyticHolderExtensibleOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:40,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:41,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:42,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:43,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:45,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:46,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::z1
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:50,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::z2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:58,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:61,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:64,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:66,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:68,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::y1
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:70,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:70,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::y2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:71,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:71,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:72,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:75,1
    - Dst: BlackScholesCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:76,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:76,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:78,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:78,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:85,1
    - Dst: BlackScholesCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:86,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:86,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:87,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:87,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 93
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - sqrt
    - ext::make_shared<PlainVanillaPayoff>
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::N2
    - exp
    - QuantLib::AnalyticHolderExtensibleOptionEngine::y2
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticHolderExtensibleOptionEngine::M2
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - std::numeric_limits<double>::infinity
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticHolderExtensibleOptionEngine::z2
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::z1
    - QuantLib::AnalyticHolderExtensibleOptionEngine::y1
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - BlackScholesCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    linkageType: ''
    returnType: void
    signature: void AnalyticHolderExtensibleOptionEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:105,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:106,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:107,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:115,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:118,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:119,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 127
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I1Call() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:130,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:131,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:134,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:136,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:138,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:140,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:142,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:143,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:144,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:152,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:155,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:156,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 164
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::exp
    - std::numeric_limits<Real>::infinity
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - BlackScholesCalculator::delta
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I2Call() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:167,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:169,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:173,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:174,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:175,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:183,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:186,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:187,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 194
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I1Put() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:197,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:200,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:203,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:204,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:205,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:213,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:216,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:217,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 225
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::numeric_limits<Real>::infinity
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I2Put() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:235,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:236,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:241,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:244,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:244,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - spot
    - optionType
    argTypes:
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 252
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 4
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - std::sqrt
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    linkageType: ''
    returnType: BlackScholesCalculator
    signature: "BlackScholesCalculator AnalyticHolderExtensibleOptionEngine::bsCalculator(\n
      \                                   Real spot, Option::Type optionType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - CmlNormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::M2(Real a, Real b, Real
      c, Real d, Real rho) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:261,1
    - Dst: NormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - NormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::N2(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:267,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 269
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 3
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:272,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 3
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticHolderExtensibleOptionEngine::firstExpiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 3
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticHolderExtensibleOptionEngine::secondExpiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticHolderExtensibleOptionEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticHolderExtensibleOptionEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:287,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticHolderExtensibleOptionEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticHolderExtensibleOptionEngine::dividendDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticHolderExtensibleOptionEngine::riskFreeDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:300,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:303,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:303,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:304,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:305,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 308
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::y1
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::y1(Option::Type type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:311,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:314,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:314,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:315,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:316,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 310
    functionDepth: 3
    functionLinenumber: 310
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::y2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::y2(Option::Type type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:322,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:325,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:326,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 321
    functionDepth: 3
    functionLinenumber: 321
    functionLinenumberEnd: 329
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::z1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:332,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:333,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:336,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:337,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 340
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::z2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::AnalyticHolderExtensibleOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticHolderExtensibleOptionEngine::AnalyticHolderExtensibleOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:40,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:41,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:42,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:43,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:45,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:46,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::z1
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:50,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::z2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:58,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:61,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:64,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:66,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:68,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::y1
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:70,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:70,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::y2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:71,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:71,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:72,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:75,1
    - Dst: BlackScholesCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:76,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:76,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:78,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:78,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:79,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:81,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:85,1
    - Dst: BlackScholesCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:86,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:86,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:87,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:87,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:88,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:89,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 38
    functionDepth: 4
    functionLinenumber: 38
    functionLinenumberEnd: 93
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - sqrt
    - ext::make_shared<PlainVanillaPayoff>
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::N2
    - exp
    - QuantLib::AnalyticHolderExtensibleOptionEngine::y2
    - ext::shared_ptr::optionType
    - QuantLib::AnalyticHolderExtensibleOptionEngine::M2
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - std::numeric_limits<double>::infinity
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QuantLib::AnalyticHolderExtensibleOptionEngine::z2
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::z1
    - QuantLib::AnalyticHolderExtensibleOptionEngine::y1
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - BlackScholesCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    linkageType: ''
    returnType: void
    signature: void AnalyticHolderExtensibleOptionEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:105,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:106,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:107,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:115,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:118,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:119,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 127
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - BlackScholesCalculator::value
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I1Call() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:130,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:131,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:134,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:135,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:136,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:138,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:140,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:142,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:143,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:144,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:152,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:155,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:156,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 164
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - BlackScholesCalculator::value
    - std::exp
    - std::numeric_limits<Real>::infinity
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - BlackScholesCalculator::delta
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I2Call() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:167,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:169,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:173,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:174,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:175,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:183,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:186,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:187,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 194
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - BlackScholesCalculator::value
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I1Put() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:197,1
    - Dst: std::numeric_limits<Real>::infinity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:200,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:203,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:204,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:205,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:213,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:216,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:217,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 225
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 1
    functionsReached:
    - BlackScholesCalculator::value
    - std::numeric_limits<Real>::infinity
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::I2Put() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:235,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:236,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:241,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:244,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:244,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - spot
    - optionType
    argTypes:
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 252
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::bsCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 8
    functionsReached:
    - ext::make_shared<PlainVanillaPayoff>
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - std::sqrt
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    linkageType: ''
    returnType: BlackScholesCalculator
    signature: "BlackScholesCalculator AnalyticHolderExtensibleOptionEngine::bsCalculator(\n
      \                                   Real spot, Option::Type optionType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    - Dst: CmlNormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::M2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - CmlNormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::M2(Real a, Real b, Real
      c, Real d, Real rho) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:261,1
    - Dst: NormDist
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::N2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - NormDist
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::N2(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:266,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:267,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 269
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 8
    functionsReached:
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:272,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 12
    functionsReached:
    - exercise::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticHolderExtensibleOptionEngine::firstExpiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 7
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticHolderExtensibleOptionEngine::secondExpiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 8
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticHolderExtensibleOptionEngine::volatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticHolderExtensibleOptionEngine::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:287,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 9
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticHolderExtensibleOptionEngine::dividendYield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticHolderExtensibleOptionEngine::dividendDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticHolderExtensibleOptionEngine::riskFreeDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:300,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:301,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:303,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:303,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:304,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:305,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 308
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::y1
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I2Put
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I2Call
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::y1(Option::Type type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:311,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:312,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:314,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:314,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:315,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:316,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 310
    functionDepth: 3
    functionLinenumber: 310
    functionLinenumberEnd: 319
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::y2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I1Put
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - QuantLib::AnalyticHolderExtensibleOptionEngine::I1Call
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::y2(Option::Type type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:322,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:324,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:325,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:326,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 321
    functionDepth: 3
    functionLinenumber: 321
    functionLinenumberEnd: 329
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::z1
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::secondExpiryTime
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::z1() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:332,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:333,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:335,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:336,1
    - Dst: QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:337,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 340
    functionName: QuantLib::AnalyticHolderExtensibleOptionEngine::z2
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticholderextensibleoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticHolderExtensibleOptionEngine::volatility
    - QuantLib::AnalyticHolderExtensibleOptionEngine::firstExpiryTime
    - log
    - QuantLib::AnalyticHolderExtensibleOptionEngine::dividendYield
    - pow
    - x0
    - QuantLib::AnalyticHolderExtensibleOptionEngine::strike
    - QuantLib::AnalyticHolderExtensibleOptionEngine::riskFreeRate
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHolderExtensibleOptionEngine::z2() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - p1
    - p2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 37
    functionName: QuantLib::AnalyticTwoAssetCorrelationEngine::AnalyticTwoAssetCorrelationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticTwoAssetCorrelationEngine::AnalyticTwoAssetCorrelationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> p1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      p2,\n        Handle<Quote> correlation)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:47,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:49,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:53,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:56,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:60,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:64,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:67,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:69,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:70,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticTwoAssetCorrelationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - dividendYield
    - M
    - std::exp
    - value
    - ext::shared_ptr::optionType
    - time
    - riskFreeRate
    - log
    - QL_FAIL
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticTwoAssetCorrelationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - p1
    - p2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 37
    functionName: QuantLib::AnalyticTwoAssetCorrelationEngine::AnalyticTwoAssetCorrelationEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticTwoAssetCorrelationEngine::AnalyticTwoAssetCorrelationEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> p1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      p2,\n        Handle<Quote> correlation)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:47,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:49,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:52,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:53,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:55,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:56,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:58,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:58,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:60,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:64,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:67,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:69,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:70,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: M
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:77,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 82
    functionName: QuantLib::AnalyticTwoAssetCorrelationEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analytictwoassetcorrelationengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - dividendYield
    - M
    - std::exp
    - value
    - ext::shared_ptr::optionType
    - time
    - riskFreeRate
    - log
    - QL_FAIL
    - ext::shared_ptr::lastDate
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - x0
    - exercise::lastDate
    - ext::shared_ptr::strike
    linkageType: ''
    returnType: void
    signature: void AnalyticTwoAssetCorrelationEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticSimpleChooserEngine::AnalyticSimpleChooserEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticSimpleChooserEngine::AnalyticSimpleChooserEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:35,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:36,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:37,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:42,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:47,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:48,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:49,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:50,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:52,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:53,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:54,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:80,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:82,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:83,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 85
    functionName: QuantLib::AnalyticSimpleChooserEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - DayCounter::yearFraction
    - std::exp
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - riskFreeRate
    - f
    - QuantLib::detail::instance
    - std::sqrt
    - stateVariable
    - exercise::lastDate
    - auto::strike
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticSimpleChooserEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticSimpleChooserEngine::AnalyticSimpleChooserEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticSimpleChooserEngine::AnalyticSimpleChooserEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:35,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:36,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:37,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:42,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:47,1
    - Dst: auto::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:48,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:49,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:50,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:52,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:53,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:54,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:69,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:79,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:79,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:80,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:82,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:82,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:83,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:84,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 85
    functionName: QuantLib::AnalyticSimpleChooserEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticsimplechooserengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - blackVolatility
    - DayCounter::yearFraction
    - std::exp
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - std::log
    - riskFreeRate
    - f
    - QuantLib::detail::instance
    - std::sqrt
    - stateVariable
    - exercise::lastDate
    - auto::strike
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticSimpleChooserEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::AnalyticEuropeanMargrabeEngine::AnalyticEuropeanMargrabeEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanMargrabeEngine::AnalyticEuropeanMargrabeEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:39,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:48,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:54,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:56,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:58,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:62,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:65,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:65,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:67,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:69,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:78,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:84,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:85,1
    - Dst: norm
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:86,1
    - Dst: norm
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:87,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticEuropeanMargrabeEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - exercise::type
    - dividendYield
    - DayCounter::yearFraction
    - std::log
    - norm
    - ext::dynamic_pointer_cast<NullPayoff>
    - riskFreeRate
    - std::sqrt
    - cum
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - stateVariable
    linkageType: ''
    returnType: void
    signature: void AnalyticEuropeanMargrabeEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::AnalyticEuropeanMargrabeEngine::AnalyticEuropeanMargrabeEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticEuropeanMargrabeEngine::AnalyticEuropeanMargrabeEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:39,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:48,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:54,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:56,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:57,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:58,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:62,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:65,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:65,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:67,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:67,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:69,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:74,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:78,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:84,1
    - Dst: cum
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:85,1
    - Dst: norm
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:86,1
    - Dst: norm
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:87,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:91,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:92,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticEuropeanMargrabeEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticeuropeanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - exercise::type
    - dividendYield
    - DayCounter::yearFraction
    - std::log
    - norm
    - ext::dynamic_pointer_cast<NullPayoff>
    - riskFreeRate
    - std::sqrt
    - cum
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - stateVariable
    linkageType: ''
    returnType: void
    signature: void AnalyticEuropeanMargrabeEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::AnalyticAmericanMargrabeEngine::AnalyticAmericanMargrabeEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticAmericanMargrabeEngine::AnalyticAmericanMargrabeEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:42,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:47,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:51,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:60,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:62,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:63,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:65,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:71,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:72,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:75,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:76,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:79,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:84,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:85,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:86,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:90,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:93,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:96,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:97,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:98,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:99,1
    - Dst: BlackScholesMertonProcess::BlackScholesMertonProcess
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:95,1
    - Dst: BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:102,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:105,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 108
    functionName: QuantLib::AnalyticAmericanMargrabeEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
    - VanillaOption::setPricingEngine
    - ext::shared_ptr::lastDate
    - stateVariable
    - exercise::type
    - dividendYield
    - Handle<BlackVolTermStructure>
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<NullPayoff>
    - BlackScholesMertonProcess::BlackScholesMertonProcess
    - Handle<Quote>
    - exercise::lastDate
    - BlackConstantVol::BlackConstantVol
    - ext::dynamic_pointer_cast<AmericanExercise>
    - DayCounter::yearFraction
    - FlatForward::FlatForward
    - NullCalendar
    - SimpleQuote::SimpleQuote
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - std::log
    - riskFreeRate
    - QuantLib::detail::instance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticAmericanMargrabeEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process1
    - process2
    - correlation
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::AnalyticAmericanMargrabeEngine::AnalyticAmericanMargrabeEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticAmericanMargrabeEngine::AnalyticAmericanMargrabeEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process1,\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process2,\n        Real correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:42,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<AmericanExercise>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:47,1
    - Dst: ext::dynamic_pointer_cast<NullPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:51,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:56,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:60,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:62,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:63,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:65,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:71,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:71,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:72,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:75,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:75,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:76,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:79,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:82,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:84,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:85,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:86,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:89,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:90,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:93,1
    - Dst: BlackConstantVol::BlackConstantVol
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:96,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:97,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:98,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:99,1
    - Dst: BlackScholesMertonProcess::BlackScholesMertonProcess
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:95,1
    - Dst: BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:102,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:105,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 108
    functionName: QuantLib::AnalyticAmericanMargrabeEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticamericanmargrabeengine.cpp
    functionUses: 0
    functionsReached:
    - BjerksundStenslandApproximationEngine::BjerksundStenslandApproximationEngine
    - VanillaOption::setPricingEngine
    - ext::shared_ptr::lastDate
    - stateVariable
    - exercise::type
    - dividendYield
    - Handle<BlackVolTermStructure>
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<NullPayoff>
    - BlackScholesMertonProcess::BlackScholesMertonProcess
    - Handle<Quote>
    - exercise::lastDate
    - BlackConstantVol::BlackConstantVol
    - ext::dynamic_pointer_cast<AmericanExercise>
    - DayCounter::yearFraction
    - FlatForward::FlatForward
    - NullCalendar
    - SimpleQuote::SimpleQuote
    - Handle<YieldTermStructure>
    - QL_REQUIRE
    - blackVolatility
    - PlainVanillaPayoff::PlainVanillaPayoff
    - std::log
    - riskFreeRate
    - QuantLib::detail::instance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticAmericanMargrabeEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::AnalyticWriterExtensibleOptionEngine::AnalyticWriterExtensibleOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticWriterExtensibleOptionEngine::AnalyticWriterExtensibleOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:44,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:58,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:62,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:66,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:67,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:71,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:73,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:74,1
    - Dst: exercise2::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:82,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:87,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:97,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:97,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:98,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:99,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:99,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:100,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:113,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:116,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:117,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:117,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:120,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:122,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:123,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticWriterExtensibleOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - DayCounter::yearFraction
    - std::exp
    - std::log
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - blackFormula
    - std::pow
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - exercise2::lastDate
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - biv
    - stateVariable
    linkageType: ''
    returnType: void
    signature: void AnalyticWriterExtensibleOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::AnalyticWriterExtensibleOptionEngine::AnalyticWriterExtensibleOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticWriterExtensibleOptionEngine::AnalyticWriterExtensibleOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:44,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:53,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:58,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:61,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:62,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:65,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:66,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:67,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:71,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:73,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:74,1
    - Dst: exercise2::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:75,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:82,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:83,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:85,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:87,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:90,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:90,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:96,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:97,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:97,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:98,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:99,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:99,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:100,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:113,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:114,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:116,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:117,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:117,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:120,1
    - Dst: biv
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:122,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:123,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:124,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 129
    functionName: QuantLib::AnalyticWriterExtensibleOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticwriterextensibleoptionengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QL_REQUIRE
    - blackVolatility
    - DayCounter::yearFraction
    - std::exp
    - std::log
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - blackFormula
    - std::pow
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - exercise2::lastDate
    - ext::shared_ptr::lastDate
    - exercise::lastDate
    - biv
    - stateVariable
    linkageType: ''
    returnType: void
    signature: void AnalyticWriterExtensibleOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticComplexChooserEngine::AnalyticComplexChooserEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticComplexChooserEngine::AnalyticComplexChooserEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:39,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::choosingTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:44,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::callMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:45,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::putMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:46,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::criticalValue
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:48,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:50,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:50,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:51,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:53,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:55,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:55,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:56,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:59,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:59,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:60,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:63,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:64,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:65,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:65,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:66,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:67,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:67,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:69,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:69,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:70,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:71,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:71,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticComplexChooserEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    - QuantLib::AnalyticComplexChooserEngine::putMaturity
    - QuantLib::AnalyticComplexChooserEngine::volatility
    - QuantLib::AnalyticComplexChooserEngine::callMaturity
    - QuantLib::AnalyticComplexChooserEngine::criticalValue
    - log
    - pow
    - QuantLib::AnalyticComplexChooserEngine::choosingTime
    - BivariateCumulativeNormalDistributionDr78
    - x0
    - sqrt
    - exp
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: void
    signature: void AnalyticComplexChooserEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::choosingTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:82,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::callMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:88,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:89,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:90,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:92,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:93,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:94,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::putMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:96,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:97,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:98,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:99,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:100,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - spot
    - optionType
    argTypes:
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticComplexChooserEngine::bsCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::volatility
    - QuantLib::AnalyticComplexChooserEngine::dividendDiscount
    - QuantLib::AnalyticComplexChooserEngine::putMaturity
    - QuantLib::AnalyticComplexChooserEngine::callMaturity
    - ext::make_shared<PlainVanillaPayoff>
    - std::sqrt
    - QuantLib::AnalyticComplexChooserEngine::choosingTime
    - QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
    - QuantLib::AnalyticComplexChooserEngine::strike
    linkageType: ''
    returnType: BlackScholesCalculator
    signature: "BlackScholesCalculator AnalyticComplexChooserEngine::bsCalculator(\n
      \                                  Real spot, Option::Type optionType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:109,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:111,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:112,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:113,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:115,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:116,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:117,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:124,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:127,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:128,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:129,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:131,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:132,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 139
    functionName: QuantLib::AnalyticComplexChooserEngine::criticalValue
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 1
    functionsReached:
    - BlackScholesCalculator::value
    - QuantLib::AnalyticComplexChooserEngine::bsCalculator
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticComplexChooserEngine::criticalValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - optionType
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticComplexChooserEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticComplexChooserEngine::strike(Option::Type optionType)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticComplexChooserEngine::choosingTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::choosingTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:154,1
    - Dst: exercisePut::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticComplexChooserEngine::putMaturity
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - time
    - exercisePut::lastDate
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::putMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:158,1
    - Dst: exerciseCall::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::AnalyticComplexChooserEngine::callMaturity
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - exerciseCall::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::callMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::AnalyticComplexChooserEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticComplexChooserEngine::volatility(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::AnalyticComplexChooserEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticComplexChooserEngine::dividendYield(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticComplexChooserEngine::dividendDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticComplexChooserEngine::riskFreeRate(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticComplexChooserEngine::riskFreeDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: QuantLib::AnalyticComplexChooserEngine::AnalyticComplexChooserEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticComplexChooserEngine::AnalyticComplexChooserEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:39,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::choosingTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:44,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::callMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:45,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::putMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:46,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::criticalValue
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:48,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:50,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:50,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:51,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:52,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:53,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:55,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:55,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:56,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:57,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:59,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:59,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:60,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: pow
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:61,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:63,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:64,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:65,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:65,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:66,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:67,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:67,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:68,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:69,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:69,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:70,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:71,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:71,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    - Dst: BivariateCumulativeNormalDistributionDr78
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 75
    functionName: QuantLib::AnalyticComplexChooserEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    - QuantLib::AnalyticComplexChooserEngine::putMaturity
    - QuantLib::AnalyticComplexChooserEngine::volatility
    - QuantLib::AnalyticComplexChooserEngine::callMaturity
    - QuantLib::AnalyticComplexChooserEngine::criticalValue
    - log
    - pow
    - QuantLib::AnalyticComplexChooserEngine::choosingTime
    - BivariateCumulativeNormalDistributionDr78
    - x0
    - sqrt
    - exp
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: void
    signature: void AnalyticComplexChooserEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::choosingTime
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:82,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::callMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:88,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:89,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:90,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:92,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:93,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:94,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::putMaturity
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:96,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:97,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::strike
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:98,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::volatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:99,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:99,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:100,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - spot
    - optionType
    argTypes:
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 106
    functionName: QuantLib::AnalyticComplexChooserEngine::bsCalculator
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::volatility
    - QuantLib::AnalyticComplexChooserEngine::dividendDiscount
    - QuantLib::AnalyticComplexChooserEngine::putMaturity
    - QuantLib::AnalyticComplexChooserEngine::callMaturity
    - ext::make_shared<PlainVanillaPayoff>
    - std::sqrt
    - QuantLib::AnalyticComplexChooserEngine::choosingTime
    - QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
    - QuantLib::AnalyticComplexChooserEngine::strike
    linkageType: ''
    returnType: BlackScholesCalculator
    signature: "BlackScholesCalculator AnalyticComplexChooserEngine::bsCalculator(\n
      \                                  Real spot, Option::Type optionType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:109,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:111,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:112,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:113,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:115,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:116,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:117,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:124,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:127,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:128,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:129,1
    - Dst: QuantLib::AnalyticComplexChooserEngine::bsCalculator
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:131,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:132,1
    - Dst: BlackScholesCalculator::delta
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 139
    functionName: QuantLib::AnalyticComplexChooserEngine::criticalValue
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - BlackScholesCalculator::value
    - QuantLib::AnalyticComplexChooserEngine::bsCalculator
    - BlackScholesCalculator::delta
    - std::fabs
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticComplexChooserEngine::criticalValue() const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - optionType
    argTypes:
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: QuantLib::AnalyticComplexChooserEngine::strike
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AnalyticComplexChooserEngine::strike(Option::Type optionType)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: QuantLib::AnalyticComplexChooserEngine::choosingTime
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 4
    functionsReached:
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::choosingTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:154,1
    - Dst: exercisePut::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: QuantLib::AnalyticComplexChooserEngine::putMaturity
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 4
    functionsReached:
    - time
    - exercisePut::lastDate
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::putMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:158,1
    - Dst: exerciseCall::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::AnalyticComplexChooserEngine::callMaturity
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 4
    functionsReached:
    - exerciseCall::lastDate
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticComplexChooserEngine::callMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: QuantLib::AnalyticComplexChooserEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 4
    functionsReached:
    - blackVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility AnalyticComplexChooserEngine::volatility(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: QuantLib::AnalyticComplexChooserEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticComplexChooserEngine::dividendYield(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: QuantLib::AnalyticComplexChooserEngine::dividendDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::dividendYield
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticComplexChooserEngine::dividendDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    linkageType: ''
    returnType: Rate
    signature: Rate AnalyticComplexChooserEngine::riskFreeRate(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticComplexChooserEngine::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: QuantLib::AnalyticComplexChooserEngine::riskFreeDiscount
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcomplexchooserengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticComplexChooserEngine::riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticComplexChooserEngine::riskFreeDiscount(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendDiscount
    - riskFreeDiscount
    - standardDeviation
    - payoff
    - strike
    argTypes:
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::ImpliedSpotHelper::ImpliedSpotHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedSpotHelper(DiscountFactor dividendDiscount,\n                              DiscountFactor
      riskFreeDiscount,\n                              Real standardDeviation,\n                              ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n                              Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: operator()(Real spot) const
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendDiscount
    - riskFreeDiscount
    - standardDeviation
    - payoff
    - strike
    argTypes:
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::ImpliedSpotHelper::ImpliedSpotHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedSpotHelper(DiscountFactor dividendDiscount,\n                              DiscountFactor
      riskFreeDiscount,\n                              Real standardDeviation,\n                              ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n                              Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 3
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: operator()(Real spot) const
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::blackFormula
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticCompoundOptionEngine::AnalyticCompoundOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCompoundOptionEngine::AnalyticCompoundOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:64,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:67,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:70,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:73,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:74,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:74,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:75,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:76,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:79,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:82,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:85,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:90,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:90,1
    - Dst: ImpliedSpotHelper::ImpliedSpotHelper
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:89,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:93,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::transformX
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:97,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::typeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:100,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::typeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:106,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:107,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:109,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:111,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:112,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:113,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:114,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:115,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dMinus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:117,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:118,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:119,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:120,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:121,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:123,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:124,1
    - Dst: N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:126,1
    - Dst: N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:127,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:128,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::e
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:128,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:129,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:130,1
    - Dst: n_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:131,1
    - Dst: n_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 148
    functionName: QuantLib::AnalyticCompoundOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::strikeMother
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    - QuantLib::AnalyticCompoundOptionEngine::transformX
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    - QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::e
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - N2
    - n_
    - Brent::setMaxEvaluations
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - QuantLib::AnalyticCompoundOptionEngine::dPlus
    - time
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    - Brent::solve
    - ImpliedSpotHelper::ImpliedSpotHelper
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    - QL_REQUIRE
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    - QuantLib::AnalyticCompoundOptionEngine::typeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dMinus
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
    - riskFreeRate
    - QuantLib::AnalyticCompoundOptionEngine::typeMother
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - std::sqrt
    - N_
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    linkageType: ''
    returnType: void
    signature: void AnalyticCompoundOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: QuantLib::AnalyticCompoundOptionEngine::typeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::typeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::AnalyticCompoundOptionEngine::typeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::typeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daughterExercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - daughterExercise::lastDate
    linkageType: ''
    returnType: Date
    signature: Date AnalyticCompoundOptionEngine::maturityDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticCompoundOptionEngine::maturityMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - exercise::lastDate
    linkageType: ''
    returnType: Date
    signature: Date AnalyticCompoundOptionEngine::maturityMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:168,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - time
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:172,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeMotherDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:181,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:181,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::volatilityDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:187,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:187,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticCompoundOptionEngine::volatilityMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - QuantLib::AnalyticCompoundOptionEngine::strikeMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::volatilityMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::stdDeviationDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::volatilityMother
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::stdDeviationMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 207
    functionName: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PlainVanillaPayoff>
    signature: ext::shared_ptr<PlainVanillaPayoff> AnalyticCompoundOptionEngine::payoffDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:212,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: QuantLib::AnalyticCompoundOptionEngine::payoffMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PlainVanillaPayoff>
    signature: ext::shared_ptr<PlainVanillaPayoff> AnalyticCompoundOptionEngine::payoffMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::AnalyticCompoundOptionEngine::strikeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::strikeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::strikeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:226,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:230,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:234,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:238,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:242,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 3
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:251,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:252,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 3
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: QuantLib::AnalyticCompoundOptionEngine::dPlus
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dPlus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:256,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::AnalyticCompoundOptionEngine::dMinus
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dPlus
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dMinus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:262,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 259
    functionDepth: 4
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionName: QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
    - std::sqrt
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dPlusTau12(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionName: QuantLib::AnalyticCompoundOptionEngine::spot
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:270,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 2
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::riskFreeRateDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:276,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dividendRateDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:285,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - X
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 281
    functionDepth: 3
    functionLinenumber: 281
    functionLinenumberEnd: 289
    functionName: QuantLib::AnalyticCompoundOptionEngine::transformX
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::transformX(Real X) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:292,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:293,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dMinus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - X
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 5
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: QuantLib::AnalyticCompoundOptionEngine::e
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dMinus
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::e(Real X) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendDiscount
    - riskFreeDiscount
    - standardDeviation
    - payoff
    - strike
    argTypes:
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::ImpliedSpotHelper::ImpliedSpotHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedSpotHelper(DiscountFactor dividendDiscount,\n                              DiscountFactor
      riskFreeDiscount,\n                              Real standardDeviation,\n                              ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n                              Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: operator()(Real spot) const
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - dividendDiscount
    - riskFreeDiscount
    - standardDeviation
    - payoff
    - strike
    argTypes:
    - DiscountFactor
    - DiscountFactor
    - Real
    - ext::shared_ptr<PlainVanillaPayoff>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::ImpliedSpotHelper::ImpliedSpotHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ImpliedSpotHelper(DiscountFactor dividendDiscount,\n                              DiscountFactor
      riskFreeDiscount,\n                              Real standardDeviation,\n                              ext::shared_ptr<PlainVanillaPayoff>
      payoff,\n                              Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - spot
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: operator()(Real spot) const
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real spot) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::AnalyticCompoundOptionEngine::AnalyticCompoundOptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCompoundOptionEngine::AnalyticCompoundOptionEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:64,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:67,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:70,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:70,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:73,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:74,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:74,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:75,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:76,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:79,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:82,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:85,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:90,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:90,1
    - Dst: ImpliedSpotHelper::ImpliedSpotHelper
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:89,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:93,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:96,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::transformX
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:97,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::typeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:100,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::typeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:101,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:103,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:106,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:107,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:109,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:111,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:112,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:113,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:114,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:115,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dMinus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:117,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:118,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:119,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:120,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:121,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:123,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:124,1
    - Dst: N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:126,1
    - Dst: N2
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:127,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:128,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::e
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:128,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:129,1
    - Dst: N_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:130,1
    - Dst: n_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:131,1
    - Dst: n_
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:133,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 62
    functionDepth: 6
    functionLinenumber: 62
    functionLinenumberEnd: 148
    functionName: QuantLib::AnalyticCompoundOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::strikeMother
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    - QuantLib::AnalyticCompoundOptionEngine::transformX
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    - QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::e
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - N2
    - n_
    - Brent::setMaxEvaluations
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - QuantLib::AnalyticCompoundOptionEngine::dPlus
    - time
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    - Brent::solve
    - ImpliedSpotHelper::ImpliedSpotHelper
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    - QL_REQUIRE
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    - QuantLib::AnalyticCompoundOptionEngine::typeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dMinus
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
    - riskFreeRate
    - QuantLib::AnalyticCompoundOptionEngine::typeMother
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - std::sqrt
    - N_
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    linkageType: ''
    returnType: void
    signature: void AnalyticCompoundOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: QuantLib::AnalyticCompoundOptionEngine::typeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::typeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::AnalyticCompoundOptionEngine::typeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::typeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daughterExercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 4
    functionsReached:
    - daughterExercise::lastDate
    linkageType: ''
    returnType: Date
    signature: Date AnalyticCompoundOptionEngine::maturityDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticCompoundOptionEngine::maturityMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 4
    functionsReached:
    - exercise::lastDate
    linkageType: ''
    returnType: Date
    signature: Date AnalyticCompoundOptionEngine::maturityMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:168,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 9
    functionsReached:
    - time
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:172,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - time
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:176,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    linkageType: ''
    returnType: Time
    signature: Time AnalyticCompoundOptionEngine::residualTimeMotherDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:181,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:181,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 3
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 4
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::maturityDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::volatilityDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:187,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::maturityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:187,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: QuantLib::AnalyticCompoundOptionEngine::volatilityMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - blackVolatility
    - QuantLib::AnalyticCompoundOptionEngine::maturityMother
    - QuantLib::AnalyticCompoundOptionEngine::strikeMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::volatilityMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::stdDeviationDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::volatilityMother
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::stdDeviationMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 207
    functionName: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 5
    functionsReached:
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PlainVanillaPayoff>
    signature: ext::shared_ptr<PlainVanillaPayoff> AnalyticCompoundOptionEngine::payoffDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:212,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: QuantLib::AnalyticCompoundOptionEngine::payoffMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PlainVanillaPayoff>
    signature: ext::shared_ptr<PlainVanillaPayoff> AnalyticCompoundOptionEngine::payoffMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::AnalyticCompoundOptionEngine::strikeMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::strikeMother() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::payoffDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::strikeDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:226,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:230,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:234,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    - riskFreeRate
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:238,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:242,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountMother()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:246,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 3
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:250,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:251,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:252,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 3
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: QuantLib::AnalyticCompoundOptionEngine::dPlus
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dPlus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dPlus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:256,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: QuantLib::AnalyticCompoundOptionEngine::dMinus
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dPlus
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dMinus() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:260,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:261,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:262,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 259
    functionDepth: 4
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionName: QuantLib::AnalyticCompoundOptionEngine::dPlusTau12
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMotherDaughter
    - QuantLib::AnalyticCompoundOptionEngine::strikeDaughter
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMotherDaughter
    - std::sqrt
    - QuantLib::AnalyticCompoundOptionEngine::volatilityDaughter
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMotherDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dPlusTau12(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionName: QuantLib::AnalyticCompoundOptionEngine::spot
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 5
    functionsReached:
    - x0
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::spot() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:270,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 2
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticCompoundOptionEngine::riskFreeRateDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::riskFreeRateDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:276,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::AnalyticCompoundOptionEngine::dividendRateDaughter
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::dividendRateDaughter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:283,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::spot
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:284,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:285,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - X
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 281
    functionDepth: 3
    functionLinenumber: 281
    functionLinenumberEnd: 289
    functionName: QuantLib::AnalyticCompoundOptionEngine::transformX
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - QuantLib::AnalyticCompoundOptionEngine::dividendDiscountMother
    - QuantLib::AnalyticCompoundOptionEngine::stdDeviationMother
    - QuantLib::AnalyticCompoundOptionEngine::spot
    - std::log
    - QuantLib::AnalyticCompoundOptionEngine::riskFreeDiscountMother
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::transformX(Real X) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:292,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:293,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: QuantLib::AnalyticCompoundOptionEngine::dMinus
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - X
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 5
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: QuantLib::AnalyticCompoundOptionEngine::e
    functionSourceFile: /src/quantlib/ql/pricingengines/exotic/analyticcompoundoptionengine.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeDaughter
    - QuantLib::AnalyticCompoundOptionEngine::dMinus
    - QuantLib::AnalyticCompoundOptionEngine::residualTimeMother
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real AnalyticCompoundOptionEngine::e(Real X) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeVanillaSwapEngine::TreeVanillaSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeVanillaSwapEngine::TreeVanillaSwapEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                                 Size timeSteps,\n                                                 Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeVanillaSwapEngine::TreeVanillaSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeVanillaSwapEngine::TreeVanillaSwapEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                                 const TimeGrid& timeGrid,\n
      \                                                Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:51,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:53,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:54,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:56,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:57,1
    - Dst: DiscretizedSwap::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:61,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:67,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:67,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:68,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: DiscretizedSwap::initialize
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:72,1
    - Dst: DiscretizedSwap::rollback
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:73,1
    - Dst: DiscretizedSwap::presentValue
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 76
    functionName: QuantLib::TreeVanillaSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - tree
    - referenceDate
    - DiscretizedSwap::initialize
    - empty
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::vector::begin
    - std::vector::end
    - DiscretizedSwap::rollback
    - DiscretizedSwap::presentValue
    - DiscretizedSwap::mandatoryTimes
    - std::max_element
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TreeVanillaSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeVanillaSwapEngine::TreeVanillaSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeVanillaSwapEngine::TreeVanillaSwapEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                                 Size timeSteps,\n                                                 Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeVanillaSwapEngine::TreeVanillaSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeVanillaSwapEngine::TreeVanillaSwapEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                                 const TimeGrid& timeGrid,\n
      \                                                Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:51,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:53,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:54,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:56,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:57,1
    - Dst: DiscretizedSwap::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:61,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:67,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:67,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:68,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:71,1
    - Dst: DiscretizedSwap::initialize
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:72,1
    - Dst: DiscretizedSwap::rollback
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:73,1
    - Dst: DiscretizedSwap::presentValue
      Src: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 76
    functionName: QuantLib::TreeVanillaSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/treeswapengine.cpp
    functionUses: 0
    functionsReached:
    - tree
    - referenceDate
    - DiscretizedSwap::initialize
    - empty
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::vector::begin
    - std::vector::end
    - DiscretizedSwap::rollback
    - DiscretizedSwap::presentValue
    - DiscretizedSwap::mandatoryTimes
    - std::max_element
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TreeVanillaSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 3
    argNames:
    - ' resetTime'
    - ' payTime'
    - ' includeTodaysCashFlows'
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::isResetTimeInPast
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool isResetTimeInPast(const Time& resetTime,\n                                      const
      Time& payTime,\n                                      const bool& includeTodaysCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 3
    argNames:
    - ' resetTime'
    - ' payTime'
    - ' includeTodaysCashFlows'
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::isResetTimeInPast
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool isResetTimeInPast(const Time& resetTime,\n                                      const
      Time& payTime,\n                                      const bool& includeTodaysCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<CouponAdjustment>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:43,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:43,1
    - Dst: std::vector<CouponAdjustment>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:44,1
    - Dst: floatingPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - VanillaSwap::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::DiscretizedSwap::DiscretizedSwap
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - floatingPayDates::size
    - std::vector<CouponAdjustment>
    - fixedPayDates::size
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwap::DiscretizedSwap(const VanillaSwap::arguments&
      args,\n                                     const Date& referenceDate,\n                                     const
      DayCounter& dayCounter)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:54,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: floatingPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:61,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:62,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:66,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:67,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:69,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:70,1
    - Dst: isResetTimeInPast
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:71,1
    - Dst: floatingResetDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:80,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:81,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:82,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:83,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:85,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:86,1
    - Dst: isResetTimeInPast
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:87,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    - fixedCouponAdjustments
    - floatingCouponAdjustments
    argTypes:
    - VanillaSwap::arguments
    - Date
    - DayCounter
    - std::vector<CouponAdjustment>
    - std::vector<CouponAdjustment>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 95
    functionName: QuantLib::DiscretizedSwap::DiscretizedSwap
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::size
    - isResetTimeInPast
    - yearFraction
    - resize
    - std::move
    - QuantLib::detail::instance
    - floatingPayDates::size
    - size
    - floatingResetDates::size
    - fixedPayDates::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwap::DiscretizedSwap(const VanillaSwap::arguments&
      args,\n                                     const Date& referenceDate,\n                                     const
      DayCounter& dayCounter,\n                                     std::vector<CouponAdjustment>
      fixedCouponAdjustments,\n                                     std::vector<CouponAdjustment>
      floatingCouponAdjustments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:98,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::DiscretizedSwap::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::reset(Size size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:106,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:114,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:118,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 121
    functionName: QuantLib::DiscretizedSwap::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedSwap::mandatoryTimes() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:125,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:127,1
    - Dst: QuantLib::DiscretizedSwap::addFloatingCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:132,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:134,1
    - Dst: QuantLib::DiscretizedSwap::addFixedCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 138
    functionName: QuantLib::DiscretizedSwap::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::DiscretizedSwap::addFixedCoupon
    - QuantLib::DiscretizedSwap::addFloatingCoupon
    - isOnTime
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::preAdjustValuesImpl()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:142,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:144,1
    - Dst: QuantLib::DiscretizedSwap::addFloatingCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:149,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:151,1
    - Dst: QuantLib::DiscretizedSwap::addFixedCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:152,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:158,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:170,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:174,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:174,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 182
    functionName: QuantLib::DiscretizedSwap::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - Null<Real>
    - QuantLib::DiscretizedSwap::addFixedCoupon
    - QuantLib::DiscretizedSwap::addFloatingCoupon
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::postAdjustValuesImpl()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:186,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:186,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:190,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 197
    functionName: QuantLib::DiscretizedSwap::addFixedCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 2
    functionsReached:
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - size
    - method
    - DiscretizedDiscountBond::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::addFixedCoupon(Size i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:201,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:201,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:211,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:212,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 218
    functionName: QuantLib::DiscretizedSwap::addFloatingCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 2
    functionsReached:
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - Null<Real>
    - size
    - method
    - DiscretizedDiscountBond::rollback
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::addFloatingCoupon(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 3
    argNames:
    - ' resetTime'
    - ' payTime'
    - ' includeTodaysCashFlows'
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::isResetTimeInPast
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool isResetTimeInPast(const Time& resetTime,\n                                      const
      Time& payTime,\n                                      const bool& includeTodaysCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 3
    argNames:
    - ' resetTime'
    - ' payTime'
    - ' includeTodaysCashFlows'
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: QuantLib::isResetTimeInPast
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool isResetTimeInPast(const Time& resetTime,\n                                      const
      Time& payTime,\n                                      const bool& includeTodaysCashFlows)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<CouponAdjustment>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:43,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:43,1
    - Dst: std::vector<CouponAdjustment>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:44,1
    - Dst: floatingPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - VanillaSwap::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: QuantLib::DiscretizedSwap::DiscretizedSwap
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - floatingPayDates::size
    - std::vector<CouponAdjustment>
    - fixedPayDates::size
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwap::DiscretizedSwap(const VanillaSwap::arguments&
      args,\n                                     const Date& referenceDate,\n                                     const
      DayCounter& dayCounter)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:54,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: floatingPayDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:61,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:62,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:65,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:66,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:67,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:69,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:70,1
    - Dst: isResetTimeInPast
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:71,1
    - Dst: floatingResetDates::size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:80,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:81,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:82,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:83,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:85,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:86,1
    - Dst: isResetTimeInPast
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:87,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    - fixedCouponAdjustments
    - floatingCouponAdjustments
    argTypes:
    - VanillaSwap::arguments
    - Date
    - DayCounter
    - std::vector<CouponAdjustment>
    - std::vector<CouponAdjustment>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 95
    functionName: QuantLib::DiscretizedSwap::DiscretizedSwap
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::size
    - isResetTimeInPast
    - yearFraction
    - resize
    - std::move
    - QuantLib::detail::instance
    - floatingPayDates::size
    - size
    - floatingResetDates::size
    - fixedPayDates::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwap::DiscretizedSwap(const VanillaSwap::arguments&
      args,\n                                     const Date& referenceDate,\n                                     const
      DayCounter& dayCounter,\n                                     std::vector<CouponAdjustment>
      fixedCouponAdjustments,\n                                     std::vector<CouponAdjustment>
      floatingCouponAdjustments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:98,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::DiscretizedSwap::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::reset(Size size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:106,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:114,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:118,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 121
    functionName: QuantLib::DiscretizedSwap::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedSwap::mandatoryTimes() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:125,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:127,1
    - Dst: QuantLib::DiscretizedSwap::addFloatingCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:132,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:134,1
    - Dst: QuantLib::DiscretizedSwap::addFixedCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 138
    functionName: QuantLib::DiscretizedSwap::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::DiscretizedSwap::addFixedCoupon
    - QuantLib::DiscretizedSwap::addFloatingCoupon
    - isOnTime
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::preAdjustValuesImpl()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:142,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:144,1
    - Dst: QuantLib::DiscretizedSwap::addFloatingCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:145,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:149,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:151,1
    - Dst: QuantLib::DiscretizedSwap::addFixedCoupon
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:152,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:158,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:170,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:172,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:174,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:174,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 182
    functionName: QuantLib::DiscretizedSwap::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - Null<Real>
    - QuantLib::DiscretizedSwap::addFixedCoupon
    - QuantLib::DiscretizedSwap::addFloatingCoupon
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::postAdjustValuesImpl()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:186,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:186,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:187,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:190,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 197
    functionName: QuantLib::DiscretizedSwap::addFixedCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 4
    functionsReached:
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - size
    - method
    - DiscretizedDiscountBond::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::addFixedCoupon(Size i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:201,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:201,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:211,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:212,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 218
    functionName: QuantLib::DiscretizedSwap::addFloatingCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discretizedswap.cpp
    functionUses: 4
    functionsReached:
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - Null<Real>
    - size
    - method
    - DiscretizedDiscountBond::rollback
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwap::addFloatingCoupon(Size i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:40,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:46,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:46,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:47,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:47,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' discountCurve'
    - ' swaptionEngine'
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<PricingEngine>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n      const
      Handle<YieldTermStructure>& discountCurve,\n      const Handle<PricingEngine>&
      swaptionEngine,\n      const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n
      \     Real ctptyRecoveryRate,\n      const Handle<DefaultProbabilityTermStructure>&
      invstDTS,\n      Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:64,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:65,1
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:66,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:67,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:72,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:72,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:73,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:73,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - ' discountCurve'
    - blackVol
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 80
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n        const
      Handle<YieldTermStructure>& discountCurve,\n        const Volatility blackVol,\n
      \       const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n        Real
      ctptyRecoveryRate,\n        const Handle<DefaultProbabilityTermStructure>& invstDTS,\n
      \       Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:89,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:90,1
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:91,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:92,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:97,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:97,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:98,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:98,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:103,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' discountCurve'
    - ' blackVol'
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 106
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n        const
      Handle<YieldTermStructure>& discountCurve,\n        const Handle<Quote>& blackVol,\n
      \       const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n        Real
      ctptyRecoveryRate,\n        const Handle<DefaultProbabilityTermStructure>& invstDTS,\n
      \       Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:113,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:118,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:121,1
    - Dst: fixedPayDates::begin
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:128,1
    - Dst: dynamic_cast<Swap::arguments*>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:134,1
    - Dst: getArguments
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:135,1
    - Dst: QuantLib::CounterpartyAdjSwapEngine::calculate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:140,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:143,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:144,1
    - Dst: dynamic_cast<const Swap::results*>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:146,1
    - Dst: getResults
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:147,1
    - Dst: fixedPayDates::end
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:156,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:159,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:160,1
    - Dst: ext::shared_ptr::index
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:161,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:167,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:168,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:169,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:178,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:179,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:188,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:194,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:194,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:195,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:195,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:199,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:199,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:201,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 216
    functionName: QuantLib::CounterpartyAdjSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - getResults
    - ext::shared_ptr::index
    - dynamic_cast<const Swap::results*>
    - getArguments
    - MakeVanillaSwap
    - fixedPayDates::back
    - ext::dynamic_pointer_cast<IborIndex>
    - referenceDate
    - empty
    - ext::shared_ptr::rate
    - Swaption::setPricingEngine
    - fixedPayDates::end
    - defaultProbability
    - Swaption::NPV
    - fixedPayDates::begin
    - Null<Real>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - dynamic_cast<Swap::arguments*>
    - QL_REQUIRE
    - currentLink
    - Date::serialNumber
    - QuantLib::CounterpartyAdjSwapEngine::calculate
    linkageType: ''
    returnType: void
    signature: void CounterpartyAdjSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:40,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:46,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:46,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:47,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:47,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' discountCurve'
    - ' swaptionEngine'
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<PricingEngine>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 55
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n      const
      Handle<YieldTermStructure>& discountCurve,\n      const Handle<PricingEngine>&
      swaptionEngine,\n      const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n
      \     Real ctptyRecoveryRate,\n      const Handle<DefaultProbabilityTermStructure>&
      invstDTS,\n      Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:64,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:65,1
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:66,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:67,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:72,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:72,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:73,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:73,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - ' discountCurve'
    - blackVol
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 80
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n        const
      Handle<YieldTermStructure>& discountCurve,\n        const Volatility blackVol,\n
      \       const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n        Real
      ctptyRecoveryRate,\n        const Handle<DefaultProbabilityTermStructure>& invstDTS,\n
      \       Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:89,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:90,1
    - Dst: Handle<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:91,1
    - Dst: ext::make_shared<BlackSwaptionEngine>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:92,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:97,1
    - Dst: Handle<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:97,1
    - Dst: ext::make_shared<FlatHazardRate>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:98,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:98,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:99,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:103,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:104,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ' discountCurve'
    - ' blackVol'
    - ' ctptyDTS'
    - ctptyRecoveryRate
    - ' invstDTS'
    - invstRecoveryRate
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 106
    functionName: QuantLib::CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<DiscountingSwapEngine>
    - ext::make_shared<BlackSwaptionEngine>
    - empty
    - ext::make_shared<FlatHazardRate>
    - dayCounter
    - Handle<PricingEngine>
    - registerWith
    - NullCalendar
    - Handle<DefaultProbabilityTermStructure>
    linkageType: ''
    returnType: void
    signature: "void CounterpartyAdjSwapEngine::CounterpartyAdjSwapEngine(\n        const
      Handle<YieldTermStructure>& discountCurve,\n        const Handle<Quote>& blackVol,\n
      \       const Handle<DefaultProbabilityTermStructure>& ctptyDTS,\n        Real
      ctptyRecoveryRate,\n        const Handle<DefaultProbabilityTermStructure>& invstDTS,\n
      \       Real invstRecoveryRate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:111,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:113,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:113,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:118,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:118,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:121,1
    - Dst: fixedPayDates::begin
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:128,1
    - Dst: dynamic_cast<Swap::arguments*>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:134,1
    - Dst: getArguments
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:134,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:135,1
    - Dst: QuantLib::CounterpartyAdjSwapEngine::calculate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:140,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:142,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:143,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:144,1
    - Dst: dynamic_cast<const Swap::results*>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:146,1
    - Dst: getResults
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:147,1
    - Dst: fixedPayDates::end
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:156,1
    - Dst: ext::dynamic_pointer_cast<FloatingRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:159,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:160,1
    - Dst: ext::shared_ptr::index
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:161,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:167,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:168,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:169,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:178,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:179,1
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:188,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:194,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:194,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:195,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:195,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:199,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:199,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:201,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp:201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 216
    functionName: QuantLib::CounterpartyAdjSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/cvaswapengine.cpp
    functionUses: 2
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - getResults
    - ext::shared_ptr::index
    - dynamic_cast<const Swap::results*>
    - getArguments
    - MakeVanillaSwap
    - fixedPayDates::back
    - ext::dynamic_pointer_cast<IborIndex>
    - referenceDate
    - empty
    - ext::shared_ptr::rate
    - Swaption::setPricingEngine
    - fixedPayDates::end
    - defaultProbability
    - Swaption::NPV
    - fixedPayDates::begin
    - Null<Real>
    - ext::dynamic_pointer_cast<FloatingRateCoupon>
    - dynamic_cast<Swap::arguments*>
    - QL_REQUIRE
    - currentLink
    - Date::serialNumber
    - QuantLib::CounterpartyAdjSwapEngine::calculate
    linkageType: ''
    returnType: void
    signature: void CounterpartyAdjSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::DiscountingSwapEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::DiscountingSwapEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - discountCurve
    - ' includeSettlementDateFlows'
    - settlementDate
    - npvDate
    argTypes:
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::DiscountingSwapEngine::DiscountingSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountingSwapEngine::DiscountingSwapEngine(\n        Handle<YieldTermStructure>
      discountCurve,\n        const ext::optional<bool>& includeSettlementDateFlows,\n
      \       Date settlementDate,\n        Date npvDate)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:45,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:47,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:53,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:62,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:66,1
    - Dst: legs::size
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:68,1
    - Dst: legNPV::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:69,1
    - Dst: legBPS::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:70,1
    - Dst: startDiscounts::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:71,1
    - Dst: endDiscounts::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:72,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:76,1
    - Dst: std::tie
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:81,1
    - Dst: QuantLib::CashFlows::npvbps
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:90,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:93,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:95,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:99,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:101,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:103,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    - Dst: what
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 112
    functionName: QuantLib::DiscountingSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp
    functionUses: 0
    functionsReached:
    - std::tie
    - Date
    - legNPV::resize
    - referenceDate
    - endDiscounts::resize
    - empty
    - Null<DiscountFactor>
    - legs::size
    - legBPS::resize
    - QuantLib::CashFlows::maturityDate
    - startDiscounts::resize
    - Null<Real>
    - QuantLib::CashFlows::startDate
    - QL_FAIL
    - QL_REQUIRE
    - QuantLib::io::ordinal
    - discount
    - QuantLib::detail::instance
    - what
    - QuantLib::CashFlows::npvbps
    linkageType: ''
    returnType: void
    signature: void DiscountingSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - discountCurve
    - ' includeSettlementDateFlows'
    - settlementDate
    - npvDate
    argTypes:
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::DiscountingSwapEngine::DiscountingSwapEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountingSwapEngine::DiscountingSwapEngine(\n        Handle<YieldTermStructure>
      discountCurve,\n        const ext::optional<bool>& includeSettlementDateFlows,\n
      \       Date settlementDate,\n        Date npvDate)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:41,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:45,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:47,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:53,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:62,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:66,1
    - Dst: legs::size
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:68,1
    - Dst: legNPV::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:69,1
    - Dst: legBPS::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:70,1
    - Dst: startDiscounts::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:71,1
    - Dst: endDiscounts::resize
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:72,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:76,1
    - Dst: std::tie
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:81,1
    - Dst: QuantLib::CashFlows::npvbps
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:90,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:91,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:93,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:95,1
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:97,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:99,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:101,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:103,1
    - Dst: Null<DiscountFactor>
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    - Dst: what
      Src: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp:108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 112
    functionName: QuantLib::DiscountingSwapEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swap/discountingswapengine.cpp
    functionUses: 0
    functionsReached:
    - std::tie
    - Date
    - legNPV::resize
    - referenceDate
    - endDiscounts::resize
    - empty
    - Null<DiscountFactor>
    - legs::size
    - legBPS::resize
    - QuantLib::CashFlows::maturityDate
    - startDiscounts::resize
    - Null<Real>
    - QuantLib::CashFlows::startDate
    - QL_FAIL
    - QL_REQUIRE
    - QuantLib::io::ordinal
    - discount
    - QuantLib::detail::instance
    - what
    - QuantLib::CashFlows::npvbps
    linkageType: ''
    returnType: void
    signature: void DiscountingSwapEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - nominal
    - maturity
    - valueTime
    - fixedPayTimes
    - ' amounts'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Real
    - Time
    - Time
    - std::vector<Time>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::JamshidianSwaptionEngine::rStarFinder::rStarFinder
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void rStarFinder(const ext::shared_ptr<OneFactorAffineModel>& model,\n
      \                   Real nominal,\n                    Time maturity,\n                    Time
      valueTime,\n                    std::vector<Time> fixedPayTimes,\n                    const
      std::vector<Real>& amounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:40,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:41,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: operator()(Rate x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - discountBond
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:63,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:72,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:78,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:80,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:83,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:84,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:90,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:91,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:93,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:94,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:95,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:96,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:104,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:105,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:106,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:107,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:110,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:113,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:116,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:118,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 128
    functionName: QuantLib::JamshidianSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - Brent::setLowerBound
    - Brent::setUpperBound
    - fixedPayDates::size
    - exercise::type
    - referenceDate
    - empty
    - fixedCoupons::size
    - discountBondOption
    - Brent::setMaxEvaluations
    - DayCounter::yearFraction
    - ext::shared_ptr::termStructure
    - Null<Real>
    - discountBond
    - Brent::solve
    - exercise::date
    - std::vector::size
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    - swap::spread
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void JamshidianSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - nominal
    - maturity
    - valueTime
    - fixedPayTimes
    - ' amounts'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Real
    - Time
    - Time
    - std::vector<Time>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: QuantLib::JamshidianSwaptionEngine::rStarFinder::rStarFinder
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void rStarFinder(const ext::shared_ptr<OneFactorAffineModel>& model,\n
      \                   Real nominal,\n                    Time maturity,\n                    Time
      valueTime,\n                    std::vector<Time> fixedPayTimes,\n                    const
      std::vector<Real>& amounts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:41,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: operator()(Rate x) const
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - discountBond
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:63,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:69,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:72,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:72,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:78,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:80,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:83,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:84,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:90,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:91,1
    - Dst: fixedPayDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:93,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:94,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:95,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:96,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:104,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:105,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:106,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:107,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:110,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:113,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:116,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:118,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 128
    functionName: QuantLib::JamshidianSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - Brent::setLowerBound
    - Brent::setUpperBound
    - fixedPayDates::size
    - exercise::type
    - referenceDate
    - empty
    - fixedCoupons::size
    - discountBondOption
    - Brent::setMaxEvaluations
    - DayCounter::yearFraction
    - ext::shared_ptr::termStructure
    - Null<Real>
    - discountBond
    - Brent::solve
    - exercise::date
    - std::vector::size
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    - swap::spread
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void JamshidianSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: QuantLib::withinPreviousWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinPreviousWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::withinNextWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinNextWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    - Dst: QuantLib::withinNextWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::withinOneWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::withinNextWeek
    - QuantLib::withinPreviousWeek
    linkageType: ''
    returnType: bool
    signature: bool withinOneWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: QuantLib::withinPreviousWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinPreviousWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::withinNextWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinNextWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    - Dst: QuantLib::withinNextWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::withinOneWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::withinNextWeek
    - QuantLib::withinPreviousWeek
    linkageType: ''
    returnType: bool
    signature: bool withinOneWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DiscretizedAsset>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:56,1
    - Dst: Swaption::arguments::exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:57,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:59,1
    - Dst: Swaption::arguments::exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:59,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:62,1
    - Dst: Swaption::arguments::fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:62,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:64,1
    - Dst: Swaption::arguments::floatingPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:65,1
    - Dst: ext::make_shared<DiscretizedSwap>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - Swaption::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 70
    functionName: QuantLib::DiscretizedSwaption::DiscretizedSwaption
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - Swaption::arguments::floatingPayDates::back
    - QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
    - ext::shared_ptr<DiscretizedAsset>
    - yearFraction
    - resize
    - Swaption::arguments::exercise::dates
    - ext::make_shared<DiscretizedSwap>
    - std::max
    - std::vector<Time>
    - size
    - Swaption::arguments::fixedPayDates::back
    - Swaption::arguments::exercise::date
    - exercise::type
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwaption::DiscretizedSwaption(const Swaption::arguments&
      args,\n                                             const Date& referenceDate,\n
      \                                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:73,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:73,1
    - Dst: QuantLib::DiscretizedOption::reset
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::DiscretizedSwaption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - method
    - initialize
    - QuantLib::DiscretizedOption::reset
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwaption::reset(Size size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swap::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:85,1
    - Dst: swap::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:88,1
    - Dst: swap::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:88,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:90,1
    - Dst: swap::floatingLeg
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:90,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:93,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:94,1
    - Dst: withinOneWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:96,1
    - Dst: withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:103,1
    - Dst: withinOneWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:105,1
    - Dst: withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:107,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:116,1
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::nominal
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::fixedDayCount
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:118,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:118,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: swap::floatingDayCount
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: swap::paymentConvention
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: Swaption::setupArguments
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:124,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 6
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    - ' snappedArgs'
    - ' fixedCouponAdjustments'
    - ' floatingCouponAdjustments'
    argTypes:
    - Swaption::arguments
    - Date
    - DayCounter
    - PricingEngine::arguments
    - std::vector<CouponAdjustment>
    - std::vector<CouponAdjustment>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 125
    functionName: QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 1
    functionsReached:
    - exercise::dates
    - ext::make_shared<VanillaSwap>
    - swap::type
    - withinPreviousWeek
    - swap::floatingLeg
    - swap::floatingDayCount
    - withinOneWeek
    - swap::paymentConvention
    - Swaption::setupArguments
    - std::vector::size
    - swap::fixedDayCount
    - swap::fixedSchedule
    - swap::spread
    - swap::iborIndex
    - swap::fixedRate
    - resize
    - swap::floatingSchedule
    - swap::nominal
    - swap::fixedLeg
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwaption::prepareSwaptionWithSnappedDates(\n        const
      Swaption::arguments& args,\n        const Date& referenceDate,\n        const
      DayCounter& dayCounter,\n        PricingEngine::arguments& snappedArgs,\n        std::vector<CouponAdjustment>&
      fixedCouponAdjustments,\n        std::vector<CouponAdjustment>& floatingCouponAdjustments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: QuantLib::withinPreviousWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinPreviousWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::withinNextWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinNextWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    - Dst: QuantLib::withinNextWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::withinOneWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::withinNextWeek
    - QuantLib::withinPreviousWeek
    linkageType: ''
    returnType: bool
    signature: bool withinOneWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: QuantLib::withinPreviousWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinPreviousWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::withinNextWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool withinNextWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    - Dst: QuantLib::withinNextWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::withinOneWeek
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::withinNextWeek
    - QuantLib::withinPreviousWeek
    linkageType: ''
    returnType: bool
    signature: bool withinOneWeek(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DiscretizedAsset>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:43,1
    - Dst: QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:56,1
    - Dst: Swaption::arguments::exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:57,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:59,1
    - Dst: Swaption::arguments::exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:59,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:62,1
    - Dst: Swaption::arguments::fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:62,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:64,1
    - Dst: Swaption::arguments::floatingPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:65,1
    - Dst: ext::make_shared<DiscretizedSwap>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - Swaption::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 70
    functionName: QuantLib::DiscretizedSwaption::DiscretizedSwaption
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - Swaption::arguments::floatingPayDates::back
    - QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
    - ext::shared_ptr<DiscretizedAsset>
    - yearFraction
    - resize
    - Swaption::arguments::exercise::dates
    - ext::make_shared<DiscretizedSwap>
    - std::max
    - std::vector<Time>
    - size
    - Swaption::arguments::fixedPayDates::back
    - Swaption::arguments::exercise::date
    - exercise::type
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwaption::DiscretizedSwaption(const Swaption::arguments&
      args,\n                                             const Date& referenceDate,\n
      \                                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:73,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:73,1
    - Dst: QuantLib::DiscretizedOption::reset
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::DiscretizedSwaption::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 0
    functionsReached:
    - method
    - initialize
    - QuantLib::DiscretizedOption::reset
    linkageType: ''
    returnType: void
    signature: void DiscretizedSwaption::reset(Size size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swap::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:85,1
    - Dst: swap::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:86,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:88,1
    - Dst: swap::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:88,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:90,1
    - Dst: swap::floatingLeg
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:90,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:93,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:94,1
    - Dst: withinOneWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:96,1
    - Dst: withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:103,1
    - Dst: withinOneWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:105,1
    - Dst: withinPreviousWeek
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:107,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:116,1
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::nominal
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:117,1
    - Dst: swap::fixedDayCount
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:118,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:118,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: swap::floatingDayCount
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: swap::paymentConvention
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:119,1
    - Dst: Swaption::setupArguments
      Src: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp:124,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 6
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    - ' snappedArgs'
    - ' fixedCouponAdjustments'
    - ' floatingCouponAdjustments'
    argTypes:
    - Swaption::arguments
    - Date
    - DayCounter
    - PricingEngine::arguments
    - std::vector<CouponAdjustment>
    - std::vector<CouponAdjustment>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 125
    functionName: QuantLib::DiscretizedSwaption::prepareSwaptionWithSnappedDates
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/discretizedswaption.cpp
    functionUses: 2
    functionsReached:
    - exercise::dates
    - ext::make_shared<VanillaSwap>
    - swap::type
    - withinPreviousWeek
    - swap::floatingLeg
    - swap::floatingDayCount
    - withinOneWeek
    - swap::paymentConvention
    - Swaption::setupArguments
    - std::vector::size
    - swap::fixedDayCount
    - swap::fixedSchedule
    - swap::spread
    - swap::iborIndex
    - swap::fixedRate
    - resize
    - swap::floatingSchedule
    - swap::nominal
    - swap::fixedLeg
    linkageType: ''
    returnType: void
    signature: "void DiscretizedSwaption::prepareSwaptionWithSnappedDates(\n        const
      Swaption::arguments& args,\n        const Date& referenceDate,\n        const
      DayCounter& dayCounter,\n        PricingEngine::arguments& snappedArgs,\n        std::vector<CouponAdjustment>&
      fixedCouponAdjustments,\n        std::vector<CouponAdjustment>& floatingCouponAdjustments)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           const TimeGrid& timeGrid,\n
      \                                          Handle<YieldTermStructure> termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - Handle<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const Handle<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:56,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:62,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:64,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:68,1
    - Dst: DiscretizedSwaption::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:78,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:78,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:79,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:85,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:86,1
    - Dst: DiscretizedSwaption::initialize
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:88,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:88,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: DiscretizedSwaption::rollback
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:93,1
    - Dst: DiscretizedSwaption::presentValue
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 96
    functionName: QuantLib::TreeSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - DiscretizedSwaption::mandatoryTimes
    - dayCounter
    - DiscretizedSwaption::presentValue
    - referenceDate
    - empty
    - DiscretizedSwaption::rollback
    - std::find_if
    - DayCounter::yearFraction
    - ext::shared_ptr::termStructure
    - DiscretizedSwaption::initialize
    - exercise::date
    - std::vector::size
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    - tree
    - std::vector::begin
    - std::vector::end
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void TreeSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           const TimeGrid& timeGrid,\n
      \                                          Handle<YieldTermStructure> termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - Handle<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::TreeSwaptionEngine::TreeSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeSwaptionEngine::TreeSwaptionEngine(const Handle<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:56,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:56,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:62,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:64,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:68,1
    - Dst: DiscretizedSwaption::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:78,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:78,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:79,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:82,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:85,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:86,1
    - Dst: DiscretizedSwaption::initialize
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:88,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:88,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:91,1
    - Dst: DiscretizedSwaption::rollback
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:93,1
    - Dst: DiscretizedSwaption::presentValue
      Src: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 96
    functionName: QuantLib::TreeSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/treeswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - DiscretizedSwaption::mandatoryTimes
    - dayCounter
    - DiscretizedSwaption::presentValue
    - referenceDate
    - empty
    - DiscretizedSwaption::rollback
    - std::find_if
    - DayCounter::yearFraction
    - ext::shared_ptr::termStructure
    - DiscretizedSwaption::initialize
    - exercise::date
    - std::vector::size
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    - tree
    - std::vector::begin
    - std::vector::end
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void TreeSwaptionEngine::calculate() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:41,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:44,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:45,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:46,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:52,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:58,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:60,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:62,1
    - Dst: ext::shared_ptr::rebate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:66,1
    - Dst: ext::shared_ptr::rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:75,1
    - Dst: valueDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:76,1
    - Dst: underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:76,1
    - Dst: smileSection
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:78,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:80,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:80,1
    - Dst: ext::shared_ptr::atmLevel
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:82,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:84,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:85,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:87,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:88,1
    - Dst: ext::make_shared<SwaptionHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:90,1
    - Dst: underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:91,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:92,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:92,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:93,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:95,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:96,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:98,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:99,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:100,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:101,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:114,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:115,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:116,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:120,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:122,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:125,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:126,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:129,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:138,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:159,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:160,1
    - Dst: ext::make_shared<MatchHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:163,1
    - Dst: underlyingType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:164,1
    - Dst: initialGuess
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:171,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:178,1
    - Dst: LevenbergMarquardt::minimize
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:183,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:187,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:189,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:191,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:194,1
    - Dst: smileSection
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:204,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:214,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:216,1
    - Dst: ext::make_shared<SwaptionHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:218,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:220,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:220,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:222,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:223,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:224,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:225,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:226,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:227,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:228,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:230,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:230,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:235,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:239,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 4
    argNames:
    - ' exercise'
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 243
    functionName: QuantLib::BasketGeneratingEngine::calibrationBasket
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - ext::shared_ptr::shift
    - dayCounter
    - initialGuess
    - Real
    - ext::make_shared<MatchHelper>
    - ext::shared_ptr::volatility
    - zerobond
    - Problem::currentValue
    - std::vector::push_back
    - underlyingNpv
    - date
    - fixedLegTenor
    - empty
    - QuantLib::Date::maxDate
    - ext::dynamic_pointer_cast<RebatedExercise>
    - fabs
    - Handle<Quote>
    - std::upper_bound
    - exp
    - ext::shared_ptr::atmLevel
    - iborIndex
    - underlyingType
    - value
    - Null<Real>
    - underlyingLastDate
    - exogenousDiscount
    - valueDate
    - termStructure
    - NoConstraint
    - std::max
    - QL_FAIL
    - forwardingTermStructure
    - std::lround
    - ext::shared_ptr::rebate
    - LevenbergMarquardt::minimize
    - QL_REQUIRE
    - smileSection
    - std::floor
    - discountingTermStructure
    - ext::shared_ptr::rebatePaymentDate
    - dates
    - volatilityType
    - QuantLib::detail::instance
    - Array::size
    - ext::make_shared<SwaptionHelper>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> BasketGeneratingEngine::calibrationBasket(\n
      \       const ext::shared_ptr<Exercise>& exercise,\n        const ext::shared_ptr<SwapIndex>&
      standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const CalibrationBasketType basketType) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:41,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:44,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:45,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:46,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:51,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:52,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:53,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:58,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:60,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:62,1
    - Dst: ext::shared_ptr::rebate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:66,1
    - Dst: ext::shared_ptr::rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:75,1
    - Dst: valueDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:76,1
    - Dst: underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:76,1
    - Dst: smileSection
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:78,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:80,1
    - Dst: std::lround
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:80,1
    - Dst: ext::shared_ptr::atmLevel
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:82,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:84,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:85,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:87,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:88,1
    - Dst: ext::make_shared<SwaptionHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:90,1
    - Dst: underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:91,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:92,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:92,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:93,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:95,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:96,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:98,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:99,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:100,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:101,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:114,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:114,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:115,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:116,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:120,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:122,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:125,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:126,1
    - Dst: underlyingNpv
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:129,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:138,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:159,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:160,1
    - Dst: ext::make_shared<MatchHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:163,1
    - Dst: underlyingType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:164,1
    - Dst: initialGuess
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:171,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:178,1
    - Dst: LevenbergMarquardt::minimize
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:183,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:187,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:189,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:191,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:194,1
    - Dst: smileSection
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:204,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:205,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:209,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:214,1
    - Dst: ext::shared_ptr::volatility
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:216,1
    - Dst: ext::make_shared<SwaptionHelper>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:218,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:220,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:220,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:222,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:223,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:224,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:225,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:226,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:227,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:228,1
    - Dst: fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:230,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:230,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:235,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp:239,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 4
    argNames:
    - ' exercise'
    - ' standardSwapBase'
    - ' swaptionVolatility'
    - basketType
    argTypes:
    - ext::shared_ptr<Exercise>
    - ext::shared_ptr<SwapIndex>
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - CalibrationBasketType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 243
    functionName: QuantLib::BasketGeneratingEngine::calibrationBasket
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - ext::shared_ptr::shift
    - dayCounter
    - initialGuess
    - Real
    - ext::make_shared<MatchHelper>
    - ext::shared_ptr::volatility
    - zerobond
    - Problem::currentValue
    - std::vector::push_back
    - underlyingNpv
    - date
    - fixedLegTenor
    - empty
    - QuantLib::Date::maxDate
    - ext::dynamic_pointer_cast<RebatedExercise>
    - fabs
    - Handle<Quote>
    - std::upper_bound
    - exp
    - ext::shared_ptr::atmLevel
    - iborIndex
    - underlyingType
    - value
    - Null<Real>
    - underlyingLastDate
    - exogenousDiscount
    - valueDate
    - termStructure
    - NoConstraint
    - std::max
    - QL_FAIL
    - forwardingTermStructure
    - std::lround
    - ext::shared_ptr::rebate
    - LevenbergMarquardt::minimize
    - QL_REQUIRE
    - smileSection
    - std::floor
    - discountingTermStructure
    - ext::shared_ptr::rebatePaymentDate
    - dates
    - volatilityType
    - QuantLib::detail::instance
    - Array::size
    - ext::make_shared<SwaptionHelper>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<BlackCalibrationHelper>>
    signature: "std::vector<ext::shared_ptr<BlackCalibrationHelper>> BasketGeneratingEngine::calibrationBasket(\n
      \       const ext::shared_ptr<Exercise>& exercise,\n        const ext::shared_ptr<SwapIndex>&
      standardSwapBase,\n        const ext::shared_ptr<SwaptionVolatilityStructure>&
      swaptionVolatility,\n        const CalibrationBasketType basketType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: QuantLib::JamshidianSwaptionEngine::JamshidianSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void JamshidianSwaptionEngine(\n            const ext::shared_ptr<OneFactorAffineModel>&
      model,\n            Handle<YieldTermStructure> termStructure = Handle<YieldTermStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:54,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: QuantLib::JamshidianSwaptionEngine::JamshidianSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/jamshidianswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void JamshidianSwaptionEngine(\n            const ext::shared_ptr<OneFactorAffineModel>&
      model,\n            Handle<YieldTermStructure> termStructure = Handle<YieldTermStructure>())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:39,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:39,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:40,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:41,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:43,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:43,1
    - Dst: floatingResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:44,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:45,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:52,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:57,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:58,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:59,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:59,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:60,1
    - Dst: floatingResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:64,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:69,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:71,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:81,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:82,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:82,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - expiry
    - y
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 88
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingNpv
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::end
    - forwardRate
    - swap::iborIndex
    - empty
    - value
    - zerobond
    - floatingResetDates::begin
    - std::upper_bound
    - Real
    - termStructure
    - floatingResetDates::end
    - fixedResetDates::size
    - fixedResetDates::begin
    - exp
    - floatingResetDates::size
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dNonstandardSwaptionEngine::underlyingNpv(const Date
      &expiry,\n                                                       const Real
      y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingType
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type Gaussian1dNonstandardSwaptionEngine::underlyingType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - fixedPayDates::back
    linkageType: ''
    returnType: Date
    signature: Date Gaussian1dNonstandardSwaptionEngine::underlyingLastDate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:103,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:103,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:104,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:105,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:109,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:120,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:127,1
    - Dst: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:127,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 132
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::initialGuess
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::end
    - close
    - QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
    - std::upper_bound
    - termStructure
    - fixedResetDates::size
    - fixedResetDates::begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Gaussian1dNonstandardSwaptionEngine::initialGuess(const Date
      &expiry) const
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:136,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:140,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:142,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:150,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:152,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:153,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:155,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:156,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:165,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:173,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:174,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:180,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:187,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:189,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:190,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:193,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:193,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:194,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:195,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:197,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:197,1
    - Dst: floatingResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:198,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:199,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:203,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:207,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:210,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:210,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:212,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:220,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:221,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:228,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:229,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:230,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:231,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:232,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:239,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:240,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:241,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:241,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:243,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:250,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:252,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:252,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:253,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:253,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:254,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:254,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:255,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:255,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:256,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:260,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:261,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:262,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:263,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:274,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:276,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:278,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:279,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:280,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:280,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:282,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:290,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:291,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:298,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:300,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:301,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:302,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:303,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:310,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:312,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:313,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:314,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:317,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:324,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:326,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:327,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:328,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:329,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:330,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:332,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:333,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:334,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:338,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:340,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:342,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:344,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:360,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:363,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:364,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:365,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:366,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:367,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:380,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:383,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:387,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:392,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:394,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:395,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:396,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:397,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:398,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:405,1
    - Dst: ext::shared_ptr::rebate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:413,1
    - Dst: ext::shared_ptr::rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:414,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:416,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:417,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:418,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:419,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:420,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:427,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:430,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:434,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:435,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:439,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:441,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:442,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:445,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:450,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:452,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:455,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:458,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:464,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:468,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:472,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:473,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:482,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:486,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:487,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:491,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 104
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 496
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - static_cast<int>
    - floatingResetDates::begin
    - Real
    - swap
    - Date
    - payoff0
    - zerobond
    - std::vector::push_back
    - fixedResetDates::end
    - empty
    - ext::dynamic_pointer_cast<RebatedExercise>
    - Array::begin
    - begin
    - yGrid
    - floatingCoupons::size
    - fixedCoupons::size
    - std::upper_bound
    - std::exp
    - value
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - push_back
    - std::max
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - floatingResetDates::end
    - CubicInterpolation::bCoefficients
    - fixedResetDates::begin
    - std::vector::size
    - ext::shared_ptr::rebate
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - swap::iborIndex
    - ext::shared_ptr::rebatePaymentDate
    - numeraire
    - Array::size
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void Gaussian1dNonstandardSwaptionEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:39,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:39,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:40,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:41,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:43,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:43,1
    - Dst: floatingResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:44,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:45,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:52,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:55,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:57,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:58,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:59,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:59,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:60,1
    - Dst: floatingResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:64,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:69,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:71,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:81,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:82,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:82,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - expiry
    - y
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 88
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingNpv
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::end
    - forwardRate
    - swap::iborIndex
    - empty
    - value
    - zerobond
    - floatingResetDates::begin
    - std::upper_bound
    - Real
    - termStructure
    - floatingResetDates::end
    - fixedResetDates::size
    - fixedResetDates::begin
    - exp
    - floatingResetDates::size
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dNonstandardSwaptionEngine::underlyingNpv(const Date
      &expiry,\n                                                       const Real
      y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingType
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type Gaussian1dNonstandardSwaptionEngine::underlyingType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedPayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 1
    functionsReached:
    - fixedPayDates::back
    linkageType: ''
    returnType: Date
    signature: Date Gaussian1dNonstandardSwaptionEngine::underlyingLastDate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:103,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:103,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:104,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:105,1
    - Dst: fixedResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:109,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:120,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:127,1
    - Dst: QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:127,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 132
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::initialGuess
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - fixedResetDates::end
    - close
    - QuantLib::Gaussian1dNonstandardSwaptionEngine::underlyingLastDate
    - std::upper_bound
    - termStructure
    - fixedResetDates::size
    - fixedResetDates::begin
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array Gaussian1dNonstandardSwaptionEngine::initialGuess(const Date
      &expiry) const
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:136,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:140,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:142,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:150,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:152,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:153,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:155,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:156,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:165,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:173,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:174,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:180,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:187,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:189,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:190,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:193,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:193,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:194,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:195,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:197,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:197,1
    - Dst: floatingResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:198,1
    - Dst: floatingResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:199,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:203,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:207,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:209,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:209,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:210,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:210,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:212,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:216,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:220,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:221,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:224,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:228,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:229,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:230,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:231,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:232,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:239,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:240,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:241,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:241,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:243,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:250,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:252,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:252,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:253,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:253,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:254,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:254,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:255,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:255,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:256,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:260,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:261,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:262,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:263,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:274,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:276,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:278,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:279,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:280,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:280,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:282,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:286,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:290,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:291,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:298,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:300,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:301,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:302,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:303,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:310,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:312,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:313,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:314,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:317,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:324,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:326,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:327,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:328,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:329,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:330,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:332,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:333,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:334,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:338,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:340,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:342,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:344,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:360,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:363,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:364,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:365,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:366,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:367,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:380,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:383,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:387,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:392,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:394,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:395,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:396,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:397,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:398,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:405,1
    - Dst: ext::shared_ptr::rebate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:413,1
    - Dst: ext::shared_ptr::rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:414,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:416,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:417,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:418,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:419,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:420,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:427,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:430,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:434,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:435,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:439,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:441,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:442,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:445,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:450,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:452,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:455,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:458,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:464,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:468,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:472,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:473,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:482,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:486,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:487,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp:491,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 104
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 496
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - static_cast<int>
    - floatingResetDates::begin
    - Real
    - swap
    - Date
    - payoff0
    - zerobond
    - std::vector::push_back
    - fixedResetDates::end
    - empty
    - ext::dynamic_pointer_cast<RebatedExercise>
    - Array::begin
    - begin
    - yGrid
    - floatingCoupons::size
    - fixedCoupons::size
    - std::upper_bound
    - std::exp
    - value
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - push_back
    - std::max
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - floatingResetDates::end
    - CubicInterpolation::bCoefficients
    - fixedResetDates::begin
    - std::vector::size
    - ext::shared_ptr::rebate
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - swap::iborIndex
    - ext::shared_ptr::rebatePaymentDate
    - numeraire
    - Array::size
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void Gaussian1dNonstandardSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:92,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    - displacement
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity,\n                  const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:115,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:92,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    - displacement
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity,\n                  const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:115,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:188,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 193
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Volatility vol,\n            const DayCounter& dc,\n
      \           Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:202,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:206,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - discountCurve
    - ' vol'
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            const Handle<Quote>& vol,\n            const DayCounter&
      dc,\n            Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:216,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Handle<SwaptionVolatilityStructure> volatility,\n
      \           CashAnnuityModel model)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:227,1
    - Dst: auto::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:235,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:237,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:239,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:242,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:246,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:247,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:248,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:249,1
    - Dst: auto::valuationDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:250,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:251,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:256,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:264,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:277,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:281,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:284,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:285,1
    - Dst: tenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:286,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:289,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:292,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:293,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:295,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:299,1
    - Dst: swapLength
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:305,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:308,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:311,1
    - Dst: shift
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:314,1
    - Dst: auto::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:316,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:317,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:319,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:320,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::dayCounter
    - auto::floatingSchedule
    - Real
    - auto::fairRate
    - auto::fixedSchedule
    - exercise::type
    - ext::make_shared<DiscountingSwapEngine>
    - shift
    - tenor
    - ext::shared_ptr::accrualStartDate
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::valuationDate
    - Spec
    - QuantLib::CashFlows::bps
    - auto::spread
    - std::max
    - QL_FAIL
    - blackVariance
    - exercise::date
    - auto::fixedLeg
    - auto::fixedLegBPS
    - QL_REQUIRE
    - swapLength
    - timeFromReference
    - auto::type
    - dates
    - volatilityType
    - discount
    - QuantLib::detail::instance
    - std::sqrt
    - InterestRate
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void BlackStyleSwaptionEngine<Spec>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:188,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 193
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Volatility vol,\n            const DayCounter& dc,\n
      \           Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:202,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:206,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - discountCurve
    - ' vol'
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            const Handle<Quote>& vol,\n            const DayCounter&
      dc,\n            Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:216,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Handle<SwaptionVolatilityStructure> volatility,\n
      \           CashAnnuityModel model)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:227,1
    - Dst: auto::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:235,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:237,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:239,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:242,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:246,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:247,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:248,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:249,1
    - Dst: auto::valuationDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:250,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:251,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:256,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:264,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:277,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:281,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:284,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:285,1
    - Dst: tenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:286,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:289,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:292,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:293,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:295,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:299,1
    - Dst: swapLength
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:305,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:308,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:311,1
    - Dst: shift
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:314,1
    - Dst: auto::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:316,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:317,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:319,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:320,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::dayCounter
    - auto::floatingSchedule
    - Real
    - auto::fairRate
    - auto::fixedSchedule
    - exercise::type
    - ext::make_shared<DiscountingSwapEngine>
    - shift
    - tenor
    - ext::shared_ptr::accrualStartDate
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::valuationDate
    - Spec
    - QuantLib::CashFlows::bps
    - auto::spread
    - std::max
    - QL_FAIL
    - blackVariance
    - exercise::date
    - auto::fixedLeg
    - auto::fixedLegBPS
    - QL_REQUIRE
    - swapLength
    - timeFromReference
    - auto::type
    - dates
    - volatilityType
    - discount
    - QuantLib::detail::instance
    - std::sqrt
    - InterestRate
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void BlackStyleSwaptionEngine<Spec>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:92,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    - displacement
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity,\n                  const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:115,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::detail::BlackStyleSwaptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:92,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    - displacement
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity,\n                  const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    - displacement
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionName: QuantLib::detail::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real value(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:115,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - strike
    - atmForward
    - stdDev
    - exerciseTime
    - annuity
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: QuantLib::detail::vega
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaStdDevDerivative
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real vega(const Real strike, const Real atmForward, const Real stdDev,\n
      \                 const Real exerciseTime, const Real annuity, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormulaForwardDerivative
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - atmForward
    - stdDev
    - annuity
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionName: QuantLib::detail::delta
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormulaForwardDerivative
    linkageType: ''
    returnType: Real
    signature: "Real delta(const Option::Type type, const Real strike,\n                   const
      Real atmForward, const Real stdDev, const Real annuity,\n                   const
      Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:188,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 193
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Volatility vol,\n            const DayCounter& dc,\n
      \           Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:202,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:206,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - discountCurve
    - ' vol'
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            const Handle<Quote>& vol,\n            const DayCounter&
      dc,\n            Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:216,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Handle<SwaptionVolatilityStructure> volatility,\n
      \           CashAnnuityModel model)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:227,1
    - Dst: auto::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:235,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:237,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:239,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:242,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:246,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:247,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:248,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:249,1
    - Dst: auto::valuationDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:250,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:251,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:256,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:264,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:277,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:281,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:284,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:285,1
    - Dst: tenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:286,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:289,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:292,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:293,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:295,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:299,1
    - Dst: swapLength
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:305,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:308,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:311,1
    - Dst: shift
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:314,1
    - Dst: auto::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:316,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:317,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:319,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:320,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::dayCounter
    - auto::floatingSchedule
    - Real
    - auto::fairRate
    - auto::fixedSchedule
    - exercise::type
    - ext::make_shared<DiscountingSwapEngine>
    - shift
    - tenor
    - ext::shared_ptr::accrualStartDate
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::valuationDate
    - Spec
    - QuantLib::CashFlows::bps
    - auto::spread
    - std::max
    - QL_FAIL
    - blackVariance
    - exercise::date
    - auto::fixedLeg
    - auto::fixedLegBPS
    - QL_REQUIRE
    - swapLength
    - timeFromReference
    - auto::type
    - dates
    - volatilityType
    - discount
    - QuantLib::detail::instance
    - std::sqrt
    - InterestRate
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void BlackStyleSwaptionEngine<Spec>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:188,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:190,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:189,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 193
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Volatility vol,\n            const DayCounter& dc,\n
      \           Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:202,1
    - Dst: ext::shared_ptr<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:204,1
    - Dst: ConstantSwaptionVolatility::ConstantSwaptionVolatility
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:203,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:206,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - discountCurve
    - ' vol'
    - ' dc'
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SwaptionVolatilityStructure>
    - Spec
    - std::move
    - ConstantSwaptionVolatility::ConstantSwaptionVolatility
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            const Handle<Quote>& vol,\n            const DayCounter&
      dc,\n            Real displacement,\n            CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:215,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:216,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackStyleSwaptionEngine<Spec>::BlackStyleSwaptionEngine(\n            Handle<YieldTermStructure>
      discountCurve,\n            Handle<SwaptionVolatilityStructure> volatility,\n
      \           CashAnnuityModel model)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:224,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:227,1
    - Dst: auto::fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:235,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:237,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:238,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:239,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:242,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:246,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:247,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:248,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:249,1
    - Dst: auto::valuationDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:250,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:251,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:256,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:259,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:264,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:274,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:277,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:281,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:284,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:285,1
    - Dst: tenor
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:286,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:289,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:290,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:292,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:293,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:295,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:299,1
    - Dst: swapLength
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:300,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:301,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:305,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:308,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:311,1
    - Dst: shift
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:312,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:314,1
    - Dst: auto::type
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:316,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:317,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:319,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:320,1
    - Dst: Spec
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:322,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:325,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp:326,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 327
    functionName: QuantLib::detail::BlackStyleSwaptionEngine<Spec>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::dayCounter
    - auto::floatingSchedule
    - Real
    - auto::fairRate
    - auto::fixedSchedule
    - exercise::type
    - ext::make_shared<DiscountingSwapEngine>
    - shift
    - tenor
    - ext::shared_ptr::accrualStartDate
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::valuationDate
    - Spec
    - QuantLib::CashFlows::bps
    - auto::spread
    - std::max
    - QL_FAIL
    - blackVariance
    - exercise::date
    - auto::fixedLeg
    - auto::fixedLegBPS
    - QL_REQUIRE
    - swapLength
    - timeFromReference
    - auto::type
    - dates
    - volatilityType
    - discount
    - QuantLib::detail::instance
    - std::sqrt
    - InterestRate
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void BlackStyleSwaptionEngine<Spec>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::Gaussian1dJamshidianSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dJamshidianSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::Gaussian1dJamshidianSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dJamshidianSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - range
    - intervals
    argTypes:
    - ext::shared_ptr<G2>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::G2SwaptionEngine::G2SwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void G2SwaptionEngine(const ext::shared_ptr<G2>& model,\n                         Real
      range,\n                         Size intervals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:53,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:62,1
    - Dst: swaption
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 66
    functionName: QuantLib::G2SwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp
    functionUses: 0
    functionsReached:
    - swaption
    - ext::make_shared<DiscountingSwapEngine>
    - empty
    - auto::spread
    - termStructure
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::fixedLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - range
    - intervals
    argTypes:
    - ext::shared_ptr<G2>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::G2SwaptionEngine::G2SwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void G2SwaptionEngine(const ext::shared_ptr<G2>& model,\n                         Real
      range,\n                         Size intervals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:53,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: ext::make_shared<DiscountingSwapEngine>
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:59,1
    - Dst: auto::spread
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:60,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::floatingLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:61,1
    - Dst: auto::fixedRate
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:62,1
    - Dst: swaption
      Src: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 66
    functionName: QuantLib::G2SwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/g2swaptionengine.hpp
    functionUses: 0
    functionsReached:
    - swaption
    - ext::make_shared<DiscountingSwapEngine>
    - empty
    - auto::spread
    - termStructure
    - std::fabs
    - auto::setPricingEngine
    - auto::floatingLegBPS
    - auto::fixedRate
    - auto::fixedLegBPS
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:75,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:77,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:90,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 95
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::Gaussian1dFloatFloatSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dFloatFloatSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas =\n                Handle<Quote>(),
      // continously compounded w.r.t. yts daycounter\n            const Handle<YieldTermStructure>
      &discountCurve =\n                Handle<YieldTermStructure>(),\n            const
      bool includeTodaysExercise = false,\n            const Probabilities probabilities
      = None)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:103,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:105,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:118,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:121,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 123
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::Gaussian1dFloatFloatSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dFloatFloatSwaptionEngine(\n            const Handle<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas =\n                Handle<Quote>(),
      // continously compounded w.r.t. yts daycounter\n            const Handle<YieldTermStructure>
      &discountCurve =\n                Handle<YieldTermStructure>(),\n            const
      bool includeTodaysExercise = false,\n            const Probabilities probabilities
      = None)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:128,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::discountingCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - termStructure
    - empty
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountingCurve() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:75,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:77,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:90,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:91,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 95
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::Gaussian1dFloatFloatSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dFloatFloatSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas =\n                Handle<Quote>(),
      // continously compounded w.r.t. yts daycounter\n            const Handle<YieldTermStructure>
      &discountCurve =\n                Handle<YieldTermStructure>(),\n            const
      bool includeTodaysExercise = false,\n            const Probabilities probabilities
      = None)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:103,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:105,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:118,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:119,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:121,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 123
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::Gaussian1dFloatFloatSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dFloatFloatSwaptionEngine(\n            const Handle<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas =\n                Handle<Quote>(),
      // continously compounded w.r.t. yts daycounter\n            const Handle<YieldTermStructure>
      &discountCurve =\n                Handle<YieldTermStructure>(),\n            const
      bool includeTodaysExercise = false,\n            const Probabilities probabilities
      = None)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:128,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::discountingCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - termStructure
    - empty
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountingCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - yGrid
    - dampingSteps
    - invEps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<G2>
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdG2SwaptionEngine::FdG2SwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdG2SwaptionEngine::FdG2SwaptionEngine(\n        const ext::shared_ptr<G2>&
      model,\n        Size tGrid, Size xGrid, Size yGrid,\n        Size dampingSteps,
      Real invEps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:49,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:52,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:55,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:56,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:58,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: b
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: eta
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:67,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:70,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:73,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:76,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:81,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:86,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: b
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: eta
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: G2::G2
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:101,1
    - Dst: FdmAffineModelSwapInnerValue<G2>::FdmAffineModelSwapInnerValue<G2>
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:100,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:106,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:107,1
    - Dst: FdmG2Solver::valueAt
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 121
    functionName: QuantLib::FdG2SwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - Handle::dayCounter
    - empty
    - FdmAffineModelSwapInnerValue<G2>::FdmAffineModelSwapInnerValue<G2>
    - exercise::lastDate
    - rho
    - b
    - sigma
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - DayCounter::yearFraction
    - termStructure
    - DividendSchedule
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - eta
    - swap::iborIndex
    - a
    - currentLink
    - FdmG2Solver::valueAt
    - G2::G2
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: void FdG2SwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - yGrid
    - dampingSteps
    - invEps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<G2>
    - Size
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdG2SwaptionEngine::FdG2SwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdG2SwaptionEngine::FdG2SwaptionEngine(\n        const ext::shared_ptr<G2>&
      model,\n        Size tGrid, Size xGrid, Size yGrid,\n        Size dampingSteps,
      Real invEps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:49,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:52,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:55,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:56,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:58,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:61,1
    - Dst: b
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: eta
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:64,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:67,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:70,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:73,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:76,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:81,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:86,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:92,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: b
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: eta
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: rho
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:97,1
    - Dst: G2::G2
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:96,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:101,1
    - Dst: FdmAffineModelSwapInnerValue<G2>::FdmAffineModelSwapInnerValue<G2>
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:100,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:106,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:107,1
    - Dst: FdmG2Solver::valueAt
      Src: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 121
    functionName: QuantLib::FdG2SwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdg2swaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - Handle::dayCounter
    - empty
    - FdmAffineModelSwapInnerValue<G2>::FdmAffineModelSwapInnerValue<G2>
    - exercise::lastDate
    - rho
    - b
    - sigma
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - DayCounter::yearFraction
    - termStructure
    - DividendSchedule
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - eta
    - swap::iborIndex
    - a
    - currentLink
    - FdmG2Solver::valueAt
    - G2::G2
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: void FdG2SwaptionEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:67,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::Gaussian1dSwaptionEngine::Gaussian1dSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 86
    functionName: QuantLib::Gaussian1dSwaptionEngine::Gaussian1dSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionEngine(\n            const Handle<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:60,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:65,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:67,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::Gaussian1dSwaptionEngine::Gaussian1dSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:77,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 86
    functionName: QuantLib::Gaussian1dSwaptionEngine::Gaussian1dSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - empty
    - registerWith
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dSwaptionEngine(\n            const Handle<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - dampingSteps
    - invEps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HullWhite>
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdHullWhiteSwaptionEngine::FdHullWhiteSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdHullWhiteSwaptionEngine::FdHullWhiteSwaptionEngine(\n        const
      ext::shared_ptr<HullWhite>& model,\n        Size tGrid, Size xGrid, \n        Size
      dampingSteps, Real invEps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:49,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:52,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:55,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:56,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:58,1
    - Dst: ext::make_shared<OrnsteinUhlenbeckProcess>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: ext::make_shared<FdmSimpleProcess1dMesher>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:61,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:62,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:65,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:70,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:75,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: ext::make_shared<FdmAffineModelSwapInnerValue<HullWhite>>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:85,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:86,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:91,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:92,1
    - Dst: FdmHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 106
    functionName: QuantLib::FdHullWhiteSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<HullWhite>
    - exercise::dates
    - ext::make_shared<FdmSimpleProcess1dMesher>
    - ext::make_shared<FdmAffineModelSwapInnerValue<HullWhite>>
    - ext::make_shared<FdmMesherComposite>
    - Handle::dayCounter
    - empty
    - exercise::lastDate
    - sigma
    - DayCounter::yearFraction
    - FdmHullWhiteSolver::valueAt
    - termStructure
    - ext::make_shared<OrnsteinUhlenbeckProcess>
    - DividendSchedule
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - swap::iborIndex
    - a
    - currentLink
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: void FdHullWhiteSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' model'
    - tGrid
    - xGrid
    - dampingSteps
    - invEps
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<HullWhite>
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdHullWhiteSwaptionEngine::FdHullWhiteSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FdHullWhiteSwaptionEngine::FdHullWhiteSwaptionEngine(\n        const
      ext::shared_ptr<HullWhite>& model,\n        Size tGrid, Size xGrid, \n        Size
      dampingSteps, Real invEps,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:49,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:52,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:55,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:56,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:58,1
    - Dst: ext::make_shared<OrnsteinUhlenbeckProcess>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:60,1
    - Dst: ext::make_shared<FdmSimpleProcess1dMesher>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:61,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:62,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:65,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:69,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:70,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:75,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:77,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:81,1
    - Dst: ext::make_shared<HullWhite>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: a
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: sigma
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:84,1
    - Dst: ext::make_shared<FdmAffineModelSwapInnerValue<HullWhite>>
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:85,1
    - Dst: currentLink
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:86,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:91,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:92,1
    - Dst: FdmHullWhiteSolver::valueAt
      Src: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 106
    functionName: QuantLib::FdHullWhiteSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/fdhullwhiteswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<HullWhite>
    - exercise::dates
    - ext::make_shared<FdmSimpleProcess1dMesher>
    - ext::make_shared<FdmAffineModelSwapInnerValue<HullWhite>>
    - ext::make_shared<FdmMesherComposite>
    - Handle::dayCounter
    - empty
    - exercise::lastDate
    - sigma
    - DayCounter::yearFraction
    - FdmHullWhiteSolver::valueAt
    - termStructure
    - ext::make_shared<OrnsteinUhlenbeckProcess>
    - DividendSchedule
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - swap::iborIndex
    - a
    - currentLink
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: void FdHullWhiteSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - dc
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        Volatility
      vol, const DayCounter &dc,\n                        Real displacement, CashAnnuityModel
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - dc
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        const Handle<Quote>
      &vol,\n                        const DayCounter &dc,\n                        Real
      displacement,\n                        CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:52,1
    - Dst: Handle<SwaptionVolatilityStructure>::volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - vol
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Handle<SwaptionVolatilityStructure>::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        const Handle<SwaptionVolatilityStructure>
      &vol,\n                        CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - discountCurve
    - vol
    - dc
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve, Volatility vol,\n        const DayCounter
      &dc, CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - discountCurve
    - vol
    - dc
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve,\n        const Handle<Quote> &vol,
      const DayCounter &dc, CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:75,1
    - Dst: Handle<SwaptionVolatilityStructure>::volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - vol
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Handle<SwaptionVolatilityStructure>::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve,\n        const Handle<SwaptionVolatilityStructure>
      &vol, CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - dc
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        Volatility
      vol, const DayCounter &dc,\n                        Real displacement, CashAnnuityModel
      model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - discountCurve
    - vol
    - dc
    - displacement
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        const Handle<Quote>
      &vol,\n                        const DayCounter &dc,\n                        Real
      displacement,\n                        CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:52,1
    - Dst: Handle<SwaptionVolatilityStructure>::volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - vol
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::BlackSwaptionEngine::BlackSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Handle<SwaptionVolatilityStructure>::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackSwaptionEngine::BlackSwaptionEngine(\n                        const
      Handle<YieldTermStructure> &discountCurve,\n                        const Handle<SwaptionVolatilityStructure>
      &vol,\n                        CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - discountCurve
    - vol
    - dc
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve, Volatility vol,\n        const DayCounter
      &dc, CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - discountCurve
    - vol
    - dc
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve,\n        const Handle<Quote> &vol,
      const DayCounter &dc, CashAnnuityModel model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:75,1
    - Dst: Handle<SwaptionVolatilityStructure>::volatilityType
      Src: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - vol
    - model
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    - CashAnnuityModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: QuantLib::BachelierSwaptionEngine::BachelierSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/blackswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Handle<SwaptionVolatilityStructure>::volatilityType
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BachelierSwaptionEngine::BachelierSwaptionEngine(\n        const
      Handle<YieldTermStructure> &discountCurve,\n        const Handle<SwaptionVolatilityStructure>
      &vol, CashAnnuityModel model)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:32,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:32,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:35,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:37,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:44,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:44,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:45,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:46,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:46,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:47,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:48,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:53,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:54,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:59,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:67,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:74,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:83,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:84,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:87,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:87,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:88,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:89,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:91,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:91,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:92,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:93,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:102,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:103,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:106,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:107,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:109,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:110,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:113,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:114,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:117,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:126,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:127,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:135,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:136,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:143,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:144,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:145,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:146,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:147,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:153,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:154,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:155,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:160,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:162,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:163,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:165,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:165,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:166,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:169,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:170,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:171,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:182,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:184,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:185,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:193,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:194,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:201,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:203,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:204,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:205,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:206,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:212,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:214,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:215,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:216,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:218,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:224,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:226,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:227,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:228,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:229,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:231,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:232,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:233,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:234,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:237,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:239,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:241,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:243,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:257,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:263,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:265,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:266,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:270,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:273,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:279,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:283,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:284,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:288,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:290,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:291,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:294,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:299,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:301,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:304,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:307,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:313,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:317,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:321,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:322,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:331,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:335,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:336,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:340,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 109
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 345
    functionName: QuantLib::Gaussian1dSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - exercise::dates
    - auto::floatingSchedule
    - Real
    - swap
    - Date
    - payoff0
    - zerobond
    - auto::fixedSchedule
    - std::vector::push_back
    - Array::begin
    - begin
    - yGrid
    - floatingCoupons::size
    - fixedCoupons::size
    - std::upper_bound
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - push_back
    - std::max
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - std::vector::size
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - swap::iborIndex
    - numeraire
    - dates
    - Array::size
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void Gaussian1dSwaptionEngine::calculate() const
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:32,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:32,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:35,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:37,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:44,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:44,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:45,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:46,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:46,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:47,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:48,1
    - Dst: auto::fixedSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:53,1
    - Dst: auto::floatingSchedule
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:54,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:58,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:59,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:67,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:68,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:73,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:74,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:83,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:84,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:87,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:87,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:88,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:89,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:91,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:91,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:92,1
    - Dst: dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:93,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:102,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:103,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:106,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:107,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:109,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:110,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:113,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:114,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:117,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:126,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:127,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:135,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:136,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:139,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:143,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:144,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:145,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:146,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:147,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:152,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:153,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:154,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:154,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:155,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:160,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:162,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:163,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:164,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:165,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:165,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:166,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:169,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:170,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:171,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:172,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:182,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:184,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:185,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:193,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:194,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:197,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:201,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:203,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:204,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:205,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:206,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:212,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:214,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:215,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:216,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:218,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:224,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:226,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:227,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:228,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:229,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:230,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:231,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:232,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:233,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:234,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:237,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:239,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:241,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:243,1
    - Dst: floatingCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:257,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:263,1
    - Dst: swap::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:265,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:266,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:270,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:273,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:279,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:283,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:284,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:288,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:290,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:291,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:294,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:299,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:301,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:304,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:307,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:313,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:317,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:321,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:322,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:331,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:335,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:336,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp:340,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 109
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 345
    functionName: QuantLib::Gaussian1dSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - exercise::dates
    - auto::floatingSchedule
    - Real
    - swap
    - Date
    - payoff0
    - zerobond
    - auto::fixedSchedule
    - std::vector::push_back
    - Array::begin
    - begin
    - yGrid
    - floatingCoupons::size
    - fixedCoupons::size
    - std::upper_bound
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - termStructure
    - push_back
    - std::max
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - std::vector::size
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - swap::iborIndex
    - numeraire
    - dates
    - Array::size
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void Gaussian1dSwaptionEngine::calculate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:29,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:33,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:45,1
    - Dst: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    - ext::dynamic_pointer_cast<RebatedExercise>
    - termStructure
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gaussian1dFloatFloatSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - expiry
    - y
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingNpv
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dFloatFloatSwaptionEngine::underlyingNpv(const Date
      &expiry,\n                                                      const Real y)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingType
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type Gaussian1dFloatFloatSwaptionEngine::underlyingType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg1PayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:66,1
    - Dst: leg2PayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingLastDate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - leg2PayDates::back
    - leg1PayDates::back
    linkageType: ''
    returnType: Date
    signature: Date Gaussian1dFloatFloatSwaptionEngine::underlyingLastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:75,1
    - Dst: leg1ResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:75,1
    - Dst: leg1ResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:76,1
    - Dst: leg1ResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:77,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:83,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:87,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 100
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::initialGuess
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - leg1ResetDates::begin
    - leg1ResetDates::end
    - std::upper_bound
    - leg1ResetDates::size
    linkageType: ''
    returnType: Array
    signature: Array Gaussian1dFloatFloatSwaptionEngine::initialGuess(const Date &expiry)
      const
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:118,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:120,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:122,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::unique
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:133,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:135,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:147,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:148,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:148,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:153,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:155,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:157,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:163,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:164,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:169,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:170,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:173,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:175,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:177,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:179,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:181,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:187,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:208,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:212,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:218,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:219,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:223,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:228,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:229,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:230,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:231,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:231,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:234,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:246,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:247,1
    - Dst: payoff0a
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:248,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:260,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:261,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:262,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:263,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:264,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:267,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:268,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:269,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:270,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:277,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:279,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:281,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:286,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:287,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:288,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:288,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:290,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:297,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:299,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:299,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:300,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:300,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:302,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:302,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:303,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:307,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:308,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:309,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:310,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:315,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:317,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:317,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:318,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:318,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:319,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:319,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:320,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:320,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:321,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:325,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:326,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:327,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:328,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:340,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:342,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:344,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:345,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:346,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:346,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:348,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:356,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:357,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:364,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:366,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:367,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:368,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:369,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:376,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:378,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:379,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:380,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:383,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:390,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:392,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:393,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:394,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:395,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:396,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:397,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:398,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:399,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:400,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:404,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:406,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:408,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:410,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:434,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:434,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:435,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:437,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:439,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:440,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:441,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:442,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:443,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:456,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:461,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:463,1
    - Dst: ext::shared_ptr::gearing1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:467,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:468,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:470,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:473,1
    - Dst: ext::shared_ptr::gearing2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:474,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:475,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:477,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:480,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:485,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:486,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:489,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:490,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:498,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:500,1
    - Dst: leg1FixingDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:504,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:518,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:518,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:519,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:521,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:523,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:524,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:525,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:526,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:527,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:540,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:542,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:542,1
    - Dst: ext::shared_ptr::gearing1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:545,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:546,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:548,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:551,1
    - Dst: ext::shared_ptr::gearing2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:552,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:553,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:555,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:558,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:563,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:564,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:567,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:568,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:576,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:578,1
    - Dst: leg2FixingDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:581,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:592,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:592,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:593,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:595,1
    - Dst: rebate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:600,1
    - Dst: rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:601,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:603,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:604,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:605,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:605,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:606,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:613,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:614,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:622,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:624,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:625,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:628,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:635,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:636,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:639,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:648,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:656,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:657,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:661,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:662,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:673,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:674,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:684,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 171
    argCount: 4
    argNames:
    - ' expiry'
    - y
    - includeExerciseOnExpiry
    - considerProbabilities
    argTypes:
    - Date
    - Real
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 691
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 2
    functionsReached:
    - leg2FixingDates::begin
    - exercise::dates
    - ext::shared_ptr::swapIndex2
    - leg1FixingDates::size
    - leg2FixingDates::end
    - Real
    - leg1FixingDates::end
    - swap
    - Date
    - payoff0
    - zerobond
    - std::vector::insert
    - std::vector::push_back
    - ext::dynamic_pointer_cast<IborIndex>
    - std::vector::resize
    - empty
    - payoff0a
    - std::sort
    - Array::begin
    - begin
    - ext::shared_ptr::gearing1
    - rebatePaymentDate
    - yGrid
    - std::find
    - std::upper_bound
    - std::vector::erase
    - std::min
    - std::exp
    - value
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - swapRate
    - push_back
    - termStructure
    - std::max
    - ext::shared_ptr::tenor
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - leg2FixingDates::size
    - std::vector::size
    - leg1FixingDates::begin
    - ext::shared_ptr::swapIndex1
    - std::distance
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - rebate
    - std::vector::begin
    - ext::dynamic_pointer_cast<SwapIndex>
    - numeraire
    - std::vector::end
    - std::unique
    - ext::dynamic_pointer_cast<SwapSpreadIndex>
    - Array::size
    - ext::shared_ptr::gearing2
    - std::vector::back
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> Gaussian1dFloatFloatSwaptionEngine::npvs(const
      Date& expiry,\n                                             const Real y,\n
      \                                            const bool includeExerciseOnExpiry,\n
      \                                            const bool considerProbabilities)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:29,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:33,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<RebatedExercise>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:45,1
    - Dst: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 27
    functionDepth: 3
    functionLinenumber: 27
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    - ext::dynamic_pointer_cast<RebatedExercise>
    - termStructure
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gaussian1dFloatFloatSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - expiry
    - y
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 3
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingNpv
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    linkageType: ''
    returnType: Real
    signature: "Real Gaussian1dFloatFloatSwaptionEngine::underlyingNpv(const Date
      &expiry,\n                                                      const Real y)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingType
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type Gaussian1dFloatFloatSwaptionEngine::underlyingType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leg1PayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:66,1
    - Dst: leg2PayDates::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::underlyingLastDate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - leg2PayDates::back
    - leg1PayDates::back
    linkageType: ''
    returnType: Date
    signature: Date Gaussian1dFloatFloatSwaptionEngine::underlyingLastDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:75,1
    - Dst: leg1ResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:75,1
    - Dst: leg1ResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:76,1
    - Dst: leg1ResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:77,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:83,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:87,1
    - Dst: leg1ResetDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - expiry
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 100
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::initialGuess
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - leg1ResetDates::begin
    - leg1ResetDates::end
    - std::upper_bound
    - leg1ResetDates::size
    linkageType: ''
    returnType: Array
    signature: Array Gaussian1dFloatFloatSwaptionEngine::initialGuess(const Date &expiry)
      const
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:117,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:118,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:119,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:120,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:121,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:122,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:123,1
    - Dst: std::unique
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:125,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::distance
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:126,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:131,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:133,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:135,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:147,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:148,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:148,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:153,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:154,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:155,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:157,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:163,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:164,1
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:169,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:170,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:173,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:175,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:177,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:179,1
    - Dst: ext::dynamic_pointer_cast<SwapIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:181,1
    - Dst: ext::dynamic_pointer_cast<SwapSpreadIndex>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:185,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:187,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:207,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:208,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:211,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:212,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:215,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:218,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:219,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:223,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:228,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:229,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:230,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:231,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:231,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:234,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:237,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:242,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:246,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:247,1
    - Dst: payoff0a
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:248,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:251,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:256,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:260,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:261,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:262,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:263,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:264,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:267,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:268,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:269,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:270,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:277,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:279,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:281,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:286,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:287,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:288,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:288,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:290,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:297,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:299,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:299,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:300,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:300,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:301,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:302,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:302,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:303,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:307,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:308,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:309,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:310,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:315,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:317,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:317,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:318,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:318,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:319,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:319,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:320,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:320,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:321,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:325,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:326,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:327,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:328,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:340,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:342,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:344,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:345,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:346,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:346,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:348,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:352,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:356,1
    - Dst: payoff0
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:357,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:360,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:364,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:366,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:367,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:368,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:369,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:376,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:378,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:379,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:380,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:383,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:390,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:392,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:393,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:394,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:395,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:396,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:397,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:398,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:399,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:400,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:404,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:406,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:408,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:410,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:434,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:434,1
    - Dst: leg1FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:435,1
    - Dst: leg1FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:437,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:439,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:440,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:441,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:442,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:443,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:456,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:461,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:463,1
    - Dst: ext::shared_ptr::gearing1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:467,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:468,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:470,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:473,1
    - Dst: ext::shared_ptr::gearing2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:474,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:475,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:477,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:480,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:485,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:486,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:489,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:490,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:498,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:500,1
    - Dst: leg1FixingDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:504,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:518,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:518,1
    - Dst: leg2FixingDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:519,1
    - Dst: leg2FixingDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:521,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:523,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:524,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:525,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:526,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:527,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:540,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:542,1
    - Dst: ext::shared_ptr::tenor
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:542,1
    - Dst: ext::shared_ptr::gearing1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:545,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:546,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:548,1
    - Dst: ext::shared_ptr::swapIndex1
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:551,1
    - Dst: ext::shared_ptr::gearing2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:552,1
    - Dst: swapRate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:553,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:555,1
    - Dst: ext::shared_ptr::swapIndex2
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:558,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:563,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:564,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:567,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:568,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:576,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:578,1
    - Dst: leg2FixingDates::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:581,1
    - Dst: std::find
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:592,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:592,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:593,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:595,1
    - Dst: rebate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:600,1
    - Dst: rebatePaymentDate
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:601,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:603,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:604,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:605,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:605,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:606,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:613,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:614,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:622,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:624,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:625,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:628,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:635,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:636,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:639,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:648,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:656,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:657,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:661,1
    - Dst: swap
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:662,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:673,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:674,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp:684,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 171
    argCount: 4
    argNames:
    - ' expiry'
    - y
    - includeExerciseOnExpiry
    - considerProbabilities
    argTypes:
    - Date
    - Real
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 691
    functionName: QuantLib::Gaussian1dFloatFloatSwaptionEngine::npvs
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.cpp
    functionUses: 4
    functionsReached:
    - leg2FixingDates::begin
    - exercise::dates
    - ext::shared_ptr::swapIndex2
    - leg1FixingDates::size
    - leg2FixingDates::end
    - Real
    - leg1FixingDates::end
    - swap
    - Date
    - payoff0
    - zerobond
    - std::vector::insert
    - std::vector::push_back
    - ext::dynamic_pointer_cast<IborIndex>
    - std::vector::resize
    - empty
    - payoff0a
    - std::sort
    - Array::begin
    - begin
    - ext::shared_ptr::gearing1
    - rebatePaymentDate
    - yGrid
    - std::find
    - std::upper_bound
    - std::vector::erase
    - std::min
    - std::exp
    - value
    - Null<Real>
    - Array::end
    - CubicInterpolation::cCoefficients
    - swapRate
    - push_back
    - termStructure
    - std::max
    - ext::shared_ptr::tenor
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - CubicInterpolation::bCoefficients
    - leg2FixingDates::size
    - std::vector::size
    - leg1FixingDates::begin
    - ext::shared_ptr::swapIndex1
    - std::distance
    - QL_REQUIRE
    - forwardRate
    - CubicInterpolation::aCoefficients
    - rebate
    - std::vector::begin
    - ext::dynamic_pointer_cast<SwapIndex>
    - numeraire
    - std::vector::end
    - std::unique
    - ext::dynamic_pointer_cast<SwapSpreadIndex>
    - Array::size
    - ext::shared_ptr::gearing2
    - std::vector::back
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> Gaussian1dFloatFloatSwaptionEngine::npvs(const
      Date& expiry,\n                                             const Real y,\n
      \                                            const bool includeExerciseOnExpiry,\n
      \                                            const bool considerProbabilities)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - nominal
    - ' maturityDate'
    - ' valueDate'
    - fixedPayDates
    - ' amounts'
    - startIndex
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    - Real
    - Date
    - Date
    - std::vector<Date>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::rStarFinder::rStarFinder
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void rStarFinder(const ext::shared_ptr<Gaussian1dModel>& model,\n
      \                   Real nominal,\n                    const Date& maturityDate,\n
      \                   const Date& valueDate,\n                    std::vector<Date>
      fixedPayDates,\n                    const std::vector<Real>& amounts,\n                    const
      Size startIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:42,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:44,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: operator()(Rate y) const
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - zerobond
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:66,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:70,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:70,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:74,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:80,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:81,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:84,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:86,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:86,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:87,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:88,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:89,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:93,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:99,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:100,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:101,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:102,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:107,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:114,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:115,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:116,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:117,1
    - Dst: zerobondOption
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:119,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 125
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::spread
    - QL_REQUIRE
    - fixedResetDates::end
    - fixedCoupons::size
    - Null<Real>
    - fixedResetDates::begin
    - Brent::setLowerBound
    - termStructure
    - Brent::setMaxEvaluations
    - Brent::setUpperBound
    - Brent::solve
    - zerobond
    - exercise::date
    - std::upper_bound
    - std::vector::back
    - zerobondOption
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void Gaussian1dJamshidianSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' model'
    - nominal
    - ' maturityDate'
    - ' valueDate'
    - fixedPayDates
    - ' amounts'
    - startIndex
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    - Real
    - Date
    - Date
    - std::vector<Date>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::rStarFinder::rStarFinder
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void rStarFinder(const ext::shared_ptr<Gaussian1dModel>& model,\n
      \                   Real nominal,\n                    const Date& maturityDate,\n
      \                   const Date& valueDate,\n                    std::vector<Date>
      fixedPayDates,\n                    const std::vector<Real>& amounts,\n                    const
      Size startIndex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:42,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:44,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: operator()(Rate y) const
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - zerobond
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:66,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:70,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:70,1
    - Dst: swap::spread
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:74,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:74,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:80,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:81,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:84,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:86,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:86,1
    - Dst: fixedResetDates::end
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:87,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:88,1
    - Dst: fixedResetDates::begin
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:89,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:93,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:99,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:100,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:101,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:102,1
    - Dst: fixedCoupons::size
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:107,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:114,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:115,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:116,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:117,1
    - Dst: zerobondOption
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:119,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 125
    functionName: QuantLib::Gaussian1dJamshidianSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1djamshidianswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::spread
    - QL_REQUIRE
    - fixedResetDates::end
    - fixedCoupons::size
    - Null<Real>
    - fixedResetDates::begin
    - Brent::setLowerBound
    - termStructure
    - Brent::setMaxEvaluations
    - Brent::setUpperBound
    - Brent::solve
    - zerobond
    - exercise::date
    - std::upper_bound
    - std::vector::back
    - zerobondOption
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void Gaussian1dJamshidianSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~BasketGeneratingEngine()
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BasketGeneratingEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - oas
    - discountCurve
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::BasketGeneratingEngine::BasketGeneratingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BasketGeneratingEngine(const ext::shared_ptr<Gaussian1dModel>&
      model,\n                               Handle<Quote> oas,\n                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - oas
    - discountCurve
    argTypes:
    - Handle<Gaussian1dModel>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::BasketGeneratingEngine::BasketGeneratingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BasketGeneratingEngine(Handle<Gaussian1dModel> model,\n                               Handle<Quote>
      oas,\n                               Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:112,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - type
    - npv
    - delta
    - gamma
    - model
    - indexBase
    - ' expiry'
    - maxMaturity
    - h
    argTypes:
    - Swap::Type
    - Real
    - Real
    - Real
    - ext::shared_ptr<Gaussian1dModel>
    - ext::shared_ptr<SwapIndex>
    - Date
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::MatchHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MatchHelper(const Swap::Type type,\n                        const
      Real npv,\n                        const Real delta,\n                        const
      Real gamma,\n                        ext::shared_ptr<Gaussian1dModel> model,\n
      \                       ext::shared_ptr<SwapIndex> indexBase,\n                        const
      Date& expiry,\n                        const Real maxMaturity,\n                        const
      Real h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:122,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:124,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:126,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:127,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:127,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:128,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:130,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:131,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:133,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:133,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:134,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:135,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:136,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:136,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' swap'
    - fixedRate
    - nominal
    - y
    - type
    argTypes:
    - ext::shared_ptr<VanillaSwap>
    - Real
    - Real
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 140
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - floatingLeg
    - forwardRate
    - ext::shared_ptr::fixingDate
    - discountingTermStructure
    - ext::shared_ptr::accrualPeriod
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::iborIndex
    - zerobond
    - ext::shared_ptr::date
    linkageType: ''
    returnType: Real
    signature: "Real NPV(const ext::shared_ptr<VanillaSwap>& swap,\n                     Real
      fixedRate,\n                     Real nominal,\n                     Real y,\n
      \                    int type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::values
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:148,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 149
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - QuantLib::BasketGeneratingEngine::MatchHelper::values
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& v) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:155,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:158,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:158,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:163,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:166,1
    - Dst: clone
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:181,1
    - Dst: clone
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:182,1
    - Dst: ext::shared_ptr::underlyingSwap
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:184,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:186,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:189,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:191,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:193,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:195,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:197,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 223
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::values
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 1
    functionsReached:
    - std::floor
    - clone
    - underlyingSwap
    - ext::shared_ptr::underlyingSwap
    - std::fabs
    - QuantLib::BasketGeneratingEngine::MatchHelper::NPV
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& v) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~BasketGeneratingEngine()
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BasketGeneratingEngine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' model'
    - oas
    - discountCurve
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::BasketGeneratingEngine::BasketGeneratingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BasketGeneratingEngine(const ext::shared_ptr<Gaussian1dModel>&
      model,\n                               Handle<Quote> oas,\n                               Handle<YieldTermStructure>
      discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - oas
    - discountCurve
    argTypes:
    - Handle<Gaussian1dModel>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::BasketGeneratingEngine::BasketGeneratingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BasketGeneratingEngine(Handle<Gaussian1dModel> model,\n                               Handle<Quote>
      oas,\n                               Handle<YieldTermStructure> discountCurve)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:112,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - type
    - npv
    - delta
    - gamma
    - model
    - indexBase
    - ' expiry'
    - maxMaturity
    - h
    argTypes:
    - Swap::Type
    - Real
    - Real
    - Real
    - ext::shared_ptr<Gaussian1dModel>
    - ext::shared_ptr<SwapIndex>
    - Date
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::MatchHelper
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MatchHelper(const Swap::Type type,\n                        const
      Real npv,\n                        const Real delta,\n                        const
      Real gamma,\n                        ext::shared_ptr<Gaussian1dModel> model,\n
      \                       ext::shared_ptr<SwapIndex> indexBase,\n                        const
      Date& expiry,\n                        const Real maxMaturity,\n                        const
      Real h)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:122,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:124,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:126,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:127,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:127,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:128,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:130,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:131,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:133,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:133,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:134,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:135,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:136,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:136,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - ' swap'
    - fixedRate
    - nominal
    - y
    - type
    argTypes:
    - ext::shared_ptr<VanillaSwap>
    - Real
    - Real
    - Real
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 140
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - floatingLeg
    - forwardRate
    - ext::shared_ptr::fixingDate
    - discountingTermStructure
    - ext::shared_ptr::accrualPeriod
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::iborIndex
    - zerobond
    - ext::shared_ptr::date
    linkageType: ''
    returnType: Real
    signature: "Real NPV(const ext::shared_ptr<VanillaSwap>& swap,\n                     Real
      fixedRate,\n                     Real nominal,\n                     Real y,\n
      \                    int type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::values
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:143,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:148,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 149
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::value
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - QuantLib::BasketGeneratingEngine::MatchHelper::values
    linkageType: ''
    returnType: Real
    signature: Real value(const Array& v) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:155,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:158,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:158,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:163,1
    - Dst: std::floor
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:166,1
    - Dst: clone
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:181,1
    - Dst: clone
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:182,1
    - Dst: ext::shared_ptr::underlyingSwap
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:184,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:186,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:189,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:191,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:193,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:195,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:197,1
    - Dst: QuantLib::BasketGeneratingEngine::MatchHelper::NPV
      Src: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 223
    functionName: QuantLib::BasketGeneratingEngine::MatchHelper::values
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/basketgeneratingengine.hpp
    functionUses: 2
    functionsReached:
    - std::floor
    - clone
    - underlyingSwap
    - ext::shared_ptr::underlyingSwap
    - std::fabs
    - QuantLib::BasketGeneratingEngine::MatchHelper::NPV
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array values(const Array& v) const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:70,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:74,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 91
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::Gaussian1dNonstandardSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dNonstandardSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas = Handle<Quote>(),
      // continuously\n                                                        //
      compounded w.r.t. yts\n                                                        //
      daycounter\n            const Handle<YieldTermStructure> &discountCurve =\n
      \               Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:98,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:102,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:117,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 119
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::Gaussian1dNonstandardSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dNonstandardSwaptionEngine(\n            const Handle<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas = Handle<Quote>(),
      // continuously\n                                                        //
      compounded w.r.t. yts\n                                                        //
      daycounter\n            const Handle<YieldTermStructure> &discountCurve =\n
      \               Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:70,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:74,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:87,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:89,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 91
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::Gaussian1dNonstandardSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dNonstandardSwaptionEngine(\n            const ext::shared_ptr<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas = Handle<Quote>(),
      // continuously\n                                                        //
      compounded w.r.t. yts\n                                                        //
      daycounter\n            const Handle<YieldTermStructure> &discountCurve =\n
      \               Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:98,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:102,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:114,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:115,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:117,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - model
    argTypes:
    - Handle<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 119
    functionName: QuantLib::Gaussian1dNonstandardSwaptionEngine::Gaussian1dNonstandardSwaptionEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/swaption/gaussian1dnonstandardswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - registerWith
    - empty
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dNonstandardSwaptionEngine(\n            const Handle<Gaussian1dModel>
      &model,\n            const int integrationPoints = 64, const Real stddevs =
      7.0,\n            const bool extrapolatePayoff = true,\n            const bool
      flatPayoffExtrapolation = false,\n            const Handle<Quote> &oas = Handle<Quote>(),
      // continuously\n                                                        //
      compounded w.r.t. yts\n                                                        //
      daycounter\n            const Handle<YieldTermStructure> &discountCurve =\n
      \               Handle<YieldTermStructure>(),\n            const Probabilities
      probabilities = None)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - type
    - discount
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::ArithmeticASOPathPricer::ArithmeticASOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticASOPathPricer::ArithmeticASOPathPricer(Option::Type
      type,\n                                                     DiscountFactor discount,\n
      \                                                    Real runningSum,\n                                                     Size
      pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:34,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:37,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:49,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: ArithmeticASOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp
    functionUses: 0
    functionsReached:
    - begin
    - length
    - PlainVanillaPayoff
    - std::accumulate
    - timeGrid
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticASOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - type
    - discount
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::ArithmeticASOPathPricer::ArithmeticASOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticASOPathPricer::ArithmeticASOPathPricer(Option::Type
      type,\n                                                     DiscountFactor discount,\n
      \                                                    Real runningSum,\n                                                     Size
      pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:34,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:37,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:40,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:44,1
    - Dst: PlainVanillaPayoff
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:49,1
    - Dst: back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: ArithmeticASOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.cpp
    functionUses: 0
    functionsReached:
    - begin
    - length
    - PlainVanillaPayoff
    - std::accumulate
    - timeGrid
    - back
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticASOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - process
    - tGrid
    - xGrid
    - aGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::FdBlackScholesAsianEngine::FdBlackScholesAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesAsianEngine::FdBlackScholesAsianEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size aGrid,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:48,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:52,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:58,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:59,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:62,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:61,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:65,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:72,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:73,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:81,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:80,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:84,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:88,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:99,1
    - Dst: std::list::emplace_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:101,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:102,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:102,1
    - Dst: FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:103,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:108,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:118,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:119,1
    - Dst: FdmSimple2dBSSolver::FdmSimple2dBSSolver
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:117,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:121,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:122,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 124
    functionName: QuantLib::FdBlackScholesAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - std::vector::push_back
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
    - std::list::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - x0
    - exercise::lastDate
    - InverseCumulativeNormal
    - std::list::emplace_back
    - ext::shared_ptr::strike
    - std::min
    - ext::shared_ptr<StepCondition<Array> >
    - time
    - std::max
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - Handle<GeneralizedBlackScholesProcess>
    - std::sqrt
    - FdmSimple2dBSSolver::FdmSimple2dBSSolver
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesAsianEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - process
    - tGrid
    - xGrid
    - aGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: QuantLib::FdBlackScholesAsianEngine::FdBlackScholesAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdBlackScholesAsianEngine::FdBlackScholesAsianEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Size tGrid,\n        Size xGrid,\n        Size aGrid,\n        const
      FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:48,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:52,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:58,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:59,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:59,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:62,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:61,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:65,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:72,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:73,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:77,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:81,1
    - Dst: FdmBlackScholesMesher::FdmBlackScholesMesher
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:80,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:84,1
    - Dst: FdmLogInnerValue::FdmLogInnerValue
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:88,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:98,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:99,1
    - Dst: std::list::emplace_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:101,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:102,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:102,1
    - Dst: FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:103,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:108,1
    - Dst: Handle<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:118,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:119,1
    - Dst: FdmSimple2dBSSolver::FdmSimple2dBSSolver
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:117,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:121,1
    - Dst: ext::shared_ptr::deltaAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:122,1
    - Dst: ext::shared_ptr::gammaAt
      Src: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp:123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 124
    functionName: QuantLib::FdBlackScholesAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/fdblackscholesasianengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmLogInnerValue::FdmLogInnerValue
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmBlackScholesMesher::FdmBlackScholesMesher
    - std::vector::push_back
    - exercise::type
    - ext::shared_ptr::gammaAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - FdmArithmeticAverageCondition::FdmArithmeticAverageCondition
    - std::list::push_back
    - ext::shared_ptr::deltaAt
    - ext::shared_ptr::valueAt
    - x0
    - exercise::lastDate
    - InverseCumulativeNormal
    - std::list::emplace_back
    - ext::shared_ptr::strike
    - std::min
    - ext::shared_ptr<StepCondition<Array> >
    - time
    - std::max
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - Handle<GeneralizedBlackScholesProcess>
    - std::sqrt
    - FdmSimple2dBSSolver::FdmSimple2dBSSolver
    linkageType: ''
    returnType: void
    signature: void FdBlackScholesAsianEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticDiscreteGeometricAverageStrikeAsianEngine::AnalyticDiscreteGeometricAverageStrikeAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDiscreteGeometricAverageStrikeAsianEngine::\n        AnalyticDiscreteGeometricAverageStrikeAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:42,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:47,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:51,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:54,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:55,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:61,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:65,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:67,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:72,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:73,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:73,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:75,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:76,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:82,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:83,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:86,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:87,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:107,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:115,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:116,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:118,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:120,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:122,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:123,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:126,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:128,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:132,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 134
    functionName: QuantLib::AnalyticDiscreteGeometricAverageStrikeAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Real
    - f
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - exercise::lastDate
    - DayCounter::yearFraction
    - std::exp
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - std::vector::begin
    - std::vector::end
    - riskFreeRate
    - std::accumulate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticDiscreteGeometricAverageStrikeAsianEngine::calculate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::AnalyticDiscreteGeometricAverageStrikeAsianEngine::AnalyticDiscreteGeometricAverageStrikeAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDiscreteGeometricAverageStrikeAsianEngine::\n        AnalyticDiscreteGeometricAverageStrikeAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:39,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:42,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:47,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:51,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:53,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:54,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:55,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:61,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:65,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:67,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:72,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:73,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:73,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:75,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:76,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:80,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:82,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:83,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:86,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:87,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:90,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:107,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:115,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:116,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:118,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:120,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:121,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:122,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:123,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:126,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:127,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:128,1
    - Dst: f
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:129,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp:132,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 134
    functionName: QuantLib::AnalyticDiscreteGeometricAverageStrikeAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_strike.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Real
    - f
    - std::vector::push_back
    - stateVariable
    - exercise::type
    - dividendYield
    - exercise::lastDate
    - DayCounter::yearFraction
    - std::exp
    - ext::shared_ptr::optionType
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - std::vector::begin
    - std::vector::end
    - riskFreeRate
    - std::accumulate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticDiscreteGeometricAverageStrikeAsianEngine::calculate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - discount
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAPOPathPricer::ArithmeticAPOPathPricer(\n                                         Option::Type
      type,\n                                         Real strike, DiscountFactor
      discount,\n                                         Real runningSum, Size pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:38,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:42,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 52
    functionName: ArithmeticAPOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp
    functionUses: 0
    functionsReached:
    - begin
    - length
    - std::accumulate
    - payoff_
    - timeGrid
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAPOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - discount
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAPOPathPricer::ArithmeticAPOPathPricer(\n                                         Option::Type
      type,\n                                         Real strike, DiscountFactor
      discount,\n                                         Real runningSum, Size pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:38,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:42,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:44,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:47,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 52
    functionName: ArithmeticAPOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.cpp
    functionUses: 0
    functionsReached:
    - begin
    - length
    - std::accumulate
    - payoff_
    - timeGrid
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAPOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - process
    - lambda
    - maxNrIntegrationSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::ChoiAsianEngine::ChoiAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ChoiAsianEngine::ChoiAsianEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Real lambda,\n        Size maxNrIntegrationSteps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:45,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:50,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:55,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:60,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: Time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:65,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:65,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:72,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:79,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::adjacent_find
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:85,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:88,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:92,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:94,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:95,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:96,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:97,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:103,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:104,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:108,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:109,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:111,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:118,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:121,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:122,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:122,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:124,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:125,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:126,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:127,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:132,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:133,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:134,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:135,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:135,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:144,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:145,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:145,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:146,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:148,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:148,1
    - Dst: BasketOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:150,1
    - Dst: ext::make_shared<ChoiBasketEngine>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:151,1
    - Dst: BasketOption::NPV
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:155,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:155,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:158,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:159,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:161,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: Handle::blackVariance
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:164,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 167
    functionName: QuantLib::ChoiAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp
    functionUses: 0
    functionsReached:
    - Handle::discount
    - std::vector::reserve
    - Handle::blackVariance
    - Real
    - std::adjacent_find
    - Handle::dayCounter
    - std::vector::emplace_back
    - exercise::type
    - dividendYield
    - Handle<BlackVolTermStructure>
    - ext::make_shared<EuropeanExercise>
    - ext::make_shared<PlainVanillaPayoff>
    - std::sort
    - Array
    - BasketOption::NPV
    - std::vector::front
    - x0
    - exercise::lastDate
    - Handle<Quote>
    - ext::shared_ptr::strike
    - std::vector::erase
    - std::min
    - DayCounter::yearFraction
    - Handle::blackVol
    - time
    - ext::shared_ptr::optionType
    - BasketOption::setPricingEngine
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Time
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - std::vector::begin
    - Matrix::rows
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - std::vector::end
    - riskFreeRate
    - ext::make_shared<AverageBasketPayoff>
    - ext::make_shared<FlatForward>
    - ext::make_shared<BlackConstantVol>
    - Handle::calendar
    - ext::make_shared<ChoiBasketEngine>
    - blackFormula
    - std::sqrt
    - Handle::referenceDate
    - std::vector::back
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void ChoiAsianEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - process
    - lambda
    - maxNrIntegrationSteps
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::ChoiAsianEngine::ChoiAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ChoiAsianEngine::ChoiAsianEngine(\n        ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n        Real lambda,\n        Size maxNrIntegrationSteps)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:45,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:50,1
    - Dst: std::sort
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:53,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:55,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:60,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: Time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:63,1
    - Dst: std::vector::erase
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:65,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:65,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:72,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:79,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::adjacent_find
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:85,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:88,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:92,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:94,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:95,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:96,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:97,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:103,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:104,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:108,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:109,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:111,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:114,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:118,1
    - Dst: Handle::blackVol
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:121,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:122,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:122,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:124,1
    - Dst: ext::make_shared<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:125,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:126,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:127,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:128,1
    - Dst: Handle<BlackVolTermStructure>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:132,1
    - Dst: ext::make_shared<BlackConstantVol>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:133,1
    - Dst: Handle::calendar
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:134,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:135,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:135,1
    - Dst: ext::make_shared<AverageBasketPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:144,1
    - Dst: ext::make_shared<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:145,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:145,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:146,1
    - Dst: ext::make_shared<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:148,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:148,1
    - Dst: BasketOption::setPricingEngine
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:150,1
    - Dst: ext::make_shared<ChoiBasketEngine>
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:151,1
    - Dst: BasketOption::NPV
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:155,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:155,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:158,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:159,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:161,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:162,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: Handle::blackVariance
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:163,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp:164,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 167
    functionName: QuantLib::ChoiAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/choiasianengine.cpp
    functionUses: 0
    functionsReached:
    - Handle::discount
    - std::vector::reserve
    - Handle::blackVariance
    - Real
    - std::adjacent_find
    - Handle::dayCounter
    - std::vector::emplace_back
    - exercise::type
    - dividendYield
    - Handle<BlackVolTermStructure>
    - ext::make_shared<EuropeanExercise>
    - ext::make_shared<PlainVanillaPayoff>
    - std::sort
    - Array
    - BasketOption::NPV
    - std::vector::front
    - x0
    - exercise::lastDate
    - Handle<Quote>
    - ext::shared_ptr::strike
    - std::vector::erase
    - std::min
    - DayCounter::yearFraction
    - Handle::blackVol
    - time
    - ext::shared_ptr::optionType
    - BasketOption::setPricingEngine
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - Time
    - Matrix::columns
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - std::vector::begin
    - Matrix::rows
    - ext::make_shared<GeneralizedBlackScholesProcess>
    - std::vector::end
    - riskFreeRate
    - ext::make_shared<AverageBasketPayoff>
    - ext::make_shared<FlatForward>
    - ext::make_shared<BlackConstantVol>
    - Handle::calendar
    - ext::make_shared<ChoiBasketEngine>
    - blackFormula
    - std::sqrt
    - Handle::referenceDate
    - std::vector::back
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void ChoiAsianEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 8
    argNames:
    - ' process'
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    argTypes:
    - ext::shared_ptr<P>
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 135
    functionName: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             Size timeSteps,\n             Size
      timeStepsPerYear)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:143,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:144,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:146,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:146,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:148,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:154,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:159,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:163,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:165,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:168,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:169,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:170,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:170,1
    - Dst: GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 174
    functionName: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::timeGrid
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - "ext::shared_ptr<typename\n            MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteGeometricAPHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::MakeMCDiscreteGeometricAPHestonEngine<RNG, S, P>::MakeMCDiscreteGeometricAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteGeometricAPHestonEngine<RNG, S, P>::MakeMCDiscreteGeometricAPHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:185,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:228,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:237,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:245,1
    - Dst: MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 254
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine<RNG,S,P>
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::operator
    signature: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 8
    argNames:
    - ' process'
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    argTypes:
    - ext::shared_ptr<P>
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 135
    functionName: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             Size timeSteps,\n             Size
      timeStepsPerYear)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:143,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:144,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:146,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:146,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:148,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:148,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:154,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:159,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:163,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:165,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:168,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:169,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:170,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:170,1
    - Dst: GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 174
    functionName: QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCDiscreteGeometricAPHestonEngine<RNG,S,P>::timeGrid
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - "ext::shared_ptr<typename\n            MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteGeometricAPHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::MakeMCDiscreteGeometricAPHestonEngine<RNG, S, P>::MakeMCDiscreteGeometricAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteGeometricAPHestonEngine<RNG, S, P>::MakeMCDiscreteGeometricAPHestonEngine(\n
      \       ext::shared_ptr<P> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:185,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:195,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:195,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:228,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:237,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:245,1
    - Dst: MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 254
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteGeometricAPHestonEngine<RNG,S,P>::MCDiscreteGeometricAPHestonEngine<RNG,S,P>
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::operator
    signature: MakeMCDiscreteGeometricAPHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::TurnbullWakemanAsianEngine::TurnbullWakemanAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void TurnbullWakemanAsianEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: QuantLib::TurnbullWakemanAsianEngine::TurnbullWakemanAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void TurnbullWakemanAsianEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process
    - currentAverage
    - startDate
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: QuantLib::ContinuousArithmeticAsianLevyEngine::ContinuousArithmeticAsianLevyEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ContinuousArithmeticAsianLevyEngine::ContinuousArithmeticAsianLevyEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Handle<Quote>
      currentAverage,\n        Date startDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:43,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:48,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:49,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:50,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:59,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:60,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:61,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:64,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:66,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: isValid
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:87,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:92,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:92,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:95,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:100,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:100,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:105,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 110
    functionName: QuantLib::ContinuousArithmeticAsianLevyEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp
    functionUses: 0
    functionsReached:
    - Real
    - isValid
    - stateVariable
    - sqrt
    - dividendYield
    - exercise::type
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - log
    - std::fabs
    - exercise::lastDate
    - exp
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - std::exp
    - value
    - ext::shared_ptr::optionType
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - N
    linkageType: ''
    returnType: void
    signature: void ContinuousArithmeticAsianLevyEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - process
    - currentAverage
    - startDate
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: QuantLib::ContinuousArithmeticAsianLevyEngine::ContinuousArithmeticAsianLevyEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ContinuousArithmeticAsianLevyEngine::ContinuousArithmeticAsianLevyEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Handle<Quote>
      currentAverage,\n        Date startDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:43,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:48,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:49,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:50,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:56,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:59,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:60,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:61,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:63,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:63,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:64,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:66,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:69,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:73,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:75,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:79,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:81,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: isValid
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:85,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:87,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:92,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:92,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:95,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:100,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:100,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:102,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:103,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:105,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:106,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: N
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:108,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 110
    functionName: QuantLib::ContinuousArithmeticAsianLevyEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/continuousarithmeticasianlevyengine.cpp
    functionUses: 0
    functionsReached:
    - Real
    - isValid
    - stateVariable
    - sqrt
    - dividendYield
    - exercise::type
    - empty
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - log
    - std::fabs
    - exercise::lastDate
    - exp
    - ext::shared_ptr::strike
    - DayCounter::yearFraction
    - std::exp
    - value
    - ext::shared_ptr::optionType
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - N
    linkageType: ''
    returnType: void
    signature: void ContinuousArithmeticAsianLevyEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - discount
    - runningProduct
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::GeometricAPOPathPricer::GeometricAPOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeometricAPOPathPricer::GeometricAPOPathPricer(\n                                         Option::Type
      type,\n                                         Real strike, DiscountFactor
      discount,\n                                         Real runningProduct, Size
      pastFixings)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:36,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:41,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:57,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 59
    functionName: GeometricAPOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - length
    - std::pow
    - payoff_
    - timeGrid
    - front
    linkageType: ''
    returnType: Real
    signature: Real GeometricAPOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - type
    - strike
    - discount
    - runningProduct
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::GeometricAPOPathPricer::GeometricAPOPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeometricAPOPathPricer::GeometricAPOPathPricer(\n                                         Option::Type
      type,\n                                         Real strike, DiscountFactor
      discount,\n                                         Real runningProduct, Size
      pastFixings)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:36,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:41,1
    - Dst: front
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:57,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 59
    functionName: GeometricAPOPathPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - length
    - std::pow
    - payoff_
    - timeGrid
    - front
    linkageType: ''
    returnType: Real
    signature: Real GeometricAPOPathPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - discount
    - fixingIndices
    - runningProduct
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - std::vector<Size>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer(Option::Type
      type,\n                                                               Real strike,\n
      \                                                              DiscountFactor
      discount,\n                                                               std::vector<Size>
      fixingIndices,\n                                                               Real
      runningProduct,\n                                                               Size
      pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:58,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 60
    functionName: GeometricAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - payoff_
    - pathSize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeometricAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - discount
    - fixingIndices
    - runningProduct
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - std::vector<Size>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 35
    functionName: QuantLib::GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer(Option::Type
      type,\n                                                               Real strike,\n
      \                                                              DiscountFactor
      discount,\n                                                               std::vector<Size>
      fixingIndices,\n                                                               Real
      runningProduct,\n                                                               Size
      pastFixings)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:53,1
    - Dst: std::pow
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:58,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 60
    functionName: GeometricAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - payoff_
    - pathSize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GeometricAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PastFixingsOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PastFixingsOnly()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:79,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:95,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:100,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 104
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
    - QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:111,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:112,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:114,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:114,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:115,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - process
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 148
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC, RNG, S>::MCDiscreteAveragingAsianEngineBase
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteAveragingAsianEngineBase<MC, RNG, S>::MCDiscreteAveragingAsianEngineBase(\n
      \       ext::shared_ptr<StochasticProcess> process,\n        bool brownianBridge,\n
      \       bool antitheticVariate,\n        bool controlVariate,\n        Size
      requiredSamples,\n        Real requiredTolerance,\n        Size maxSamples,\n
      \       BigNatural seed,\n        Size timeSteps,\n        Size timeStepsPerYear)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:155,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:156,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:158,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:162,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:163,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:163,1
    - Dst: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:164,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:168,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:171,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:173,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:175,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 179
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::front
    - QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::arguments_::exercise::lastDate
    - QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    - std::vector::size
    - std::vector::empty
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:187,1
    - Dst: dynamic_cast<DiscreteAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:192,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:192,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:194,1
    - Dst: dynamic_cast<const DiscreteAveragingAsianOption::results*>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:197,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const DiscreteAveragingAsianOption::results*>
    - ext::shared_ptr::getResults
    - QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlPricingEngine
    - dynamic_cast<DiscreteAveragingAsianOption::arguments*>
    - ext::shared_ptr::getArguments
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlVariateValue()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PastFixingsOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PastFixingsOnly()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::McSimulation<MC,RNG,S>::calculate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:79,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:95,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:100,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 104
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::McSimulation<MC,RNG,S>::calculate
    - QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
    - QuantLib::MCDiscreteAveragingAsianEngineBase::mcModel_::sampleAccumulator
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factors
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:111,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:112,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:114,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:114,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:115,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - factors
    - ext::shared_ptr<path_generator_type>
    - QuantLib::MCDiscreteAveragingAsianEngineBase::timeGrid
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:143,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - process
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    argTypes:
    - ext::shared_ptr<StochasticProcess>
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 148
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC, RNG, S>::MCDiscreteAveragingAsianEngineBase
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteAveragingAsianEngineBase<MC, RNG, S>::MCDiscreteAveragingAsianEngineBase(\n
      \       ext::shared_ptr<StochasticProcess> process,\n        bool brownianBridge,\n
      \       bool antitheticVariate,\n        bool controlVariate,\n        Size
      requiredSamples,\n        Real requiredTolerance,\n        Size maxSamples,\n
      \       BigNatural seed,\n        Size timeSteps,\n        Size timeStepsPerYear)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:155,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:156,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:158,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:162,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:163,1
    - Dst: std::vector::front
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:163,1
    - Dst: QuantLib::detail::PastFixingsOnly::PastFixingsOnly
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:164,1
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:168,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:169,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:171,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:172,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:173,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:174,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:175,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:178,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 179
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::front
    - QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::arguments_::exercise::lastDate
    - QuantLib::detail::PastFixingsOnly::PastFixingsOnly
    - std::vector::size
    - std::vector::empty
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlPricingEngine
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:187,1
    - Dst: dynamic_cast<DiscreteAveragingAsianOption::arguments*>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:192,1
    - Dst: ext::shared_ptr::getArguments
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:192,1
    - Dst: ext::shared_ptr::calculate
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:194,1
    - Dst: dynamic_cast<const DiscreteAveragingAsianOption::results*>
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:197,1
    - Dst: ext::shared_ptr::getResults
      Src: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 200
    functionName: QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlVariateValue
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mcdiscreteasianenginebase.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const DiscreteAveragingAsianOption::results*>
    - ext::shared_ptr::getResults
    - QuantLib::MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlPricingEngine
    - dynamic_cast<DiscreteAveragingAsianOption::arguments*>
    - ext::shared_ptr::getArguments
    - ext::shared_ptr::calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real MCDiscreteAveragingAsianEngineBase<MC,RNG,S>::controlVariateValue()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDiscreteGeometricAveragePriceAsianEngine::\n        AnalyticDiscreteGeometricAveragePriceAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:47,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:53,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:66,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:71,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:74,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:78,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:82,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:84,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:89,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:89,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:90,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:92,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:94,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:103,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:104,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:106,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:116,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:118,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:119,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:124,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:125,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:127,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:134,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:134,1
    - Dst: CND
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:135,1
    - Dst: ND
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:138,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:138,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:144,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:148,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:148,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:149,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:150,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:153,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:154,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:155,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:157,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:159,1
    - Dst: blackScholesTheta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:161,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticDiscreteGeometricAveragePriceAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Real
    - ND
    - BlackCalculator::gamma
    - std::vector::push_back
    - exercise::type
    - stateVariable
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - std::exp
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector::size
    - blackScholesTheta
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - CND
    - std::vector::begin
    - std::vector::end
    - riskFreeRate
    - fixingDates::size
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - std::accumulate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticDiscreteGeometricAveragePriceAsianEngine::calculate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticDiscreteGeometricAveragePriceAsianEngine::\n        AnalyticDiscreteGeometricAveragePriceAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:47,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:53,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:66,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:68,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:69,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:70,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:71,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:74,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:76,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:78,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:82,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:84,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:89,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:89,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:90,1
    - Dst: Real
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:90,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:92,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:93,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:94,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:103,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:104,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:106,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:111,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:116,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:118,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:119,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:124,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:125,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:127,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:128,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:134,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:134,1
    - Dst: CND
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:135,1
    - Dst: ND
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:136,1
    - Dst: std::log
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:138,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:138,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:144,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:148,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:148,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:149,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:150,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:153,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:154,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:155,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:157,1
    - Dst: BlackCalculator::strikeSensitivity
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:159,1
    - Dst: blackScholesTheta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp:161,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 165
    functionName: QuantLib::AnalyticDiscreteGeometricAveragePriceAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_discr_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Real>
    - Real
    - ND
    - BlackCalculator::gamma
    - std::vector::push_back
    - exercise::type
    - stateVariable
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - std::exp
    - BlackCalculator::dividendRho
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector::size
    - blackScholesTheta
    - QL_REQUIRE
    - blackVolatility
    - std::log
    - CND
    - std::vector::begin
    - std::vector::end
    - riskFreeRate
    - fixingDates::size
    - BlackCalculator::strikeSensitivity
    - BlackCalculator::value
    - std::accumulate
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void AnalyticDiscreteGeometricAveragePriceAsianEngine::calculate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:77,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:78,1
    - Dst: AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: QuantLib::MCDiscreteArithmeticAPEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<PricingEngine>
    - AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 121
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             bool
      controlVariate,\n             Size requiredSamples,\n             Real requiredTolerance,\n
      \            Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:132,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:137,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:142,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:144,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:147,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:148,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:149,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:149,1
    - Dst: ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticAPEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:168,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:173,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:178,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:181,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:182,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:183,1
    - Dst: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:183,1
    - Dst: GeometricAPOPathPricer::GeometricAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 184
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - GeometricAPOPathPricer::GeometricAPOPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::timeGrid
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticAPEngine<RNG,S>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::MakeMCDiscreteArithmeticAPEngine<RNG, S>::MakeMCDiscreteArithmeticAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticAPEngine<RNG, S>::MakeMCDiscreteArithmeticAPEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 236
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 250
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 257
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 264
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:277,1
    - Dst: MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 284
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>::operator
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:75,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:77,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:78,1
    - Dst: AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: QuantLib::MCDiscreteArithmeticAPEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<PricingEngine>
    - AnalyticDiscreteGeometricAveragePriceAsianEngine::AnalyticDiscreteGeometricAveragePriceAsianEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - controlVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 121
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             bool
      controlVariate,\n             Size requiredSamples,\n             Real requiredTolerance,\n
      \            Size maxSamples,\n             BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:132,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:137,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:142,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:144,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:147,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:148,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:149,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:149,1
    - Dst: ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - ArithmeticAPOPathPricer::ArithmeticAPOPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticAPEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:163,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:166,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:168,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:171,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:173,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:178,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:181,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:182,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:183,1
    - Dst: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:183,1
    - Dst: GeometricAPOPathPricer::GeometricAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 184
    functionName: QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - GeometricAPOPathPricer::GeometricAPOPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - QuantLib::MCDiscreteArithmeticAPEngine<RNG,S>::timeGrid
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticAPEngine<RNG,S>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: QuantLib::MakeMCDiscreteArithmeticAPEngine<RNG, S>::MakeMCDiscreteArithmeticAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticAPEngine<RNG, S>::MakeMCDiscreteArithmeticAPEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:219,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:229,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 236
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 250
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 257
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 264
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: "&\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S> &\n    MakeMCDiscreteArithmeticAPEngine<RNG,S>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:277,1
    - Dst: MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 284
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticAPEngine<RNG,S>::MCDiscreteArithmeticAPEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPEngine<RNG,S>::operator
    signature: "MakeMCDiscreteArithmeticAPEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 106
    functionName: QuantLib::MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             Size
      requiredSamples,\n             Real requiredTolerance,\n             Size maxSamples,\n
      \            BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:124,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:129,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:131,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:134,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:135,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:136,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:136,1
    - Dst: GeometricAPOPathPricer::GeometricAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 139
    functionName: QuantLib::MCDiscreteGeometricAPEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - GeometricAPOPathPricer::GeometricAPOPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - "ext::shared_ptr<typename\n            MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteGeometricAPEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::MakeMCDiscreteGeometricAPEngine<RNG, S>::MakeMCDiscreteGeometricAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteGeometricAPEngine<RNG, S>::MakeMCDiscreteGeometricAPEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:174,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 191
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:225,1
    - Dst: MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 232
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>::operator
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 106
    functionName: QuantLib::MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             Size
      requiredSamples,\n             Real requiredTolerance,\n             Size maxSamples,\n
      \            BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:119,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:122,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:124,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:129,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:131,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:134,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:135,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:136,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:136,1
    - Dst: GeometricAPOPathPricer::GeometricAPOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 139
    functionName: QuantLib::MCDiscreteGeometricAPEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - GeometricAPOPathPricer::GeometricAPOPathPricer
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - "ext::shared_ptr<typename\n            MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteGeometricAPEngine<RNG,S>::path_pricer_type>
      MCDiscreteGeometricAPEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:168,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: QuantLib::MakeMCDiscreteGeometricAPEngine<RNG, S>::MakeMCDiscreteGeometricAPEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteGeometricAPEngine<RNG, S>::MakeMCDiscreteGeometricAPEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:174,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 191
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: "&\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S> &\n    MakeMCDiscreteGeometricAPEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:225,1
    - Dst: MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 232
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_geom_av_price.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteGeometricAPEngine<RNG,S>::MCDiscreteGeometricAPEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCDiscreteGeometricAPEngine<RNG,S>::operator
    signature: "MakeMCDiscreteGeometricAPEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticContinuousGeometricAveragePriceAsianEngine::AnalyticContinuousGeometricAveragePriceAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousGeometricAveragePriceAsianEngine::\n        AnalyticContinuousGeometricAveragePriceAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:40,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:40,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:47,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:50,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:50,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:52,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:53,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:55,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:57,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:58,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:69,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:70,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:76,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:79,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:80,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:81,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:85,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:86,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:87,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:87,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:89,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:90,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:91,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:92,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:93,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:95,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticContinuousGeometricAveragePriceAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::vega
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - std::exp
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - BlackCalculator::value
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousGeometricAveragePriceAsianEngine::calculate()\n
      \                                                                      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: QuantLib::AnalyticContinuousGeometricAveragePriceAsianEngine::AnalyticContinuousGeometricAveragePriceAsianEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousGeometricAveragePriceAsianEngine::\n        AnalyticContinuousGeometricAveragePriceAsianEngine(\n
      \           ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:40,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:40,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:47,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:50,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:50,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:52,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:53,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:55,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:57,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:58,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:59,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:62,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:64,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:68,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:69,1
    - Dst: std::exp
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:70,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:76,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:79,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:80,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:81,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:83,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:85,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:86,1
    - Dst: BlackCalculator::rho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:87,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:87,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:89,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:90,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:91,1
    - Dst: BlackCalculator::vega
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:92,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:92,1
    - Dst: BlackCalculator::dividendRho
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:93,1
    - Dst: BlackCalculator::theta
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:95,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 99
    functionName: QuantLib::AnalyticContinuousGeometricAveragePriceAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/analytic_cont_geom_av_price.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::vega
    - BlackCalculator::gamma
    - stateVariable
    - exercise::type
    - dividendYield
    - BlackCalculator::rho
    - exercise::lastDate
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - DayCounter::yearFraction
    - std::exp
    - BlackCalculator::dividendRho
    - Null<Real>
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - QL_REQUIRE
    - blackVolatility
    - riskFreeRate
    - BlackCalculator::value
    - std::sqrt
    - BlackCalculator::theta
    linkageType: ''
    returnType: void
    signature: "void AnalyticContinuousGeometricAveragePriceAsianEngine::calculate()\n
      \                                                                      const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:27,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:27,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:28,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:33,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:40,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:40,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:45,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:48,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:49,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:57,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:58,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:61,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:62,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:65,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:76,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:85,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:88,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:89,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:91,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:92,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:92,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:94,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:95,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:95,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:96,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:96,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:96,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:104,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:107,1
    - Dst: exp
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:109,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:116,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:117,1
    - Dst: log
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:117,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:120,1
    - Dst: sqrt
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:120,1
    - Dst: BlackCalculator::value
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:122,1
    - Dst: BlackCalculator::delta
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:123,1
    - Dst: BlackCalculator::gamma
      Src: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp:124,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 133
    functionName: TurnbullWakemanAsianEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/turnbullwakemanasianengine.cpp
    functionUses: 0
    functionsReached:
    - BlackCalculator::gamma
    - std::vector::push_back
    - stateVariable
    - sqrt
    - dividendYield
    - exercise::type
    - log
    - exercise::lastDate
    - exp
    - ext::shared_ptr::strike
    - BlackCalculator::delta
    - ext::shared_ptr::optionType
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::vector::size
    - QL_REQUIRE
    - blackVolatility
    - fixingDates::size
    - riskFreeRate
    - BlackCalculator::value
    - std::sqrt
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void TurnbullWakemanAsianEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - discount
    - fixingIndices
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - std::vector<Size>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 33
    functionName: QuantLib::ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer(Option::Type
      type,\n                                                                 Real
      strike,\n                                                                 DiscountFactor
      discount,\n                                                                 std::vector<Size>
      fixingIndices,\n                                                                 Real
      runningSum,\n                                                                 Size
      pastFixings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:41,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: ArithmeticAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - size
    - payoff_
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - type
    - strike
    - discount
    - fixingIndices
    - runningSum
    - pastFixings
    argTypes:
    - Option::Type
    - Real
    - DiscountFactor
    - std::vector<Size>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 33
    functionName: QuantLib::ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer(Option::Type
      type,\n                                                                 Real
      strike,\n                                                                 DiscountFactor
      discount,\n                                                                 std::vector<Size>
      fixingIndices,\n                                                                 Real
      runningSum,\n                                                                 Size
      pastFixings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:41,1
    - Dst: payoff_
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: ArithmeticAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.cpp
    functionUses: 0
    functionsReached:
    - size
    - payoff_
    - pathSize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAPOHestonPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             Size
      requiredSamples,\n             Real requiredTolerance,\n             Size maxSamples,\n
      \            BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:108,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:113,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:118,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:120,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:123,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:124,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:124,1
    - Dst: ArithmeticASOPathPricer::ArithmeticASOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 127
    functionName: QuantLib::MCDiscreteArithmeticASEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::optionType
    - ArithmeticASOPathPricer::ArithmeticASOPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n               typename MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n               typename MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticASEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::MakeMCDiscreteArithmeticASEngine<RNG, S>::MakeMCDiscreteArithmeticASEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticASEngine<RNG, S>::MakeMCDiscreteArithmeticASEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 167
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:173,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 180
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:214,1
    - Dst: MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 221
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine<RNG,S>
    linkageType: ''
    returnType: "MakeMCDiscreteArithmeticASEngine<RNG,S>::\n    operator"
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' process'
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine(\n
      \            const ext::shared_ptr<GeneralizedBlackScholesProcess>& process,\n
      \            bool brownianBridge,\n             bool antitheticVariate,\n             Size
      requiredSamples,\n             Real requiredTolerance,\n             Size maxSamples,\n
      \            BigNatural seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:108,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:113,1
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:116,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:118,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:120,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:123,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:124,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:124,1
    - Dst: ArithmeticASOPathPricer::ArithmeticASOPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 127
    functionName: QuantLib::MCDiscreteArithmeticASEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::optionType
    - ArithmeticASOPathPricer::ArithmeticASOPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - ext::shared_ptr::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: "ext::shared_ptr<\n               typename MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>"
    signature: "ext::shared_ptr<\n               typename MCDiscreteArithmeticASEngine<RNG,S>::path_pricer_type>
      MCDiscreteArithmeticASEngine<RNG,S>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:157,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::MakeMCDiscreteArithmeticASEngine<RNG, S>::MakeMCDiscreteArithmeticASEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticASEngine<RNG, S>::MakeMCDiscreteArithmeticASEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 167
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:173,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 180
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: "&\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticASEngine<RNG,S>
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S> &\n    MakeMCDiscreteArithmeticASEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:214,1
    - Dst: MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 221
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_strike.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticASEngine<RNG,S>::MCDiscreteArithmeticASEngine<RNG,S>
    linkageType: ''
    returnType: "MakeMCDiscreteArithmeticASEngine<RNG,S>::\n    operator"
    signature: "MakeMCDiscreteArithmeticASEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:75,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:77,1
    - Dst: AnalyticDiscreteGeometricAveragePriceAsianHestonEngine::AnalyticDiscreteGeometricAveragePriceAsianHestonEngine
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - ext::dynamic_pointer_cast<P>
    - AnalyticDiscreteGeometricAveragePriceAsianHestonEngine::AnalyticDiscreteGeometricAveragePriceAsianHestonEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 9
    argNames:
    - ' process'
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    - controlVariate
    argTypes:
    - ext::shared_ptr<P>
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 153
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             Size timeSteps,\n             Size
      timeStepsPerYear,\n             bool controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:161,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:162,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:164,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:164,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:166,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:166,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:172,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:177,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:181,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:183,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:186,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:187,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:188,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:188,1
    - Dst: ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 192
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:200,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:201,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:203,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:205,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:205,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:211,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:216,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:219,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:220,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:227,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:230,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:231,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:232,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:232,1
    - Dst: GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 234
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: QuantLib::MakeMCDiscreteArithmeticAPHestonEngine<RNG, S, P>::MakeMCDiscreteArithmeticAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticAPHestonEngine<RNG, S, P>::\n        MakeMCDiscreteArithmeticAPHestonEngine(ext::shared_ptr<P>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:245,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:255,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:255,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 262
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:288,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 292
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:297,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 301
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 308
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:312,1
    - Dst: MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 322
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::operator
    signature: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:75,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:77,1
    - Dst: AnalyticDiscreteGeometricAveragePriceAsianHestonEngine::AnalyticDiscreteGeometricAveragePriceAsianHestonEngine
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine::controlPricingEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - ext::dynamic_pointer_cast<P>
    - AnalyticDiscreteGeometricAveragePriceAsianHestonEngine::AnalyticDiscreteGeometricAveragePriceAsianHestonEngine
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<PricingEngine>
    signature: ext::shared_ptr<PricingEngine> controlPricingEngine() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 9
    argNames:
    - ' process'
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    - timeSteps
    - timeStepsPerYear
    - controlVariate
    argTypes:
    - ext::shared_ptr<P>
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    - Size
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 153
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine(\n
      \            const ext::shared_ptr<P>& process,\n             bool antitheticVariate,\n
      \            Size requiredSamples,\n             Real requiredTolerance,\n             Size
      maxSamples,\n             BigNatural seed,\n             Size timeSteps,\n             Size
      timeStepsPerYear,\n             bool controlVariate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:161,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:162,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:164,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:164,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:166,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:166,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:172,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:177,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:181,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:183,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:186,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:187,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:188,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:188,1
    - Dst: ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 192
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - ArithmeticAPOHestonPathPricer::ArithmeticAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::pathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:200,1
    - Dst: TimeGrid::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:201,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:203,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:203,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:205,1
    - Dst: TimeGrid::closestIndex
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:205,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:209,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:211,1
    - Dst: ext::dynamic_pointer_cast<EuropeanExercise>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:216,1
    - Dst: ext::dynamic_pointer_cast<P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:219,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:220,1
    - Dst: "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:227,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:230,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:231,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:232,1
    - Dst: ext::shared_ptr::lastDate
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:232,1
    - Dst: GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 234
    functionName: QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::controlPathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - ext::dynamic_pointer_cast<EuropeanExercise>
    - TimeGrid::mandatoryTimes
    - std::vector::reserve
    - ext::shared_ptr::strike
    - ext::dynamic_pointer_cast<P>
    - ext::shared_ptr::optionType
    - TimeGrid::closestIndex
    - GeometricAPOHestonPathPricer::GeometricAPOHestonPathPricer
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - ext::shared_ptr::riskFreeRate
    - "ext::shared_ptr<typename\n            MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    - ext::shared_ptr::lastDate
    - std::vector::size
    - std::vector::push_back
    - QuantLib::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::timeGrid
    linkageType: ''
    returnType: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>"
    signature: "ext::shared_ptr<\n            typename MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::path_pricer_type>
      MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::controlPathPricer() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:239,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<P>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: QuantLib::MakeMCDiscreteArithmeticAPHestonEngine<RNG, S, P>::MakeMCDiscreteArithmeticAPHestonEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCDiscreteArithmeticAPHestonEngine<RNG, S, P>::\n        MakeMCDiscreteArithmeticAPHestonEngine(ext::shared_ptr<P>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:245,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:255,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:255,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 262
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:288,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 292
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:297,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 301
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 308
    functionName: "&\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    signature: "MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P> &\n    MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::withControlVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:312,1
    - Dst: MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>
      Src: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 322
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCDiscreteArithmeticAPHestonEngine<RNG,S,P>::MCDiscreteArithmeticAPHestonEngine<RNG,S,P>
    linkageType: ''
    returnType: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::operator
    signature: MakeMCDiscreteArithmeticAPHestonEngine<RNG,S,P>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:35,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:38,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:39,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:40,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:40,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:44,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:46,1
    - Dst: DividendSchedule::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:48,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:51,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:56,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:59,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:60,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:62,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:63,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:65,1
    - Dst: callabilityDates::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:66,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:68,1
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:71,1
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:72,1
    - Dst: cashflows::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:73,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:75,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:75,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:76,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:77,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:77,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:82,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:87,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:90,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:92,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:94,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:96,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 5
    argNames:
    - args
    - process
    - dividends
    - creditSpread
    - ' grid'
    argTypes:
    - ConvertibleBond::arguments
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Handle<Quote>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 98
    functionName: QuantLib::DiscretizedConvertible::DiscretizedConvertible
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - exercise::date
    - date
    - DayCounter::yearFraction
    - callabilityDates::size
    - empty
    - Array
    - resize
    - std::move
    - riskFreeRate
    - push_back
    - closestTime
    - cashflows::size
    - DividendSchedule::size
    - hasOccurred
    - size
    - amount
    - clear
    linkageType: ''
    returnType: void
    signature: "void DiscretizedConvertible::DiscretizedConvertible(\n        ConvertibleBond::arguments
      args,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        DividendSchedule
      dividends,\n        Handle<Quote> creditSpread,\n        const TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:103,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:108,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:109,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:111,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:114,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:116,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:118,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 130
    functionName: QuantLib::DiscretizedConvertible::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - value
    - Array
    - adjustValues
    - riskFreeRate
    - size
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::reset(Size size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:135,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:137,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:137,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:141,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:151,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:154,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:155,1
    - Dst: QuantLib::DiscretizedConvertible::applyCallability
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:159,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:160,1
    - Dst: QuantLib::DiscretizedConvertible::addCoupon
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:161,1
    - Dst: QuantLib::DiscretizedConvertible::applyConvertibility
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:165,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 166
    functionName: QuantLib::DiscretizedConvertible::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - QuantLib::DiscretizedConvertible::applyCallability
    - time
    - QL_FAIL
    - size
    - QuantLib::DiscretizedConvertible::applyConvertibility
    - QuantLib::DiscretizedConvertible::addCoupon
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::postAdjustValuesImpl()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedConvertible::adjustedGrid
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:169,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:170,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 177
    functionName: QuantLib::DiscretizedConvertible::applyConvertibility
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::DiscretizedConvertible::adjustedGrid
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::applyConvertibility()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedConvertible::adjustedGrid
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:184,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:189,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:194,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:201,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:209,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:210,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:217,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:222,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - i
    - convertible
    argTypes:
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 224
    functionName: QuantLib::DiscretizedConvertible::applyCallability
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - std::max
    - QL_FAIL
    - QuantLib::DiscretizedConvertible::adjustedGrid
    - size
    - std::min
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::applyCallability(Size i, bool convertible)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::DiscretizedConvertible::addCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::addCoupon(Size i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:231,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:234,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:236,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:239,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:240,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 246
    functionName: QuantLib::DiscretizedConvertible::adjustedGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 2
    functionsReached:
    - close
    - time
    - riskFreeRate
    - size
    - method
    - amount
    linkageType: ''
    returnType: Array
    signature: Array DiscretizedConvertible::adjustedGrid() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:35,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:38,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:39,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:40,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:40,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:44,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:46,1
    - Dst: DividendSchedule::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:48,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:50,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:51,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:52,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:56,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:59,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:60,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:62,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:63,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:65,1
    - Dst: callabilityDates::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:66,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:68,1
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:71,1
    - Dst: clear
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:72,1
    - Dst: cashflows::size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:73,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:75,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:75,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:76,1
    - Dst: push_back
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:77,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:77,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:82,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:84,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:87,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:90,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:92,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:94,1
    - Dst: closestTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:96,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 5
    argNames:
    - args
    - process
    - dividends
    - creditSpread
    - ' grid'
    argTypes:
    - ConvertibleBond::arguments
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - DividendSchedule
    - Handle<Quote>
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 98
    functionName: QuantLib::DiscretizedConvertible::DiscretizedConvertible
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - exercise::date
    - date
    - DayCounter::yearFraction
    - callabilityDates::size
    - empty
    - Array
    - resize
    - std::move
    - riskFreeRate
    - push_back
    - closestTime
    - cashflows::size
    - DividendSchedule::size
    - hasOccurred
    - size
    - amount
    - clear
    linkageType: ''
    returnType: void
    signature: "void DiscretizedConvertible::DiscretizedConvertible(\n        ConvertibleBond::arguments
      args,\n        ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        DividendSchedule
      dividends,\n        Handle<Quote> creditSpread,\n        const TimeGrid& grid)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:103,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:108,1
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:109,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:111,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:114,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:116,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:118,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 130
    functionName: QuantLib::DiscretizedConvertible::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - value
    - Array
    - adjustValues
    - riskFreeRate
    - size
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::reset(Size size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: exercise::type
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:135,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:137,1
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:137,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:141,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:146,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:151,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:154,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:155,1
    - Dst: QuantLib::DiscretizedConvertible::applyCallability
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:159,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:160,1
    - Dst: QuantLib::DiscretizedConvertible::addCoupon
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:161,1
    - Dst: QuantLib::DiscretizedConvertible::applyConvertibility
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:165,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 166
    functionName: QuantLib::DiscretizedConvertible::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - QuantLib::DiscretizedConvertible::applyCallability
    - time
    - QL_FAIL
    - size
    - QuantLib::DiscretizedConvertible::applyConvertibility
    - QuantLib::DiscretizedConvertible::addCoupon
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::postAdjustValuesImpl()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedConvertible::adjustedGrid
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:169,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:170,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 177
    functionName: QuantLib::DiscretizedConvertible::applyConvertibility
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::DiscretizedConvertible::adjustedGrid
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::applyConvertibility()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DiscretizedConvertible::adjustedGrid
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:184,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:189,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:194,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:194,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:201,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:209,1
    - Dst: std::min
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:210,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:217,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:222,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - i
    - convertible
    argTypes:
    - Size
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 224
    functionName: QuantLib::DiscretizedConvertible::applyCallability
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    - std::max
    - QL_FAIL
    - QuantLib::DiscretizedConvertible::adjustedGrid
    - size
    - std::min
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::applyCallability(Size i, bool convertible)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: QuantLib::DiscretizedConvertible::addCoupon
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DiscretizedConvertible::addCoupon(Size i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:231,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:234,1
    - Dst: close
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:236,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:239,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:240,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 246
    functionName: QuantLib::DiscretizedConvertible::adjustedGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.cpp
    functionUses: 4
    functionsReached:
    - close
    - time
    - riskFreeRate
    - size
    - method
    - amount
    linkageType: ''
    returnType: Array
    signature: Array DiscretizedConvertible::adjustedGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::DiscountingBondEngine::DiscountingBondEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountingBondEngine::DiscountingBondEngine(\n        Handle<YieldTermStructure>
      discountCurve,\n        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:37,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:40,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:44,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:46,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 67
    functionName: QuantLib::DiscountingBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - empty
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscountingBondEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 34
    functionName: QuantLib::DiscountingBondEngine::DiscountingBondEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DiscountingBondEngine::DiscountingBondEngine(\n        Handle<YieldTermStructure>
      discountCurve,\n        const ext::optional<bool>& includeSettlementDateFlows)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:37,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:40,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:44,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:46,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 67
    functionName: QuantLib::DiscountingBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - empty
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DiscountingBondEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::DiscountingBondEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::DiscountingBondEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discountingbondengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:169,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:172,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:175,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:175,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:177,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:179,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:181,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:182,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:184,1
    - Dst: CashFlows::yield<Solver>
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:186,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - ' solver'
    - ' bond'
    - price
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Solver
    - Bond
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 190
    functionName: QuantLib::yield
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - settlementDate
    - accruedAmount
    - QuantLib::Date
    - CashFlows::yield<Solver>
    - QuantLib::BondFunctions::isTradable
    - maturityDate
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate yield(const Solver& solver,\n                          const
      Bond& bond,\n                          Bond::Price price,\n                          const
      DayCounter& dayCounter,\n                          Compounding compounding,\n
      \                         Frequency frequency,\n                          Date
      settlementDate = Date(),\n                          Real accuracy = 1.0e-10,\n
      \                         Rate guess = 0.05)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:169,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:172,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:175,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:175,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:177,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:179,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:181,1
    - Dst: accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:182,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:184,1
    - Dst: CashFlows::yield<Solver>
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:186,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - ' solver'
    - ' bond'
    - price
    - ' dayCounter'
    - compounding
    - frequency
    argTypes:
    - Solver
    - Bond
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 190
    functionName: QuantLib::yield
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.hpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - settlementDate
    - accruedAmount
    - QuantLib::Date
    - CashFlows::yield<Solver>
    - QuantLib::BondFunctions::isTradable
    - maturityDate
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate yield(const Solver& solver,\n                          const
      Bond& bond,\n                          Bond::Price price,\n                          const
      DayCounter& dayCounter,\n                          Compounding compounding,\n
      \                         Frequency frequency,\n                          Date
      settlementDate = Date(),\n                          Real accuracy = 1.0e-10,\n
      \                         Rate guess = 0.05)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - defaultTS
    - recoveryRate
    - yieldTS
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 37
    functionName: QuantLib::RiskyBondEngine::RiskyBondEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyBondEngine::RiskyBondEngine(Handle<DefaultProbabilityTermStructure>
      defaultTS,\n                                     Real recoveryRate,\n                                     Handle<YieldTermStructure>
      yieldTS)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:40,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:42,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:43,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:48,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:51,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:51,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:52,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:56,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:59,1
    - Dst: QuantLib::RiskyBondEngine::recoveryRate
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:59,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:60,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:61,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:62,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:64,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:72,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 74
    functionName: QuantLib::RiskyBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp
    functionUses: 0
    functionsReached:
    - date
    - auto::nominal
    - QuantLib::RiskyBondEngine::defaultTS
    - QuantLib::CashFlows::startDate
    - QuantLib::RiskyBondEngine::recoveryRate
    - std::max
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    - QuantLib::RiskyBondEngine::yieldTS
    linkageType: ''
    returnType: void
    signature: void RiskyBondEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - defaultTS
    - recoveryRate
    - yieldTS
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 37
    functionName: QuantLib::RiskyBondEngine::RiskyBondEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyBondEngine::RiskyBondEngine(Handle<DefaultProbabilityTermStructure>
      defaultTS,\n                                     Real recoveryRate,\n                                     Handle<YieldTermStructure>
      yieldTS)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:40,1
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:42,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:43,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:48,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:51,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:51,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:52,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:54,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:56,1
    - Dst: auto::nominal
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:59,1
    - Dst: QuantLib::RiskyBondEngine::recoveryRate
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:59,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:60,1
    - Dst: QuantLib::RiskyBondEngine::defaultTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:61,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:62,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:64,1
    - Dst: QuantLib::RiskyBondEngine::yieldTS
      Src: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp:72,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 74
    functionName: QuantLib::RiskyBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.cpp
    functionUses: 0
    functionsReached:
    - date
    - auto::nominal
    - QuantLib::RiskyBondEngine::defaultTS
    - QuantLib::CashFlows::startDate
    - QuantLib::RiskyBondEngine::recoveryRate
    - std::max
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    - QuantLib::RiskyBondEngine::yieldTS
    linkageType: ''
    returnType: void
    signature: void RiskyBondEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& conversionProbability() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & conversionProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& conversionProbability()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & conversionProbability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& spreadAdjustedRate() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & spreadAdjustedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& spreadAdjustedRate()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & spreadAdjustedRate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& dividendValues() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & dividendValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& dividendValues()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & dividendValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:58,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:60,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 64
    functionName: QuantLib::DiscretizedConvertible::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: '& conversionProbability() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & conversionProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& conversionProbability()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & conversionProbability()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& spreadAdjustedRate() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & spreadAdjustedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& spreadAdjustedRate()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & spreadAdjustedRate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& dividendValues() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & dividendValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& dividendValues()'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array & dividendValues()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:57,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:58,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:59,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:60,1
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:61,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 64
    functionName: QuantLib::DiscretizedConvertible::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/discretizedconvertible.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> mandatoryTimes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:32,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' bond'
    argTypes:
    - Bond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::BondFunctions::startDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date BondFunctions::startDate(const Bond& bond)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:36,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' bond'
    argTypes:
    - Bond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::BondFunctions::maturityDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date BondFunctions::maturityDate(const Bond& bond)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:41,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:42,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::BondFunctions::isTradable
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - notional
    - settlementDate
    - Date
    linkageType: ''
    returnType: bool
    signature: "bool BondFunctions::isTradable(const Bond& bond,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:50,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:51,1
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:53,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionName: QuantLib::BondFunctions::previousCashFlow
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::previousCashFlow
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Leg::const_reverse_iterator
    signature: "Leg::const_reverse_iterator BondFunctions::previousCashFlow(const
      Bond& bond,\n                                    Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:59,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:60,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:62,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::BondFunctions::nextCashFlow
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Leg::const_iterator
    signature: "Leg::const_iterator BondFunctions::nextCashFlow(const Bond& bond,\n
      \                                                   Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:68,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:69,1
    - Dst: QuantLib::CashFlows::previousCashFlowDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:71,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: QuantLib::BondFunctions::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CashFlows::previousCashFlowDate
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::previousCashFlowDate(const Bond& bond,\n                                             Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:77,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:78,1
    - Dst: QuantLib::CashFlows::nextCashFlowDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:80,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::BondFunctions::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CashFlows::nextCashFlowDate
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::nextCashFlowDate(const Bond& bond,\n                                         Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:86,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:87,1
    - Dst: QuantLib::CashFlows::previousCashFlowAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:89,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 91
    functionName: QuantLib::BondFunctions::previousCashFlowAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::previousCashFlowAmount
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::previousCashFlowAmount(const Bond& bond,\n                                               Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:95,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:96,1
    - Dst: QuantLib::CashFlows::nextCashFlowAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:98,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: QuantLib::BondFunctions::nextCashFlowAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - Date
    - QuantLib::CashFlows::nextCashFlowAmount
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::nextCashFlowAmount(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:104,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:105,1
    - Dst: QuantLib::CashFlows::previousCouponRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:107,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: QuantLib::BondFunctions::previousCouponRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::previousCouponRate
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::previousCouponRate(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:113,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:114,1
    - Dst: QuantLib::CashFlows::nextCouponRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:116,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 118
    functionName: QuantLib::BondFunctions::nextCouponRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::nextCouponRate
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::nextCouponRate(const Bond& bond,\n                                       Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:122,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:125,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:125,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:127,1
    - Dst: QuantLib::CashFlows::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:129,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 131
    functionName: QuantLib::BondFunctions::accrualStartDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accrualStartDate
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::accrualStartDate(const Bond& bond,\n                                         Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:135,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:138,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:138,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:140,1
    - Dst: QuantLib::CashFlows::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:142,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 144
    functionName: QuantLib::BondFunctions::accrualEndDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - QuantLib::CashFlows::accrualEndDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::accrualEndDate(const Bond& bond,\n                                       Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:148,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:151,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:151,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:153,1
    - Dst: QuantLib::CashFlows::referencePeriodStart
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:155,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 157
    functionName: QuantLib::BondFunctions::referencePeriodStart
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::referencePeriodStart
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::referencePeriodStart(const Bond& bond,\n                                             Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:161,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:164,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:164,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:166,1
    - Dst: QuantLib::CashFlows::referencePeriodEnd
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:168,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 170
    functionName: QuantLib::BondFunctions::referencePeriodEnd
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::referencePeriodEnd
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::referencePeriodEnd(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:174,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:177,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:177,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:179,1
    - Dst: QuantLib::CashFlows::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:181,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 183
    functionName: QuantLib::BondFunctions::accrualPeriod
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accrualPeriod
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::accrualPeriod(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:187,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:190,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:190,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:192,1
    - Dst: QuantLib::CashFlows::accrualDays
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:194,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: QuantLib::BondFunctions::accrualDays
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::accrualDays
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type BondFunctions::accrualDays(const Bond& bond,\n                                                 Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:200,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:203,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:203,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:205,1
    - Dst: QuantLib::CashFlows::accruedPeriod
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:207,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 209
    functionName: QuantLib::BondFunctions::accruedPeriod
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accruedPeriod
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::accruedPeriod(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:213,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:216,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:216,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:218,1
    - Dst: QuantLib::CashFlows::accruedDays
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:220,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::BondFunctions::accruedDays
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QuantLib::CashFlows::accruedDays
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type BondFunctions::accruedDays(const Bond& bond,\n                                                 Date
      settlement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:226,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:227,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:229,1
    - Dst: QuantLib::CashFlows::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:232,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:232,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: QuantLib::BondFunctions::accruedAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::accruedAmount
    - Date
    - QuantLib::BondFunctions::isTradable
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::accruedAmount(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:242,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:243,1
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:245,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Date
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      YieldTermStructure& discountCurve,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:251,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:254,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:254,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:257,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:259,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:259,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 263
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      YieldTermStructure& discountCurve,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:268,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:269,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:271,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:271,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:273,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:275,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:275,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 278
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - notional
    - cashflows
    - QuantLib::CashFlows::bps
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            const
      YieldTermStructure& discountCurve,\n                            Date settlement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:284,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:285,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:287,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:287,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:289,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:291,1
    - Dst: Bond::Price::isValid
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:292,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:294,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:295,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:295,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:297,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:301,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    - price
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    - Bond::Price
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 280
    functionDepth: 2
    functionLinenumber: 280
    functionLinenumberEnd: 304
    functionName: QuantLib::BondFunctions::atmRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Null<Real>
    - QuantLib::BondFunctions::maturityDate
    - Bond::Price::isValid
    - Date
    - QuantLib::CashFlows::atmRate
    - QuantLib::BondFunctions::isTradable
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::atmRate(const Bond& bond,\n                                const
      YieldTermStructure& discountCurve,\n                                Date settlement,\n
      \                               const Bond::Price price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:309,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 306
    functionDepth: 2
    functionLinenumber: 306
    functionLinenumberEnd: 310
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      InterestRate& yield,\n                                   Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 320
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   Rate
      yield,\n                                   const DayCounter& dayCounter,\n                                   Compounding
      compounding,\n                                   Frequency frequency,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:325,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:326,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:328,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:328,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:330,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:332,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:332,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 336
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      InterestRate& yield,\n                                   Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   Rate
      yield,\n                                   const DayCounter& dayCounter,\n                                   Compounding
      compounding,\n                                   Frequency frequency,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:351,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:352,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:354,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:354,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:356,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:358,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:358,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 361
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - notional
    - cashflows
    - QuantLib::CashFlows::bps
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            const
      InterestRate& yield,\n                            Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 371
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondFunctions::bps
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            Rate
      yield,\n                            const DayCounter& dayCounter,\n                            Compounding
      compounding,\n                            Frequency frequency,\n                            Date
      settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:383,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' bond'
    - price
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Bond
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 387
    functionName: QuantLib::BondFunctions::yield
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::BondFunctions::yield
    - NewtonSafe::setMaxEvaluations
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::yield(const Bond& bond,\n                              Bond::Price
      price,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              Date
      settlement,\n                              Real accuracy,\n                              Size
      maxIterations,\n                              Rate guess)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:393,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:394,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:396,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:396,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:398,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:400,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' bond'
    - ' yield'
    - type
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Duration::Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 403
    functionName: QuantLib::BondFunctions::duration
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::duration
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::duration(const Bond& bond,\n                                 const
      InterestRate& yield,\n                                 Duration::Type type,\n
      \                                Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - type
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Duration::Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 414
    functionName: QuantLib::BondFunctions::duration
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::BondFunctions::duration
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::duration(const Bond& bond,\n                                 Rate
      yield,\n                                 const DayCounter& dayCounter,\n                                 Compounding
      compounding,\n                                 Frequency frequency,\n                                 Duration::Type
      type,\n                                 Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:419,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:420,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:422,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:422,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:424,1
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:426,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 428
    functionName: QuantLib::BondFunctions::convexity
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::convexity
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::convexity(const Bond& bond,\n                                  const
      InterestRate& yield,\n                                  Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::convexity
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 438
    functionName: QuantLib::BondFunctions::convexity
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondFunctions::convexity
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::convexity(const Bond& bond,\n                                  Rate
      yield,\n                                  const DayCounter& dayCounter,\n                                  Compounding
      compounding,\n                                  Frequency frequency,\n                                  Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:443,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:444,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:446,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:446,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:448,1
    - Dst: QuantLib::CashFlows::basisPointValue
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:450,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 452
    functionName: QuantLib::BondFunctions::basisPointValue
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QuantLib::CashFlows::basisPointValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::basisPointValue(const Bond& bond,\n                                        const
      InterestRate& yield,\n                                        Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::basisPointValue
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 462
    functionName: QuantLib::BondFunctions::basisPointValue
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondFunctions::basisPointValue
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::basisPointValue(const Bond& bond,\n                              Rate
      yield,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                                        Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:467,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:468,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:470,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:470,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:472,1
    - Dst: QuantLib::CashFlows::yieldValueBasisPoint
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:474,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 476
    functionName: QuantLib::BondFunctions::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - QuantLib::CashFlows::yieldValueBasisPoint
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::yieldValueBasisPoint(const Bond& bond,\n                                             const
      InterestRate& yield,\n                                             Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::yieldValueBasisPoint
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 486
    functionName: QuantLib::BondFunctions::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BondFunctions::yieldValueBasisPoint
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::yieldValueBasisPoint(const Bond& bond,\n                                             Rate
      yield,\n                                             const DayCounter& dayCounter,\n
      \                                            Compounding compounding,\n                                             Frequency
      frequency,\n                                             Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:495,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:496,1
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:498,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ' bond'
    - ' d'
    - zSpread
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Bond
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 488
    functionDepth: 2
    functionLinenumber: 488
    functionLinenumberEnd: 499
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Date
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      ext::shared_ptr<YieldTermStructure>& d,\n                                   Spread
      zSpread,\n                                   const DayCounter& dc,\n                                   Compounding
      comp,\n                                   Frequency freq,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:508,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:509,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:511,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:511,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:513,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:515,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:515,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - ' bond'
    - ' d'
    - zSpread
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Bond
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 520
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 4
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      ext::shared_ptr<YieldTermStructure>& d,\n                                   Spread
      zSpread,\n                                   const DayCounter& dc,\n                                   Compounding
      comp,\n                                   Frequency freq,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:532,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:533,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:535,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:535,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:537,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:540,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:541,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:541,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:543,1
    - Dst: QuantLib::CashFlows::zSpread
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:545,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:545,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 10
    argNames:
    - ' bond'
    - price
    - ' d'
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Bond
    - Bond::Price
    - ext::shared_ptr<YieldTermStructure>
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 522
    functionDepth: 2
    functionLinenumber: 522
    functionLinenumberEnd: 551
    functionName: QuantLib::BondFunctions::zSpread
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - QuantLib::CashFlows::zSpread
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: "Spread BondFunctions::zSpread(const Bond& bond,\n                                  Bond::Price
      price,\n                                  const ext::shared_ptr<YieldTermStructure>&
      d,\n                                  const DayCounter& dayCounter,\n                                  Compounding
      compounding,\n                                  Frequency frequency,\n                                  Date
      settlement,\n                                  Real accuracy,\n                                  Size
      maxIterations,\n                                  Rate guess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::startDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:32,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' bond'
    argTypes:
    - Bond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: QuantLib::BondFunctions::startDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::startDate
    linkageType: ''
    returnType: Date
    signature: Date BondFunctions::startDate(const Bond& bond)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:36,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' bond'
    argTypes:
    - Bond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: QuantLib::BondFunctions::maturityDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 21
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::maturityDate
    linkageType: ''
    returnType: Date
    signature: Date BondFunctions::maturityDate(const Bond& bond)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:41,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:42,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: QuantLib::BondFunctions::isTradable
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 26
    functionsReached:
    - notional
    - settlementDate
    - Date
    linkageType: ''
    returnType: bool
    signature: "bool BondFunctions::isTradable(const Bond& bond,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:50,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:51,1
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:53,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionName: QuantLib::BondFunctions::previousCashFlow
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::previousCashFlow
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Leg::const_reverse_iterator
    signature: "Leg::const_reverse_iterator BondFunctions::previousCashFlow(const
      Bond& bond,\n                                    Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:59,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:60,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:62,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::BondFunctions::nextCashFlow
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Leg::const_iterator
    signature: "Leg::const_iterator BondFunctions::nextCashFlow(const Bond& bond,\n
      \                                                   Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:68,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:69,1
    - Dst: QuantLib::CashFlows::previousCashFlowDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:71,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: QuantLib::BondFunctions::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CashFlows::previousCashFlowDate
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::previousCashFlowDate(const Bond& bond,\n                                             Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:77,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:78,1
    - Dst: QuantLib::CashFlows::nextCashFlowDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:80,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionName: QuantLib::BondFunctions::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CashFlows::nextCashFlowDate
    - settlementDate
    - Date
    - cashflows
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::nextCashFlowDate(const Bond& bond,\n                                         Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:86,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:87,1
    - Dst: QuantLib::CashFlows::previousCashFlowAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:89,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 91
    functionName: QuantLib::BondFunctions::previousCashFlowAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::previousCashFlowAmount
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::previousCashFlowAmount(const Bond& bond,\n                                               Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:95,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:96,1
    - Dst: QuantLib::CashFlows::nextCashFlowAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:98,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: QuantLib::BondFunctions::nextCashFlowAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - Date
    - QuantLib::CashFlows::nextCashFlowAmount
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::nextCashFlowAmount(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:104,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:105,1
    - Dst: QuantLib::CashFlows::previousCouponRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:107,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: QuantLib::BondFunctions::previousCouponRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::previousCouponRate
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::previousCouponRate(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:113,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:114,1
    - Dst: QuantLib::CashFlows::nextCouponRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:116,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 118
    functionName: QuantLib::BondFunctions::nextCouponRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - settlementDate
    - Date
    - cashflows
    - QuantLib::CashFlows::nextCouponRate
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::nextCouponRate(const Bond& bond,\n                                       Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:122,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:125,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:125,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:127,1
    - Dst: QuantLib::CashFlows::accrualStartDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:129,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 131
    functionName: QuantLib::BondFunctions::accrualStartDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accrualStartDate
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::accrualStartDate(const Bond& bond,\n                                         Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:135,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:136,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:138,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:138,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:140,1
    - Dst: QuantLib::CashFlows::accrualEndDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:142,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 144
    functionName: QuantLib::BondFunctions::accrualEndDate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - QuantLib::CashFlows::accrualEndDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::accrualEndDate(const Bond& bond,\n                                       Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:148,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:151,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:151,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:153,1
    - Dst: QuantLib::CashFlows::referencePeriodStart
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:155,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 157
    functionName: QuantLib::BondFunctions::referencePeriodStart
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::referencePeriodStart
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::referencePeriodStart(const Bond& bond,\n                                             Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:161,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:164,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:164,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:166,1
    - Dst: QuantLib::CashFlows::referencePeriodEnd
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:168,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 170
    functionName: QuantLib::BondFunctions::referencePeriodEnd
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::referencePeriodEnd
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date BondFunctions::referencePeriodEnd(const Bond& bond,\n                                           Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:174,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:177,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:177,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:179,1
    - Dst: QuantLib::CashFlows::accrualPeriod
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:181,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 183
    functionName: QuantLib::BondFunctions::accrualPeriod
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accrualPeriod
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::accrualPeriod(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:187,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:190,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:190,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:192,1
    - Dst: QuantLib::CashFlows::accrualDays
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:194,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: QuantLib::BondFunctions::accrualDays
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::accrualDays
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type BondFunctions::accrualDays(const Bond& bond,\n                                                 Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:200,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:203,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:203,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:205,1
    - Dst: QuantLib::CashFlows::accruedPeriod
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:207,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 209
    functionName: QuantLib::BondFunctions::accruedPeriod
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QuantLib::CashFlows::accruedPeriod
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::accruedPeriod(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:213,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:216,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:216,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:218,1
    - Dst: QuantLib::CashFlows::accruedDays
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:220,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::BondFunctions::accruedDays
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QuantLib::CashFlows::accruedDays
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type BondFunctions::accruedDays(const Bond& bond,\n                                                 Date
      settlement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:226,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:227,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:229,1
    - Dst: QuantLib::CashFlows::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:232,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:232,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' bond'
    - settlement
    argTypes:
    - Bond
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: QuantLib::BondFunctions::accruedAmount
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 7
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::accruedAmount
    - Date
    - QuantLib::BondFunctions::isTradable
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::accruedAmount(const Bond& bond,\n                                      Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:242,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:243,1
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:245,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Date
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      YieldTermStructure& discountCurve,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:251,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:254,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:254,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:257,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:259,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:259,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 263
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      YieldTermStructure& discountCurve,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:268,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:269,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:271,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:271,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:273,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:275,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:275,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 278
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - notional
    - cashflows
    - QuantLib::CashFlows::bps
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            const
      YieldTermStructure& discountCurve,\n                            Date settlement)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:284,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:285,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:287,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:287,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:289,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:291,1
    - Dst: Bond::Price::isValid
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:292,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:294,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:295,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:295,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:297,1
    - Dst: QuantLib::CashFlows::atmRate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:301,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' bond'
    - ' discountCurve'
    - settlement
    - price
    argTypes:
    - Bond
    - YieldTermStructure
    - Date
    - Bond::Price
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 280
    functionDepth: 2
    functionLinenumber: 280
    functionLinenumberEnd: 304
    functionName: QuantLib::BondFunctions::atmRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Null<Real>
    - QuantLib::BondFunctions::maturityDate
    - Bond::Price::isValid
    - Date
    - QuantLib::CashFlows::atmRate
    - QuantLib::BondFunctions::isTradable
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::atmRate(const Bond& bond,\n                                const
      YieldTermStructure& discountCurve,\n                                Date settlement,\n
      \                               const Bond::Price price)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:309,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 306
    functionDepth: 2
    functionLinenumber: 306
    functionLinenumberEnd: 310
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      InterestRate& yield,\n                                   Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::cleanPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 320
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::BondFunctions::cleanPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   Rate
      yield,\n                                   const DayCounter& dayCounter,\n                                   Compounding
      compounding,\n                                   Frequency frequency,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:325,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:326,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:328,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:328,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:330,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:332,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:332,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 336
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      InterestRate& yield,\n                                   Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   Rate
      yield,\n                                   const DayCounter& dayCounter,\n                                   Compounding
      compounding,\n                                   Frequency frequency,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:351,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:352,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:354,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:354,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:356,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:358,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:358,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 361
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - notional
    - cashflows
    - QuantLib::CashFlows::bps
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            const
      InterestRate& yield,\n                            Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::bps
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 371
    functionName: QuantLib::BondFunctions::bps
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondFunctions::bps
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::bps(const Bond& bond,\n                            Rate
      yield,\n                            const DayCounter& dayCounter,\n                            Compounding
      compounding,\n                            Frequency frequency,\n                            Date
      settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:383,1
    - Dst: QuantLib::BondFunctions::yield
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ' bond'
    - price
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Bond
    - Bond::Price
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 387
    functionName: QuantLib::BondFunctions::yield
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 11
    functionsReached:
    - QuantLib::BondFunctions::yield
    - NewtonSafe::setMaxEvaluations
    linkageType: ''
    returnType: Rate
    signature: "Rate BondFunctions::yield(const Bond& bond,\n                              Bond::Price
      price,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              Date
      settlement,\n                              Real accuracy,\n                              Size
      maxIterations,\n                              Rate guess)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:393,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:394,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:396,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:396,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:398,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:400,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' bond'
    - ' yield'
    - type
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Duration::Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 403
    functionName: QuantLib::BondFunctions::duration
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::duration
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::duration(const Bond& bond,\n                                 const
      InterestRate& yield,\n                                 Duration::Type type,\n
      \                                Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::duration
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - type
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Duration::Type
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 414
    functionName: QuantLib::BondFunctions::duration
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::BondFunctions::duration
    linkageType: ''
    returnType: Time
    signature: "Time BondFunctions::duration(const Bond& bond,\n                                 Rate
      yield,\n                                 const DayCounter& dayCounter,\n                                 Compounding
      compounding,\n                                 Frequency frequency,\n                                 Duration::Type
      type,\n                                 Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:419,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:420,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:422,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:422,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:424,1
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:426,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 428
    functionName: QuantLib::BondFunctions::convexity
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::CashFlows::convexity
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::convexity(const Bond& bond,\n                                  const
      InterestRate& yield,\n                                  Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::convexity
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 438
    functionName: QuantLib::BondFunctions::convexity
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondFunctions::convexity
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::convexity(const Bond& bond,\n                                  Rate
      yield,\n                                  const DayCounter& dayCounter,\n                                  Compounding
      compounding,\n                                  Frequency frequency,\n                                  Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:443,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:444,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:446,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:446,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:448,1
    - Dst: QuantLib::CashFlows::basisPointValue
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:450,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 452
    functionName: QuantLib::BondFunctions::basisPointValue
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QuantLib::CashFlows::basisPointValue
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::basisPointValue(const Bond& bond,\n                                        const
      InterestRate& yield,\n                                        Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::basisPointValue
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 462
    functionName: QuantLib::BondFunctions::basisPointValue
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondFunctions::basisPointValue
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::basisPointValue(const Bond& bond,\n                              Rate
      yield,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                                        Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:467,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:468,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:470,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:470,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:472,1
    - Dst: QuantLib::CashFlows::yieldValueBasisPoint
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:474,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' bond'
    - ' yield'
    - settlement
    argTypes:
    - Bond
    - InterestRate
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 476
    functionName: QuantLib::BondFunctions::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 1
    functionsReached:
    - cashflows
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - QuantLib::CashFlows::yieldValueBasisPoint
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::yieldValueBasisPoint(const Bond& bond,\n                                             const
      InterestRate& yield,\n                                             Date settlement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BondFunctions::yieldValueBasisPoint
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' bond'
    - yield
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    argTypes:
    - Bond
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 486
    functionName: QuantLib::BondFunctions::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BondFunctions::yieldValueBasisPoint
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::yieldValueBasisPoint(const Bond& bond,\n                                             Rate
      yield,\n                                             const DayCounter& dayCounter,\n
      \                                            Compounding compounding,\n                                             Frequency
      frequency,\n                                             Date settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:495,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:496,1
    - Dst: QuantLib::BondFunctions::dirtyPrice
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:498,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ' bond'
    - ' d'
    - zSpread
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Bond
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 488
    functionDepth: 2
    functionLinenumber: 488
    functionLinenumberEnd: 499
    functionName: QuantLib::BondFunctions::cleanPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - Date
    - QuantLib::BondFunctions::dirtyPrice
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::cleanPrice(const Bond& bond,\n                                   const
      ext::shared_ptr<YieldTermStructure>& d,\n                                   Spread
      zSpread,\n                                   const DayCounter& dc,\n                                   Compounding
      comp,\n                                   Frequency freq,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:508,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:509,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:511,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:511,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:513,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:515,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:515,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - ' bond'
    - ' d'
    - zSpread
    - ' dc'
    - comp
    - freq
    - settlement
    argTypes:
    - Bond
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 520
    functionName: QuantLib::BondFunctions::dirtyPrice
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 8
    functionsReached:
    - notional
    - cashflows
    - settlementDate
    - QuantLib::CashFlows::npv
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BondFunctions::dirtyPrice(const Bond& bond,\n                                   const
      ext::shared_ptr<YieldTermStructure>& d,\n                                   Spread
      zSpread,\n                                   const DayCounter& dc,\n                                   Compounding
      comp,\n                                   Frequency freq,\n                                   Date
      settlement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:532,1
    - Dst: settlementDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:533,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:535,1
    - Dst: QuantLib::BondFunctions::isTradable
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:535,1
    - Dst: QuantLib::BondFunctions::maturityDate
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:537,1
    - Dst: Bond::Price::amount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:540,1
    - Dst: Bond::Price::type
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:541,1
    - Dst: QuantLib::BondFunctions::accruedAmount
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:541,1
    - Dst: notional
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:543,1
    - Dst: QuantLib::CashFlows::zSpread
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:545,1
    - Dst: cashflows
      Src: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp:545,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 10
    argNames:
    - ' bond'
    - price
    - ' d'
    - ' dayCounter'
    - compounding
    - frequency
    - settlement
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Bond
    - Bond::Price
    - ext::shared_ptr<YieldTermStructure>
    - DayCounter
    - Compounding
    - Frequency
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 522
    functionDepth: 2
    functionLinenumber: 522
    functionLinenumberEnd: 551
    functionName: QuantLib::BondFunctions::zSpread
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/bondfunctions.cpp
    functionUses: 0
    functionsReached:
    - Bond::Price::amount
    - notional
    - cashflows
    - QuantLib::CashFlows::zSpread
    - QuantLib::BondFunctions::accruedAmount
    - settlementDate
    - QuantLib::BondFunctions::maturityDate
    - Date
    - QuantLib::BondFunctions::isTradable
    - Bond::Price::type
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: "Spread BondFunctions::zSpread(const Bond& bond,\n                                  Bond::Price
      price,\n                                  const ext::shared_ptr<YieldTermStructure>&
      d,\n                                  const DayCounter& dayCounter,\n                                  Compounding
      compounding,\n                                  Frequency frequency,\n                                  Date
      settlement,\n                                  Real accuracy,\n                                  Size
      maxIterations,\n                                  Rate guess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::RiskyBondEngine::defaultTS
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: Handle<DefaultProbabilityTermStructure> RiskyBondEngine::defaultTS()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::RiskyBondEngine::recoveryRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RiskyBondEngine::recoveryRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::RiskyBondEngine::yieldTS
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> RiskyBondEngine::yieldTS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::RiskyBondEngine::defaultTS
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: Handle<DefaultProbabilityTermStructure> RiskyBondEngine::defaultTS()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::RiskyBondEngine::recoveryRate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RiskyBondEngine::recoveryRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::RiskyBondEngine::yieldTS
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/riskybondengine.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> RiskyBondEngine::yieldTS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process
    - timeSteps
    - ' creditSpread'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::BinomialConvertibleEngine::BinomialConvertibleEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached:
    - DividendSchedule
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialConvertibleEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                                  Size timeSteps,\n                                  const
      Handle<Quote>& creditSpread,\n                                  DividendSchedule
      dividends = DividendSchedule())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& creditSpread() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & creditSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& dividends() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DividendSchedule
    signature: DividendSchedule & dividends() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:80,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:83,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:95,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:96,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:98,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:100,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:112,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:116,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:117,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:119,1
    - Dst: TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice<T>
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:121,1
    - Dst: DiscretizedConvertible::initialize
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:126,1
    - Dst: DiscretizedConvertible::rollback
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:127,1
    - Dst: DiscretizedConvertible::presentValue
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:128,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:129,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 131
    functionName: QuantLib::BinomialConvertibleEngine<T>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - T::T
    - DiscretizedConvertible::rollback
    - dividendYield
    - date
    - QL_ENSURE
    - DiscretizedConvertible::initialize
    - TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice<T>
    - size
    - x0
    - exercise::lastDate
    - DiscretizedConvertible::presentValue
    - DayCounter::yearFraction
    - value
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - amount
    linkageType: ''
    returnType: void
    signature: void BinomialConvertibleEngine<T>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - process
    - timeSteps
    - ' creditSpread'
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Size
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::BinomialConvertibleEngine::BinomialConvertibleEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached:
    - DividendSchedule
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BinomialConvertibleEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>
      process,\n                                  Size timeSteps,\n                                  const
      Handle<Quote>& creditSpread,\n                                  DividendSchedule
      dividends = DividendSchedule())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& creditSpread() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & creditSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& dividends() const'
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DividendSchedule
    signature: DividendSchedule & dividends() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:77,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:78,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:79,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:80,1
    - Dst: x0
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:83,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:84,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:85,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:86,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:87,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:89,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:95,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:96,1
    - Dst: amount
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:97,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:98,1
    - Dst: date
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:100,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:112,1
    - Dst: GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:116,1
    - Dst: T::T
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:117,1
    - Dst: value
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:119,1
    - Dst: TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice<T>
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:121,1
    - Dst: DiscretizedConvertible::initialize
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:126,1
    - Dst: DiscretizedConvertible::rollback
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:127,1
    - Dst: DiscretizedConvertible::presentValue
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:128,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:129,1
    - Dst: QuantLib::G2::SwaptionPricingFunction::sigmax
      Src: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 131
    functionName: QuantLib::BinomialConvertibleEngine<T>::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/bond/binomialconvertibleengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::G2::SwaptionPricingFunction::sigmax
    - T::T
    - DiscretizedConvertible::rollback
    - dividendYield
    - date
    - QL_ENSURE
    - DiscretizedConvertible::initialize
    - TsiveriotisFernandesLattice<T>::TsiveriotisFernandesLattice<T>
    - size
    - x0
    - exercise::lastDate
    - DiscretizedConvertible::presentValue
    - DayCounter::yearFraction
    - value
    - QL_REQUIRE
    - blackVolatility
    - GeneralizedBlackScholesProcess::GeneralizedBlackScholesProcess
    - riskFreeRate
    - amount
    linkageType: ''
    returnType: void
    signature: void BinomialConvertibleEngine<T>::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:30,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:31,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:32,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:35,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:36,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - CapFloor::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: QuantLib::DiscretizedCapFloor::DiscretizedCapFloor
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - resize
    - startDates::size
    - endDates::size
    - size
    linkageType: ''
    returnType: void
    signature: "void DiscretizedCapFloor::DiscretizedCapFloor(const CapFloor::arguments&
      args,\n                                             const Date& referenceDate,\n
      \                                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:42,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::DiscretizedCapFloor::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::DiscretizedCapFloor::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedCapFloor::mandatoryTimes() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:54,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:55,1
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:59,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:59,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:70,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:72,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:80,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:82,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:82,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 86
    functionName: QuantLib::DiscretizedCapFloor::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - std::max<Real>
    - size
    - method
    - DiscretizedDiscountBond::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::preAdjustValuesImpl()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:89,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:100,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:106,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 115
    functionName: QuantLib::DiscretizedCapFloor::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - isOnTime
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:30,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:31,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:32,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:35,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:36,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' args'
    - ' referenceDate'
    - ' dayCounter'
    argTypes:
    - CapFloor::arguments
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: QuantLib::DiscretizedCapFloor::DiscretizedCapFloor
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - resize
    - startDates::size
    - endDates::size
    - size
    linkageType: ''
    returnType: void
    signature: "void DiscretizedCapFloor::DiscretizedCapFloor(const CapFloor::arguments&
      args,\n                                             const Date& referenceDate,\n
      \                                            const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:42,1
    - Dst: adjustValues
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - size
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::DiscretizedCapFloor::reset
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - Array
    - adjustValues
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::reset(Size size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::copy
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:48,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: QuantLib::DiscretizedCapFloor::mandatoryTimes
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - end
    - begin
    - std::copy
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> DiscretizedCapFloor::mandatoryTimes() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:54,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:55,1
    - Dst: DiscretizedDiscountBond::initialize
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:59,1
    - Dst: method
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:59,1
    - Dst: DiscretizedDiscountBond::rollback
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:70,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:72,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:80,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:82,1
    - Dst: DiscretizedDiscountBond::values
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:82,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 86
    functionName: QuantLib::DiscretizedCapFloor::preAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - isOnTime
    - DiscretizedDiscountBond::values
    - DiscretizedDiscountBond::initialize
    - std::max<Real>
    - size
    - method
    - DiscretizedDiscountBond::rollback
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::preAdjustValuesImpl()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:89,1
    - Dst: isOnTime
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:90,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:100,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp:106,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 115
    functionName: QuantLib::DiscretizedCapFloor::postAdjustValuesImpl
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/discretizedcapfloor.cpp
    functionUses: 0
    functionsReached:
    - size
    - isOnTime
    - std::max
    linkageType: ''
    returnType: void
    signature: void DiscretizedCapFloor::postAdjustValuesImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - model
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<HullWhite>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 85
    functionName: QuantLib::MCHullWhiteCapFloorEngine::MCHullWhiteCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCHullWhiteCapFloorEngine(ext::shared_ptr<HullWhite> model,\n
      \                                 bool brownianBridge,\n                                  bool
      antitheticVariate,\n                                  Size requiredSamples,\n
      \                                 Real requiredTolerance,\n                                  Size
      maxSamples,\n                                  BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:88,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:91,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: QuantLib::MCHullWhiteCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:99,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:100,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:102,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:103,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:104,1
    - Dst: detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::MCHullWhiteCapFloorEngine::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
    - endDates::back
    - DayCounter::yearFraction
    - termStructure
    - ext::shared_ptr<path_pricer_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_pricer_type>
    signature: ext::shared_ptr<path_pricer_type> pathPricer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:111,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:112,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:116,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:118,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:119,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:123,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:124,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:125,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 127
    functionName: QuantLib::MCHullWhiteCapFloorEngine::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - endDates::back
    - DayCounter::yearFraction
    - std::vector::begin
    - std::vector::end
    - fixingDates::size
    - termStructure
    - TimeGrid
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:131,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:132,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:133,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:136,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:137,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:138,1
    - Dst: HullWhiteForwardProcess::HullWhiteForwardProcess
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:141,1
    - Dst: ext::shared_ptr::setForwardMeasureTime
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:142,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:144,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:146,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:146,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:147,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 150
    functionName: QuantLib::MCHullWhiteCapFloorEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::make_sequence_generator
    - endDates::back
    - DayCounter::yearFraction
    - HullWhiteForwardProcess::HullWhiteForwardProcess
    - ext::shared_ptr::setForwardMeasureTime
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - termStructure
    - QuantLib::MCHullWhiteCapFloorEngine::timeGrid
    - Handle::referenceDate
    - ext::shared_ptr<path_generator_type>
    - params
    - Handle::dayCounter
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<HullWhite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::MakeMCHullWhiteCapFloorEngine<RNG, S>::MakeMCHullWhiteCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHullWhiteCapFloorEngine<RNG, S>::MakeMCHullWhiteCapFloorEngine(\n
      \       ext::shared_ptr<HullWhite> model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:200,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:240,1
    - Dst: MCHullWhiteCapFloorEngine<RNG,S>::MCHullWhiteCapFloorEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 245
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHullWhiteCapFloorEngine<RNG,S>::MCHullWhiteCapFloorEngine<RNG,S>
    linkageType: ''
    returnType: "MakeMCHullWhiteCapFloorEngine<RNG,S>::\n    operator"
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:81,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - model
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<HullWhite>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 85
    functionName: QuantLib::MCHullWhiteCapFloorEngine::MCHullWhiteCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCHullWhiteCapFloorEngine(ext::shared_ptr<HullWhite> model,\n
      \                                 bool brownianBridge,\n                                  bool
      antitheticVariate,\n                                  Size requiredSamples,\n
      \                                 Real requiredTolerance,\n                                  Size
      maxSamples,\n                                  BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:88,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:91,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: QuantLib::MCHullWhiteCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCHullWhiteCapFloorEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:99,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:100,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:102,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:103,1
    - Dst: ext::shared_ptr<path_pricer_type>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:104,1
    - Dst: detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: QuantLib::MCHullWhiteCapFloorEngine::pathPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
    - endDates::back
    - DayCounter::yearFraction
    - termStructure
    - ext::shared_ptr<path_pricer_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_pricer_type>
    signature: ext::shared_ptr<path_pricer_type> pathPricer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:111,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:112,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:116,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:118,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:119,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:123,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:124,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:125,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 127
    functionName: QuantLib::MCHullWhiteCapFloorEngine::timeGrid
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 1
    functionsReached:
    - endDates::back
    - DayCounter::yearFraction
    - std::vector::begin
    - std::vector::end
    - fixingDates::size
    - termStructure
    - TimeGrid
    - std::vector::push_back
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:131,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:132,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:133,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:136,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:137,1
    - Dst: params
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:138,1
    - Dst: HullWhiteForwardProcess::HullWhiteForwardProcess
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:141,1
    - Dst: ext::shared_ptr::setForwardMeasureTime
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:142,1
    - Dst: QuantLib::MCHullWhiteCapFloorEngine::timeGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:144,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:146,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:146,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:147,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 150
    functionName: QuantLib::MCHullWhiteCapFloorEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::make_sequence_generator
    - endDates::back
    - DayCounter::yearFraction
    - HullWhiteForwardProcess::HullWhiteForwardProcess
    - ext::shared_ptr::setForwardMeasureTime
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - termStructure
    - QuantLib::MCHullWhiteCapFloorEngine::timeGrid
    - Handle::referenceDate
    - ext::shared_ptr<path_generator_type>
    - params
    - Handle::dayCounter
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<HullWhite>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::MakeMCHullWhiteCapFloorEngine<RNG, S>::MakeMCHullWhiteCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHullWhiteCapFloorEngine<RNG, S>::MakeMCHullWhiteCapFloorEngine(\n
      \       ext::shared_ptr<HullWhite> model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:200,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAbsoluteTolerance(\n
      \                                                            Real tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withMaxSamples(Size
      samples)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSeed(BigNatural
      seed)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withBrownianBridge(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withBrownianBridge(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: "&\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHullWhiteCapFloorEngine<RNG,S>
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S> &\n    MakeMCHullWhiteCapFloorEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:240,1
    - Dst: MCHullWhiteCapFloorEngine<RNG,S>::MCHullWhiteCapFloorEngine<RNG,S>
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 245
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHullWhiteCapFloorEngine<RNG,S>::MCHullWhiteCapFloorEngine<RNG,S>
    linkageType: ''
    returnType: "MakeMCHullWhiteCapFloorEngine<RNG,S>::\n    operator"
    signature: "MakeMCHullWhiteCapFloorEngine<RNG,S>::\n    operator ext::shared_ptr<PricingEngine>()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dCapFloorEngine::Gaussian1dCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dCapFloorEngine(\n            const ext::shared_ptr<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<Gaussian1dModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::Gaussian1dCapFloorEngine::Gaussian1dCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void Gaussian1dCapFloorEngine(\n            const ext::shared_ptr<Gaussian1dModel>&
      model,\n            const int integrationPoints = 64,\n            const Real
      stddevs = 7.0,\n            const bool extrapolatePayoff = true,\n            const
      bool flatPayoffExtrapolation = false,\n            Handle<YieldTermStructure>
      discountCurve = Handle<YieldTermStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeCapFloorEngine::TreeCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeCapFloorEngine::TreeCapFloorEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeCapFloorEngine::TreeCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeCapFloorEngine::TreeCapFloorEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           const TimeGrid& timeGrid,\n
      \                                          Handle<YieldTermStructure> termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:51,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:53,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:54,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:56,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:57,1
    - Dst: DiscretizedCapFloor::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:67,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:67,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:68,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:71,1
    - Dst: startDates::front
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:73,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:74,1
    - Dst: DiscretizedCapFloor::initialize
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:75,1
    - Dst: DiscretizedCapFloor::rollback
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:76,1
    - Dst: DiscretizedCapFloor::presentValue
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 79
    functionName: QuantLib::TreeCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - DiscretizedCapFloor::rollback
    - tree
    - referenceDate
    - DayCounter::yearFraction
    - empty
    - endDates::back
    - DiscretizedCapFloor::initialize
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::vector::begin
    - std::vector::end
    - startDates::front
    - DiscretizedCapFloor::presentValue
    - DiscretizedCapFloor::mandatoryTimes
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TreeCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:31,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - timeSteps
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - Size
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::TreeCapFloorEngine::TreeCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeCapFloorEngine::TreeCapFloorEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           Size timeSteps,\n                                           Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' model'
    - ' timeGrid'
    - termStructure
    argTypes:
    - ext::shared_ptr<ShortRateModel>
    - TimeGrid
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: QuantLib::TreeCapFloorEngine::TreeCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TreeCapFloorEngine::TreeCapFloorEngine(const ext::shared_ptr<ShortRateModel>&
      model,\n                                           const TimeGrid& timeGrid,\n
      \                                          Handle<YieldTermStructure> termStructure)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:45,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:51,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:53,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:54,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:56,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:57,1
    - Dst: DiscretizedCapFloor::mandatoryTimes
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:66,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:67,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:67,1
    - Dst: tree
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:68,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:71,1
    - Dst: startDates::front
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:72,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:73,1
    - Dst: endDates::back
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:74,1
    - Dst: DiscretizedCapFloor::initialize
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:75,1
    - Dst: DiscretizedCapFloor::rollback
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:76,1
    - Dst: DiscretizedCapFloor::presentValue
      Src: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 79
    functionName: QuantLib::TreeCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/treecapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - DiscretizedCapFloor::rollback
    - tree
    - referenceDate
    - DayCounter::yearFraction
    - empty
    - endDates::back
    - DiscretizedCapFloor::initialize
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::vector::begin
    - std::vector::end
    - startDates::front
    - DiscretizedCapFloor::presentValue
    - DiscretizedCapFloor::mandatoryTimes
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void TreeCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackCapFloorEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::BlackCapFloorEngine::displacement
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::BlackCapFloorEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::BlackCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::BlackCapFloorEngine::displacement
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real displacement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:29,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:31,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:33,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:36,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:37,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:41,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:42,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:46,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:47,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ' args'
    - model
    - forwardMeasureTime
    argTypes:
    - CapFloor::arguments
    - ext::shared_ptr<HullWhite>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 50
    functionName: QuantLib::detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - DayCounter::yearFraction
    - resize
    - std::move
    - startDates::size
    - termStructure
    - fixingDates::size
    - endDates::size
    - size
    linkageType: ''
    returnType: void
    signature: "void HullWhiteCapFloorPricer::HullWhiteCapFloorPricer(const CapFloor::arguments&
      args,\n                                                         ext::shared_ptr<HullWhite>
      model,\n                                                         Time forwardMeasureTime)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:59,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:85,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:87,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:98,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 107
    functionName: HullWhiteCapFloorPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::max
    - discountBond
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteCapFloorPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:29,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:31,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:33,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:34,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:36,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:37,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:38,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:41,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:42,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:43,1
    - Dst: resize
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:46,1
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:47,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ' args'
    - model
    - forwardMeasureTime
    argTypes:
    - CapFloor::arguments
    - ext::shared_ptr<HullWhite>
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 50
    functionName: QuantLib::detail::HullWhiteCapFloorPricer::HullWhiteCapFloorPricer
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - DayCounter::yearFraction
    - resize
    - std::move
    - startDates::size
    - termStructure
    - fixingDates::size
    - endDates::size
    - size
    linkageType: ''
    returnType: void
    signature: "void HullWhiteCapFloorPricer::HullWhiteCapFloorPricer(const CapFloor::arguments&
      args,\n                                                         ext::shared_ptr<HullWhite>
      model,\n                                                         Time forwardMeasureTime)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:59,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:85,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:87,1
    - Dst: discountBond
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:98,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - Path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 107
    functionName: HullWhiteCapFloorPricer::operator()(const Path& path) const
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/mchullwhiteengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::max
    - discountBond
    linkageType: ''
    returnType: Real
    signature: Real HullWhiteCapFloorPricer::operator()(const Path& path) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - termStructure
    argTypes:
    - ext::shared_ptr<AffineModel>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticCapFloorEngine::AnalyticCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCapFloorEngine::AnalyticCapFloorEngine(const ext::shared_ptr<AffineModel>&
      model,\n                                                   Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:41,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:43,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:44,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:46,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:47,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:52,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:55,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:66,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:69,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:80,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:84,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:92,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:96,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:102,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:110,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - DayCounter::yearFraction
    - empty
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::max
    - endDates::size
    - QuantLib::detail::instance
    - discount
    - discountBondOption
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:29,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' model'
    - termStructure
    argTypes:
    - ext::shared_ptr<AffineModel>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::AnalyticCapFloorEngine::AnalyticCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void AnalyticCapFloorEngine::AnalyticCapFloorEngine(const ext::shared_ptr<AffineModel>&
      model,\n                                                   Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:35,1
    - Dst: empty
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:35,1
    - Dst: ext::dynamic_pointer_cast<TermStructureConsistentModel>
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:41,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:43,1
    - Dst: ext::shared_ptr::termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:44,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:46,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:47,1
    - Dst: endDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:52,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:55,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:56,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:66,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:69,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:80,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:84,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:92,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:96,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:102,1
    - Dst: discountBondOption
      Src: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp:110,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/analyticcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - DayCounter::yearFraction
    - empty
    - ext::shared_ptr::termStructure
    - dayCounter
    - std::max
    - endDates::size
    - QuantLib::detail::instance
    - discount
    - discountBondOption
    - ext::dynamic_pointer_cast<TermStructureConsistentModel>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:37,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:38,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:39,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - discountCurve
    - v
    - ' dc'
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             Volatility v,\n
      \                                            const DayCounter& dc,\n                                             Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:48,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:49,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:50,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - discountCurve
    - ' v'
    - ' dc'
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 54
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             const Handle<Quote>&
      v,\n                                             const DayCounter& dc,\n                                             Real
      displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:60,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:61,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:64,1
    - Dst: Null< Real >
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:67,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:67,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:70,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:73,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<OptionletVolatilityStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 75
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCapFloorEngine::displacement
    - std::move
    - volatilityType
    - registerWith
    - Null< Real >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             Handle<OptionletVolatilityStructure>
      volatility,\n                                             Real displacement)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:80,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:87,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:88,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:107,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:112,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:112,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:114,1
    - Dst: blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:117,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:130,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:130,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:132,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:135,1
    - Dst: blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:135,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:139,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 166
    functionName: QuantLib::BlackCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - blackFormulaAssetItmProbability
    - Integer
    - startDates::size
    - blackFormulaStdDevDerivative
    - discount
    - blackFormula
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: void
    signature: void BlackCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:37,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:38,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:39,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - discountCurve
    - v
    - ' dc'
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             Volatility v,\n
      \                                            const DayCounter& dc,\n                                             Real
      displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:48,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:49,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:50,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:52,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - discountCurve
    - ' v'
    - ' dc'
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 54
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             const Handle<Quote>&
      v,\n                                             const DayCounter& dc,\n                                             Real
      displacement)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:60,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:61,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:64,1
    - Dst: Null< Real >
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:67,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:67,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:70,1
    - Dst: QuantLib::BlackCapFloorEngine::displacement
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:72,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:73,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - discountCurve
    - volatility
    - displacement
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<OptionletVolatilityStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 75
    functionName: QuantLib::BlackCapFloorEngine::BlackCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackCapFloorEngine::displacement
    - std::move
    - volatilityType
    - registerWith
    - Null< Real >
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackCapFloorEngine::BlackCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                             Handle<OptionletVolatilityStructure>
      volatility,\n                                             Real displacement)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:80,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:87,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:88,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:96,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:107,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:107,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:112,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:112,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:114,1
    - Dst: blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:117,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:121,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:130,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:130,1
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:132,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:135,1
    - Dst: blackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:135,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp:139,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 166
    functionName: QuantLib::BlackCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/blackcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - blackFormulaAssetItmProbability
    - Integer
    - startDates::size
    - blackFormulaStdDevDerivative
    - discount
    - blackFormula
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: void
    signature: void BlackCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::BachelierCapFloorEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::BachelierCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::BachelierCapFloorEngine::termStructure
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::BachelierCapFloorEngine::volatility
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:34,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:36,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - v
    - ' dc'
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                                     Volatility
      v,\n                                                     const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:43,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:44,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:45,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - ' v'
    - ' dc'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                                     const Handle<Quote>&
      v,\n                                                     const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:53,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:53,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - discountCurve
    - volatility
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<OptionletVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - volatilityType
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(\n        Handle<YieldTermStructure>
      discountCurve, Handle<OptionletVolatilityStructure> volatility)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:72,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:73,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:93,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:98,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:98,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:100,1
    - Dst: bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:102,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:114,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:114,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:116,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:118,1
    - Dst: bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:118,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:122,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 149
    functionName: QuantLib::BachelierCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - bachelierBlackFormulaAssetItmProbability
    - Integer
    - bachelierBlackFormulaStdDevDerivative
    - startDates::size
    - bachelierBlackFormula
    - discount
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: void
    signature: void BachelierCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:34,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:36,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - discountCurve
    - v
    - ' dc'
    argTypes:
    - Handle<YieldTermStructure>
    - Volatility
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                                     Volatility
      v,\n                                                     const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:43,1
    - Dst: ext::shared_ptr<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:44,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:45,1
    - Dst: ConstantOptionletVolatility::ConstantOptionletVolatility
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:45,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - discountCurve
    - ' v'
    - ' dc'
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<Quote>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ConstantOptionletVolatility::ConstantOptionletVolatility
    - std::move
    - ext::shared_ptr<OptionletVolatilityStructure>
    - registerWith
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(Handle<YieldTermStructure>
      discountCurve,\n                                                     const Handle<Quote>&
      v,\n                                                     const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:53,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:53,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:58,1
    - Dst: registerWith
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - discountCurve
    - volatility
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<OptionletVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: QuantLib::BachelierCapFloorEngine::BachelierCapFloorEngine
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - volatilityType
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BachelierCapFloorEngine::BachelierCapFloorEngine(\n        Handle<YieldTermStructure>
      discountCurve, Handle<OptionletVolatilityStructure> volatility)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:72,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:73,1
    - Dst: discount
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:93,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:98,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:98,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:100,1
    - Dst: bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:102,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:114,1
    - Dst: blackVariance
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:114,1
    - Dst: bachelierBlackFormulaStdDevDerivative
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:116,1
    - Dst: Integer
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:118,1
    - Dst: bachelierBlackFormulaAssetItmProbability
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:118,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp:122,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 149
    functionName: QuantLib::BachelierCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/bacheliercapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - bachelierBlackFormulaAssetItmProbability
    - Integer
    - bachelierBlackFormulaStdDevDerivative
    - startDates::size
    - bachelierBlackFormula
    - discount
    - std::sqrt
    - blackVariance
    linkageType: ''
    returnType: void
    signature: void BachelierCapFloorEngine::calculate() const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:29,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:31,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:36,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:40,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:48,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:65,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:71,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:76,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:78,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:82,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:84,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:89,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:91,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:92,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:101,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:102,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:103,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:104,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:105,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:113,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:113,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:116,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:121,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:123,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:123,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:124,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:124,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:125,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:125,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:126,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:126,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:127,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:132,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:140,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:143,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:148,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:150,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:154,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:156,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:161,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:163,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:164,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:173,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:174,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:175,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:176,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:177,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:183,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:184,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:185,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:185,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:188,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:193,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:194,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:195,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:196,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:201,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 65
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 220
    functionName: QuantLib::Gaussian1dCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborIndex>
    - forwardRate
    - CubicInterpolation::aCoefficients
    - numeraire
    - Array::begin
    - startDates::size
    - Array::end
    - termStructure
    - yGrid
    - std::max
    - CubicInterpolation::cCoefficients
    - CubicInterpolation::bCoefficients
    - Array::size
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gaussian1dCapFloorEngine::calculate() const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:29,1
    - Dst: startDates::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:31,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:36,1
    - Dst: yGrid
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:40,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:48,1
    - Dst: termStructure
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:65,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:71,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:76,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:78,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:82,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:84,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:89,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:91,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:92,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:101,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:102,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:103,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:104,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:105,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:112,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:113,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:113,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:116,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:121,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:123,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:123,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:124,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:124,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:125,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:125,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:126,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:126,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:127,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:132,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:140,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:143,1
    - Dst: forwardRate
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:148,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:150,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:154,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:156,1
    - Dst: zerobond
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:161,1
    - Dst: std::max
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:163,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:164,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::end
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:168,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:173,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:174,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:175,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:176,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:177,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:183,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:184,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:185,1
    - Dst: Array::size
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:185,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:188,1
    - Dst: QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:193,1
    - Dst: CubicInterpolation::cCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:194,1
    - Dst: CubicInterpolation::bCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:195,1
    - Dst: CubicInterpolation::aCoefficients
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:196,1
    - Dst: numeraire
      Src: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp:201,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 65
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 220
    functionName: QuantLib::Gaussian1dCapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/pricingengines/capfloor/gaussian1dcapfloorengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborIndex>
    - forwardRate
    - CubicInterpolation::aCoefficients
    - numeraire
    - Array::begin
    - startDates::size
    - Array::end
    - termStructure
    - yGrid
    - std::max
    - CubicInterpolation::cCoefficients
    - CubicInterpolation::bCoefficients
    - Array::size
    - QuantLib::Gaussian1dModel::gaussianShiftedPolynomialIntegral
    - zerobond
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Gaussian1dCapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::TimeBasket::TimeBasket
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeBasket()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/cashflows/timebasket.hpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/timebasket.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::TimeBasket::hasDate
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool TimeBasket::hasDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TimeBasket
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: '& TimeBasket::operator+=(const TimeBasket& other)'
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket & TimeBasket::operator+=(const TimeBasket& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TimeBasket
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: '& TimeBasket::operator-=(const TimeBasket& other)'
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket & TimeBasket::operator-=(const TimeBasket& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::TimeBasket::TimeBasket
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeBasket()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/cashflows/timebasket.hpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/timebasket.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::TimeBasket::hasDate
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool TimeBasket::hasDate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TimeBasket
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: '& TimeBasket::operator+=(const TimeBasket& other)'
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket & TimeBasket::operator+=(const TimeBasket& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TimeBasket
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: '& TimeBasket::operator-=(const TimeBasket& other)'
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket & TimeBasket::operator-=(const TimeBasket& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::FloatingRateCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - nominal
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::FloatingRateCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::FloatingRateCoupon::fixingDays
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::FloatingRateCoupon::gearing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingRateCoupon::spread
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::FloatingRateCoupon::isInArrears
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isInArrears() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: "&\n    FloatingRateCoupon::index() const"
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatingRateCoupon::index()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:128,1
    - Dst: QuantLib::FloatingRateCoupon::indexFixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::FloatingRateCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
    - QuantLib::FloatingRateCoupon::indexFixing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::spread
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::gearing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::FloatingRateCoupon::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - QuantLib::FloatingRateCoupon::spread
    - QuantLib::FloatingRateCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::adjustedFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::FloatingRateCoupon::pricer
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCouponPricer>
    signature: ext::shared_ptr<FloatingRateCouponPricer> FloatingRateCoupon::pricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::gearing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: QuantLib::FloatingRateCoupon::adjustedFixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FloatingRateCoupon::adjustedFixing
    - Rate
    - QuantLib::FloatingRateCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::convexityAdjustmentImpl(Rate fixing) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FloatingRateCoupon>*>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:146,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:148,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: QuantLib::FloatingRateCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<FloatingRateCoupon>*>
    linkageType: ''
    returnType: void
    signature: void FloatingRateCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::FloatingRateCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - nominal
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::FloatingRateCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::FloatingRateCoupon::fixingDays
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::FloatingRateCoupon::gearing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingRateCoupon::spread
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: QuantLib::FloatingRateCoupon::isInArrears
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isInArrears() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: "&\n    FloatingRateCoupon::index() const"
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    FloatingRateCoupon::index()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:128,1
    - Dst: QuantLib::FloatingRateCoupon::indexFixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 3
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: QuantLib::FloatingRateCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
    - QuantLib::FloatingRateCoupon::indexFixing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::convexityAdjustment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::spread
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::gearing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::FloatingRateCoupon::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - QuantLib::FloatingRateCoupon::spread
    - QuantLib::FloatingRateCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::adjustedFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::FloatingRateCoupon::pricer
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCouponPricer>
    signature: ext::shared_ptr<FloatingRateCouponPricer> FloatingRateCoupon::pricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::gearing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    - Dst: QuantLib::FloatingRateCoupon::adjustedFixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::FloatingRateCoupon::convexityAdjustmentImpl
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatingRateCoupon::adjustedFixing
    - Rate
    - QuantLib::FloatingRateCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::convexityAdjustmentImpl(Rate fixing) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FloatingRateCoupon>*>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:146,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:148,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.hpp:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: QuantLib::FloatingRateCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<FloatingRateCoupon>*>
    linkageType: ''
    returnType: void
    signature: void FloatingRateCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows(CashFlows&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows(const CashFlows&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& operator=(CashFlows&&)'
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CashFlows
    signature: CashFlows & operator=(CashFlows&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& operator=(const CashFlows&)'
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CashFlows
    signature: CashFlows & operator=(const CashFlows&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: ~CashFlows()
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:285,1
    - Dst: solve
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' solver'
    - ' leg'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    argTypes:
    - Solver
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 292
    functionName: QuantLib::CashFlows::yield
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached:
    - solve
    - Date
    linkageType: ''
    returnType: Rate
    signature: "Rate yield(const Solver& solver,\n                          const
      Leg& leg,\n                          Real npv,\n                          const
      DayCounter& dayCounter,\n                          Compounding compounding,\n
      \                         Frequency frequency,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate =
      Date(),\n                          Date npvDate = Date(),\n                          Real
      accuracy = 1.0e-10,\n                          Rate guess = 0.05)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:439,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:440,1
    - Dst: QuantLib::CashFlows::zSpread
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' leg'
    - ' d'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 447
    functionName: QuantLib::CashFlows::zSpread
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 3
    functionsReached:
    - Date
    - QuantLib::CashFlows::zSpread
    linkageType: ''
    returnType: Spread
    signature: "Spread zSpread(const Leg& leg,\n                              const
      ext::shared_ptr<YieldTermStructure>& d,\n                              Real
      npv,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate
      = Date(),\n                              Date npvDate = Date(),\n                              Real
      accuracy = 1.0e-10,\n                              Size maxIterations = 100,\n
      \                             Rate guess = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows(CashFlows&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::CashFlows::CashFlows
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CashFlows(const CashFlows&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& operator=(CashFlows&&)'
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CashFlows
    signature: CashFlows & operator=(CashFlows&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: '& operator=(const CashFlows&)'
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CashFlows
    signature: CashFlows & operator=(const CashFlows&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: ~CashFlows()
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:285,1
    - Dst: solve
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' solver'
    - ' leg'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    argTypes:
    - Solver
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 292
    functionName: QuantLib::CashFlows::yield
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 0
    functionsReached:
    - solve
    - Date
    linkageType: ''
    returnType: Rate
    signature: "Rate yield(const Solver& solver,\n                          const
      Leg& leg,\n                          Real npv,\n                          const
      DayCounter& dayCounter,\n                          Compounding compounding,\n
      \                         Frequency frequency,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate =
      Date(),\n                          Date npvDate = Date(),\n                          Real
      accuracy = 1.0e-10,\n                          Rate guess = 0.05)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:439,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:440,1
    - Dst: QuantLib::CashFlows::zSpread
      Src: /src/quantlib/ql/cashflows/cashflows.hpp:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' leg'
    - ' d'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 447
    functionName: QuantLib::CashFlows::zSpread
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.hpp
    functionUses: 4
    functionsReached:
    - Date
    - QuantLib::CashFlows::zSpread
    linkageType: ''
    returnType: Spread
    signature: "Spread zSpread(const Leg& leg,\n                              const
      ext::shared_ptr<YieldTermStructure>& d,\n                              Real
      npv,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate
      = Date(),\n                              Date npvDate = Date(),\n                              Real
      accuracy = 1.0e-10,\n                              Size maxIterations = 100,\n
      \                             Rate guess = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::LinearTsrPricer::Settings
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: "&withRateBound(const Real lowerRateBound = defaultLowerBound,\n
      \                                   const Real upperRateBound = defaultUpperBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withRateBound(const Real lowerRateBound = defaultLowerBound,\n
      \                                   const Real upperRateBound = defaultUpperBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: '&withVegaRatio(const Real vegaRatio = 0.01)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withVegaRatio(const Real vegaRatio = 0.01)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - vegaRatio
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: "&withVegaRatio(const Real vegaRatio,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withVegaRatio(const Real vegaRatio,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: '&withPriceThreshold(const Real priceThreshold = 1.0E-8)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withPriceThreshold(const Real priceThreshold = 1.0E-8)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - priceThreshold
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 123
    functionName: "&withPriceThreshold(const Real priceThreshold,\n                                         const
      Real lowerRateBound,\n                                         const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withPriceThreshold(const Real priceThreshold,\n                                         const
      Real lowerRateBound,\n                                         const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: '&withBSStdDevs(const Real stdDevs = 3.0)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withBSStdDevs(const Real stdDevs = 3.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - stdDevs
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 143
    functionName: "&withBSStdDevs(const Real stdDevs,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withBSStdDevs(const Real stdDevs,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:178,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:180,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' meanReversion'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::LinearTsrPricer::setMeanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void setMeanReversion(const Handle<Quote>& meanReversion) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - section
    - targetVega
    argTypes:
    - SmileSection*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: QuantLib::LinearTsrPricer::VegaRatioHelper::VegaRatioHelper
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VegaRatioHelper(const SmileSection *section, const Real targetVega)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vega
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - vega
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - section
    - type
    - targetPrice
    argTypes:
    - SmileSection*
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: QuantLib::LinearTsrPricer::PriceHelper::PriceHelper
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PriceHelper(const SmileSection *section, const Option::Type type,\n
      \                       const Real targetPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::LinearTsrPricer::Settings
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: "&withRateBound(const Real lowerRateBound = defaultLowerBound,\n
      \                                   const Real upperRateBound = defaultUpperBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withRateBound(const Real lowerRateBound = defaultLowerBound,\n
      \                                   const Real upperRateBound = defaultUpperBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: '&withVegaRatio(const Real vegaRatio = 0.01)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withVegaRatio(const Real vegaRatio = 0.01)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - vegaRatio
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: "&withVegaRatio(const Real vegaRatio,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withVegaRatio(const Real vegaRatio,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: '&withPriceThreshold(const Real priceThreshold = 1.0E-8)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withPriceThreshold(const Real priceThreshold = 1.0E-8)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - priceThreshold
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 123
    functionName: "&withPriceThreshold(const Real priceThreshold,\n                                         const
      Real lowerRateBound,\n                                         const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withPriceThreshold(const Real priceThreshold,\n                                         const
      Real lowerRateBound,\n                                         const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: '&withBSStdDevs(const Real stdDevs = 3.0)'
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: Settings &withBSStdDevs(const Real stdDevs = 3.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - stdDevs
    - lowerRateBound
    - upperRateBound
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 143
    functionName: "&withBSStdDevs(const Real stdDevs,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Settings
    signature: "Settings &withBSStdDevs(const Real stdDevs,\n                                    const
      Real lowerRateBound,\n                                    const Real upperRateBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:178,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:180,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' meanReversion'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: QuantLib::LinearTsrPricer::setMeanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void setMeanReversion(const Handle<Quote>& meanReversion) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - section
    - targetVega
    argTypes:
    - SmileSection*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: QuantLib::LinearTsrPricer::VegaRatioHelper::VegaRatioHelper
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VegaRatioHelper(const SmileSection *section, const Real targetVega)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vega
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - vega
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - section
    - type
    - targetPrice
    argTypes:
    - SmileSection*
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: QuantLib::LinearTsrPricer::PriceHelper::PriceHelper
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PriceHelper(const SmileSection *section, const Option::Type type,\n
      \                       const Real targetPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionName: operator()(Real strike) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.hpp
    functionUses: 0
    functionsReached:
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& pricer() const'
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<EquityCashFlowPricer>
    signature: ext::shared_ptr<EquityCashFlowPricer> & pricer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<EquityCashFlow>*>
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:61,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:63,1
    - Dst: QuantLib::IndexedCashFlow::accept
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::EquityCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<EquityCashFlow>*>
    - auto*::visit
    - QuantLib::IndexedCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void EquityCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::EquityCashFlowPricer::EquityCashFlowPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EquityCashFlowPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::EquityCashFlowPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: '& pricer() const'
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<EquityCashFlowPricer>
    signature: ext::shared_ptr<EquityCashFlowPricer> & pricer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<EquityCashFlow>*>
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:61,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:63,1
    - Dst: QuantLib::IndexedCashFlow::accept
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionName: QuantLib::EquityCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<EquityCashFlow>*>
    - auto*::visit
    - QuantLib::IndexedCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void EquityCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::EquityCashFlowPricer::EquityCashFlowPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EquityCashFlowPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/equitycashflow.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::EquityCashFlowPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' index'
    - ' valueDate'
    - lookbackDays
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::applyLookbackPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: "Date applyLookbackPeriod(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                 const Date& valueDate,\n                                 Natural
      lookbackDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' index'
    - ' valueDate'
    - lookbackDays
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::applyLookbackPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: "Date applyLookbackPeriod(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                 const Date& valueDate,\n                                 Natural
      lookbackDays)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:81,1
    - Dst: QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:81,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:87,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:88,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:90,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:93,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:98,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:99,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:101,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:106,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:107,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:108,1
    - Dst: std::max<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:109,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:112,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:113,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:115,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:121,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:125,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:133,1
    - Dst: applyLookbackPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:135,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:146,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:159,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:167,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:168,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:174,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:175,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:177,1
    - Dst: ext::make_shared<ArithmeticAveragedOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:177,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:180,1
    - Dst: ext::make_shared<CompoundingOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:180,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:183,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:183,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 50
    argCount: 15
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' overnightIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<OvernightIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 185
    functionName: QuantLib::OvernightIndexedCoupon::OvernightIndexedCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - applyLookbackPeriod
    - ext::make_shared<CompoundingOvernightIndexedCouponPricer>
    - yearFraction
    - dayCounter
    - MakeSchedule
    - back
    - QL_ENSURE
    - begin
    - size
    - vector<Date>
    - fixingCalendar
    - setPricer
    - std::min
    - fixingDays
    - valueDate
    - push_back
    - std::max
    - QL_FAIL
    - std::max<Integer>
    - end
    - QL_REQUIRE
    - QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
    - ext::make_shared<ArithmeticAveragedOvernightIndexedCouponPricer>
    - resize
    - Integer
    - QuantLib::detail::instance
    - Schedule::dates
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedCoupon::OvernightIndexedCoupon(\n                    const
      Date& paymentDate,\n                    Real nominal,\n                    const
      Date& startDate,\n                    const Date& endDate,\n                    const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                    Real gearing,\n
      \                   Spread spread,\n                    const Date& refPeriodStart,\n
      \                   const Date& refPeriodEnd,\n                    const DayCounter&
      dayCounter,\n                    bool telescopicValueDates,\n                    RateAveraging::Type
      averagingMethod,\n                    Natural lookbackDays,\n                    Natural
      lockoutDays,\n                    bool applyObservationShift)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:191,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: QuantLib::OvernightIndexedCoupon::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: QuantLib::OvernightIndexedCoupon::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 197
    functionName: QuantLib::OvernightIndexedCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - accruedPeriod
    - tradingExCoupon
    - QuantLib::OvernightIndexedCoupon::averageRate
    - nominal
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexedCoupon::accruedAmount(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:200,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:201,1
    - Dst: ext::dynamic_pointer_cast<CompoundingOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:203,1
    - Dst: auto::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:204,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 207
    functionName: QuantLib::OvernightIndexedCoupon::averageRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<CompoundingOvernightIndexedCouponPricer>
    - auto::averageRate
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate OvernightIndexedCoupon::averageRate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:210,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: '& OvernightIndexedCoupon::indexFixings() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    - fixing
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OvernightIndexedCoupon::indexFixings() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OvernightIndexedCoupon>*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:217,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:219,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: QuantLib::OvernightIndexedCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<OvernightIndexedCoupon>*>
    - auto*::visit
    - QuantLib::FloatingRateCoupon::accept
    linkageType: ''
    returnType: void
    signature: void OvernightIndexedCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - i
    argTypes:
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::OvernightLeg::OvernightLeg
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OvernightLeg::OvernightLeg(Schedule schedule, ext::shared_ptr<OvernightIndex>
      i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionName: '& OvernightLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: '& OvernightLeg::withNotionals(const vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withNotionals(const vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: '& OvernightLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentDayCounter(const DayCounter&
      dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: "&\n    OvernightLeg::withPaymentAdjustment(BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: "OvernightLeg &\n    OvernightLeg::withPaymentAdjustment(BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: '& OvernightLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionName: '& OvernightLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: '& OvernightLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: '& OvernightLeg::withGearings(const vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withGearings(const vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Spread>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: '& OvernightLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Spread>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionName: '& OvernightLeg::withSpreads(const vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withSpreads(const vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - telescopicValueDates
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionName: '& OvernightLeg::withTelescopicValueDates(bool telescopicValueDates)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withTelescopicValueDates(bool telescopicValueDates)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionName: '& OvernightLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lookbackDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionName: '& OvernightLeg::withLookbackDays(Natural lookbackDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withLookbackDays(Natural lookbackDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lockoutDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: '& OvernightLeg::withLockoutDays(Natural lockoutDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withLockoutDays(Natural lockoutDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - applyObservationShift
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionName: '& OvernightLeg::withObservationShift(bool applyObservationShift)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withObservationShift(bool applyObservationShift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:306,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:306,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:311,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:316,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:318,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:319,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:320,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:322,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:322,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:323,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:323,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:325,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:325,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:326,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:326,1
    - Dst: ext::make_shared<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:329,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:331,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:331,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:335,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 338
    functionName: OvernightLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - Leg::push_back
    - date
    - Calendar::adjust
    - tenor
    - empty
    - back
    - advance
    - isRegular
    - QuantLib::detail::get
    - calendar
    - size
    - ext::make_shared<OvernightIndexedCoupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OvernightLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' index'
    - ' valueDate'
    - lookbackDays
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::applyLookbackPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: "Date applyLookbackPeriod(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                 const Date& valueDate,\n                                 Natural
      lookbackDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' index'
    - ' valueDate'
    - lookbackDays
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::applyLookbackPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: "Date applyLookbackPeriod(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                 const Date& valueDate,\n                                 Natural
      lookbackDays)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:81,1
    - Dst: QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:81,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:87,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:88,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:90,1
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:93,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:98,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:99,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:101,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:106,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:107,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:108,1
    - Dst: std::max<Integer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:109,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:112,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:113,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:115,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:119,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:121,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:123,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:125,1
    - Dst: vector<Date>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:126,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:133,1
    - Dst: applyLookbackPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:135,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:146,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:159,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:167,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:168,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:170,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:174,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:175,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:177,1
    - Dst: ext::make_shared<ArithmeticAveragedOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:177,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:180,1
    - Dst: ext::make_shared<CompoundingOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:180,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:183,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:183,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 50
    argCount: 15
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' overnightIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - telescopicValueDates
    - averagingMethod
    - lookbackDays
    - lockoutDays
    - applyObservationShift
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<OvernightIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - RateAveraging::Type
    - Natural
    - Natural
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 185
    functionName: QuantLib::OvernightIndexedCoupon::OvernightIndexedCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - applyLookbackPeriod
    - ext::make_shared<CompoundingOvernightIndexedCouponPricer>
    - yearFraction
    - dayCounter
    - MakeSchedule
    - back
    - QL_ENSURE
    - begin
    - size
    - vector<Date>
    - fixingCalendar
    - setPricer
    - std::min
    - fixingDays
    - valueDate
    - push_back
    - std::max
    - QL_FAIL
    - std::max<Integer>
    - end
    - QL_REQUIRE
    - QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
    - ext::make_shared<ArithmeticAveragedOvernightIndexedCouponPricer>
    - resize
    - Integer
    - QuantLib::detail::instance
    - Schedule::dates
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void OvernightIndexedCoupon::OvernightIndexedCoupon(\n                    const
      Date& paymentDate,\n                    Real nominal,\n                    const
      Date& startDate,\n                    const Date& endDate,\n                    const
      ext::shared_ptr<OvernightIndex>& overnightIndex,\n                    Real gearing,\n
      \                   Spread spread,\n                    const Date& refPeriodStart,\n
      \                   const Date& refPeriodEnd,\n                    const DayCounter&
      dayCounter,\n                    bool telescopicValueDates,\n                    RateAveraging::Type
      averagingMethod,\n                    Natural lookbackDays,\n                    Natural
      lockoutDays,\n                    bool applyObservationShift)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:191,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: QuantLib::OvernightIndexedCoupon::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:192,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: QuantLib::OvernightIndexedCoupon::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:195,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 187
    functionDepth: 2
    functionLinenumber: 187
    functionLinenumberEnd: 197
    functionName: QuantLib::OvernightIndexedCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - accruedPeriod
    - tradingExCoupon
    - QuantLib::OvernightIndexedCoupon::averageRate
    - nominal
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real OvernightIndexedCoupon::accruedAmount(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:200,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:201,1
    - Dst: ext::dynamic_pointer_cast<CompoundingOvernightIndexedCouponPricer>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:203,1
    - Dst: auto::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:204,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 207
    functionName: QuantLib::OvernightIndexedCoupon::averageRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 2
    functionsReached:
    - ext::dynamic_pointer_cast<CompoundingOvernightIndexedCouponPricer>
    - auto::averageRate
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate OvernightIndexedCoupon::averageRate(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:210,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: '& OvernightIndexedCoupon::indexFixings() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    - fixing
    linkageType: ''
    returnType: vector<Rate>
    signature: vector<Rate> & OvernightIndexedCoupon::indexFixings() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<OvernightIndexedCoupon>*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:217,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:219,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: QuantLib::OvernightIndexedCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<OvernightIndexedCoupon>*>
    - auto*::visit
    - QuantLib::FloatingRateCoupon::accept
    linkageType: ''
    returnType: void
    signature: void OvernightIndexedCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:226,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - i
    argTypes:
    - Schedule
    - ext::shared_ptr<OvernightIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: QuantLib::OvernightLeg::OvernightLeg
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OvernightLeg::OvernightLeg(Schedule schedule, ext::shared_ptr<OvernightIndex>
      i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionName: '& OvernightLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: '& OvernightLeg::withNotionals(const vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withNotionals(const vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: '& OvernightLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentDayCounter(const DayCounter&
      dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: "&\n    OvernightLeg::withPaymentAdjustment(BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: "OvernightLeg &\n    OvernightLeg::withPaymentAdjustment(BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: '& OvernightLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionName: '& OvernightLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: '& OvernightLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: '& OvernightLeg::withGearings(const vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withGearings(const vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Spread>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: '& OvernightLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Spread>
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionName: '& OvernightLeg::withSpreads(const vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withSpreads(const vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - telescopicValueDates
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionName: '& OvernightLeg::withTelescopicValueDates(bool telescopicValueDates)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withTelescopicValueDates(bool telescopicValueDates)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionName: '& OvernightLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lookbackDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionName: '& OvernightLeg::withLookbackDays(Natural lookbackDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withLookbackDays(Natural lookbackDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lockoutDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: '& OvernightLeg::withLockoutDays(Natural lockoutDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withLockoutDays(Natural lockoutDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - applyObservationShift
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionName: '& OvernightLeg::withObservationShift(bool applyObservationShift)'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OvernightLeg
    signature: OvernightLeg & OvernightLeg::withObservationShift(bool applyObservationShift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:306,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:306,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:311,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:316,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:318,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:319,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:320,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:322,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:322,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:323,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:323,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:325,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:325,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:326,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:326,1
    - Dst: ext::make_shared<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:329,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:330,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:331,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:331,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp:335,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 338
    functionName: OvernightLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - Leg::push_back
    - date
    - Calendar::adjust
    - tenor
    - empty
    - back
    - advance
    - isRegular
    - QuantLib::detail::get
    - calendar
    - size
    - ext::make_shared<OvernightIndexedCoupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void OvernightLeg::operator Leg() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:38,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:39,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:39,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:41,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:43,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ' spreads'
    - ' caps'
    - ' floors'
    - i
    argTypes:
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::effectiveFixedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::get
    - std::min
    - Null<Rate>
    - std::max
    linkageType: ''
    returnType: Rate
    signature: "Rate effectiveFixedRate(const std::vector<Spread>& spreads,\n                                const
      std::vector<Rate>& caps,\n                                const std::vector<Rate>&
      floors,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' caps'
    - ' floors'
    - i
    argTypes:
    - std::vector<Rate>
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::noOption
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::get
    - Null<Rate>
    linkageType: ''
    returnType: bool
    signature: "bool noOption(const std::vector<Rate>& caps,\n                      const
      std::vector<Rate>& floors,\n                      Size i)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:38,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:39,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:39,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:40,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:41,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:43,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ' spreads'
    - ' caps'
    - ' floors'
    - i
    argTypes:
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::effectiveFixedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::get
    - std::min
    - Null<Rate>
    - std::max
    linkageType: ''
    returnType: Rate
    signature: "Rate effectiveFixedRate(const std::vector<Spread>& spreads,\n                                const
      std::vector<Rate>& caps,\n                                const std::vector<Rate>&
      floors,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:51,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' caps'
    - ' floors'
    - i
    argTypes:
    - std::vector<Rate>
    - std::vector<Rate>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::noOption
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::get
    - Null<Rate>
    linkageType: ''
    returnType: bool
    signature: "bool noOption(const std::vector<Rate>& caps,\n                      const
      std::vector<Rate>& floors,\n                      Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' dates'
    - ' values'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::TimeBasket::TimeBasket
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TimeBasket::TimeBasket(const std::vector<Date>& dates,\n                           const
      std::vector<Real>& values)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:37,1
    - Dst: std::sort
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:50,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:50,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:55,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:60,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:60,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:63,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:68,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ' buckets'
    argTypes:
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 74
    functionName: QuantLib::TimeBasket::rebin
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - empty
    - std::sort
    - std::vector::begin
    - std::vector::end
    - Real
    - Date
    - std::vector::back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket TimeBasket::rebin(const std::vector<Date>& buckets) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' dates'
    - ' values'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::TimeBasket::TimeBasket
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TimeBasket::TimeBasket(const std::vector<Date>& dates,\n                           const
      std::vector<Real>& values)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:37,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:37,1
    - Dst: std::sort
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:50,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:50,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:53,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:55,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:56,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:60,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:60,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:63,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:66,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:67,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/timebasket.cpp:68,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ' buckets'
    argTypes:
    - std::vector<Date>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 74
    functionName: QuantLib::TimeBasket::rebin
    functionSourceFile: /src/quantlib/ql/cashflows/timebasket.cpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - empty
    - std::sort
    - std::vector::begin
    - std::vector::end
    - Real
    - Date
    - std::vector::back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeBasket
    signature: TimeBasket TimeBasket::rebin(const std::vector<Date>& buckets) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' iborIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: QuantLib::IborCoupon::IborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::fixingDate
    linkageType: ''
    returnType: void
    signature: "void IborCoupon::IborCoupon(const Date& paymentDate,\n                           Real
      nominal,\n                           const Date& startDate,\n                           const
      Date& endDate,\n                           Natural fixingDays,\n                           const
      ext::shared_ptr<IborIndex>& iborIndex,\n                           Real gearing,\n
      \                          Spread spread,\n                           const
      Date& refPeriodStart,\n                           const Date& refPeriodEnd,\n
      \                          const DayCounter& dayCounter,\n                           bool
      isInArrears,\n                           const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:58,1
    - Dst: auto::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::IborCoupon::initializeCachedData
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - auto::initializeCachedData
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCoupon::initializeCachedData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: '& IborCoupon::fixingValueDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingValueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: '& IborCoupon::fixingEndDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& IborCoupon::fixingMaturityDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingMaturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::IborCoupon::spanningTime
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IborCoupon::initializeCachedData
    linkageType: ''
    returnType: Time
    signature: Time IborCoupon::spanningTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::IborCoupon::spanningTimeIndexMaturity
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IborCoupon::initializeCachedData
    linkageType: ''
    returnType: Time
    signature: Time IborCoupon::spanningTimeIndexMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::IborCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date IborCoupon::fixingDate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:100,1
    - Dst: hasHistoricalFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 106
    functionName: QuantLib::IborCoupon::hasFixed
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - hasHistoricalFixing
    - QuantLib::detail::instance
    linkageType: ''
    returnType: bool
    signature: bool IborCoupon::hasFixed() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:109,1
    - Dst: QuantLib::IborCoupon::hasFixed
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:118,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:120,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:120,1
    - Dst: name
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:121,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 126
    functionName: QuantLib::IborCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - name
    - QuantLib::IborCoupon::hasFixed
    - Null<Real>
    - pastFixing
    - forecastFixing
    - QuantLib::IborCoupon::initializeCachedData
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IborCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::IborCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: void IborCoupon::setPricer(const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<IborCoupon>*>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:134,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:136,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: QuantLib::IborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<IborCoupon>*>
    linkageType: ''
    returnType: void
    signature: void IborCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: IborCoupon::Settings::createAtParCoupons()
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborCoupon::Settings::createAtParCoupons()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: IborCoupon::Settings::createIndexedCoupons()
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborCoupon::Settings::createIndexedCoupons()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: IborCoupon::Settings::usingAtParCoupons() const
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IborCoupon::Settings::usingAtParCoupons() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::IborLeg::IborLeg
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborLeg::IborLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& IborLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionName: '& IborLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: '& IborLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: '& IborLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: '& IborLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& IborLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& IborLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& IborLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFixingDays(const std::vector<Natural>& fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& IborLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: '& IborLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withGearings(const std::vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '& IborLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& IborLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withSpreads(const std::vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: '& IborLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& IborLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& IborLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: '& IborLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: '& IborLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: '& IborLeg::withZeroPayments(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withZeroPayments(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: "& IborLeg::withExCouponPeriod(const Period& period,\n                                         const
      Calendar& cal,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: "IborLeg & IborLeg::withExCouponPeriod(const Period& period,\n                                         const
      Calendar& cal,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: '& IborLeg::withIndexedCoupons(ext::optional<bool> b)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withIndexedCoupons(ext::optional<bool> b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionName: '& IborLeg::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withAtParCoupons(bool b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FloatingLeg<IborIndex, IborCoupon, CappedFlooredIborCoupon>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:272,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:278,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:278,1
    - Dst: ext::make_shared<BlackIborCouponPricer>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:279,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:280,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:282,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:282,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 287
    functionName: IborLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - FloatingLeg<IborIndex, IborCoupon, CappedFlooredIborCoupon>
    - Handle<OptionletVolatilityStructure>
    - setCouponPricer
    - ext::make_shared<BlackIborCouponPricer>
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void IborLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' iborIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: QuantLib::IborCoupon::IborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::fixingDate
    linkageType: ''
    returnType: void
    signature: "void IborCoupon::IborCoupon(const Date& paymentDate,\n                           Real
      nominal,\n                           const Date& startDate,\n                           const
      Date& endDate,\n                           Natural fixingDays,\n                           const
      ext::shared_ptr<IborIndex>& iborIndex,\n                           Real gearing,\n
      \                          Spread spread,\n                           const
      Date& refPeriodStart,\n                           const Date& refPeriodEnd,\n
      \                          const DayCounter& dayCounter,\n                           bool
      isInArrears,\n                           const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:58,1
    - Dst: auto::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: QuantLib::IborCoupon::initializeCachedData
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 3
    functionsReached:
    - auto::initializeCachedData
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCoupon::initializeCachedData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: '& IborCoupon::fixingValueDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingValueDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: '& IborCoupon::fixingEndDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& IborCoupon::fixingMaturityDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - initializeCachedData
    linkageType: ''
    returnType: Date
    signature: Date & IborCoupon::fixingMaturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::IborCoupon::spanningTime
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IborCoupon::initializeCachedData
    linkageType: ''
    returnType: Time
    signature: Time IborCoupon::spanningTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::IborCoupon::spanningTimeIndexMaturity
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IborCoupon::initializeCachedData
    linkageType: ''
    returnType: Time
    signature: Time IborCoupon::spanningTimeIndexMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::IborCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date IborCoupon::fixingDate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:100,1
    - Dst: hasHistoricalFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 106
    functionName: QuantLib::IborCoupon::hasFixed
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 1
    functionsReached:
    - hasHistoricalFixing
    - QuantLib::detail::instance
    linkageType: ''
    returnType: bool
    signature: bool IborCoupon::hasFixed() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCoupon::initializeCachedData
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:109,1
    - Dst: QuantLib::IborCoupon::hasFixed
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:118,1
    - Dst: pastFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:119,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:120,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:120,1
    - Dst: name
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:121,1
    - Dst: forecastFixing
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 126
    functionName: QuantLib::IborCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - name
    - QuantLib::IborCoupon::hasFixed
    - Null<Real>
    - pastFixing
    - forecastFixing
    - QuantLib::IborCoupon::initializeCachedData
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IborCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: QuantLib::IborCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: void IborCoupon::setPricer(const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<IborCoupon>*>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:134,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:136,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: QuantLib::IborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<IborCoupon>*>
    linkageType: ''
    returnType: void
    signature: void IborCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: IborCoupon::Settings::createAtParCoupons()
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborCoupon::Settings::createAtParCoupons()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: IborCoupon::Settings::createIndexedCoupons()
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborCoupon::Settings::createIndexedCoupons()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: IborCoupon::Settings::usingAtParCoupons() const
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IborCoupon::Settings::usingAtParCoupons() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:155,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:155,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: QuantLib::IborLeg::IborLeg
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborLeg::IborLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& IborLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionName: '& IborLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: '& IborLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: '& IborLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: '& IborLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: '& IborLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: '& IborLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& IborLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFixingDays(const std::vector<Natural>& fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& IborLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: '& IborLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withGearings(const std::vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '& IborLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& IborLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withSpreads(const std::vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: '& IborLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& IborLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& IborLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: '& IborLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: '& IborLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: '& IborLeg::withZeroPayments(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withZeroPayments(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 258
    functionName: "& IborLeg::withExCouponPeriod(const Period& period,\n                                         const
      Calendar& cal,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: "IborLeg & IborLeg::withExCouponPeriod(const Period& period,\n                                         const
      Calendar& cal,\n                                         BusinessDayConvention
      convention,\n                                         bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: '& IborLeg::withIndexedCoupons(ext::optional<bool> b)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withIndexedCoupons(ext::optional<bool> b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionName: '& IborLeg::withAtParCoupons(bool b)'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IborLeg
    signature: IborLeg & IborLeg::withAtParCoupons(bool b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FloatingLeg<IborIndex, IborCoupon, CappedFlooredIborCoupon>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:272,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:278,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:278,1
    - Dst: ext::make_shared<BlackIborCouponPricer>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:279,1
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:280,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:282,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:282,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/iborcoupon.cpp:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 287
    functionName: IborLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - FloatingLeg<IborIndex, IborCoupon, CappedFlooredIborCoupon>
    - Handle<OptionletVolatilityStructure>
    - setCouponPricer
    - ext::make_shared<BlackIborCouponPricer>
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: void IborLeg::operator Leg() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:47,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:48,1
    - Dst: QuantLib::FloatingRateCoupon::fixingDays
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:53,1
    - Dst: QuantLib::FloatingRateCoupon::dayCounter
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - dayCounter
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<InterestRateIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 58
    functionName: QuantLib::FloatingRateCoupon::FloatingRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Natural>
    - std::move
    - QuantLib::FloatingRateCoupon::dayCounter
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::FloatingRateCoupon::fixingDays
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FloatingRateCoupon::FloatingRateCoupon(const Date& paymentDate,\n
      \                                          Real nominal,\n                                           const
      Date& startDate,\n                                           const Date& endDate,\n
      \                                          Natural fixingDays,\n                                           const
      ext::shared_ptr<InterestRateIndex>& index,\n                                           Real
      gearing,\n                                           Spread spread,\n                                           const
      Date& refPeriodStart,\n                                           const Date&
      refPeriodEnd,\n                                           DayCounter dayCounter,\n
      \                                          bool isInArrears,\n                                           const
      Date& exCouponDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:66,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::FloatingRateCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: "void FloatingRateCoupon::setPricer(\n                const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: QuantLib::FloatingRateCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - accruedPeriod
    - nominal
    linkageType: ''
    returnType: Real
    signature: Real FloatingRateCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:82,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::FloatingRateCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 2
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date FloatingRateCoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingRateCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 5
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:92,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:93,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::FloatingRateCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatingRateCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::amount
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::FloatingRateCoupon::price
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - QuantLib::FloatingRateCoupon::amount
    linkageType: ''
    returnType: Real
    signature: Real FloatingRateCoupon::price(const Handle<YieldTermStructure>& discountingCurve)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:102,1
    - Dst: QuantLib::FloatingRateCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::FloatingRateCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatingRateCoupon::fixingDate
    - fixing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:47,1
    - Dst: Null<Natural>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:48,1
    - Dst: QuantLib::FloatingRateCoupon::fixingDays
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:53,1
    - Dst: QuantLib::FloatingRateCoupon::dayCounter
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:57,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - dayCounter
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<InterestRateIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 58
    functionName: QuantLib::FloatingRateCoupon::FloatingRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Null<Natural>
    - std::move
    - QuantLib::FloatingRateCoupon::dayCounter
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::FloatingRateCoupon::fixingDays
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FloatingRateCoupon::FloatingRateCoupon(const Date& paymentDate,\n
      \                                          Real nominal,\n                                           const
      Date& startDate,\n                                           const Date& endDate,\n
      \                                          Natural fixingDays,\n                                           const
      ext::shared_ptr<InterestRateIndex>& index,\n                                           Real
      gearing,\n                                           Spread spread,\n                                           const
      Date& refPeriodStart,\n                                           const Date&
      refPeriodEnd,\n                                           DayCounter dayCounter,\n
      \                                          bool isInArrears,\n                                           const
      Date& exCouponDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:66,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: QuantLib::FloatingRateCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: "void FloatingRateCoupon::setPricer(\n                const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    - Dst: QuantLib::FloatingRateCoupon::rate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: QuantLib::FloatingRateCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::rate
    - accruedPeriod
    - nominal
    linkageType: ''
    returnType: Real
    signature: Real FloatingRateCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:82,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::FloatingRateCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 3
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date FloatingRateCoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: QuantLib::FloatingRateCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 6
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:92,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:93,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionName: QuantLib::FloatingRateCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FloatingRateCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::amount
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::FloatingRateCoupon::price
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - QuantLib::FloatingRateCoupon::amount
    linkageType: ''
    returnType: Real
    signature: Real FloatingRateCoupon::price(const Handle<YieldTermStructure>& discountingCurve)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:102,1
    - Dst: QuantLib::FloatingRateCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/floatingratecoupon.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::FloatingRateCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/floatingratecoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatingRateCoupon::fixingDate
    - fixing
    linkageType: ''
    returnType: Rate
    signature: Rate FloatingRateCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' yoyIndex'
    - ' observationLag'
    - interpolation
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Spread
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: QuantLib::YoYInflationCoupon::YoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCoupon::\n    YoYInflationCoupon(const Date& paymentDate,\n
      \                      Real nominal,\n                       const Date& startDate,\n
      \                      const Date& endDate,\n                       Natural
      fixingDays,\n                       const ext::shared_ptr<YoYInflationIndex>&
      yoyIndex,\n                       const Period& observationLag,\n                       CPI::InterpolationType
      interpolation,\n                       const DayCounter& dayCounter,\n                       Real
      gearing,\n                       Spread spread,\n                       const
      Date& refPeriodStart,\n                       const Date& refPeriodEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' yoyIndex'
    - ' observationLag'
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - DayCounter
    - Real
    - Spread
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 63
    functionName: QuantLib::YoYInflationCoupon::YoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCoupon::\n    YoYInflationCoupon(const Date& paymentDate,\n
      \                      Real nominal,\n                       const Date& startDate,\n
      \                      const Date& endDate,\n                       Natural
      fixingDays,\n                       const ext::shared_ptr<YoYInflationIndex>&
      yoyIndex,\n                       const Period& observationLag,\n                       const
      DayCounter& dayCounter,\n                       Real gearing,\n                       Spread
      spread,\n                       const Date& refPeriodStart,\n                       const
      Date& refPeriodEnd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<YoYInflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:67,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:69,1
    - Dst: QuantLib::YoYInflationCoupon::accept
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: QuantLib::YoYInflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<Visitor<YoYInflationCoupon>*>
    - auto*::visit
    - QuantLib::YoYInflationCoupon::accept
    linkageType: ''
    returnType: void
    signature: void YoYInflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCouponPricer>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYInflationCoupon::checkPricerImpl
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    - ext::dynamic_pointer_cast<YoYInflationCouponPricer>
    linkageType: ''
    returnType: bool
    signature: "bool YoYInflationCoupon::checkPricerImpl(\n            const ext::shared_ptr<InflationCouponPricer>&pricer)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedYoYRate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 3
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::YoYInflationCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - yoyIndex
    - observationLag
    - QuantLib::CPI::laggedYoYRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - schedule
    - paymentCalendar
    - index
    - ' observationLag'
    - interpolation
    argTypes:
    - Schedule
    - Calendar
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::yoyInflationLeg::yoyInflationLeg
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void yoyInflationLeg::yoyInflationLeg(Schedule schedule,\n                                     Calendar
      paymentCalendar,\n                                     ext::shared_ptr<YoYInflationIndex>
      index,\n                                     const Period& observationLag,\n
      \                                    CPI::InterpolationType interpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - schedule
    - paymentCalendar
    - index
    - ' observationLag'
    argTypes:
    - Schedule
    - Calendar
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: QuantLib::yoyInflationLeg::yoyInflationLeg
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void yoyInflationLeg::yoyInflationLeg(Schedule schedule,\n                                     Calendar
      paymentCalendar,\n                                     ext::shared_ptr<YoYInflationIndex>
      index,\n                                     const Period& observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: '& yoyInflationLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: '& yoyInflationLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& yoyInflationLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withPaymentDayCounter(const DayCounter&
      dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& yoyInflationLeg::withPaymentAdjustment(BusinessDayConvention
      convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& yoyInflationLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: '& yoyInflationLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& yoyInflationLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& yoyInflationLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& yoyInflationLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& yoyInflationLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& yoyInflationLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: '& yoyInflationLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withCaps(const std::vector<Rate>&
      caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: '& yoyInflationLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: '& yoyInflationLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFloors(const std::vector<Rate>&
      floors)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:174,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:175,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:189,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:192,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:199,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:200,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:201,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:202,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:202,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:203,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:204,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:204,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:206,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:206,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:207,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:208,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:208,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:210,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:211,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:211,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:213,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:214,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:219,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:220,1
    - Dst: ext::make_shared<YoYInflationCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:220,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:222,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:224,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:229,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:230,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:233,1
    - Dst: ext::make_shared<CappedFlooredYoYInflationCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:233,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:235,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:237,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:242,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:243,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:244,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:244,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:245,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:245,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:253,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:253,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:254,1
    - Dst: ext::make_shared<YoYInflationCouponPricer>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:254,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 171
    functionDepth: 3
    functionLinenumber: 171
    functionLinenumberEnd: 257
    functionName: yoyInflationLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - ext::make_shared<CappedFlooredYoYInflationCoupon>
    - ext::make_shared<YoYInflationCoupon>
    - calendar
    - hasIsRegular
    - date
    - tenor
    - empty
    - Null<Rate>
    - Leg::reserve
    - setCouponPricer
    - size
    - QuantLib::detail::effectiveFixedRate
    - ext::make_shared<YoYInflationCouponPricer>
    - isRegular
    - QuantLib::detail::noOption
    - ext::make_shared<FixedRateCoupon>
    - QL_REQUIRE
    - QuantLib::detail::get
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void yoyInflationLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' yoyIndex'
    - ' observationLag'
    - interpolation
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Spread
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: QuantLib::YoYInflationCoupon::YoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCoupon::\n    YoYInflationCoupon(const Date& paymentDate,\n
      \                      Real nominal,\n                       const Date& startDate,\n
      \                      const Date& endDate,\n                       Natural
      fixingDays,\n                       const ext::shared_ptr<YoYInflationIndex>&
      yoyIndex,\n                       const Period& observationLag,\n                       CPI::InterpolationType
      interpolation,\n                       const DayCounter& dayCounter,\n                       Real
      gearing,\n                       Spread spread,\n                       const
      Date& refPeriodStart,\n                       const Date& refPeriodEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' yoyIndex'
    - ' observationLag'
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - DayCounter
    - Real
    - Spread
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 63
    functionName: QuantLib::YoYInflationCoupon::YoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCoupon::\n    YoYInflationCoupon(const Date& paymentDate,\n
      \                      Real nominal,\n                       const Date& startDate,\n
      \                      const Date& endDate,\n                       Natural
      fixingDays,\n                       const ext::shared_ptr<YoYInflationIndex>&
      yoyIndex,\n                       const Period& observationLag,\n                       const
      DayCounter& dayCounter,\n                       Real gearing,\n                       Spread
      spread,\n                       const Date& refPeriodStart,\n                       const
      Date& refPeriodEnd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<YoYInflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:67,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:69,1
    - Dst: QuantLib::YoYInflationCoupon::accept
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: QuantLib::YoYInflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<Visitor<YoYInflationCoupon>*>
    - auto*::visit
    - QuantLib::YoYInflationCoupon::accept
    linkageType: ''
    returnType: void
    signature: void YoYInflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCouponPricer>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYInflationCoupon::checkPricerImpl
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    - ext::dynamic_pointer_cast<YoYInflationCouponPricer>
    linkageType: ''
    returnType: bool
    signature: "bool YoYInflationCoupon::checkPricerImpl(\n            const ext::shared_ptr<InflationCouponPricer>&pricer)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedYoYRate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 3
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::YoYInflationCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - yoyIndex
    - observationLag
    - QuantLib::CPI::laggedYoYRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - schedule
    - paymentCalendar
    - index
    - ' observationLag'
    - interpolation
    argTypes:
    - Schedule
    - Calendar
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::yoyInflationLeg::yoyInflationLeg
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void yoyInflationLeg::yoyInflationLeg(Schedule schedule,\n                                     Calendar
      paymentCalendar,\n                                     ext::shared_ptr<YoYInflationIndex>
      index,\n                                     const Period& observationLag,\n
      \                                    CPI::InterpolationType interpolation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - schedule
    - paymentCalendar
    - index
    - ' observationLag'
    argTypes:
    - Schedule
    - Calendar
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: QuantLib::yoyInflationLeg::yoyInflationLeg
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void yoyInflationLeg::yoyInflationLeg(Schedule schedule,\n                                     Calendar
      paymentCalendar,\n                                     ext::shared_ptr<YoYInflationIndex>
      index,\n                                     const Period& observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: '& yoyInflationLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: '& yoyInflationLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& yoyInflationLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withPaymentDayCounter(const DayCounter&
      dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& yoyInflationLeg::withPaymentAdjustment(BusinessDayConvention
      convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& yoyInflationLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: '& yoyInflationLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: '& yoyInflationLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: '& yoyInflationLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: '& yoyInflationLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: '& yoyInflationLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& yoyInflationLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: '& yoyInflationLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withCaps(const std::vector<Rate>&
      caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: '& yoyInflationLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: '& yoyInflationLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: yoyInflationLeg
    signature: yoyInflationLeg & yoyInflationLeg::withFloors(const std::vector<Rate>&
      floors)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:173,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:174,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:174,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:175,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:175,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:176,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:186,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:189,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:192,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:199,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:200,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:201,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:202,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:202,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:203,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:204,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:204,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:206,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:206,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:207,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:208,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:208,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:210,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:211,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:211,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:213,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:214,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:219,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:220,1
    - Dst: ext::make_shared<YoYInflationCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:220,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:222,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:224,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:229,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:230,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:233,1
    - Dst: ext::make_shared<CappedFlooredYoYInflationCoupon>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:233,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:235,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:237,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:242,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:243,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:244,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:244,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:245,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:245,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:253,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:253,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:254,1
    - Dst: ext::make_shared<YoYInflationCouponPricer>
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp:254,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 171
    functionDepth: 3
    functionLinenumber: 171
    functionLinenumberEnd: 257
    functionName: yoyInflationLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - ext::make_shared<CappedFlooredYoYInflationCoupon>
    - ext::make_shared<YoYInflationCoupon>
    - calendar
    - hasIsRegular
    - date
    - tenor
    - empty
    - Null<Rate>
    - Leg::reserve
    - setCouponPricer
    - size
    - QuantLib::detail::effectiveFixedRate
    - ext::make_shared<YoYInflationCouponPricer>
    - isRegular
    - QuantLib::detail::noOption
    - ext::make_shared<FixedRateCoupon>
    - QL_REQUIRE
    - QuantLib::detail::get
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void yoyInflationLeg::operator Leg() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:30,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:31,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:32,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:33,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:34,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:35,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:36,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:37,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:38,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:40,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:41,1
    - Dst: exCouponDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:46,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:50,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:55,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:71,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - ' underlying'
    - cap
    - floor
    argTypes:
    - ext::shared_ptr<FloatingRateCoupon>
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 72
    functionName: QuantLib::CappedFlooredCoupon::CappedFlooredCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_REQUIRE
    - date
    - exCouponDate
    - Null<Rate>
    - spread
    - dayCounter
    - fixingDays
    - isInArrears
    - accrualStartDate
    - index
    - referencePeriodEnd
    - registerWith
    - referencePeriodStart
    - nominal
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCoupon::CappedFlooredCoupon(const ext::shared_ptr<FloatingRateCoupon>&
      underlying,\n                                             Rate cap,\n                                             Rate
      floor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:76,1
    - Dst: QuantLib::CappedFlooredCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::CappedFlooredCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FloatingRateCoupon::setPricer
    - QuantLib::CappedFlooredCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCoupon::setPricer(\n                 const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:81,1
    - Dst: QuantLib::CappedFlooredCoupon::deepUpdate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::CappedFlooredCoupon::deepUpdate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - update
    - QuantLib::CappedFlooredCoupon::deepUpdate
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::deepUpdate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:86,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:86,1
    - Dst: QuantLib::CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:87,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:90,1
    - Dst: QuantLib::CappedFlooredCoupon::effectiveFloor
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:90,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:93,1
    - Dst: QuantLib::CappedFlooredCoupon::effectiveCap
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: QuantLib::CappedFlooredCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CappedFlooredCoupon::effectiveFloor
    - pricer
    - QuantLib::CappedFlooredCoupon::effectiveCap
    - QuantLib::CappedFlooredCoupon::rate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::CappedFlooredCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredCoupon::convexityAdjustment
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CappedFlooredCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CappedFlooredCoupon::convexityAdjustment
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::convexityAdjustment() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:111,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: QuantLib::CappedFlooredCoupon::cap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::cap() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 120
    functionName: QuantLib::CappedFlooredCoupon::floor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::floor() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:124,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:124,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 127
    functionName: QuantLib::CappedFlooredCoupon::effectiveCap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - spread
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::effectiveCap() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:131,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:131,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: QuantLib::CappedFlooredCoupon::effectiveFloor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - spread
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::effectiveFloor() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:138,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:140,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 143
    functionName: QuantLib::CappedFlooredCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::accept(AcyclicVisitor& v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:30,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:31,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:32,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:33,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:34,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:35,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:36,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:37,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:38,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:39,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:40,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:41,1
    - Dst: exCouponDate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:42,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:46,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:50,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:55,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:71,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - ' underlying'
    - cap
    - floor
    argTypes:
    - ext::shared_ptr<FloatingRateCoupon>
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 72
    functionName: QuantLib::CappedFlooredCoupon::CappedFlooredCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_REQUIRE
    - date
    - exCouponDate
    - Null<Rate>
    - spread
    - dayCounter
    - fixingDays
    - isInArrears
    - accrualStartDate
    - index
    - referencePeriodEnd
    - registerWith
    - referencePeriodStart
    - nominal
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCoupon::CappedFlooredCoupon(const ext::shared_ptr<FloatingRateCoupon>&
      underlying,\n                                             Rate cap,\n                                             Rate
      floor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FloatingRateCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:76,1
    - Dst: QuantLib::CappedFlooredCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::CappedFlooredCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FloatingRateCoupon::setPricer
    - QuantLib::CappedFlooredCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCoupon::setPricer(\n                 const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:81,1
    - Dst: QuantLib::CappedFlooredCoupon::deepUpdate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: QuantLib::CappedFlooredCoupon::deepUpdate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - update
    - QuantLib::CappedFlooredCoupon::deepUpdate
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::deepUpdate()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:86,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:86,1
    - Dst: QuantLib::CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:87,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:90,1
    - Dst: QuantLib::CappedFlooredCoupon::effectiveFloor
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:90,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:93,1
    - Dst: QuantLib::CappedFlooredCoupon::effectiveCap
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: QuantLib::CappedFlooredCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CappedFlooredCoupon::effectiveFloor
    - pricer
    - QuantLib::CappedFlooredCoupon::effectiveCap
    - QuantLib::CappedFlooredCoupon::rate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: QuantLib::CappedFlooredCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredCoupon::convexityAdjustment
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::CappedFlooredCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CappedFlooredCoupon::convexityAdjustment
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::convexityAdjustment() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:111,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: QuantLib::CappedFlooredCoupon::cap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::cap() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 120
    functionName: QuantLib::CappedFlooredCoupon::floor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::floor() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:124,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:124,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 127
    functionName: QuantLib::CappedFlooredCoupon::effectiveCap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - gearing
    - spread
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::effectiveCap() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:131,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:131,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: QuantLib::CappedFlooredCoupon::effectiveFloor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 2
    functionsReached:
    - gearing
    - spread
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredCoupon::effectiveFloor() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:138,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:140,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 143
    functionName: QuantLib::CappedFlooredCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void CappedFlooredCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:27,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nominalTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::CPICouponPricer::CPICouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void CPICouponPricer::CPICouponPricer(Handle<YieldTermStructure> nominalTermStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - capletVol
    - nominalTermStructure
    argTypes:
    - Handle<CPIVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::CPICouponPricer::CPICouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CPICouponPricer::CPICouponPricer(Handle<CPIVolatilitySurface>
      capletVol,\n                                     Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:40,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' capletVol'
    argTypes:
    - Handle<CPIVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::CPICouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICouponPricer::setCapletVolatility(\n       const Handle<CPIVolatilitySurface>&
      capletVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::CPICouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::CPICouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::CPICouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::CPICouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::CPICouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletPriceImp(Option::Type,\n                                            Real,\n
      \                                           Real,\n                                            Real)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:76,1
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:77,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::CPICouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletPrice(Option::Type optionType,\n                                         Real
      effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:83,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:84,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:88,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:97,1
    - Dst: QuantLib::CPICouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:100,1
    - Dst: QuantLib::CPICouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:100,1
    - Dst: QuantLib::CPICouponPricer::optionletPriceImp
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:102,1
    - Dst: indexRatio
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:104,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 107
    functionName: QuantLib::CPICouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 3
    functionsReached:
    - indexRatio
    - accrualEndDate
    - fixingDate
    - std::max
    - QuantLib::detail::instance
    - std::sqrt
    - QuantLib::CPICouponPricer::capletVolatility
    - QuantLib::CPICouponPricer::optionletPriceImp
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletRate(Option::Type optionType,\n                                        Real
      effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CPICoupon*>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:111,1
    - Dst: fixedRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:112,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:113,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:119,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:121,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:123,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - InflationCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 126
    functionName: QuantLib::CPICouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - date
    - referenceDate
    - empty
    - Null<Real>
    - discount
    - dynamic_cast<const CPICoupon*>
    - fixedRate
    linkageType: ''
    returnType: void
    signature: void CPICouponPricer::initialize(const InflationCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:130,1
    - Dst: QuantLib::CPICouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:131,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: QuantLib::CPICouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::swapletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::accruedRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:136,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::CPICouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPICouponPricer::accruedRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: indexRatio
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlementDate
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::CPICouponPricer::accruedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 1
    functionsReached:
    - indexRatio
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::accruedRate(Date settlementDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:27,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nominalTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::CPICouponPricer::CPICouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void CPICouponPricer::CPICouponPricer(Handle<YieldTermStructure> nominalTermStructure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - capletVol
    - nominalTermStructure
    argTypes:
    - Handle<CPIVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::CPICouponPricer::CPICouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CPICouponPricer::CPICouponPricer(Handle<CPIVolatilitySurface>
      capletVol,\n                                     Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:40,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:40,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' capletVol'
    argTypes:
    - Handle<CPIVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::CPICouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICouponPricer::setCapletVolatility(\n       const Handle<CPIVolatilitySurface>&
      capletVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::CPICouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::CPICouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::CPICouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::CPICouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: QuantLib::CPICouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletPriceImp(Option::Type,\n                                            Real,\n
      \                                           Real,\n                                            Real)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:76,1
    - Dst: QuantLib::CPICouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:77,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::CPICouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::CPICouponPricer::optionletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletPrice(Option::Type optionType,\n                                         Real
      effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:83,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:84,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:88,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:97,1
    - Dst: QuantLib::CPICouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:100,1
    - Dst: QuantLib::CPICouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:100,1
    - Dst: QuantLib::CPICouponPricer::optionletPriceImp
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:102,1
    - Dst: indexRatio
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:104,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 107
    functionName: QuantLib::CPICouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 6
    functionsReached:
    - indexRatio
    - accrualEndDate
    - fixingDate
    - std::max
    - QuantLib::detail::instance
    - std::sqrt
    - QuantLib::CPICouponPricer::capletVolatility
    - QuantLib::CPICouponPricer::optionletPriceImp
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CPICouponPricer::optionletRate(Option::Type optionType,\n                                        Real
      effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CPICoupon*>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:111,1
    - Dst: fixedRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:112,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:113,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:119,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:121,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:123,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - InflationCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 126
    functionName: QuantLib::CPICouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - date
    - referenceDate
    - empty
    - Null<Real>
    - discount
    - dynamic_cast<const CPICoupon*>
    - fixedRate
    linkageType: ''
    returnType: void
    signature: void CPICouponPricer::initialize(const InflationCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:130,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:130,1
    - Dst: QuantLib::CPICouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:131,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: QuantLib::CPICouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICouponPricer::swapletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPICouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICouponPricer::accruedRate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:136,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::CPICouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICouponPricer::accruedRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: indexRatio
      Src: /src/quantlib/ql/cashflows/cpicouponpricer.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - settlementDate
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::CPICouponPricer::accruedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.cpp
    functionUses: 2
    functionsReached:
    - indexRatio
    linkageType: ''
    returnType: Rate
    signature: Rate CPICouponPricer::accruedRate(Date settlementDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:46,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - useIndexedCoupon
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: QuantLib::IborCouponPricer::IborCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IborCouponPricer::IborCouponPricer(\n            Handle<OptionletVolatilityStructure>
      v,\n            ext::optional<bool> useIndexedCoupon)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:58,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:59,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:60,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:68,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:69,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:69,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:70,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:74,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:81,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:85,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 91
    functionName: QuantLib::IborCouponPricer::initializeCachedData
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - iborIndex
    - accrualEndDate
    - std::max
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCouponPricer::initializeCachedData(const IborCoupon& coupon)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const IborCoupon *>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:95,1
    - Dst: QuantLib::IborCouponPricer::initializeCachedData
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:97,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:99,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:100,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:101,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 110
    functionName: QuantLib::IborCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - iborIndex
    - dynamic_cast<const IborCoupon *>
    - spread
    - accrualPeriod
    - QuantLib::IborCouponPricer::initializeCachedData
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCouponPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCouponPricer::initialize
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:119,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:121,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:124,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:127,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 133
    functionName: QuantLib::BlackIborCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - date
    - referenceDate
    - empty
    - Null<Real>
    - discount
    - QuantLib::IborCouponPricer::initialize
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void BlackIborCouponPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:136,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:140,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:144,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:149,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:152,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:152,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:154,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:156,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:159,1
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:159,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:161,1
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 165
    functionName: QuantLib::BlackIborCouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - capletVolatility
    - bachelierBlackFormula
    - std::max
    - blackFormula
    - QuantLib::detail::instance
    - QuantLib::BlackIborCouponPricer::adjustedFixing
    - std::sqrt
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::optionletRate(Option::Type optionType,
      Real effStrike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:169,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:169,1
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::BlackIborCouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::optionletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackIborCouponPricer::optionletPrice(Option::Type optionType,\n
      \                                              Real effStrike) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:175,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:176,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:183,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:191,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:191,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:193,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:198,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:200,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:202,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:205,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:210,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:210,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:211,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:213,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:220,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:221,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:225,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:225,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:228,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:228,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 233
    functionName: QuantLib::BlackIborCouponPricer::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 1
    functionsReached:
    - date
    - empty
    - capletVolatility
    - Null<Rate>
    - value
    - dayCounter
    - isInArrears
    - Real
    - forwardingTermStructure
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::adjustedFixing(Rate fixing) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: QuantLib::PricerSetter::PricerSetter
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PricerSetter(ext::shared_ptr<FloatingRateCouponPricer> pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CashFlow&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(Coupon&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(FloatingRateCoupon& c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<CmsCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:306,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 307
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - underlying
    - ext::dynamic_pointer_cast<CmsCoupon>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::dynamic_pointer_cast<CmsSpreadCoupon>
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:311,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:312,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(IborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:320,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:327,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:328,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:336,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 339
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:344,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 347
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:352,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:360,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:367,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:368,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:375,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:376,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 379
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<RangeAccrualPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:383,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:384,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - RangeAccrualFloatersCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<RangeAccrualPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(RangeAccrualFloatersCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<MultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:391,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:392,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - MultipleResetsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MultipleResetsPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(MultipleResetsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:401,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:407,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:408,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:412,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 414
    functionName: QuantLib::setCouponPricersFirstMatching
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - std::vector::emplace_back
    - accept
    linkageType: ''
    returnType: void
    signature: "void setCouponPricersFirstMatching(const Leg& leg,\n                                           const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: QuantLib::PricerSetter::PricerSetter
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PricerSetter(ext::shared_ptr<FloatingRateCouponPricer> pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CashFlow&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(Coupon&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(FloatingRateCoupon& c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<CmsCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:306,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 307
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - underlying
    - ext::dynamic_pointer_cast<CmsCoupon>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::dynamic_pointer_cast<CmsSpreadCoupon>
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:311,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:312,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(IborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:320,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:327,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:328,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:336,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 339
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:344,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 347
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:352,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:360,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:367,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:368,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:375,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:376,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 379
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<RangeAccrualPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:383,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:384,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - RangeAccrualFloatersCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<RangeAccrualPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(RangeAccrualFloatersCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<MultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:391,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:392,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - MultipleResetsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MultipleResetsPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(MultipleResetsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:401,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:407,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:408,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:412,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 414
    functionName: QuantLib::setCouponPricersFirstMatching
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - std::vector::emplace_back
    - accept
    linkageType: ''
    returnType: void
    signature: "void setCouponPricersFirstMatching(const Leg& leg,\n                                           const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' leg'
    - ' pricer'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 423
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - accept
    linkageType: ''
    returnType: void
    signature: void setCouponPricer(const Leg& leg, const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:429,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:430,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:432,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:433,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' leg'
    - "\n                                                                    pricers"
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 441
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - accept
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >&\n                                                                    pricers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:448,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:449,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 443
    functionDepth: 2
    functionLinenumber: 443
    functionLinenumberEnd: 451
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:459,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:460,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:461,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    - ' p3'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 453
    functionDepth: 2
    functionLinenumber: 453
    functionLinenumberEnd: 463
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2,\n            const ext::shared_ptr<FloatingRateCouponPricer>& p3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:472,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:473,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:474,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:475,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    - ' p3'
    - ' p4'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 465
    functionDepth: 2
    functionLinenumber: 465
    functionLinenumberEnd: 477
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2,\n            const ext::shared_ptr<FloatingRateCouponPricer>& p3,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:46,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v
    - useIndexedCoupon
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: QuantLib::IborCouponPricer::IborCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IborCouponPricer::IborCouponPricer(\n            Handle<OptionletVolatilityStructure>
      v,\n            ext::optional<bool> useIndexedCoupon)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:58,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:59,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:60,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:68,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:69,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:69,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:70,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:74,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:78,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:81,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:85,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 91
    functionName: QuantLib::IborCouponPricer::initializeCachedData
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 1
    functionsReached:
    - iborIndex
    - accrualEndDate
    - std::max
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCouponPricer::initializeCachedData(const IborCoupon& coupon)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const IborCoupon *>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:94,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:95,1
    - Dst: QuantLib::IborCouponPricer::initializeCachedData
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:97,1
    - Dst: iborIndex
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:99,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:100,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:101,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 110
    functionName: QuantLib::IborCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - iborIndex
    - dynamic_cast<const IborCoupon *>
    - spread
    - accrualPeriod
    - QuantLib::IborCouponPricer::initializeCachedData
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IborCouponPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IborCouponPricer::initialize
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:119,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:121,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:123,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:124,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:127,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 117
    functionDepth: 3
    functionLinenumber: 117
    functionLinenumberEnd: 133
    functionName: QuantLib::BlackIborCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - date
    - referenceDate
    - empty
    - Null<Real>
    - discount
    - QuantLib::IborCouponPricer::initialize
    - forwardingTermStructure
    linkageType: ''
    returnType: void
    signature: void BlackIborCouponPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:136,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:140,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:144,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:149,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:152,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:152,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:154,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:156,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:159,1
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:159,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:161,1
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 165
    functionName: QuantLib::BlackIborCouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 1
    functionsReached:
    - capletVolatility
    - bachelierBlackFormula
    - std::max
    - blackFormula
    - QuantLib::detail::instance
    - QuantLib::BlackIborCouponPricer::adjustedFixing
    - std::sqrt
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::optionletRate(Option::Type optionType,
      Real effStrike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:169,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:169,1
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: QuantLib::BlackIborCouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::optionletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real BlackIborCouponPricer::optionletPrice(Option::Type optionType,\n
      \                                              Real effStrike) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:175,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:176,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:183,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:191,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:191,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:193,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:198,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:200,1
    - Dst: capletVolatility
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:202,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:205,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:210,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:210,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:211,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:213,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:220,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:221,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:225,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:225,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:228,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:228,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 233
    functionName: QuantLib::BlackIborCouponPricer::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 2
    functionsReached:
    - date
    - empty
    - capletVolatility
    - Null<Rate>
    - value
    - dayCounter
    - isInArrears
    - Real
    - forwardingTermStructure
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::adjustedFixing(Rate fixing) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: QuantLib::PricerSetter::PricerSetter
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PricerSetter(ext::shared_ptr<FloatingRateCouponPricer> pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CashFlow&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(Coupon&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(FloatingRateCoupon& c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<CmsCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:306,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 307
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - underlying
    - ext::dynamic_pointer_cast<CmsCoupon>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::dynamic_pointer_cast<CmsSpreadCoupon>
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:311,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:312,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(IborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:320,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:327,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:328,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:336,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 339
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:344,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 347
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:352,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:360,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:367,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:368,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:375,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:376,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 379
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<RangeAccrualPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:383,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:384,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - RangeAccrualFloatersCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<RangeAccrualPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(RangeAccrualFloatersCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<MultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:391,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:392,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - MultipleResetsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MultipleResetsPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(MultipleResetsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:401,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:407,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:408,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:412,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 414
    functionName: QuantLib::setCouponPricersFirstMatching
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 3
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - std::vector::emplace_back
    - accept
    linkageType: ''
    returnType: void
    signature: "void setCouponPricersFirstMatching(const Leg& leg,\n                                           const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: QuantLib::PricerSetter::PricerSetter
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PricerSetter(ext::shared_ptr<FloatingRateCouponPricer> pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CashFlow&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(Coupon&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(FloatingRateCoupon& c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:297,1
    - Dst: ext::dynamic_pointer_cast<CmsCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:300,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCoupon>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: underlying
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:303,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:306,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 307
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - underlying
    - ext::dynamic_pointer_cast<CmsCoupon>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::dynamic_pointer_cast<CmsSpreadCoupon>
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:311,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:312,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - IborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(IborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:320,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:327,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:328,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredIborCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredIborCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:335,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:336,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 339
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:343,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:344,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 347
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:351,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:352,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:359,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:360,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - CappedFlooredCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(CappedFlooredCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:367,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:368,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - setPricer
    - ext::dynamic_pointer_cast<CmsCouponPricer>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:375,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:376,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - DigitalCmsSpreadCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 379
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CmsSpreadCouponPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(DigitalCmsSpreadCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<RangeAccrualPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:383,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:384,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - RangeAccrualFloatersCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<RangeAccrualPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(RangeAccrualFloatersCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<MultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:391,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:392,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - MultipleResetsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: QuantLib::PricerSetter::visit
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<MultipleResetsPricer>
    - setPricer
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PricerSetter::visit(MultipleResetsCoupon& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:399,1
    - Dst: std::vector::emplace_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:401,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:407,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:408,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:412,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 414
    functionName: QuantLib::setCouponPricersFirstMatching
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 3
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - std::vector::emplace_back
    - accept
    linkageType: ''
    returnType: void
    signature: "void setCouponPricersFirstMatching(const Leg& leg,\n                                           const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' leg'
    - ' pricer'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 423
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - accept
    linkageType: ''
    returnType: void
    signature: void setCouponPricer(const Leg& leg, const ext::shared_ptr<FloatingRateCouponPricer>&
      pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:429,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:430,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:432,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:433,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' leg'
    - "\n                                                                    pricers"
    argTypes:
    - Leg
    - std::vector<ext::shared_ptr<FloatingRateCouponPricer> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 441
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - accept
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      std::vector<ext::shared_ptr<FloatingRateCouponPricer> >&\n                                                                    pricers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:448,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:449,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 443
    functionDepth: 2
    functionLinenumber: 443
    functionLinenumberEnd: 451
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:459,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:460,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:461,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    - ' p3'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 453
    functionDepth: 2
    functionLinenumber: 453
    functionLinenumberEnd: 463
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2,\n            const ext::shared_ptr<FloatingRateCouponPricer>& p3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:472,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:473,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:474,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:475,1
    - Dst: QuantLib::setCouponPricersFirstMatching
      Src: /src/quantlib/ql/cashflows/couponpricer.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - ' leg'
    - ' p1'
    - ' p2'
    - ' p3'
    - ' p4'
    argTypes:
    - Leg
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 465
    functionDepth: 2
    functionLinenumber: 465
    functionLinenumberEnd: 477
    functionName: QuantLib::setCouponPricers
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::setCouponPricersFirstMatching
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void setCouponPricers(\n            const Leg& leg,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p1,\n            const ext::shared_ptr<FloatingRateCouponPricer>&
      p2,\n            const ext::shared_ptr<FloatingRateCouponPricer>& p3,\n            const
      ext::shared_ptr<FloatingRateCouponPricer>& p4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - baseCPI
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Real
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 47
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(Real baseCPI,\n                         const
      Date& paymentDate,\n                         Real nominal,\n                         const
      Date& startDate,\n                         const Date& endDate,\n                         const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                         const
      Period& observationLag,\n                         CPI::InterpolationType observationInterpolation,\n
      \                        const DayCounter& dayCounter,\n                         Real
      fixedRate,\n                         const Date& refPeriodStart,\n                         const
      Date& refPeriodEnd,\n                         const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' baseDate'
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 64
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(const Date& baseDate,\n                         const
      Date& paymentDate,\n                         Real nominal,\n                         const
      Date& startDate,\n                         const Date& endDate,\n                         const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                         const
      Period& observationLag,\n                         CPI::InterpolationType observationInterpolation,\n
      \                        const DayCounter& dayCounter,\n                         Real
      fixedRate,\n                         const Date& refPeriodStart,\n                         const
      Date& refPeriodEnd,\n                         const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 14
    argNames:
    - baseCPI
    - ' baseDate'
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Real
    - Date
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 91
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::fabs
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(Real baseCPI,\n                         const
      Date& baseDate,\n                         const Date& paymentDate,\n                         Real
      nominal,\n                         const Date& startDate,\n                         const
      Date& endDate,\n                         const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                         const Period& observationLag,\n                         CPI::InterpolationType
      observationInterpolation,\n                         const DayCounter& dayCounter,\n
      \                        Real fixedRate,\n                         const Date&
      refPeriodStart,\n                         const Date& refPeriodEnd,\n                         const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CPICoupon>*>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:94,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:96,1
    - Dst: QuantLib::YoYInflationCoupon::accept
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::CPICoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<CPICoupon>*>
    - QuantLib::YoYInflationCoupon::accept
    linkageType: ''
    returnType: void
    signature: void CPICoupon::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:106,1
    - Dst: auto::initialize
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:107,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    - Dst: auto::accruedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: QuantLib::CPICoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CPICouponPricer>
    - auto::accruedRate
    - accruedPeriod
    - auto::initialize
    - nominal
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPICoupon::accruedAmount(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICoupon::baseCPI
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:114,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:116,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:117,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:117,1
    - Dst: QuantLib::CPICoupon::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:118,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:118,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:119,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:120,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:123,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:123,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:125,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::CPICoupon::indexRatio
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICoupon::observationInterpolation
    - Null<Rate>
    - QuantLib::CPICoupon::baseDate
    - QuantLib::CPICoupon::baseCPI
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICoupon::cpiIndex
    - observationLag
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::indexRatio(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:133,1
    - Dst: ext::dynamic_pointer_cast<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::CPICoupon::checkPricerImpl
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CPICouponPricer>
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: "bool CPICoupon::checkPricerImpl(\n            const ext::shared_ptr<InflationCouponPricer>&pricer)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICashFlow::frequency
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:152,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:153,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - notional
    - ' index'
    - ' baseDate'
    - baseFixing
    - ' observationDate'
    - ' observationLag'
    - interpolation
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<ZeroInflationIndex>
    - Date
    - Real
    - Date
    - Period
    - CPI::InterpolationType
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 157
    functionName: QuantLib::CPICashFlow::CPICashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::fabs
    - Date
    - QuantLib::CPICashFlow::frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICashFlow::CPICashFlow(Real notional,\n                             const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                             const
      Date& baseDate,\n                             Real baseFixing,\n                             const
      Date& observationDate,\n                             const Period& observationLag,\n
      \                            CPI::InterpolationType interpolation,\n                             const
      Date& paymentDate,\n                             bool growthOnly)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 166
    functionName: QuantLib::CPICashFlow::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Date
    - QuantLib::IndexedCashFlow::baseDate
    linkageType: ''
    returnType: Date
    signature: Date CPICashFlow::baseDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:169,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    - Dst: QuantLib::CPICashFlow::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    - Dst: QuantLib::CPICashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 173
    functionName: QuantLib::CPICashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICashFlow::baseDate
    - QuantLib::CPICashFlow::cpiIndex
    linkageType: ''
    returnType: Real
    signature: Real CPICashFlow::baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:176,1
    - Dst: QuantLib::CPICashFlow::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::CPICashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICashFlow::cpiIndex
    linkageType: ''
    returnType: Real
    signature: Real CPICashFlow::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:183,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:183,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:184,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - schedule
    - index
    - baseCPI
    - ' observationLag'
    argTypes:
    - Schedule
    - ext::shared_ptr<ZeroInflationIndex>
    - Real
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::CPILeg::CPILeg
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - Thirty360
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CPILeg::CPILeg(Schedule schedule,\n                   ext::shared_ptr<ZeroInflationIndex>
      index,\n                   const Real baseCPI,\n                   const Period&
      observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - interp
    argTypes:
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& CPILeg::withObservationInterpolation(CPI::InterpolationType interp)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withObservationInterpolation(CPI::InterpolationType
      interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixedRate
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& CPILeg::withFixedRates(Real fixedRate)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFixedRates(Real fixedRate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixedRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& CPILeg::withFixedRates(const std::vector<Real>& fixedRates)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFixedRates(const std::vector<Real>& fixedRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: '& CPILeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '& CPILeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - growthOnly
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& CPILeg::withSubtractInflationNominal(bool growthOnly)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withSubtractInflationNominal(bool growthOnly)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: '& CPILeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& CPILeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& CPILeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: '& CPILeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: '& CPILeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: '& CPILeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: '& CPILeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 264
    functionName: "& CPILeg::withExCouponPeriod(\n                        const Period&
      period,\n                        const Calendar& cal,\n                        BusinessDayConvention
      convention,\n                        bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: "CPILeg & CPILeg::withExCouponPeriod(\n                        const
      Period& period,\n                        const Calendar& cal,\n                        BusinessDayConvention
      convention,\n                        bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' baseDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: '& CPILeg::withBaseDate(const Date& baseDate)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withBaseDate(const Date& baseDate)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:274,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:274,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:275,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:277,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:284,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:286,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:286,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:287,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:293,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:294,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:295,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:298,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:300,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:306,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:306,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:307,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:308,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:308,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:310,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:310,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:311,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:312,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:312,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:314,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:316,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:316,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:317,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:318,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:321,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:322,1
    - Dst: ext::make_shared<CPICoupon>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:322,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:326,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:331,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:334,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:341,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:341,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:342,1
    - Dst: ext::make_shared<CPICashFlow>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:342,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:343,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:345,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:349,1
    - Dst: ext::make_shared<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:349,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 352
    functionName: CPILeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Date
    - calendar
    - hasIsRegular
    - date
    - tenor
    - empty
    - Leg::reserve
    - setCouponPricer
    - ext::make_shared<CPICashFlow>
    - adjust
    - QuantLib::detail::effectiveFixedRate
    - size
    - Null<Real>
    - isRegular
    - Period
    - QL_FAIL
    - QuantLib::detail::noOption
    - ext::make_shared<FixedRateCoupon>
    - advance
    - ext::make_shared<CPICouponPricer>
    - QL_REQUIRE
    - ext::make_shared<CPICoupon>
    - QuantLib::detail::get
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void CPILeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - baseCPI
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Real
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 47
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(Real baseCPI,\n                         const
      Date& paymentDate,\n                         Real nominal,\n                         const
      Date& startDate,\n                         const Date& endDate,\n                         const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                         const
      Period& observationLag,\n                         CPI::InterpolationType observationInterpolation,\n
      \                        const DayCounter& dayCounter,\n                         Real
      fixedRate,\n                         const Date& refPeriodStart,\n                         const
      Date& refPeriodEnd,\n                         const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' baseDate'
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 64
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(const Date& baseDate,\n                         const
      Date& paymentDate,\n                         Real nominal,\n                         const
      Date& startDate,\n                         const Date& endDate,\n                         const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                         const
      Period& observationLag,\n                         CPI::InterpolationType observationInterpolation,\n
      \                        const DayCounter& dayCounter,\n                         Real
      fixedRate,\n                         const Date& refPeriodStart,\n                         const
      Date& refPeriodEnd,\n                         const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 14
    argNames:
    - baseCPI
    - ' baseDate'
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - ' observationLag'
    - observationInterpolation
    - ' dayCounter'
    - fixedRate
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Real
    - Date
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<ZeroInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    - Real
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 91
    functionName: QuantLib::CPICoupon::CPICoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::fabs
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICoupon::CPICoupon(Real baseCPI,\n                         const
      Date& baseDate,\n                         const Date& paymentDate,\n                         Real
      nominal,\n                         const Date& startDate,\n                         const
      Date& endDate,\n                         const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                         const Period& observationLag,\n                         CPI::InterpolationType
      observationInterpolation,\n                         const DayCounter& dayCounter,\n
      \                        Real fixedRate,\n                         const Date&
      refPeriodStart,\n                         const Date& refPeriodEnd,\n                         const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CPICoupon>*>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:94,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:96,1
    - Dst: QuantLib::YoYInflationCoupon::accept
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::CPICoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<CPICoupon>*>
    - QuantLib::YoYInflationCoupon::accept
    linkageType: ''
    returnType: void
    signature: void CPICoupon::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:106,1
    - Dst: auto::initialize
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:107,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    - Dst: auto::accruedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:108,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: QuantLib::CPICoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CPICouponPricer>
    - auto::accruedRate
    - accruedPeriod
    - auto::initialize
    - nominal
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CPICoupon::accruedAmount(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICoupon::baseCPI
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:114,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:116,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:117,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:117,1
    - Dst: QuantLib::CPICoupon::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:118,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:118,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:119,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:120,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:123,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:123,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:125,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::CPICoupon::indexRatio
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICoupon::observationInterpolation
    - Null<Rate>
    - QuantLib::CPICoupon::baseDate
    - QuantLib::CPICoupon::baseCPI
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICoupon::cpiIndex
    - observationLag
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::indexRatio(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:133,1
    - Dst: ext::dynamic_pointer_cast<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::CPICoupon::checkPricerImpl
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<CPICouponPricer>
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: "bool CPICoupon::checkPricerImpl(\n            const ext::shared_ptr<InflationCouponPricer>&pricer)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICashFlow::frequency
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:152,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:153,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 9
    argNames:
    - notional
    - ' index'
    - ' baseDate'
    - baseFixing
    - ' observationDate'
    - ' observationLag'
    - interpolation
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<ZeroInflationIndex>
    - Date
    - Real
    - Date
    - Period
    - CPI::InterpolationType
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 157
    functionName: QuantLib::CPICashFlow::CPICashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - std::fabs
    - Date
    - QuantLib::CPICashFlow::frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICashFlow::CPICashFlow(Real notional,\n                             const
      ext::shared_ptr<ZeroInflationIndex>& index,\n                             const
      Date& baseDate,\n                             Real baseFixing,\n                             const
      Date& observationDate,\n                             const Period& observationLag,\n
      \                            CPI::InterpolationType interpolation,\n                             const
      Date& paymentDate,\n                             bool growthOnly)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:161,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 166
    functionName: QuantLib::CPICashFlow::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - Date
    - QuantLib::IndexedCashFlow::baseDate
    linkageType: ''
    returnType: Date
    signature: Date CPICashFlow::baseDate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:169,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    - Dst: QuantLib::CPICashFlow::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    - Dst: QuantLib::CPICashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 173
    functionName: QuantLib::CPICashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICashFlow::baseDate
    - QuantLib::CPICashFlow::cpiIndex
    linkageType: ''
    returnType: Real
    signature: Real CPICashFlow::baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:176,1
    - Dst: QuantLib::CPICashFlow::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: QuantLib::CPICashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICashFlow::cpiIndex
    linkageType: ''
    returnType: Real
    signature: Real CPICashFlow::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:183,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:183,1
    - Dst: Thirty360
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:184,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - schedule
    - index
    - baseCPI
    - ' observationLag'
    argTypes:
    - Schedule
    - ext::shared_ptr<ZeroInflationIndex>
    - Real
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: QuantLib::CPILeg::CPILeg
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - Thirty360
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CPILeg::CPILeg(Schedule schedule,\n                   ext::shared_ptr<ZeroInflationIndex>
      index,\n                   const Real baseCPI,\n                   const Period&
      observationLag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - interp
    argTypes:
    - CPI::InterpolationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& CPILeg::withObservationInterpolation(CPI::InterpolationType interp)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withObservationInterpolation(CPI::InterpolationType
      interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixedRate
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& CPILeg::withFixedRates(Real fixedRate)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFixedRates(Real fixedRate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixedRates'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& CPILeg::withFixedRates(const std::vector<Real>& fixedRates)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFixedRates(const std::vector<Real>& fixedRates)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: '& CPILeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: '& CPILeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - growthOnly
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: '& CPILeg::withSubtractInflationNominal(bool growthOnly)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withSubtractInflationNominal(bool growthOnly)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: '& CPILeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& CPILeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: '& CPILeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: '& CPILeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: '& CPILeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: '& CPILeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: '& CPILeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 264
    functionName: "& CPILeg::withExCouponPeriod(\n                        const Period&
      period,\n                        const Calendar& cal,\n                        BusinessDayConvention
      convention,\n                        bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: "CPILeg & CPILeg::withExCouponPeriod(\n                        const
      Period& period,\n                        const Calendar& cal,\n                        BusinessDayConvention
      convention,\n                        bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' baseDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: '& CPILeg::withBaseDate(const Date& baseDate)'
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPILeg
    signature: CPILeg & CPILeg::withBaseDate(const Date& baseDate)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:274,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:274,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:275,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:277,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:284,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:286,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:286,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:287,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:293,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:294,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:295,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:298,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:300,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:306,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:306,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:307,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:308,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:308,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:310,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:310,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:311,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:312,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:312,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:314,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:316,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:316,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:317,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:318,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:321,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:322,1
    - Dst: ext::make_shared<CPICoupon>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:322,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:326,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:331,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:334,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:341,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:341,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:342,1
    - Dst: ext::make_shared<CPICashFlow>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:342,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:343,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:345,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:349,1
    - Dst: ext::make_shared<CPICouponPricer>
      Src: /src/quantlib/ql/cashflows/cpicoupon.cpp:349,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 352
    functionName: CPILeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Date
    - calendar
    - hasIsRegular
    - date
    - tenor
    - empty
    - Leg::reserve
    - setCouponPricer
    - ext::make_shared<CPICashFlow>
    - adjust
    - QuantLib::detail::effectiveFixedRate
    - size
    - Null<Real>
    - isRegular
    - Period
    - QL_FAIL
    - QuantLib::detail::noOption
    - ext::make_shared<FixedRateCoupon>
    - advance
    - ext::make_shared<CPICouponPricer>
    - QL_REQUIRE
    - ext::make_shared<CPICoupon>
    - QuantLib::detail::get
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: void CPILeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::IndexedCashFlow::date
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::IndexedCashFlow::notional
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::IndexedCashFlow::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::IndexedCashFlow::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::IndexedCashFlow::index
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Index>
    signature: ext::shared_ptr<Index> index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::IndexedCashFlow::growthOnly
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool growthOnly() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:62,1
    - Dst: QuantLib::IndexedCashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::IndexedCashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached:
    - fixing
    - QuantLib::IndexedCashFlow::baseDate
    linkageType: ''
    returnType: Real
    signature: Real baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::IndexedCashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached:
    - fixing
    linkageType: ''
    returnType: Real
    signature: Real indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<IndexedCashFlow>*>
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:91,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::IndexedCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<Visitor<IndexedCashFlow>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void IndexedCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::IndexedCashFlow::date
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::IndexedCashFlow::notional
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::IndexedCashFlow::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::IndexedCashFlow::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::IndexedCashFlow::index
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Index>
    signature: ext::shared_ptr<Index> index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::IndexedCashFlow::growthOnly
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool growthOnly() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:62,1
    - Dst: QuantLib::IndexedCashFlow::baseDate
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::IndexedCashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached:
    - fixing
    - QuantLib::IndexedCashFlow::baseDate
    linkageType: ''
    returnType: Real
    signature: Real baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::IndexedCashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 0
    functionsReached:
    - fixing
    linkageType: ''
    returnType: Real
    signature: Real indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<IndexedCashFlow>*>
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:91,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/indexedcashflow.hpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::IndexedCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.hpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<Visitor<IndexedCashFlow>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void IndexedCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/duration.cpp:38,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/duration.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - d
    argTypes:
    - std::ostream
    - Duration::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                             Duration::Type
      d)"
    functionSourceFile: /src/quantlib/ql/cashflows/duration.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Duration::Type
      d)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/duration.cpp:38,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/duration.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - d
    argTypes:
    - std::ostream
    - Duration::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: "& operator<<(std::ostream& out,\n                             Duration::Type
      d)"
    functionSourceFile: /src/quantlib/ql/cashflows/duration.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             Duration::Type
      d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Dividend::Dividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Dividend(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Dividend::date
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::FixedDividend::FixedDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FixedDividend(Real amount, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::FixedDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::FixedDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/dividend.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rate
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: QuantLib::FractionalDividend::FractionalDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void FractionalDividend(Real rate, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rate
    - nominal
    - ' date'
    argTypes:
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 80
    functionName: QuantLib::FractionalDividend::FractionalDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FractionalDividend(Real rate, Real nominal, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/dividend.hpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/dividend.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::FractionalDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::FractionalDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount(Real underlying) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::FractionalDividend::rate
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::FractionalDividend::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: QuantLib::Dividend::Dividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Dividend(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::Dividend::date
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: QuantLib::FixedDividend::FixedDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FixedDividend(Real amount, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::FixedDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::FixedDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/dividend.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rate
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: QuantLib::FractionalDividend::FractionalDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void FractionalDividend(Real rate, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rate
    - nominal
    - ' date'
    argTypes:
    - Real
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 80
    functionName: QuantLib::FractionalDividend::FractionalDividend
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FractionalDividend(Real rate, Real nominal, const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/dividend.hpp:84,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/dividend.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: QuantLib::FractionalDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - underlying
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::FractionalDividend::amount
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount(Real underlying) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::FractionalDividend::rate
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::FractionalDividend::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const AverageBMACoupon*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::AverageBMACouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const AverageBMACoupon*>
    linkageType: ''
    returnType: void
    signature: void initialize(const FloatingRateCoupon& coupon) override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:39,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:41,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:44,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: front
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:57,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:58,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:59,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:67,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:69,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:76,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBMACouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_ENSURE
    - empty
    - spread
    - accrualEndDate
    - valueDate
    - std::min
    - index
    - accrualStartDate
    - fixing
    - fixingDates
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate swapletRate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::AverageBMACouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::AverageBMACouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::AverageBMACouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::AverageBMACouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::AverageBMACouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const AverageBMACoupon*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::AverageBMACouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const AverageBMACoupon*>
    linkageType: ''
    returnType: void
    signature: void initialize(const FloatingRateCoupon& coupon) override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:39,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:41,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:44,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: front
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:57,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:58,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:59,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:67,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:69,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:76,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBMACouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_ENSURE
    - empty
    - spread
    - accrualEndDate
    - valueDate
    - std::min
    - index
    - accrualStartDate
    - fixing
    - fixingDates
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate swapletRate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::AverageBMACouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::AverageBMACouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::AverageBMACouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::AverageBMACouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::AverageBMACouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - ' index'
    argTypes:
    - Date
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::adjustToPreviousValidFixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - QuantLib::Date::minDate
    linkageType: ''
    returnType: void
    signature: void adjustToPreviousValidFixingDate(Date& d, const ext::shared_ptr<BMAIndex>&
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - ' index'
    argTypes:
    - Date
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::adjustToPreviousValidFixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - QuantLib::Date::minDate
    linkageType: ''
    returnType: void
    signature: void adjustToPreviousValidFixingDate(Date& d, const ext::shared_ptr<BMAIndex>&
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:112,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:115,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:116,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:116,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:118,1
    - Dst: adjustToPreviousValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:121,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:122,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:122,1
    - Dst: adjustToPreviousValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:123,1
    - Dst: fixingSchedule
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:126,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:128,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:128,1
    - Dst: AverageBMACouponPricer::AverageBMACouponPricer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 10
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<BMAIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 130
    functionName: QuantLib::AverageBMACoupon::AverageBMACoupon
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::minDate
    - Integer
    - Calendar::advance
    - fixingDays
    - valueDate
    - AverageBMACouponPricer::AverageBMACouponPricer
    - setPricer
    - ext::shared_ptr<FloatingRateCouponPricer>
    - fixingSchedule
    - fixingCalendar
    - adjustToPreviousValidFixingDate
    linkageType: ''
    returnType: void
    signature: "void AverageBMACoupon::AverageBMACoupon(const Date& paymentDate,\n
      \                                      Real nominal,\n                                       const
      Date& startDate,\n                                       const Date& endDate,\n
      \                                      const ext::shared_ptr<BMAIndex>& index,\n
      \                                      Real gearing, Spread spread,\n                                       const
      Date& refPeriodStart,\n                                       const Date& refPeriodEnd,\n
      \                                      const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::AverageBMACoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Date
    signature: Date AverageBMACoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::AverageBMACoupon::fixingDates
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - dates
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> AverageBMACoupon::fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AverageBMACoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate AverageBMACoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:145,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:146,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:147,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionName: QuantLib::AverageBMACoupon::indexFixings
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - size
    - date
    - std::vector::size
    - fixing
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> AverageBMACoupon::indexFixings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::AverageBMACoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate AverageBMACoupon::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AverageBMACoupon>*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:156,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:158,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 162
    functionName: QuantLib::AverageBMACoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - dynamic_cast<Visitor<AverageBMACoupon>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void AverageBMACoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:166,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: QuantLib::AverageBMALeg::AverageBMALeg
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AverageBMALeg::AverageBMALeg(Schedule schedule, ext::shared_ptr<BMAIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: '& AverageBMALeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "& AverageBMALeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionName: "& AverageBMALeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "& AverageBMALeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: '& AverageBMALeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: "& AverageBMALeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: '& AverageBMALeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "& AverageBMALeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:215,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:215,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:225,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:227,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:228,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:229,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:230,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:230,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:231,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:232,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:232,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:234,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:234,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:235,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:236,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:236,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:241,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:244,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:245,1
    - Dst: AverageBMACoupon::AverageBMACoupon
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 251
    functionName: AverageBMALeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - Leg::push_back
    - date
    - Calendar::adjust
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - back
    - isRegular
    - QuantLib::detail::get
    - AverageBMACoupon::AverageBMACoupon
    - calendar
    - size
    - hasTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AverageBMALeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const AverageBMACoupon*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::AverageBMACouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const AverageBMACoupon*>
    linkageType: ''
    returnType: void
    signature: void initialize(const FloatingRateCoupon& coupon) override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:39,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:41,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:44,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: front
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:57,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:58,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:59,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:67,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:69,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:76,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBMACouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_ENSURE
    - empty
    - spread
    - accrualEndDate
    - valueDate
    - std::min
    - index
    - accrualStartDate
    - fixing
    - fixingDates
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate swapletRate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::AverageBMACouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::AverageBMACouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::AverageBMACouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::AverageBMACouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::AverageBMACouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const AverageBMACoupon*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:35,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: QuantLib::AverageBMACouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - dynamic_cast<const AverageBMACoupon*>
    linkageType: ''
    returnType: void
    signature: void initialize(const FloatingRateCoupon& coupon) override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:39,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:41,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:44,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: front
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:57,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:58,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:59,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:67,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:69,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:76,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 81
    functionName: QuantLib::AverageBMACouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - QL_ENSURE
    - empty
    - spread
    - accrualEndDate
    - valueDate
    - std::min
    - index
    - accrualStartDate
    - fixing
    - fixingDates
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate swapletRate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::AverageBMACouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::AverageBMACouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::AverageBMACouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::AverageBMACouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::AverageBMACouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - ' index'
    argTypes:
    - Date
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::adjustToPreviousValidFixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - QuantLib::Date::minDate
    linkageType: ''
    returnType: void
    signature: void adjustToPreviousValidFixingDate(Date& d, const ext::shared_ptr<BMAIndex>&
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - ' index'
    argTypes:
    - Date
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: QuantLib::adjustToPreviousValidFixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - isValidFixingDate
    - QuantLib::Date::minDate
    linkageType: ''
    returnType: void
    signature: void adjustToPreviousValidFixingDate(Date& d, const ext::shared_ptr<BMAIndex>&
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:112,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:115,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:116,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:116,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:118,1
    - Dst: adjustToPreviousValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:121,1
    - Dst: valueDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:122,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:122,1
    - Dst: adjustToPreviousValidFixingDate
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:123,1
    - Dst: fixingSchedule
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:126,1
    - Dst: setPricer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:128,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:128,1
    - Dst: AverageBMACouponPricer::AverageBMACouponPricer
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 10
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - ' index'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - ext::shared_ptr<BMAIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 130
    functionName: QuantLib::AverageBMACoupon::AverageBMACoupon
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::minDate
    - Integer
    - Calendar::advance
    - fixingDays
    - valueDate
    - AverageBMACouponPricer::AverageBMACouponPricer
    - setPricer
    - ext::shared_ptr<FloatingRateCouponPricer>
    - fixingSchedule
    - fixingCalendar
    - adjustToPreviousValidFixingDate
    linkageType: ''
    returnType: void
    signature: "void AverageBMACoupon::AverageBMACoupon(const Date& paymentDate,\n
      \                                      Real nominal,\n                                       const
      Date& startDate,\n                                       const Date& endDate,\n
      \                                      const ext::shared_ptr<BMAIndex>& index,\n
      \                                      Real gearing, Spread spread,\n                                       const
      Date& refPeriodStart,\n                                       const Date& refPeriodEnd,\n
      \                                      const DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::AverageBMACoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Date
    signature: Date AverageBMACoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::AverageBMACoupon::fixingDates
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - dates
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> AverageBMACoupon::fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::AverageBMACoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate AverageBMACoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:145,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:146,1
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:147,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionName: QuantLib::AverageBMACoupon::indexFixings
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - size
    - date
    - std::vector::size
    - fixing
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> AverageBMACoupon::indexFixings() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::AverageBMACoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate AverageBMACoupon::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AverageBMACoupon>*>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:156,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:158,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 162
    functionName: QuantLib::AverageBMACoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - dynamic_cast<Visitor<AverageBMACoupon>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void AverageBMACoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:166,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<BMAIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: QuantLib::AverageBMALeg::AverageBMALeg
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void AverageBMALeg::AverageBMALeg(Schedule schedule, ext::shared_ptr<BMAIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: '& AverageBMALeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: "& AverageBMALeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionName: "& AverageBMALeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "& AverageBMALeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: '& AverageBMALeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: "& AverageBMALeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: '& AverageBMALeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: AverageBMALeg
    signature: AverageBMALeg & AverageBMALeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "& AverageBMALeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AverageBMALeg
    signature: "AverageBMALeg & AverageBMALeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:215,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:215,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:225,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:227,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:228,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:229,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:230,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:230,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:231,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:232,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:232,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:234,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:234,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:235,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:236,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:236,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:241,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:244,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:245,1
    - Dst: AverageBMACoupon::AverageBMACoupon
      Src: /src/quantlib/ql/cashflows/averagebmacoupon.cpp:239,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 251
    functionName: AverageBMALeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/averagebmacoupon.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - Leg::push_back
    - date
    - Calendar::adjust
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - back
    - isRegular
    - QuantLib::detail::get
    - AverageBMACoupon::AverageBMACoupon
    - calendar
    - size
    - hasTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AverageBMALeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& fixingDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& dt() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& valueDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & valueDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& interestDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & interestDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::OvernightIndexedCoupon::averagingMethod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RateAveraging::Type
    signature: RateAveraging::Type averagingMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::OvernightIndexedCoupon::lockoutDays
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lockoutDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::OvernightIndexedCoupon::applyObservationShift
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool applyObservationShift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::OvernightIndexedCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:104,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 2
    functionsReached:
    - fixingDays
    linkageType: ''
    returnType: bool
    signature: bool canApplyTelescopicFormula() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& fixingDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& dt() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& valueDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & valueDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& interestDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & interestDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::OvernightIndexedCoupon::averagingMethod
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RateAveraging::Type
    signature: RateAveraging::Type averagingMethod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::OvernightIndexedCoupon::lockoutDays
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural lockoutDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::OvernightIndexedCoupon::applyObservationShift
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool applyObservationShift() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::OvernightIndexedCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:104,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: QuantLib::OvernightIndexedCoupon::canApplyTelescopicFormula
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcoupon.hpp
    functionUses: 2
    functionsReached:
    - fixingDays
    linkageType: ''
    returnType: bool
    signature: bool canApplyTelescopicFormula() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& iborIndex() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::IborCoupon::Settings::Settings
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& iborIndex() const'
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IborIndex>
    signature: ext::shared_ptr<IborIndex> & iborIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::IborCoupon::Settings::Settings
    functionSourceFile: /src/quantlib/ql/cashflows/iborcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Settings()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - LinearTsrPricer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LinearTsrPricer::integrand_f::integrand_f
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_f(const LinearTsrPricer* pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integrand
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - integrand
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:64,1
    - Dst: ext::make_shared<GaussKronrodNonAdaptive>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' swaptionVol'
    - meanReversion
    - couponDiscountCurve
    - ' settings'
    - integrator
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Settings
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::LinearTsrPricer::LinearTsrPricer
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussKronrodNonAdaptive>
    - empty
    - dayCounter
    - std::move
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void LinearTsrPricer::LinearTsrPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                     Handle<Quote> meanReversion,\n
      \                                    Handle<YieldTermStructure> couponDiscountCurve,\n
      \                                    const Settings& settings,\n                                     ext::shared_ptr<Integrator>
      integrator)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:73,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:74,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: QuantLib::LinearTsrPricer::GsrG
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::fabs
    - yearFraction
    - value
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::GsrG(const Date &d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:85,1
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::LinearTsrPricer::singularTerms
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::singularTerms(const Option::Type type,\n                                        const
      Real strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::LinearTsrPricer::integrand
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::integrand(const Real strike) const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CmsCoupon *>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:103,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:104,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:105,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:107,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:108,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:109,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:111,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:112,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:113,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:127,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:127,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:128,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:133,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:134,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:142,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:147,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:149,1
    - Dst: auto::underlyingSwap
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:150,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:152,1
    - Dst: fairRate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:154,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:155,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:155,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:156,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:159,1
    - Dst: ext::shared_ptr::volatilityType
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:164,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:167,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:170,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:171,1
    - Dst: ext::shared_ptr::atmLevel
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:177,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:177,1
    - Dst: ext::make_shared<AtmSmileSection>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:178,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:187,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:188,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:189,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:190,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:191,1
    - Dst: Leg::back
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:196,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:198,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:199,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:200,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:200,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:203,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 1
    argNames:
    - coupon
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 206
    functionName: QuantLib::LinearTsrPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - ext::shared_ptr::shift
    - swapIndex
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - auto::underlyingSwap
    - fixedLeg
    - date
    - referenceDate
    - tenor
    - empty
    - spread
    - fixedLegBPS
    - accrualPeriod
    - swaptionVolatility
    - std::fabs
    - QuantLib::LinearTsrPricer::GsrG
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - std::min
    - ext::shared_ptr::atmLevel
    - Leg::back
    - ext::shared_ptr::volatilityType
    - ext::make_shared<AtmSmileSection>
    - Null<Real>
    - exogenousDiscount
    - fixingDate
    - forwardingTermStructure
    - dynamic_cast<const CmsCoupon *>
    - QL_REQUIRE
    - discountingTermStructure
    - underlyingSwap
    - discount
    - QuantLib::detail::instance
    - fairRate
    linkageType: ''
    returnType: void
    signature: void LinearTsrPricer::initialize(const FloatingRateCoupon &coupon)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:218,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:218,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:222,1
    - Dst: minStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:222,1
    - Dst: vega
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:228,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:232,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:238,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - ratio
    - optionType
    - referenceStrike
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 239
    functionName: QuantLib::LinearTsrPricer::strikeFromVegaRatio
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - std::max
    - vega
    - Brent::solve
    - minStrike
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::strikeFromVegaRatio(Real ratio,\n                                              Option::Type
      optionType,\n                                              Real referenceStrike)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:250,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:250,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:254,1
    - Dst: minStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:254,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:263,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:269,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - price
    - optionType
    - referenceStrike
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 270
    functionName: QuantLib::LinearTsrPricer::strikeFromPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - maxStrike
    - std::max
    - Brent::solve
    - minStrike
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::strikeFromPrice(Real price, Option::Type optionType,\n
      \                                         Real referenceStrike) const"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::strikeFromVegaRatio
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:298,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:300,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:302,1
    - Dst: QuantLib::LinearTsrPricer::strikeFromPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:310,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:312,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:314,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:319,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:320,1
    - Dst: shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:321,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:323,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:325,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:327,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:330,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:332,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:336,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:336,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:340,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:341,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:346,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:354,1
    - Dst: integrand_f
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:356,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:359,1
    - Dst: integrand_f
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:361,1
    - Dst: QuantLib::LinearTsrPricer::singularTerms
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:367,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:370,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 371
    functionName: QuantLib::LinearTsrPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - shift
    - std::exp
    - exerciseTime
    - accrualPeriod
    - std::max
    - QuantLib::LinearTsrPricer::strikeFromPrice
    - volatility
    - volatilityType
    - atmLevel
    - std::sqrt
    - QL_FAIL
    - integrand_f
    - QuantLib::LinearTsrPricer::singularTerms
    - QuantLib::LinearTsrPricer::strikeFromVegaRatio
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::optionletPrice(Option::Type optionType,\n                                         Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 373
    functionName: QuantLib::LinearTsrPricer::meanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::meanReversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::swapletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:376,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 378
    functionName: QuantLib::LinearTsrPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - accrualPeriod
    - QuantLib::LinearTsrPricer::swapletPrice
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::swapletRate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:384,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:385,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:386,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:390,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 393
    functionName: QuantLib::LinearTsrPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::capletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:396,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 395
    functionDepth: 3
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionName: QuantLib::LinearTsrPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LinearTsrPricer::capletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::capletRate(Rate effectiveCap) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:404,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:405,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:406,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 413
    functionName: QuantLib::LinearTsrPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::floorletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:416,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 415
    functionDepth: 3
    functionLinenumber: 415
    functionLinenumberEnd: 418
    functionName: QuantLib::LinearTsrPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LinearTsrPricer::floorletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:423,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:426,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:429,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:430,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 436
    functionName: QuantLib::LinearTsrPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - pricer
    argTypes:
    - LinearTsrPricer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::LinearTsrPricer::integrand_f::integrand_f
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand_f(const LinearTsrPricer* pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integrand
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - integrand
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:61,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:64,1
    - Dst: ext::make_shared<GaussKronrodNonAdaptive>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' swaptionVol'
    - meanReversion
    - couponDiscountCurve
    - ' settings'
    - integrator
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Settings
    - ext::shared_ptr<Integrator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: QuantLib::LinearTsrPricer::LinearTsrPricer
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussKronrodNonAdaptive>
    - empty
    - dayCounter
    - std::move
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void LinearTsrPricer::LinearTsrPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                     Handle<Quote> meanReversion,\n
      \                                    Handle<YieldTermStructure> couponDiscountCurve,\n
      \                                    const Settings& settings,\n                                     ext::shared_ptr<Integrator>
      integrator)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:73,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:74,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:74,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: QuantLib::LinearTsrPricer::GsrG
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::fabs
    - yearFraction
    - value
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::GsrG(const Date &d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:85,1
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: QuantLib::LinearTsrPricer::singularTerms
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::singularTerms(const Option::Type type,\n                                        const
      Real strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: QuantLib::LinearTsrPricer::integrand
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - optionPrice
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::integrand(const Real strike) const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CmsCoupon *>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:103,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:104,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:105,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:107,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:108,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:109,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:111,1
    - Dst: exogenousDiscount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:112,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:113,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:124,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:127,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:127,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:128,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:133,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:134,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:142,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:147,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:149,1
    - Dst: auto::underlyingSwap
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:150,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:152,1
    - Dst: fairRate
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:154,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:155,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:155,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:156,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:159,1
    - Dst: ext::shared_ptr::volatilityType
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:164,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:167,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:170,1
    - Dst: ext::shared_ptr::shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:171,1
    - Dst: ext::shared_ptr::atmLevel
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:177,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:177,1
    - Dst: ext::make_shared<AtmSmileSection>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:178,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:187,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:188,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:189,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:190,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:191,1
    - Dst: Leg::back
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:196,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:198,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:199,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:200,1
    - Dst: QuantLib::LinearTsrPricer::GsrG
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:200,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:203,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 1
    argNames:
    - coupon
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 206
    functionName: QuantLib::LinearTsrPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - ext::shared_ptr::shift
    - swapIndex
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - auto::underlyingSwap
    - fixedLeg
    - date
    - referenceDate
    - tenor
    - empty
    - spread
    - fixedLegBPS
    - accrualPeriod
    - swaptionVolatility
    - std::fabs
    - QuantLib::LinearTsrPricer::GsrG
    - ext::dynamic_pointer_cast<OvernightIndexedSwapIndex>
    - std::min
    - ext::shared_ptr::atmLevel
    - Leg::back
    - ext::shared_ptr::volatilityType
    - ext::make_shared<AtmSmileSection>
    - Null<Real>
    - exogenousDiscount
    - fixingDate
    - forwardingTermStructure
    - dynamic_cast<const CmsCoupon *>
    - QL_REQUIRE
    - discountingTermStructure
    - underlyingSwap
    - discount
    - QuantLib::detail::instance
    - fairRate
    linkageType: ''
    returnType: void
    signature: void LinearTsrPricer::initialize(const FloatingRateCoupon &coupon)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:218,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:218,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:222,1
    - Dst: minStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:222,1
    - Dst: vega
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:228,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:232,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:238,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - ratio
    - optionType
    - referenceStrike
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 239
    functionName: QuantLib::LinearTsrPricer::strikeFromVegaRatio
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - std::max
    - vega
    - Brent::solve
    - minStrike
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::strikeFromVegaRatio(Real ratio,\n                                              Option::Type
      optionType,\n                                              Real referenceStrike)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:250,1
    - Dst: maxStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:250,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:254,1
    - Dst: minStrike
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:254,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:263,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:269,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - price
    - optionType
    - referenceStrike
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 270
    functionName: QuantLib::LinearTsrPricer::strikeFromPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - maxStrike
    - std::max
    - Brent::solve
    - minStrike
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::strikeFromPrice(Real price, Option::Type optionType,\n
      \                                         Real referenceStrike) const"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::strikeFromVegaRatio
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:298,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:300,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:302,1
    - Dst: QuantLib::LinearTsrPricer::strikeFromPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:310,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:312,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:314,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:319,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:320,1
    - Dst: shift
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:321,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:323,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:325,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:327,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:330,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:332,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:336,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:336,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:340,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:341,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:346,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:354,1
    - Dst: integrand_f
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:356,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:359,1
    - Dst: integrand_f
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:361,1
    - Dst: QuantLib::LinearTsrPricer::singularTerms
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:367,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:370,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 371
    functionName: QuantLib::LinearTsrPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 3
    functionsReached:
    - shift
    - std::exp
    - exerciseTime
    - accrualPeriod
    - std::max
    - QuantLib::LinearTsrPricer::strikeFromPrice
    - volatility
    - volatilityType
    - atmLevel
    - std::sqrt
    - QL_FAIL
    - integrand_f
    - QuantLib::LinearTsrPricer::singularTerms
    - QuantLib::LinearTsrPricer::strikeFromVegaRatio
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real LinearTsrPricer::optionletPrice(Option::Type optionType,\n                                         Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 373
    functionName: QuantLib::LinearTsrPricer::meanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::meanReversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::swapletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:376,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 375
    functionDepth: 3
    functionLinenumber: 375
    functionLinenumberEnd: 378
    functionName: QuantLib::LinearTsrPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - accrualPeriod
    - QuantLib::LinearTsrPricer::swapletPrice
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::swapletRate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:384,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:385,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:386,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:390,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 393
    functionName: QuantLib::LinearTsrPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::capletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:396,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 395
    functionDepth: 3
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionName: QuantLib::LinearTsrPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LinearTsrPricer::capletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::capletRate(Rate effectiveCap) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:404,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:405,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:406,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 413
    functionName: QuantLib::LinearTsrPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LinearTsrPricer::floorletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:416,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 415
    functionDepth: 3
    functionLinenumber: 415
    functionLinenumberEnd: 418
    functionName: QuantLib::LinearTsrPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LinearTsrPricer::floorletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate LinearTsrPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:423,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:426,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:429,1
    - Dst: QuantLib::LinearTsrPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:430,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/lineartsrpricer.cpp:431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 436
    functionName: QuantLib::LinearTsrPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/lineartsrpricer.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::LinearTsrPricer::optionletPrice
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real LinearTsrPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Coupon::date
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Coupon::exCouponDate
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date exCouponDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::Coupon::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Coupon::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: '& Coupon::accrualStartDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::accrualStartDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: '& Coupon::accrualEndDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::accrualEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: '& Coupon::referencePeriodStart() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::referencePeriodStart() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: '& Coupon::referencePeriodEnd() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::referencePeriodEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::Coupon::date
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Coupon::exCouponDate
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date exCouponDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::Coupon::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Coupon::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: '& Coupon::accrualStartDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::accrualStartDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: '& Coupon::accrualEndDate() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::accrualEndDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: '& Coupon::referencePeriodStart() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::referencePeriodStart() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: '& Coupon::referencePeriodEnd() const'
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & Coupon::referencePeriodEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& fixingDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& dt() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: '& valueDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & valueDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::MultipleResetsCoupon::rateSpread
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread rateSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::MultipleResetsCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& fixingDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & fixingDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: '& dt() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & dt() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: '& valueDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & valueDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::MultipleResetsCoupon::rateSpread
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread rateSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::MultipleResetsCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date fixingDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:70,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:72,1
    - Dst: endDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:72,1
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:75,1
    - Dst: pop_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:76,1
    - Dst: erase
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:78,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:82,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:84,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:87,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 14
    argNames:
    - ' paymentDate'
    - nominal
    - ' index'
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - observationsSchedule
    - lowerTrigger
    - upperTrigger
    argTypes:
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    - Date
    - Date
    - Natural
    - DayCounter
    - Real
    - Rate
    - Date
    - Date
    - ext::shared_ptr<Schedule>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 90
    functionName: QuantLib::RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - yearFraction
    - std::move
    - begin
    - dates
    - push_back
    - pop_back
    - forwardingTermStructure
    - size
    - startDate
    - erase
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon(\n        const
      Date& paymentDate,\n        Real nominal,\n        const ext::shared_ptr<IborIndex>&
      index,\n        const Date& startDate, // S\n        const Date& endDate,   //
      T\n        Natural fixingDays,\n        const DayCounter& dayCounter,\n        Real
      gearing,\n        Rate spread,\n        const Date& refPeriodStart,\n        const
      Date& refPeriodEnd,\n        ext::shared_ptr<Schedule> observationsSchedule,\n
      \       Real lowerTrigger, // l\n        Real upperTrigger  // u\n        )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<RangeAccrualFloatersCoupon>*>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:93,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:95,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::RangeAccrualFloatersCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<RangeAccrualFloatersCoupon>*>
    linkageType: ''
    returnType: void
    signature: void RangeAccrualFloatersCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:102,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:102,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 104
    functionName: QuantLib::RangeAccrualFloatersCoupon::priceWithoutOptionality
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - date
    - accrualPeriod
    - discount
    - indexFixing
    - nominal
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualFloatersCoupon::priceWithoutOptionality(\n           const
      Handle<YieldTermStructure>& discountingCurve) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const RangeAccrualFloatersCoupon*>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:113,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:114,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:115,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:117,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:120,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:120,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:122,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:123,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:124,1
    - Dst: startTime
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:127,1
    - Dst: endTime
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:128,1
    - Dst: observationTimes
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:129,1
    - Dst: lowerTrigger
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:130,1
    - Dst: upperTrigger
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:131,1
    - Dst: observationsNo
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:132,1
    - Dst: observationsSchedule
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:136,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:136,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:138,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:140,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:141,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:142,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:143,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:144,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 148
    functionName: QuantLib::RangeAccrualPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - endTime
    - dynamic_cast<const RangeAccrualFloatersCoupon*>
    - observationsSchedule
    - static_cast<Integer>
    - ext::dynamic_pointer_cast<IborIndex>
    - date
    - spread
    - accrualPeriod
    - ext::shared_ptr::forwardingTermStructure
    - startTime
    - ext::shared_ptr::fixingCalendar
    - upperTrigger
    - ext::shared_ptr::fixing
    - Calendar::advance
    - std::vector<Real>
    - fixingDays
    - index
    - std::vector::size
    - QL_REQUIRE
    - observationTimes
    - observationsNo
    - discount
    - lowerTrigger
    linkageType: ''
    returnType: void
    signature: void RangeAccrualPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapletPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::RangeAccrualPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - swapletPrice
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::RangeAccrualPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::capletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::RangeAccrualPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate RangeAccrualPricer::capletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::RangeAccrualPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::floorletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::RangeAccrualPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate RangeAccrualPricer::floorletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:179,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - correlation
    - smilesOnExpiry
    - smilesOnPayment
    - withSmile
    - byCallSpread
    argTypes:
    - Real
    - ext::shared_ptr<SmileSection>
    - ext::shared_ptr<SmileSection>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionName: QuantLib::RangeAccrualPricerByBgm::RangeAccrualPricerByBgm
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RangeAccrualPricerByBgm::RangeAccrualPricerByBgm(Real correlation,\n
      \                                                    ext::shared_ptr<SmileSection>
      smilesOnExpiry,\n                                                     ext::shared_ptr<SmileSection>
      smilesOnPayment,\n                                                     bool
      withSmile,\n                                                     bool byCallSpread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: QuantLib::RangeAccrualPricerByBgm::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:200,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambda
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:205,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambda
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:205,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:208,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 212
    functionName: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::RangeAccrualPricerByBgm::lambda
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RangeAccrualPricerByBgm::driftsOverPeriod(Real U,\n
      \                                                               Real lambdaS,\n
      \                                                               Real lambdaT,\n
      \                                                               Real correlation)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:225,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - U
    - lambdaS
    - lambdaT
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 229
    functionName: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RangeAccrualPricerByBgm::lambdasOverPeriod(Real
      U,\n                                                                   Real
      lambdaS,\n                                                                   Real
      lambdaT) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: QuantLib::RangeAccrualPricerByBgm::drift
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::drift(Real U,\n                                          Real
      lambdaS,\n                                          Real lambdaT,\n                                          Real
      correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - U
    - lambdaS
    - lambdaT
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 263
    functionName: QuantLib::RangeAccrualPricerByBgm::lambda
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::lambda(Real U,\n                                           Real
      lambdaS,\n                                           Real lambdaT) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 285
    functionName: QuantLib::RangeAccrualPricerByBgm::derDriftDerLambdaS
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::derDriftDerLambdaS(Real U,\n                                                        Real
      lambdaS,\n                                                        Real lambdaT,\n
      \                                                       Real correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - U
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 295
    functionName: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::derLambdaDerLambdaS(Real U) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:305,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 316
    functionName: QuantLib::RangeAccrualPricerByBgm::derDriftDerLambdaT
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::derDriftDerLambdaT(Real U,\n                                                        Real
      lambdaS,\n                                                        Real lambdaT,\n
      \                                                       Real correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - U
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 326
    functionName: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::derLambdaDerLambdaT(Real U) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:333,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:334,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - lowerTrigger
    - upperTrigger
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 341
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalRangePrice(Real lowerTrigger,\n
      \                                                     Real upperTrigger,\n                                                      Real
      initialValue,\n                                                      Real expiry,\n
      \                                                     Real deflator) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:349,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 354
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPrice(Real strike,\n                                        Real
      initialValue,\n                                        Real expiry,\n                                        Real
      deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:361,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:362,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:364,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:368,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:369,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:371,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:375,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:375,1
    - Dst: phi
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:378,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:380,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 387
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::log
    - phi
    - volatility
    - std::sqrt
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPriceWithoutSmile(Real strike,\n
      \                                       Real initialValue,\n                                        Real
      expiry,\n                                        Real deflator) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:398,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:399,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:402,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:403,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:404,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:406,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:407,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:408,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:409,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:409,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:410,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:415,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:416,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:418,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:419,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:420,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:422,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:423,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:423,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:424,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:427,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:432,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::smileCorrection
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:433,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:436,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:436,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:438,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 389
    functionDepth: 3
    functionLinenumber: 389
    functionLinenumberEnd: 443
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::exp
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    - QuantLib::RangeAccrualPricerByBgm::smileCorrection
    - std::max
    - volatility
    - std::pow
    - QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPriceWithSmile(Real strike,\n
      \                                       Real initialValue,\n                                        Real
      expiry,\n                                        Real deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:453,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:454,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:455,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:456,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:458,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:459,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:462,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:463,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:468,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:469,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:470,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:472,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:474,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:475,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:477,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:477,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:478,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:481,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:481,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:483,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:484,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:485,1
    - Dst: psi
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:489,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - strike
    - forward
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 499
    functionName: QuantLib::RangeAccrualPricerByBgm::smileCorrection
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
    - QL_REQUIRE
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::exp
    - std::log
    - psi
    - std::max
    - volatility
    - std::fabs
    - std::pow
    - std::sqrt
    - QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::smileCorrection(Real strike,\n                                        Real
      forward,\n                                        Real expiry,\n                                        Real
      deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:510,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:510,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:512,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:512,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - previousForward
    - nextForward
    - previousStrike
    - nextStrike
    - deflator
    - previousVariance
    - nextVariance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 523
    functionName: QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached:
    - blackFormula
    - QL_ENSURE
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::callSpreadPrice(\n                                            Real
      previousForward,\n                                            Real nextForward,\n
      \                                           Real previousStrike,\n                                            Real
      nextStrike,\n                                            Real deflator,\n                                            Real
      previousVariance,\n                                            Real nextVariance)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:527,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 527
    functionName: QuantLib::RangeAccrualLeg::RangeAccrualLeg
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void RangeAccrualLeg::RangeAccrualLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 532
    functionName: '& RangeAccrualLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 538
    functionName: "& RangeAccrualLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 544
    functionName: "& RangeAccrualLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 550
    functionName: "& RangeAccrualLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:553,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: '& RangeAccrualLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 561
    functionName: "& RangeAccrualLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: '& RangeAccrualLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 572
    functionName: "& RangeAccrualLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 577
    functionName: '& RangeAccrualLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 583
    functionName: "& RangeAccrualLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - trigger
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionName: '& RangeAccrualLeg::withLowerTriggers(Rate trigger)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withLowerTriggers(Rate trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' triggers'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 594
    functionName: "& RangeAccrualLeg::withLowerTriggers(\n                                          const
      std::vector<Rate>& triggers)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withLowerTriggers(\n                                          const
      std::vector<Rate>& triggers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - trigger
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 599
    functionName: '& RangeAccrualLeg::withUpperTriggers(Rate trigger)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withUpperTriggers(Rate trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' triggers'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 605
    functionName: "& RangeAccrualLeg::withUpperTriggers(\n                                          const
      std::vector<Rate>& triggers)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withUpperTriggers(\n                                          const
      std::vector<Rate>& triggers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 611
    functionName: "& RangeAccrualLeg::withObservationTenor(\n                                                        const
      Period& tenor)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withObservationTenor(\n                                                        const
      Period& tenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 617
    functionName: "& RangeAccrualLeg::withObservationConvention(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withObservationConvention(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:621,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:621,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:623,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:624,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:624,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:625,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:627,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:627,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:628,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:630,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:630,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:631,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:633,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:633,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:634,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:636,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:636,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:637,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:639,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:639,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:640,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:646,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:653,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:654,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:655,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:656,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:656,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:657,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:658,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:658,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:660,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:660,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:661,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:662,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:662,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:664,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:667,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:667,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:668,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:672,1
    - Dst: ext::make_shared<Schedule>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:673,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:682,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:682,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:685,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:687,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:688,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:690,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:691,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:691,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:692,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:692,1
    - Dst: RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 619
    functionDepth: 2
    functionLinenumber: 619
    functionLinenumberEnd: 696
    functionName: RangeAccrualLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - std::vector::push_back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Null<Rate>
    - size
    - isRegular
    - Null<Real>
    - QL_REQUIRE
    - ext::make_shared<Schedule>
    - RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
    - QuantLib::detail::get
    - businessDayConvention
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void RangeAccrualLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:70,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:72,1
    - Dst: endDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:72,1
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:75,1
    - Dst: pop_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:76,1
    - Dst: erase
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:78,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:82,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:84,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:87,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 14
    argNames:
    - ' paymentDate'
    - nominal
    - ' index'
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' dayCounter'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - observationsSchedule
    - lowerTrigger
    - upperTrigger
    argTypes:
    - Date
    - Real
    - ext::shared_ptr<IborIndex>
    - Date
    - Date
    - Natural
    - DayCounter
    - Real
    - Rate
    - Date
    - Date
    - ext::shared_ptr<Schedule>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 90
    functionName: QuantLib::RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - yearFraction
    - std::move
    - begin
    - dates
    - push_back
    - pop_back
    - forwardingTermStructure
    - size
    - startDate
    - erase
    - endDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon(\n        const
      Date& paymentDate,\n        Real nominal,\n        const ext::shared_ptr<IborIndex>&
      index,\n        const Date& startDate, // S\n        const Date& endDate,   //
      T\n        Natural fixingDays,\n        const DayCounter& dayCounter,\n        Real
      gearing,\n        Rate spread,\n        const Date& refPeriodStart,\n        const
      Date& refPeriodEnd,\n        ext::shared_ptr<Schedule> observationsSchedule,\n
      \       Real lowerTrigger, // l\n        Real upperTrigger  // u\n        )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<RangeAccrualFloatersCoupon>*>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:93,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:95,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: QuantLib::RangeAccrualFloatersCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<RangeAccrualFloatersCoupon>*>
    linkageType: ''
    returnType: void
    signature: void RangeAccrualFloatersCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:102,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:102,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 104
    functionName: QuantLib::RangeAccrualFloatersCoupon::priceWithoutOptionality
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - date
    - accrualPeriod
    - discount
    - indexFixing
    - nominal
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualFloatersCoupon::priceWithoutOptionality(\n           const
      Handle<YieldTermStructure>& discountingCurve) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const RangeAccrualFloatersCoupon*>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:112,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:113,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:114,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:115,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:117,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:120,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:120,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:122,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:123,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:124,1
    - Dst: startTime
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:127,1
    - Dst: endTime
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:128,1
    - Dst: observationTimes
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:129,1
    - Dst: lowerTrigger
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:130,1
    - Dst: upperTrigger
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:131,1
    - Dst: observationsNo
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:132,1
    - Dst: observationsSchedule
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:135,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:136,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:136,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:138,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:140,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:141,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:142,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:143,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:144,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 148
    functionName: QuantLib::RangeAccrualPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - endTime
    - dynamic_cast<const RangeAccrualFloatersCoupon*>
    - observationsSchedule
    - static_cast<Integer>
    - ext::dynamic_pointer_cast<IborIndex>
    - date
    - spread
    - accrualPeriod
    - ext::shared_ptr::forwardingTermStructure
    - startTime
    - ext::shared_ptr::fixingCalendar
    - upperTrigger
    - ext::shared_ptr::fixing
    - Calendar::advance
    - std::vector<Real>
    - fixingDays
    - index
    - std::vector::size
    - QL_REQUIRE
    - observationTimes
    - observationsNo
    - discount
    - lowerTrigger
    linkageType: ''
    returnType: void
    signature: void RangeAccrualPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapletPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::RangeAccrualPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - swapletPrice
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::RangeAccrualPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::capletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: QuantLib::RangeAccrualPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate RangeAccrualPricer::capletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::RangeAccrualPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricer::floorletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::RangeAccrualPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate RangeAccrualPricer::floorletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:179,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - correlation
    - smilesOnExpiry
    - smilesOnPayment
    - withSmile
    - byCallSpread
    argTypes:
    - Real
    - ext::shared_ptr<SmileSection>
    - ext::shared_ptr<SmileSection>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionName: QuantLib::RangeAccrualPricerByBgm::RangeAccrualPricerByBgm
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RangeAccrualPricerByBgm::RangeAccrualPricerByBgm(Real correlation,\n
      \                                                    ext::shared_ptr<SmileSection>
      smilesOnExpiry,\n                                                     ext::shared_ptr<SmileSection>
      smilesOnPayment,\n                                                     bool
      withSmile,\n                                                     bool byCallSpread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: QuantLib::RangeAccrualPricerByBgm::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:200,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambda
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:205,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambda
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:205,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:208,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 212
    functionName: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 3
    functionsReached:
    - back
    - QuantLib::RangeAccrualPricerByBgm::lambda
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RangeAccrualPricerByBgm::driftsOverPeriod(Real U,\n
      \                                                               Real lambdaS,\n
      \                                                               Real lambdaT,\n
      \                                                               Real correlation)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:225,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - U
    - lambdaS
    - lambdaT
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 229
    functionName: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 3
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RangeAccrualPricerByBgm::lambdasOverPeriod(Real
      U,\n                                                                   Real
      lambdaS,\n                                                                   Real
      lambdaT) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: QuantLib::RangeAccrualPricerByBgm::drift
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::drift(Real U,\n                                          Real
      lambdaS,\n                                          Real lambdaT,\n                                          Real
      correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - U
    - lambdaS
    - lambdaT
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 263
    functionName: QuantLib::RangeAccrualPricerByBgm::lambda
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::lambda(Real U,\n                                           Real
      lambdaS,\n                                           Real lambdaT) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 285
    functionName: QuantLib::RangeAccrualPricerByBgm::derDriftDerLambdaS
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::derDriftDerLambdaS(Real U,\n                                                        Real
      lambdaS,\n                                                        Real lambdaT,\n
      \                                                       Real correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - U
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 295
    functionName: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::derLambdaDerLambdaS(Real U) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:305,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - U
    - lambdaS
    - lambdaT
    - correlation
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 316
    functionName: QuantLib::RangeAccrualPricerByBgm::derDriftDerLambdaT
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::derDriftDerLambdaT(Real U,\n                                                        Real
      lambdaS,\n                                                        Real lambdaT,\n
      \                                                       Real correlation) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - U
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 326
    functionName: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real RangeAccrualPricerByBgm::derLambdaDerLambdaT(Real U) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:333,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:334,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - lowerTrigger
    - upperTrigger
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 341
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalRangePrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalRangePrice(Real lowerTrigger,\n
      \                                                     Real upperTrigger,\n                                                      Real
      initialValue,\n                                                      Real expiry,\n
      \                                                     Real deflator) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:349,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 342
    functionDepth: 4
    functionLinenumber: 342
    functionLinenumberEnd: 354
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPrice(Real strike,\n                                        Real
      initialValue,\n                                        Real expiry,\n                                        Real
      deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:361,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:362,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:364,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:368,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:369,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:371,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:375,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:375,1
    - Dst: phi
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:378,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:380,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 387
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::log
    - phi
    - volatility
    - std::sqrt
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPriceWithoutSmile(Real strike,\n
      \                                       Real initialValue,\n                                        Real
      expiry,\n                                        Real deflator) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:398,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:399,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:402,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:403,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:404,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:406,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:407,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:408,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:409,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:409,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:410,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:415,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:416,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:418,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:419,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:420,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:422,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:423,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:423,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:424,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:427,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:432,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::smileCorrection
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:433,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:436,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:436,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:438,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - strike
    - initialValue
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 389
    functionDepth: 3
    functionLinenumber: 389
    functionLinenumberEnd: 443
    functionName: QuantLib::RangeAccrualPricerByBgm::digitalPriceWithSmile
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::exp
    - QuantLib::RangeAccrualPricerByBgm::digitalPriceWithoutSmile
    - QuantLib::RangeAccrualPricerByBgm::smileCorrection
    - std::max
    - volatility
    - std::pow
    - QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::digitalPriceWithSmile(Real strike,\n
      \                                       Real initialValue,\n                                        Real
      expiry,\n                                        Real deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:453,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:454,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:455,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:456,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:458,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:459,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:462,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:463,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:468,1
    - Dst: volatility
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:469,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:470,1
    - Dst: QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:472,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:474,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:475,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:477,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:477,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:478,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:481,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:481,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:483,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:484,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:485,1
    - Dst: psi
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:489,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - strike
    - forward
    - expiry
    - deflator
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 499
    functionName: QuantLib::RangeAccrualPricerByBgm::smileCorrection
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaS
    - QL_REQUIRE
    - QuantLib::RangeAccrualPricerByBgm::driftsOverPeriod
    - std::exp
    - std::log
    - psi
    - std::max
    - volatility
    - std::fabs
    - std::pow
    - std::sqrt
    - QuantLib::RangeAccrualPricerByBgm::derLambdaDerLambdaT
    - QuantLib::RangeAccrualPricerByBgm::lambdasOverPeriod
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::smileCorrection(Real strike,\n                                        Real
      forward,\n                                        Real expiry,\n                                        Real
      deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:510,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:510,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:512,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:512,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - previousForward
    - nextForward
    - previousStrike
    - nextStrike
    - deflator
    - previousVariance
    - nextVariance
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 523
    functionName: QuantLib::RangeAccrualPricerByBgm::callSpreadPrice
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 2
    functionsReached:
    - blackFormula
    - QL_ENSURE
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real RangeAccrualPricerByBgm::callSpreadPrice(\n                                            Real
      previousForward,\n                                            Real nextForward,\n
      \                                           Real previousStrike,\n                                            Real
      nextStrike,\n                                            Real deflator,\n                                            Real
      previousVariance,\n                                            Real nextVariance)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:527,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 527
    functionName: QuantLib::RangeAccrualLeg::RangeAccrualLeg
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void RangeAccrualLeg::RangeAccrualLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 532
    functionName: '& RangeAccrualLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 538
    functionName: "& RangeAccrualLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 544
    functionName: "& RangeAccrualLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 550
    functionName: "& RangeAccrualLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:553,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: '& RangeAccrualLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 561
    functionName: "& RangeAccrualLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: '& RangeAccrualLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 572
    functionName: "& RangeAccrualLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 577
    functionName: '& RangeAccrualLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 583
    functionName: "& RangeAccrualLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - trigger
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionName: '& RangeAccrualLeg::withLowerTriggers(Rate trigger)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withLowerTriggers(Rate trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' triggers'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 594
    functionName: "& RangeAccrualLeg::withLowerTriggers(\n                                          const
      std::vector<Rate>& triggers)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withLowerTriggers(\n                                          const
      std::vector<Rate>& triggers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - trigger
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 599
    functionName: '& RangeAccrualLeg::withUpperTriggers(Rate trigger)'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: RangeAccrualLeg & RangeAccrualLeg::withUpperTriggers(Rate trigger)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' triggers'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 605
    functionName: "& RangeAccrualLeg::withUpperTriggers(\n                                          const
      std::vector<Rate>& triggers)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withUpperTriggers(\n                                          const
      std::vector<Rate>& triggers)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 611
    functionName: "& RangeAccrualLeg::withObservationTenor(\n                                                        const
      Period& tenor)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withObservationTenor(\n                                                        const
      Period& tenor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 617
    functionName: "& RangeAccrualLeg::withObservationConvention(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RangeAccrualLeg
    signature: "RangeAccrualLeg & RangeAccrualLeg::withObservationConvention(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:621,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:621,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:623,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:624,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:624,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:625,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:627,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:627,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:628,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:630,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:630,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:631,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:633,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:633,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:634,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:636,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:636,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:637,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:639,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:639,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:640,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:646,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:653,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:654,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:655,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:656,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:656,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:657,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:658,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:658,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:660,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:660,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:661,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:662,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:662,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:664,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:667,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:667,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:668,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:665,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:672,1
    - Dst: ext::make_shared<Schedule>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:673,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:682,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:682,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:685,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:687,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:688,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:690,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:691,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:691,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:692,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:692,1
    - Dst: RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
      Src: /src/quantlib/ql/cashflows/rangeaccrual.cpp:679,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 619
    functionDepth: 2
    functionLinenumber: 619
    functionLinenumberEnd: 696
    functionName: RangeAccrualLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - std::vector::push_back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Null<Rate>
    - size
    - isRegular
    - Null<Real>
    - QL_REQUIRE
    - ext::make_shared<Schedule>
    - RangeAccrualFloatersCoupon::RangeAccrualFloatersCoupon
    - QuantLib::detail::get
    - businessDayConvention
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void RangeAccrualLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - notional
    - ' index'
    - observationInterpolation
    - ' startDate'
    - ' endDate'
    - ' observationLag'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Date
    - Date
    - Period
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::ZeroInflationCashFlow::ZeroInflationCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationCashFlow::ZeroInflationCashFlow(Real notional,\n
      \                                                const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                                                 CPI::InterpolationType
      observationInterpolation,\n                                                 const
      Date& startDate,\n                                                 const Date&
      endDate,\n                                                 const Period& observationLag,\n
      \                                                const Date& paymentDate,\n
      \                                                bool growthOnly)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ZeroInflationCashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationCashFlow::baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::ZeroInflationCashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationCashFlow::indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ZeroInflationCashFlow>*>
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:50,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:52,1
    - Dst: QuantLib::IndexedCashFlow::accept
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::ZeroInflationCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<ZeroInflationCashFlow>*>
    - QuantLib::IndexedCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void ZeroInflationCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - notional
    - ' index'
    - observationInterpolation
    - ' startDate'
    - ' endDate'
    - ' observationLag'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Date
    - Date
    - Period
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: QuantLib::ZeroInflationCashFlow::ZeroInflationCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ZeroInflationCashFlow::ZeroInflationCashFlow(Real notional,\n
      \                                                const ext::shared_ptr<ZeroInflationIndex>&
      index,\n                                                 CPI::InterpolationType
      observationInterpolation,\n                                                 const
      Date& startDate,\n                                                 const Date&
      endDate,\n                                                 const Period& observationLag,\n
      \                                                const Date& paymentDate,\n
      \                                                bool growthOnly)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ZeroInflationCashFlow::baseFixing
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationCashFlow::baseFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: QuantLib::ZeroInflationCashFlow::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPI::laggedFixing
    linkageType: ''
    returnType: Real
    signature: Real ZeroInflationCashFlow::indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ZeroInflationCashFlow>*>
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:50,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:52,1
    - Dst: QuantLib::IndexedCashFlow::accept
      Src: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::ZeroInflationCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<ZeroInflationCashFlow>*>
    - QuantLib::IndexedCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void ZeroInflationCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::CappedFlooredCoupon::isCapped
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isCapped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::CappedFlooredCoupon::isFloored
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFloored() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::CappedFlooredCoupon::underlying
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> underlying()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:114,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:117,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:118,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:120,1
    - Dst: ext::shared_ptr<FloatingRateCoupon>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:121,1
    - Dst: IborCoupon::IborCoupon
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 124
    functionName: QuantLib::CappedFlooredIborCoupon::CappedFlooredIborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FloatingRateCoupon>
    - Null<Rate>
    - Date
    - DayCounter
    - IborCoupon::IborCoupon
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredIborCoupon(\n                  const Date& paymentDate,\n
      \                 Real nominal,\n                  const Date& startDate,\n
      \                 const Date& endDate,\n                  Natural fixingDays,\n
      \                 const ext::shared_ptr<IborIndex>& index,\n                  Real
      gearing = 1.0,\n                  Spread spread = 0.0,\n                  Rate
      cap = Null<Rate>(),\n                  Rate floor = Null<Rate>(),\n                  const
      Date& refPeriodStart = Date(),\n                  const Date& refPeriodEnd =
      Date(),\n                  const DayCounter& dayCounter = DayCounter(),\n                  bool
      isInArrears = false,\n                  const Date& exCouponDate = Date())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredIborCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:127,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:129,1
    - Dst: QuantLib::CappedFlooredCoupon::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 3
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::CappedFlooredIborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredIborCoupon>*>
    - auto*::visit
    - QuantLib::CappedFlooredCoupon::accept
    linkageType: ''
    returnType: void
    signature: void accept(AcyclicVisitor& v) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:146,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:147,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:148,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:149,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:150,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:152,1
    - Dst: ext::shared_ptr<FloatingRateCoupon>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:153,1
    - Dst: CmsCoupon::CmsCoupon
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 156
    functionName: QuantLib::CappedFlooredCmsCoupon::CappedFlooredCmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FloatingRateCoupon>
    - Null<Rate>
    - CmsCoupon::CmsCoupon
    - Date
    - DayCounter
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCmsCoupon(\n                  const Date& paymentDate,\n
      \                 Real nominal,\n                  const Date& startDate,\n
      \                 const Date& endDate,\n                  Natural fixingDays,\n
      \                 const ext::shared_ptr<SwapIndex>& index,\n                  Real
      gearing = 1.0,\n                  Spread spread= 0.0,\n                  const
      Rate cap = Null<Rate>(),\n                  const Rate floor = Null<Rate>(),\n
      \                 const Date& refPeriodStart = Date(),\n                  const
      Date& refPeriodEnd = Date(),\n                  const DayCounter& dayCounter
      = DayCounter(),\n                  bool isInArrears = false,\n                  const
      Date& exCouponDate = Date())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredCmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:159,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:161,1
    - Dst: QuantLib::CappedFlooredCoupon::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 3
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: QuantLib::CappedFlooredCmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredCmsCoupon>*>
    - auto*::visit
    - QuantLib::CappedFlooredCoupon::accept
    linkageType: ''
    returnType: void
    signature: void accept(AcyclicVisitor& v) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: QuantLib::CappedFlooredCoupon::isCapped
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isCapped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::CappedFlooredCoupon::isFloored
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFloored() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::CappedFlooredCoupon::underlying
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> underlying()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:114,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:117,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:118,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:120,1
    - Dst: ext::shared_ptr<FloatingRateCoupon>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:121,1
    - Dst: IborCoupon::IborCoupon
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 124
    functionName: QuantLib::CappedFlooredIborCoupon::CappedFlooredIborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FloatingRateCoupon>
    - Null<Rate>
    - Date
    - DayCounter
    - IborCoupon::IborCoupon
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredIborCoupon(\n                  const Date& paymentDate,\n
      \                 Real nominal,\n                  const Date& startDate,\n
      \                 const Date& endDate,\n                  Natural fixingDays,\n
      \                 const ext::shared_ptr<IborIndex>& index,\n                  Real
      gearing = 1.0,\n                  Spread spread = 0.0,\n                  Rate
      cap = Null<Rate>(),\n                  Rate floor = Null<Rate>(),\n                  const
      Date& refPeriodStart = Date(),\n                  const Date& refPeriodEnd =
      Date(),\n                  const DayCounter& dayCounter = DayCounter(),\n                  bool
      isInArrears = false,\n                  const Date& exCouponDate = Date())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredIborCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:127,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:129,1
    - Dst: QuantLib::CappedFlooredCoupon::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 3
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: QuantLib::CappedFlooredIborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredIborCoupon>*>
    - auto*::visit
    - QuantLib::CappedFlooredCoupon::accept
    linkageType: ''
    returnType: void
    signature: void accept(AcyclicVisitor& v) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:146,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:147,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:148,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:149,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:150,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:152,1
    - Dst: ext::shared_ptr<FloatingRateCoupon>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:153,1
    - Dst: CmsCoupon::CmsCoupon
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 156
    functionName: QuantLib::CappedFlooredCmsCoupon::CappedFlooredCmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<FloatingRateCoupon>
    - Null<Rate>
    - CmsCoupon::CmsCoupon
    - Date
    - DayCounter
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredCmsCoupon(\n                  const Date& paymentDate,\n
      \                 Real nominal,\n                  const Date& startDate,\n
      \                 const Date& endDate,\n                  Natural fixingDays,\n
      \                 const ext::shared_ptr<SwapIndex>& index,\n                  Real
      gearing = 1.0,\n                  Spread spread= 0.0,\n                  const
      Rate cap = Null<Rate>(),\n                  const Rate floor = Null<Rate>(),\n
      \                 const Date& refPeriodStart = Date(),\n                  const
      Date& refPeriodEnd = Date(),\n                  const DayCounter& dayCounter
      = DayCounter(),\n                  bool isInArrears = false,\n                  const
      Date& exCouponDate = Date())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredCmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:159,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:161,1
    - Dst: QuantLib::CappedFlooredCoupon::accept
      Src: /src/quantlib/ql/cashflows/capflooredcoupon.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 3
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: QuantLib::CappedFlooredCmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredcoupon.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredCmsCoupon>*>
    - auto*::visit
    - QuantLib::CappedFlooredCoupon::accept
    linkageType: ''
    returnType: void
    signature: void accept(AcyclicVisitor& v) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::RangeAccrualFloatersCoupon::startTime
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real startTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::RangeAccrualFloatersCoupon::endTime
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real endTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::RangeAccrualFloatersCoupon::lowerTrigger
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lowerTrigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::RangeAccrualFloatersCoupon::upperTrigger
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upperTrigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::RangeAccrualFloatersCoupon::observationsNo
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size observationsNo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& observationDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & observationDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: '& observationTimes() const'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & observationTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::RangeAccrualFloatersCoupon::observationsSchedule
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Schedule>
    signature: ext::shared_ptr<Schedule> observationsSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::RangeAccrualFloatersCoupon::startTime
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real startTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::RangeAccrualFloatersCoupon::endTime
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real endTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::RangeAccrualFloatersCoupon::lowerTrigger
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lowerTrigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::RangeAccrualFloatersCoupon::upperTrigger
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upperTrigger() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::RangeAccrualFloatersCoupon::observationsNo
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size observationsNo() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& observationDates() const'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & observationDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: '& observationTimes() const'
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & observationTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::RangeAccrualFloatersCoupon::observationsSchedule
    functionSourceFile: /src/quantlib/ql/cashflows/rangeaccrual.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Schedule>
    signature: ext::shared_ptr<Schedule> observationsSchedule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::CPICouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<CPIVolatilitySurface>
    signature: Handle<CPIVolatilitySurface> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::CPICouponPricer::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::CPICouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<CPIVolatilitySurface>
    signature: Handle<CPIVolatilitySurface> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::CPICouponPricer::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/cashflows/cpicouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' paymentDate'
    - nominal
    - rate
    - ' dayCounter'
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Rate
    - DayCounter
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::FixedRateCoupon::FixedRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - InterestRate
    linkageType: ''
    returnType: void
    signature: "void FixedRateCoupon::FixedRateCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     Rate rate,\n                                     const
      DayCounter& dayCounter,\n                                     const Date& accrualStartDate,\n
      \                                    const Date& accrualEndDate,\n                                     const
      Date& refPeriodStart,\n                                     const Date& refPeriodEnd,\n
      \                                    const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' paymentDate'
    - nominal
    - interestRate
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - InterestRate
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionName: QuantLib::FixedRateCoupon::FixedRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FixedRateCoupon::FixedRateCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     InterestRate interestRate,\n
      \                                    const Date& accrualStartDate,\n                                     const
      Date& accrualEndDate,\n                                     const Date& refPeriodStart,\n
      \                                    const Date& refPeriodEnd,\n                                     const
      Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::FixedRateCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real FixedRateCoupon::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:68,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::FixedRateCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - compoundFactor
    - nominal
    linkageType: ''
    returnType: void
    signature: void FixedRateCoupon::performCalculations() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:77,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:78,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:78,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:79,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:84,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:84,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 89
    functionName: QuantLib::FixedRateCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - compoundFactor
    - tradingExCoupon
    - nominal
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real FixedRateCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:93,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - schedule
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::FixedRateLeg::FixedRateLeg
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - std::move
    linkageType: ''
    returnType: void
    signature: void FixedRateLeg::FixedRateLeg(Schedule schedule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: '& FixedRateLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: '& FixedRateLeg::withNotionals(const vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withNotionals(const vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:109,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - rate
    - ' dc'
    - comp
    - freq
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: "& FixedRateLeg::withCouponRates(Rate rate,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    - InterestRate
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(Rate rate,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InterestRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: '& FixedRateLeg::withCouponRates(const InterestRate& i)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withCouponRates(const InterestRate& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:125,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' rates'
    - ' dc'
    - comp
    - freq
    argTypes:
    - vector<Rate>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 128
    functionName: "& FixedRateLeg::withCouponRates(const vector<Rate>& rates,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - InterestRate
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(const vector<Rate>& rates,\n
      \                                               const DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' interestRates'
    argTypes:
    - vector<InterestRate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionName: "& FixedRateLeg::withCouponRates(\n                                const
      vector<InterestRate>& interestRates)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(\n                                const
      vector<InterestRate>& interestRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: "& FixedRateLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: "& FixedRateLeg::withFirstPeriodDayCounter(\n                                            const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withFirstPeriodDayCounter(\n                                            const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: "& FixedRateLeg::withLastPeriodDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withLastPeriodDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: '& FixedRateLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& FixedRateLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 174
    functionName: "& FixedRateLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:178,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:178,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:179,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:182,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:185,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:185,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:186,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:191,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:193,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:198,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:199,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:199,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:200,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:201,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:202,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:203,1
    - Dst: InterestRate::rate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:205,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:206,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:206,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:208,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:208,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:213,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:214,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:215,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:216,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:223,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:227,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:230,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:237,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:238,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:239,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:240,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:247,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:250,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:251,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:254,1
    - Dst: InterestRate::rate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:255,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:255,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:256,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:257,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:257,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:258,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:258,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:259,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:264,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:266,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:267,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:268,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 275
    functionName: FixedRateLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - endOfMonth
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - size
    - InterestRate::frequency
    - InterestRate::rate
    - isRegular
    - Period
    - InterestRate::dayCounter
    - advance
    - QL_REQUIRE
    - InterestRate::compounding
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void FixedRateLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - ' paymentDate'
    - nominal
    - rate
    - ' dayCounter'
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Rate
    - DayCounter
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: QuantLib::FixedRateCoupon::FixedRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - InterestRate
    linkageType: ''
    returnType: void
    signature: "void FixedRateCoupon::FixedRateCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     Rate rate,\n                                     const
      DayCounter& dayCounter,\n                                     const Date& accrualStartDate,\n
      \                                    const Date& accrualEndDate,\n                                     const
      Date& refPeriodStart,\n                                     const Date& refPeriodEnd,\n
      \                                    const Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' paymentDate'
    - nominal
    - interestRate
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - InterestRate
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionName: QuantLib::FixedRateCoupon::FixedRateCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FixedRateCoupon::FixedRateCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     InterestRate interestRate,\n
      \                                    const Date& accrualStartDate,\n                                     const
      Date& accrualEndDate,\n                                     const Date& refPeriodStart,\n
      \                                    const Date& refPeriodEnd,\n                                     const
      Date& exCouponDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: QuantLib::FixedRateCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real FixedRateCoupon::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:68,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: QuantLib::FixedRateCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - compoundFactor
    - nominal
    linkageType: ''
    returnType: void
    signature: void FixedRateCoupon::performCalculations() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:77,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:78,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:78,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:79,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:84,1
    - Dst: compoundFactor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:84,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 89
    functionName: QuantLib::FixedRateCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - compoundFactor
    - tradingExCoupon
    - nominal
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real FixedRateCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:93,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - schedule
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::FixedRateLeg::FixedRateLeg
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - std::move
    linkageType: ''
    returnType: void
    signature: void FixedRateLeg::FixedRateLeg(Schedule schedule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector<Real>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: '& FixedRateLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - vector<Real>
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: '& FixedRateLeg::withNotionals(const vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withNotionals(const vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:109,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - rate
    - ' dc'
    - comp
    - freq
    argTypes:
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: "& FixedRateLeg::withCouponRates(Rate rate,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    - InterestRate
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(Rate rate,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InterestRate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: '& FixedRateLeg::withCouponRates(const InterestRate& i)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - resize
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withCouponRates(const InterestRate& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:124,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:125,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' rates'
    - ' dc'
    - comp
    - freq
    argTypes:
    - vector<Rate>
    - DayCounter
    - Compounding
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 128
    functionName: "& FixedRateLeg::withCouponRates(const vector<Rate>& rates,\n                                                const
      DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - InterestRate
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(const vector<Rate>& rates,\n
      \                                               const DayCounter& dc,\n                                                Compounding
      comp,\n                                                Frequency freq)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' interestRates'
    argTypes:
    - vector<InterestRate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionName: "& FixedRateLeg::withCouponRates(\n                                const
      vector<InterestRate>& interestRates)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withCouponRates(\n                                const
      vector<InterestRate>& interestRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: "& FixedRateLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: "& FixedRateLeg::withFirstPeriodDayCounter(\n                                            const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withFirstPeriodDayCounter(\n                                            const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: "& FixedRateLeg::withLastPeriodDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withLastPeriodDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: '& FixedRateLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withPaymentCalendar(const Calendar& cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: '& FixedRateLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: FixedRateLeg & FixedRateLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 174
    functionName: "& FixedRateLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FixedRateLeg
    signature: "FixedRateLeg & FixedRateLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:178,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:178,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:179,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:182,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:182,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:185,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:185,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:186,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:191,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:193,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:198,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:199,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:199,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:200,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:201,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:202,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:203,1
    - Dst: InterestRate::rate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:205,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:206,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:206,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:208,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:208,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:209,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:213,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:214,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:215,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:216,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:218,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:223,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:227,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:230,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:235,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:237,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:238,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:239,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:240,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:247,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:250,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:251,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:254,1
    - Dst: InterestRate::rate
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:255,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:255,1
    - Dst: InterestRate::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:256,1
    - Dst: InterestRate::compounding
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:257,1
    - Dst: InterestRate::frequency
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:257,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:258,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:258,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:259,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:260,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:264,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:266,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:267,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:268,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.cpp:269,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 275
    functionName: FixedRateLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - endOfMonth
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - size
    - InterestRate::frequency
    - InterestRate::rate
    - isRegular
    - Period
    - InterestRate::dayCounter
    - advance
    - QL_REQUIRE
    - InterestRate::compounding
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: void
    signature: void FixedRateLeg::operator Leg() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Dividend>*>
      Src: /src/quantlib/ql/cashflows/dividend.cpp:27,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/dividend.cpp:29,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/dividend.cpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::Dividend::accept
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Dividend>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Dividend::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/dividend.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/dividend.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/dividend.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/dividend.cpp:46,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    - Dst: ext::shared_ptr<Dividend>
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    - Dst: FixedDividend::FixedDividend
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividends'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 51
    functionName: QuantLib::DividendVector
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - FixedDividend::FixedDividend
    - begin
    - ext::shared_ptr<Dividend>
    - QuantLib::size
    - end
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<Dividend> >
    signature: "std::vector<ext::shared_ptr<Dividend> > DividendVector(const std::vector<Date>&
      dividendDates,\n                   const std::vector<Real>& dividends)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Dividend>*>
      Src: /src/quantlib/ql/cashflows/dividend.cpp:27,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/dividend.cpp:29,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/dividend.cpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::Dividend::accept
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Dividend>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Dividend::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:38,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/dividend.cpp:44,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/dividend.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/dividend.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/dividend.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/dividend.cpp:46,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    - Dst: ext::shared_ptr<Dividend>
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    - Dst: FixedDividend::FixedDividend
      Src: /src/quantlib/ql/cashflows/dividend.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' dividendDates'
    - ' dividends'
    argTypes:
    - std::vector<Date>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 51
    functionName: QuantLib::DividendVector
    functionSourceFile: /src/quantlib/ql/cashflows/dividend.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - FixedDividend::FixedDividend
    - begin
    - ext::shared_ptr<Dividend>
    - QuantLib::size
    - end
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<Dividend> >
    signature: "std::vector<ext::shared_ptr<Dividend> > DividendVector(const std::vector<Date>&
      dividendDates,\n                   const std::vector<Real>& dividends)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::FixedRateCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate rate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::FixedRateCoupon::interestRate
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InterestRate
    signature: InterestRate interestRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FixedRateCoupon::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::FixedRateCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FixedRateCoupon::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FixedRateCoupon>*>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:130,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: QuantLib::FixedRateCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<FixedRateCoupon>*>
    linkageType: ''
    returnType: void
    signature: void FixedRateCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::FixedRateCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate rate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::FixedRateCoupon::interestRate
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InterestRate
    signature: InterestRate interestRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FixedRateCoupon::dayCounter
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::FixedRateCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FixedRateCoupon::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<FixedRateCoupon>*>
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:130,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:132,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/fixedratecoupon.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: QuantLib::FixedRateCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/fixedratecoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<FixedRateCoupon>*>
    linkageType: ''
    returnType: void
    signature: void FixedRateCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::InflationCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - nominal
    - accrualPeriod
    - QuantLib::InflationCoupon::rate
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::InflationCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '& index() const'
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InflationIndex>
    signature: ext::shared_ptr<InflationIndex> & index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::InflationCoupon::observationLag
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::InflationCoupon::fixingDays
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<InflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:118,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:120,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::InflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<InflationCoupon>*>
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::InflationCoupon::pricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InflationCouponPricer>
    signature: ext::shared_ptr<InflationCouponPricer> InflationCoupon::pricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::InflationCoupon::amount
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - nominal
    - accrualPeriod
    - QuantLib::InflationCoupon::rate
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::InflationCoupon::dayCounter
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '& index() const'
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InflationIndex>
    signature: ext::shared_ptr<InflationIndex> & index() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::InflationCoupon::observationLag
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::InflationCoupon::fixingDays
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<InflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:118,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:120,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/inflationcoupon.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::InflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<InflationCoupon>*>
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::InflationCoupon::pricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InflationCouponPricer>
    signature: ext::shared_ptr<InflationCouponPricer> InflationCoupon::pricer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<InflationCoupon>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:30,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<InflationCoupon>
    - ext::shared_ptr::setPricer
    linkageType: ''
    returnType: void
    signature: "void setCouponPricer(const Leg& leg,\n                         const
      ext::shared_ptr<InflationCouponPricer>& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nominalTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::YoYInflationCouponPricer(\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - capletVol
    - nominalTermStructure
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::YoYInflationCouponPricer(\n        Handle<YoYOptionletVolatilitySurface>
      capletVol,\n        Handle<YieldTermStructure> nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' capletVol'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::YoYInflationCouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::setCapletVolatility(\n       const
      Handle<YoYOptionletVolatilitySurface>& capletVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::YoYInflationCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::YoYInflationCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::YoYInflationCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::YoYInflationCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::YoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletPriceImp(\n                                                    Option::Type,\n
      \                                                   Real,\n                                                    Real,\n
      \                                                   Real) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:91,1
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:92,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::YoYInflationCouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletPrice(Option::Type optionType,\n
      \                                                 Real effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:98,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:99,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:103,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:107,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:112,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:115,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:115,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:117,1
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPriceImp
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:118,1
    - Dst: QuantLib::YoYInflationCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYInflationCouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::capletVolatility
    - fixingDate
    - std::max
    - Period
    - QuantLib::YoYInflationCouponPricer::optionletPriceImp
    - QuantLib::YoYInflationCouponPricer::adjustedFixing
    - std::sqrt
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletRate(Option::Type optionType,\n
      \                                                Real effStrike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:128,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: QuantLib::YoYInflationCouponPricer::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - Null<Rate>
    - indexFixing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::adjustedFixing(Rate fixing) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const YoYInflationCoupon*>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:138,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:139,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:140,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:141,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:147,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:149,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:151,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - InflationCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 154
    functionName: QuantLib::YoYInflationCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - date
    - referenceDate
    - empty
    - spread
    - Null<Real>
    - dynamic_cast<const YoYInflationCoupon*>
    - discount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YoYInflationCouponPricer::initialize(const InflationCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:158,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:158,1
    - Dst: QuantLib::YoYInflationCouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:159,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::YoYInflationCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::swapletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 169
    functionName: QuantLib::YoYInflationCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::adjustedFixing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 188
    functionName: QuantLib::BlackYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real BlackYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                     Real  effStrike,\n
      \                                                    Real  forward,\n                                                     Real
      stdDev\n                                                     ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 200
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real UnitDisplacedBlackYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                                  Real
      \ effStrike,\n                                                                  Real
      \ forward,\n                                                                  Real
      stdDev\n                                                          ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 211
    functionName: QuantLib::BachelierYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real BachelierYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                              Real
      \ effStrike,\n                                                              Real
      \ forward,\n                                                              Real
      stdDev\n                                                          ) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<InflationCoupon>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:30,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<InflationCoupon>
    - ext::shared_ptr::setPricer
    linkageType: ''
    returnType: void
    signature: "void setCouponPricer(const Leg& leg,\n                         const
      ext::shared_ptr<InflationCouponPricer>& p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nominalTermStructure
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::YoYInflationCouponPricer(\n        Handle<YieldTermStructure>
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:47,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - capletVol
    - nominalTermStructure
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::YoYInflationCouponPricer(\n        Handle<YoYOptionletVolatilitySurface>
      capletVol,\n        Handle<YieldTermStructure> nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:54,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' capletVol'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::YoYInflationCouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYInflationCouponPricer::setCapletVolatility(\n       const
      Handle<YoYOptionletVolatilitySurface>& capletVol)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::YoYInflationCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::YoYInflationCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::YoYInflationCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::YoYInflationCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::YoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletPriceImp(\n                                                    Option::Type,\n
      \                                                   Real,\n                                                    Real,\n
      \                                                   Real) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:91,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:91,1
    - Dst: QuantLib::YoYInflationCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:92,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 3
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::YoYInflationCouponPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::optionletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletPrice(Option::Type optionType,\n
      \                                                 Real effStrike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:98,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:99,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:103,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:107,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:109,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:112,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:115,1
    - Dst: QuantLib::YoYInflationCouponPricer::capletVolatility
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:115,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:117,1
    - Dst: QuantLib::YoYInflationCouponPricer::optionletPriceImp
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:118,1
    - Dst: QuantLib::YoYInflationCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - optionType
    - effStrike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYInflationCouponPricer::optionletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::capletVolatility
    - fixingDate
    - std::max
    - Period
    - QuantLib::YoYInflationCouponPricer::optionletPriceImp
    - QuantLib::YoYInflationCouponPricer::adjustedFixing
    - std::sqrt
    - indexFixing
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real YoYInflationCouponPricer::optionletRate(Option::Type optionType,\n
      \                                                Real effStrike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:128,1
    - Dst: indexFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fixing
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: QuantLib::YoYInflationCouponPricer::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 3
    functionsReached:
    - Null<Rate>
    - indexFixing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::adjustedFixing(Rate fixing) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const YoYInflationCoupon*>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:138,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:139,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:140,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:141,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:147,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:149,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:151,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - InflationCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 154
    functionName: QuantLib::YoYInflationCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - date
    - referenceDate
    - empty
    - spread
    - Null<Real>
    - dynamic_cast<const YoYInflationCoupon*>
    - discount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void YoYInflationCouponPricer::initialize(const InflationCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:158,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:158,1
    - Dst: QuantLib::YoYInflationCouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:159,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::YoYInflationCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::swapletRate
    - Null<Real>
    - accrualPeriod
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real YoYInflationCouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYInflationCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 169
    functionName: QuantLib::YoYInflationCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYInflationCouponPricer::adjustedFixing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 188
    functionName: QuantLib::BlackYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real BlackYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                     Real  effStrike,\n
      \                                                    Real  forward,\n                                                     Real
      stdDev\n                                                     ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 200
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - blackFormula
    linkageType: ''
    returnType: Real
    signature: "Real UnitDisplacedBlackYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                                  Real
      \ effStrike,\n                                                                  Real
      \ forward,\n                                                                  Real
      stdDev\n                                                          ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - optionType
    - effStrike
    - forward
    - stdDev
    argTypes:
    - Option::Type
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 211
    functionName: QuantLib::BachelierYoYInflationCouponPricer::optionletPriceImp
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real BachelierYoYInflationCouponPricer::optionletPriceImp(Option::Type
      optionType,\n                                                              Real
      \ effStrike,\n                                                              Real
      \ forward,\n                                                              Real
      stdDev\n                                                          ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::YoYInflationCoupon::gearing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::YoYInflationCoupon::spread
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: "&\n    YoYInflationCoupon::yoyIndex() const"
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: "ext::shared_ptr<YoYInflationIndex> &\n    YoYInflationCoupon::yoyIndex()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::YoYInflationCoupon::interpolation
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType YoYInflationCoupon::interpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    - Dst: QuantLib::YoYInflationCoupon::spread
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    - Dst: QuantLib::YoYInflationCoupon::gearing
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::YoYInflationCoupon::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCoupon::spread
    - rate
    - QuantLib::YoYInflationCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCoupon::adjustedFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::YoYInflationCoupon::gearing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gearing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::YoYInflationCoupon::spread
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: "&\n    YoYInflationCoupon::yoyIndex() const"
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: "ext::shared_ptr<YoYInflationIndex> &\n    YoYInflationCoupon::yoyIndex()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::YoYInflationCoupon::interpolation
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType YoYInflationCoupon::interpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    - Dst: QuantLib::YoYInflationCoupon::spread
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    - Dst: QuantLib::YoYInflationCoupon::gearing
      Src: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::YoYInflationCoupon::adjustedFixing
    functionSourceFile: /src/quantlib/ql/cashflows/yoyinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYInflationCoupon::spread
    - rate
    - QuantLib::YoYInflationCoupon::gearing
    linkageType: ''
    returnType: Rate
    signature: Rate YoYInflationCoupon::adjustedFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - ' replication'
    - nakedOption
    argTypes:
    - ext::shared_ptr<CmsCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::DigitalCmsCoupon::DigitalCmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalCmsCoupon::DigitalCmsCoupon(\n                      const
      ext::shared_ptr<CmsCoupon>& underlying,\n                      Rate callStrike,\n
      \                     Position::Type callPosition,\n                      bool
      isCallATMIncluded,\n                      Rate callDigitalPayoff,\n                      Rate
      putStrike,\n                      Position::Type putPosition,\n                      bool
      isPutATMIncluded,\n                      Rate putDigitalPayoff,\n                      const
      ext::shared_ptr<DigitalReplication>& replication,\n                      bool
      nakedOption)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalCmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:46,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:48,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::DigitalCmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlow::accept
    - auto*::visit
    - dynamic_cast<Visitor<DigitalCmsCoupon>*>
    linkageType: ''
    returnType: void
    signature: void DigitalCmsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::DigitalCmsLeg::DigitalCmsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DigitalCmsLeg::DigitalCmsLeg(Schedule schedule, ext::shared_ptr<SwapIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: '& DigitalCmsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: "& DigitalCmsLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: "& DigitalCmsLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "& DigitalCmsLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: '& DigitalCmsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "& DigitalCmsLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& DigitalCmsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: "& DigitalCmsLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& DigitalCmsLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: "& DigitalCmsLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: '& DigitalCmsLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& DigitalCmsLeg::withCallStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: "& DigitalCmsLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& DigitalCmsLeg::withLongCallOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withLongCallOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& DigitalCmsLeg::withCallATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& DigitalCmsLeg::withCallPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: "& DigitalCmsLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& DigitalCmsLeg::withPutStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "& DigitalCmsLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: '& DigitalCmsLeg::withLongPutOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withLongPutOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: '& DigitalCmsLeg::withPutATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: '& DigitalCmsLeg::withPutPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "& DigitalCmsLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' replication'
    argTypes:
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "& DigitalCmsLeg::withReplication(\n                   const ext::shared_ptr<DigitalReplication>&
      replication)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withReplication(\n                   const
      ext::shared_ptr<DigitalReplication>& replication)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nakedOption
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& DigitalCmsLeg::withNakedOption(bool nakedOption)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withNakedOption(bool nakedOption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingDigitalLeg<SwapIndex, CmsCoupon, DigitalCmsCoupon>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionName: DigitalCmsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingDigitalLeg<SwapIndex, CmsCoupon, DigitalCmsCoupon>
    linkageType: ''
    returnType: void
    signature: void DigitalCmsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - ' replication'
    - nakedOption
    argTypes:
    - ext::shared_ptr<CmsCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::DigitalCmsCoupon::DigitalCmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalCmsCoupon::DigitalCmsCoupon(\n                      const
      ext::shared_ptr<CmsCoupon>& underlying,\n                      Rate callStrike,\n
      \                     Position::Type callPosition,\n                      bool
      isCallATMIncluded,\n                      Rate callDigitalPayoff,\n                      Rate
      putStrike,\n                      Position::Type putPosition,\n                      bool
      isPutATMIncluded,\n                      Rate putDigitalPayoff,\n                      const
      ext::shared_ptr<DigitalReplication>& replication,\n                      bool
      nakedOption)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalCmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:46,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:48,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::DigitalCmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlow::accept
    - auto*::visit
    - dynamic_cast<Visitor<DigitalCmsCoupon>*>
    linkageType: ''
    returnType: void
    signature: void DigitalCmsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::DigitalCmsLeg::DigitalCmsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DigitalCmsLeg::DigitalCmsLeg(Schedule schedule, ext::shared_ptr<SwapIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: '& DigitalCmsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: "& DigitalCmsLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: "& DigitalCmsLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "& DigitalCmsLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: '& DigitalCmsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "& DigitalCmsLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& DigitalCmsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: "& DigitalCmsLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& DigitalCmsLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: "& DigitalCmsLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: '& DigitalCmsLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& DigitalCmsLeg::withCallStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: "& DigitalCmsLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& DigitalCmsLeg::withLongCallOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withLongCallOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& DigitalCmsLeg::withCallATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& DigitalCmsLeg::withCallPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withCallPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: "& DigitalCmsLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& DigitalCmsLeg::withPutStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "& DigitalCmsLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: '& DigitalCmsLeg::withLongPutOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withLongPutOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: '& DigitalCmsLeg::withPutATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: '& DigitalCmsLeg::withPutPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withPutPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "& DigitalCmsLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' replication'
    argTypes:
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "& DigitalCmsLeg::withReplication(\n                   const ext::shared_ptr<DigitalReplication>&
      replication)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: "DigitalCmsLeg & DigitalCmsLeg::withReplication(\n                   const
      ext::shared_ptr<DigitalReplication>& replication)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nakedOption
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& DigitalCmsLeg::withNakedOption(bool nakedOption)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalCmsLeg
    signature: DigitalCmsLeg & DigitalCmsLeg::withNakedOption(bool nakedOption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingDigitalLeg<SwapIndex, CmsCoupon, DigitalCmsCoupon>
      Src: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionName: DigitalCmsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcmscoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingDigitalLeg<SwapIndex, CmsCoupon, DigitalCmsCoupon>
    linkageType: ''
    returnType: void
    signature: void DigitalCmsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - ' replication'
    - nakedOption
    argTypes:
    - ext::shared_ptr<IborCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::DigitalIborCoupon::DigitalIborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalIborCoupon::DigitalIborCoupon(\n                      const
      ext::shared_ptr<IborCoupon>& underlying,\n                      Rate callStrike,\n
      \                     Position::Type callPosition,\n                      bool
      isCallATMIncluded,\n                      Rate callDigitalPayoff,\n                      Rate
      putStrike,\n                      Position::Type putPosition,\n                      bool
      isPutATMIncluded,\n                      Rate putDigitalPayoff,\n                      const
      ext::shared_ptr<DigitalReplication>& replication,\n                      bool
      nakedOption)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalIborCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:46,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:48,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::DigitalIborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<DigitalIborCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void DigitalIborCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::DigitalIborLeg::DigitalIborLeg
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DigitalIborLeg::DigitalIborLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: '& DigitalIborLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: "& DigitalIborLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: "& DigitalIborLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "& DigitalIborLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: '& DigitalIborLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "& DigitalIborLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& DigitalIborLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: "& DigitalIborLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& DigitalIborLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: "& DigitalIborLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: '& DigitalIborLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& DigitalIborLeg::withCallStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: "& DigitalIborLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& DigitalIborLeg::withLongCallOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withLongCallOption(Position::Type
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& DigitalIborLeg::withCallATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& DigitalIborLeg::withCallPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: "& DigitalIborLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& DigitalIborLeg::withPutStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "& DigitalIborLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: '& DigitalIborLeg::withLongPutOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withLongPutOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: '& DigitalIborLeg::withPutATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: '& DigitalIborLeg::withPutPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "& DigitalIborLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' replication'
    argTypes:
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "& DigitalIborLeg::withReplication(\n                   const ext::shared_ptr<DigitalReplication>&
      replication)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withReplication(\n                   const
      ext::shared_ptr<DigitalReplication>& replication)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nakedOption
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& DigitalIborLeg::withNakedOption(bool nakedOption)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withNakedOption(bool nakedOption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingDigitalLeg<IborIndex, IborCoupon, DigitalIborCoupon>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionName: DigitalIborLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingDigitalLeg<IborIndex, IborCoupon, DigitalIborCoupon>
    linkageType: ''
    returnType: void
    signature: void DigitalIborLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - ' replication'
    - nakedOption
    argTypes:
    - ext::shared_ptr<IborCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: QuantLib::DigitalIborCoupon::DigitalIborCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalIborCoupon::DigitalIborCoupon(\n                      const
      ext::shared_ptr<IborCoupon>& underlying,\n                      Rate callStrike,\n
      \                     Position::Type callPosition,\n                      bool
      isCallATMIncluded,\n                      Rate callDigitalPayoff,\n                      Rate
      putStrike,\n                      Position::Type putPosition,\n                      bool
      isPutATMIncluded,\n                      Rate putDigitalPayoff,\n                      const
      ext::shared_ptr<DigitalReplication>& replication,\n                      bool
      nakedOption)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalIborCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:46,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:48,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::DigitalIborCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<DigitalIborCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void DigitalIborCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - schedule
    - index
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::DigitalIborLeg::DigitalIborLeg
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DigitalIborLeg::DigitalIborLeg(Schedule schedule, ext::shared_ptr<IborIndex>
      index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: '& DigitalIborLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: "& DigitalIborLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withNotionals(\n                                         const
      std::vector<Real>& notionals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: "& DigitalIborLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPaymentDayCounter(\n                                               const
      DayCounter& dayCounter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: "& DigitalIborLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPaymentAdjustment(\n                                           BusinessDayConvention
      convention)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: '& DigitalIborLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: "& DigitalIborLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withFixingDays(\n                                     const
      std::vector<Natural>& fixingDays)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& DigitalIborLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: "& DigitalIborLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withGearings(\n                                          const
      std::vector<Real>& gearings)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& DigitalIborLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionName: "& DigitalIborLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withSpreads(\n                                         const
      std::vector<Spread>& spreads)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: '& DigitalIborLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: '& DigitalIborLeg::withCallStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: "& DigitalIborLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withCallStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: '& DigitalIborLeg::withLongCallOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withLongCallOption(Position::Type
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: '& DigitalIborLeg::withCallATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: '& DigitalIborLeg::withCallPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withCallPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: "& DigitalIborLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withCallPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: '& DigitalIborLeg::withPutStrikes(Rate strike)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutStrikes(Rate strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' strikes'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: "& DigitalIborLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPutStrikes(\n                                           const
      std::vector<Rate>& strikes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Position::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: '& DigitalIborLeg::withLongPutOption(Position::Type type)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withLongPutOption(Position::Type type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: '& DigitalIborLeg::withPutATM(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutATM(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: '& DigitalIborLeg::withPutPayoffs(Rate payoff)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withPutPayoffs(Rate payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' payoffs'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: "& DigitalIborLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withPutPayoffs(\n                                           const
      std::vector<Rate>& payoffs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' replication'
    argTypes:
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: "& DigitalIborLeg::withReplication(\n                   const ext::shared_ptr<DigitalReplication>&
      replication)"
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: "DigitalIborLeg & DigitalIborLeg::withReplication(\n                   const
      ext::shared_ptr<DigitalReplication>& replication)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nakedOption
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: '& DigitalIborLeg::withNakedOption(bool nakedOption)'
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DigitalIborLeg
    signature: DigitalIborLeg & DigitalIborLeg::withNakedOption(bool nakedOption)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingDigitalLeg<IborIndex, IborCoupon, DigitalIborCoupon>
      Src: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionName: DigitalIborLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/digitaliborcoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingDigitalLeg<IborIndex, IborCoupon, DigitalIborCoupon>
    linkageType: ''
    returnType: void
    signature: void DigitalIborLeg::operator Leg() const
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:39,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:40,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:41,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:42,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:43,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:44,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:45,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:46,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:47,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:48,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:49,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:50,1
    - Dst: ext::make_shared<DigitalReplication>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:57,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:57,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:59,1
    - Dst: ext::shared_ptr<DigitalReplication>::replicationType
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:60,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:63,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:63,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:70,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:81,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:83,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:99,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:101,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:116,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:119,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:123,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:129,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:134,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:137,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:145,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:153,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:160,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:163,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:167,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:172,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:175,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 115
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - replication
    - nakedOption
    argTypes:
    - ext::shared_ptr<FloatingRateCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 176
    functionName: QuantLib::DigitalCoupon::DigitalCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - dayCounter
    - ext::shared_ptr<DigitalReplication>::gap
    - referencePeriodEnd
    - registerWith
    - date
    - Null<Rate>
    - spread
    - ext::make_shared<DigitalReplication>
    - fixingDays
    - index
    - QL_FAIL
    - nominal
    - QL_REQUIRE
    - referencePeriodStart
    - ext::shared_ptr<DigitalReplication>::replicationType
    - isInArrears
    - accrualStartDate
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void DigitalCoupon::DigitalCoupon(const ext::shared_ptr<FloatingRateCoupon>&
      underlying,\n                                 Rate callStrike,\n                                 Position::Type
      callPosition,\n                                 bool isCallATMIncluded,\n                                 Rate
      callDigitalPayoff,\n                                 Rate putStrike,\n                                 Position::Type
      putPosition,\n                                 bool isPutATMIncluded,\n                                 Rate
      putDigitalPayoff,\n                                 ext::shared_ptr<DigitalReplication>
      replication,\n                                 const bool nakedOption)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:181,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:187,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:187,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:192,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 198
    functionName: QuantLib::DigitalCoupon::callOptionRate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DigitalCoupon::rate
    - CappedFlooredCoupon::rate
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callOptionRate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:202,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:206,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:207,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:208,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:208,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:213,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 219
    functionName: QuantLib::DigitalCoupon::putOptionRate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::rate
    - CappedFlooredCoupon::rate
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putOptionRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:222,1
    - Dst: QuantLib::DigitalCoupon::deepUpdate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: QuantLib::DigitalCoupon::deepUpdate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - update
    - QuantLib::DigitalCoupon::deepUpdate
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::deepUpdate()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:228,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:228,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:230,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:231,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:233,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:234,1
    - Dst: QuantLib::DigitalCoupon::callPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:238,1
    - Dst: QuantLib::DigitalCoupon::putPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:238,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:241,1
    - Dst: QuantLib::DigitalCoupon::callPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:242,1
    - Dst: QuantLib::DigitalCoupon::putPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:242,1
    - Dst: QuantLib::DigitalCoupon::callOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:244,1
    - Dst: QuantLib::DigitalCoupon::putOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:244,1
    - Dst: QuantLib::DigitalCoupon::callOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:247,1
    - Dst: QuantLib::DigitalCoupon::putOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 249
    functionName: QuantLib::DigitalCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DigitalCoupon::callPayoff
    - QuantLib::DigitalCoupon::putOptionRate
    - QuantLib::DigitalCoupon::putPayoff
    - pricer
    - fixingDate
    - index
    - QuantLib::detail::instance
    - QuantLib::DigitalCoupon::rate
    - QuantLib::DigitalCoupon::callOptionRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: QuantLib::DigitalCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 3
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::convexityAdjustment
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionName: QuantLib::DigitalCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::DigitalCoupon::convexityAdjustment
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::hasCall
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:261,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 265
    functionName: QuantLib::DigitalCoupon::callStrike
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::hasCall
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::hasPut
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:268,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 272
    functionName: QuantLib::DigitalCoupon::putStrike
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::hasPut
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: QuantLib::DigitalCoupon::callDigitalPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callDigitalPayoff() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 286
    functionName: QuantLib::DigitalCoupon::putDigitalPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putDigitalPayoff() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:290,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:292,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:294,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 295
    functionName: QuantLib::DigitalCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<DigitalCoupon>*>
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::accept(AcyclicVisitor& v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:301,1
    - Dst: std::abs
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 312
    functionName: QuantLib::DigitalCoupon::callPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - std::abs
    - QuantLib::DigitalCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callPayoff() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:318,1
    - Dst: std::abs
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:324,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 330
    functionName: QuantLib::DigitalCoupon::putPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - std::abs
    - QuantLib::DigitalCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putPayoff() const
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:39,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:40,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:41,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:42,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:43,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:44,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:45,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:46,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:47,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:48,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:49,1
    - Dst: isInArrears
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:50,1
    - Dst: ext::make_shared<DigitalReplication>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:57,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:57,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:59,1
    - Dst: ext::shared_ptr<DigitalReplication>::replicationType
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:60,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:63,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:63,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:70,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:81,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:83,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:99,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:101,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:116,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:119,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:123,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:129,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:134,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:137,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:145,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:153,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:160,1
    - Dst: ext::shared_ptr<DigitalReplication>::gap
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:163,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:167,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:172,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:175,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 115
    argCount: 11
    argNames:
    - ' underlying'
    - callStrike
    - callPosition
    - isCallATMIncluded
    - callDigitalPayoff
    - putStrike
    - putPosition
    - isPutATMIncluded
    - putDigitalPayoff
    - replication
    - nakedOption
    argTypes:
    - ext::shared_ptr<FloatingRateCoupon>
    - Rate
    - Position::Type
    - bool
    - Rate
    - Rate
    - Position::Type
    - bool
    - Rate
    - ext::shared_ptr<DigitalReplication>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 176
    functionName: QuantLib::DigitalCoupon::DigitalCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - dayCounter
    - ext::shared_ptr<DigitalReplication>::gap
    - referencePeriodEnd
    - registerWith
    - date
    - Null<Rate>
    - spread
    - ext::make_shared<DigitalReplication>
    - fixingDays
    - index
    - QL_FAIL
    - nominal
    - QL_REQUIRE
    - referencePeriodStart
    - ext::shared_ptr<DigitalReplication>::replicationType
    - isInArrears
    - accrualStartDate
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void DigitalCoupon::DigitalCoupon(const ext::shared_ptr<FloatingRateCoupon>&
      underlying,\n                                 Rate callStrike,\n                                 Position::Type
      callPosition,\n                                 bool isCallATMIncluded,\n                                 Rate
      callDigitalPayoff,\n                                 Rate putStrike,\n                                 Position::Type
      putPosition,\n                                 bool isPutATMIncluded,\n                                 Rate
      putDigitalPayoff,\n                                 ext::shared_ptr<DigitalReplication>
      replication,\n                                 const bool nakedOption)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:181,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:187,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:187,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:192,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 198
    functionName: QuantLib::DigitalCoupon::callOptionRate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::DigitalCoupon::rate
    - CappedFlooredCoupon::rate
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callOptionRate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:202,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:206,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:207,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:208,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:208,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:213,1
    - Dst: CappedFlooredCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 219
    functionName: QuantLib::DigitalCoupon::putOptionRate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 1
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::rate
    - CappedFlooredCoupon::rate
    - Rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putOptionRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:222,1
    - Dst: QuantLib::DigitalCoupon::deepUpdate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: QuantLib::DigitalCoupon::deepUpdate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 2
    functionsReached:
    - update
    - QuantLib::DigitalCoupon::deepUpdate
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::deepUpdate()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:228,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:228,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:230,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:231,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:233,1
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:234,1
    - Dst: QuantLib::DigitalCoupon::callPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:238,1
    - Dst: QuantLib::DigitalCoupon::putPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:238,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:241,1
    - Dst: QuantLib::DigitalCoupon::callPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:242,1
    - Dst: QuantLib::DigitalCoupon::putPayoff
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:242,1
    - Dst: QuantLib::DigitalCoupon::callOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:244,1
    - Dst: QuantLib::DigitalCoupon::putOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:244,1
    - Dst: QuantLib::DigitalCoupon::callOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:247,1
    - Dst: QuantLib::DigitalCoupon::putOptionRate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 249
    functionName: QuantLib::DigitalCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DigitalCoupon::callPayoff
    - QuantLib::DigitalCoupon::putOptionRate
    - QuantLib::DigitalCoupon::putPayoff
    - pricer
    - fixingDate
    - index
    - QuantLib::detail::instance
    - QuantLib::DigitalCoupon::rate
    - QuantLib::DigitalCoupon::callOptionRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: QuantLib::DigitalCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 8
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::convexityAdjustment
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionName: QuantLib::DigitalCoupon::convexityAdjustment
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::DigitalCoupon::convexityAdjustment
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::convexityAdjustment() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::hasCall
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:261,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 265
    functionName: QuantLib::DigitalCoupon::callStrike
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::hasCall
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::hasPut
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:268,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 272
    functionName: QuantLib::DigitalCoupon::putStrike
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::DigitalCoupon::hasPut
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: QuantLib::DigitalCoupon::callDigitalPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callDigitalPayoff() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 286
    functionName: QuantLib::DigitalCoupon::putDigitalPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putDigitalPayoff() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DigitalCoupon>*>
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:290,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:292,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:294,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 295
    functionName: QuantLib::DigitalCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<DigitalCoupon>*>
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void DigitalCoupon::accept(AcyclicVisitor& v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:301,1
    - Dst: std::abs
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 312
    functionName: QuantLib::DigitalCoupon::callPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 2
    functionsReached:
    - std::abs
    - QuantLib::DigitalCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::callPayoff() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DigitalCoupon::rate
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:318,1
    - Dst: std::abs
      Src: /src/quantlib/ql/cashflows/digitalcoupon.cpp:324,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 330
    functionName: QuantLib::DigitalCoupon::putPayoff
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.cpp
    functionUses: 2
    functionsReached:
    - std::abs
    - QuantLib::DigitalCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate DigitalCoupon::putPayoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::DigitalCoupon::hasPut
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasPut() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::DigitalCoupon::hasCall
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasCall() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::DigitalCoupon::hasCollar
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasCollar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::DigitalCoupon::isLongPut
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLongPut() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::DigitalCoupon::isLongCall
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLongCall() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::DigitalCoupon::underlying
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> underlying() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:138,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:141,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:142,1
    - Dst: QuantLib::DigitalCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 144
    functionName: QuantLib::DigitalCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 1
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - QuantLib::DigitalCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: void setPricer(const ext::shared_ptr<FloatingRateCouponPricer>& pricer)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::DigitalCoupon::hasPut
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasPut() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::DigitalCoupon::hasCall
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasCall() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::DigitalCoupon::hasCollar
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasCollar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::DigitalCoupon::isLongPut
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLongPut() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::DigitalCoupon::isLongCall
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLongCall() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::DigitalCoupon::underlying
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<FloatingRateCoupon>
    signature: ext::shared_ptr<FloatingRateCoupon> underlying() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:138,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:141,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:142,1
    - Dst: QuantLib::DigitalCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/digitalcoupon.hpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<FloatingRateCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 144
    functionName: QuantLib::DigitalCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/digitalcoupon.hpp
    functionUses: 2
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - QuantLib::DigitalCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: void setPricer(const ext::shared_ptr<FloatingRateCouponPricer>& pricer)
      override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:43,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:43,1
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:51,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:55,1
    - Dst: QuantLib::MultipleResetsCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:57,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:62,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 12
    argNames:
    - ' paymentDate'
    - nominal
    - ' resetSchedule'
    - fixingDays
    - ' index'
    - gearing
    - couponSpread
    - rateSpread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Schedule
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Rate
    - Rate
    - Date
    - Date
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 65
    functionName: QuantLib::MultipleResetsCoupon::MultipleResetsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - resize
    - dayCounter
    - begin
    - std::vector<Date>
    - dates
    - QuantLib::MultipleResetsCoupon::fixingDate
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsCoupon::MultipleResetsCoupon(const Date& paymentDate,\n
      \                                              Real nominal,\n                                               const
      Schedule& resetSchedule,\n                                               Natural
      fixingDays,\n                                               const ext::shared_ptr<IborIndex>&
      index,\n                                               Real gearing,\n                                               Rate
      couponSpread,\n                                               Rate rateSpread,\n
      \                                              const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:85,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:88,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:89,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:90,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:92,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:96,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:100,1
    - Dst: QuantLib::MultipleResetsCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:102,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:106,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:107,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - gearing
    - couponSpread
    - rateSpread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Rate
    - Rate
    - Date
    - Date
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 110
    functionName: QuantLib::MultipleResetsCoupon::MultipleResetsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - yearFraction
    - endOfMonth
    - resize
    - dayCounter
    - begin
    - std::vector<Date>
    - Schedule::dates
    - QuantLib::MultipleResetsCoupon::fixingDate
    - MakeSchedule
    - businessDayConvention
    - size
    - end
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsCoupon::MultipleResetsCoupon(const Date& paymentDate,\n
      \                                              Real nominal,\n                                               const
      Date& startDate,\n                                               const Date&
      endDate,\n                                               Natural fixingDays,\n
      \                                              const ext::shared_ptr<IborIndex>&
      index,\n                                               Real gearing,\n                                               Rate
      couponSpread,\n                                               Rate rateSpread,\n
      \                                              const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<MultipleResetsCoupon>*>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:113,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:115,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::MultipleResetsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<MultipleResetsCoupon>*>
    linkageType: ''
    returnType: void
    signature: void MultipleResetsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:122,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: QuantLib::MultipleResetsCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 2
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date MultipleResetsCoupon::fixingDate(const Date& valueDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const MultipleResetsCoupon*>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:130,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:130,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:136,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:136,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:139,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:140,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:143,1
    - Dst: rateSpread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 145
    functionName: QuantLib::MultipleResetsPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborIndex>
    - ext::shared_ptr::fixing
    - resize
    - accrualPeriod
    - index
    - dynamic_cast<const MultipleResetsCoupon*>
    - QL_FAIL
    - fixingDates
    - size
    - rateSpread
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultipleResetsPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::MultipleResetsPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::MultipleResetsPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::capletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::MultipleResetsPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate MultipleResetsPricer::capletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::MultipleResetsPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::floorletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::MultipleResetsPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate MultipleResetsPricer::floorletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:170,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:171,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:177,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:178,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::AveragingMultipleResetsPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - spread
    - accrualPeriod
    - dt
    - size
    linkageType: ''
    returnType: Real
    signature: Real AveragingMultipleResetsPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:186,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:191,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:192,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::CompoundingMultipleResetsPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - spread
    - accrualPeriod
    - dt
    - size
    linkageType: ''
    returnType: Real
    signature: Real CompoundingMultipleResetsPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:200,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:200,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:203,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - schedule
    - index
    - resetsPerCoupon
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: QuantLib::MultipleResetsLeg::MultipleResetsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - calendar
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsLeg::MultipleResetsLeg(Schedule schedule,\n                                         ext::shared_ptr<IborIndex>
      index,\n                                         Size resetsPerCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: '& MultipleResetsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& MultipleResetsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: '& MultipleResetsLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentDayCounter(const
      DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& MultipleResetsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: '& MultipleResetsLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentCalendar(const Calendar&
      cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '& MultipleResetsLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: '& MultipleResetsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: '& MultipleResetsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: '& MultipleResetsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: '& MultipleResetsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionName: '& MultipleResetsLeg::withCouponSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withCouponSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: '& MultipleResetsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: '& MultipleResetsLeg::withRateSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withRateSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MultipleResetsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MultipleResetsLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 292
    functionName: "& MultipleResetsLeg::withExCouponPeriod(const Period& period,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention convention,\n
      \                                                    bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: "MultipleResetsLeg & MultipleResetsLeg::withExCouponPeriod(const Period&
      period,\n                                                     const Calendar&
      cal,\n                                                     BusinessDayConvention
      convention,\n                                                     bool endOfMonth)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:296,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:298,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:299,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:301,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:303,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:305,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:307,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:308,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:308,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:309,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:312,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:313,1
    - Dst: after
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:314,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:315,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:317,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:318,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:319,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:322,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:327,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:327,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:328,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:328,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:329,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:329,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:331,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:337,1
    - Dst: ext::make_shared<AveragingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:337,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:340,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:340,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:343,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 346
    functionName: MultipleResetsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - calendar
    - back
    - date
    - empty
    - setCouponPricer
    - size
    - after
    - Calendar::advance
    - fixingDays
    - Period
    - QL_FAIL
    - ext::make_shared<AveragingMultipleResetsPricer>
    - advance
    - QL_REQUIRE
    - Integer
    - QuantLib::detail::get
    - ext::make_shared<MultipleResetsCoupon>
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: void
    signature: void MultipleResetsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& SubPeriodsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& SubPeriodsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 369
    functionName: '& SubPeriodsLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentDayCounter(const DayCounter&
      dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 374
    functionName: '& SubPeriodsLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: '& SubPeriodsLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentCalendar(const Calendar&
      cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: '& SubPeriodsLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: '& SubPeriodsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: '& SubPeriodsLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: '& SubPeriodsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionName: '& SubPeriodsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionName: '& SubPeriodsLeg::withCouponSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withCouponSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: '& SubPeriodsLeg::withCouponSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 419
    functionName: '& SubPeriodsLeg::withRateSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withRateSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 424
    functionName: '& SubPeriodsLeg::withRateSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 429
    functionName: '& SubPeriodsLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 440
    functionName: "& SubPeriodsLeg::withExCouponPeriod(const Period& period,\n                                                     const
      Calendar& cal,\n                                                     BusinessDayConvention
      convention,\n                                                     bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: "SubPeriodsLeg & SubPeriodsLeg::withExCouponPeriod(const Period& period,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention convention,\n
      \                                                    bool endOfMonth)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:444,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:448,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:449,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:449,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:450,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:450,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:451,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:452,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:452,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:453,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:454,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:454,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:455,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:456,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:456,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:457,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:459,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:462,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:463,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:464,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:466,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:466,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:467,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:467,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:468,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:468,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:469,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:469,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:470,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:471,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:472,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:475,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:480,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:481,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:481,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:482,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:482,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:483,1
    - Dst: MultipleResetsCoupon::MultipleResetsCoupon
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:489,1
    - Dst: ext::make_shared<AveragingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:489,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:492,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:492,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:495,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:495,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 498
    functionName: SubPeriodsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - MultipleResetsCoupon::MultipleResetsCoupon
    - calendar
    - back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - setCouponPricer
    - size
    - isRegular
    - Calendar::advance
    - fixingDays
    - Period
    - QL_FAIL
    - ext::make_shared<AveragingMultipleResetsPricer>
    - advance
    - QL_REQUIRE
    - Integer
    - QuantLib::detail::get
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: void
    signature: void SubPeriodsLeg::operator Leg() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:43,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:43,1
    - Dst: dates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:51,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:53,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:55,1
    - Dst: QuantLib::MultipleResetsCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:57,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:62,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 12
    argNames:
    - ' paymentDate'
    - nominal
    - ' resetSchedule'
    - fixingDays
    - ' index'
    - gearing
    - couponSpread
    - rateSpread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Schedule
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Rate
    - Rate
    - Date
    - Date
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 65
    functionName: QuantLib::MultipleResetsCoupon::MultipleResetsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - resize
    - dayCounter
    - begin
    - std::vector<Date>
    - dates
    - QuantLib::MultipleResetsCoupon::fixingDate
    - size
    - back
    - end
    - front
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsCoupon::MultipleResetsCoupon(const Date& paymentDate,\n
      \                                              Real nominal,\n                                               const
      Schedule& resetSchedule,\n                                               Natural
      fixingDays,\n                                               const ext::shared_ptr<IborIndex>&
      index,\n                                               Real gearing,\n                                               Rate
      couponSpread,\n                                               Rate rateSpread,\n
      \                                              const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MakeSchedule
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:85,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:88,1
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:89,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:90,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:92,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:96,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:98,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:100,1
    - Dst: QuantLib::MultipleResetsCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:102,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:106,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:107,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - gearing
    - couponSpread
    - rateSpread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<IborIndex>
    - Real
    - Rate
    - Rate
    - Date
    - Date
    - DayCounter
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 110
    functionName: QuantLib::MultipleResetsCoupon::MultipleResetsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - tenor
    - yearFraction
    - endOfMonth
    - resize
    - dayCounter
    - begin
    - std::vector<Date>
    - Schedule::dates
    - QuantLib::MultipleResetsCoupon::fixingDate
    - MakeSchedule
    - businessDayConvention
    - size
    - end
    - fixingCalendar
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsCoupon::MultipleResetsCoupon(const Date& paymentDate,\n
      \                                              Real nominal,\n                                               const
      Date& startDate,\n                                               const Date&
      endDate,\n                                               Natural fixingDays,\n
      \                                              const ext::shared_ptr<IborIndex>&
      index,\n                                               Real gearing,\n                                               Rate
      couponSpread,\n                                               Rate rateSpread,\n
      \                                              const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd,\n                                               const
      DayCounter& dayCounter,\n                                               const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<MultipleResetsCoupon>*>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:113,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:115,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: QuantLib::MultipleResetsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - auto*::visit
    - dynamic_cast<Visitor<MultipleResetsCoupon>*>
    linkageType: ''
    returnType: void
    signature: void MultipleResetsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:122,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' valueDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: QuantLib::MultipleResetsCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 4
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date MultipleResetsCoupon::fixingDate(const Date& valueDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const MultipleResetsCoupon*>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:128,1
    - Dst: ext::dynamic_pointer_cast<IborIndex>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:130,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:130,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:133,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:136,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:136,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:138,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:139,1
    - Dst: resize
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:140,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:143,1
    - Dst: rateSpread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 145
    functionName: QuantLib::MultipleResetsPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<IborIndex>
    - ext::shared_ptr::fixing
    - resize
    - accrualPeriod
    - index
    - dynamic_cast<const MultipleResetsCoupon*>
    - QL_FAIL
    - fixingDates
    - size
    - rateSpread
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MultipleResetsPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: QuantLib::MultipleResetsPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::MultipleResetsPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::capletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: QuantLib::MultipleResetsPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate MultipleResetsPricer::capletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: QuantLib::MultipleResetsPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real MultipleResetsPricer::floorletPrice(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: QuantLib::MultipleResetsPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate MultipleResetsPricer::floorletRate(Rate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:170,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:171,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:177,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:178,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionName: QuantLib::AveragingMultipleResetsPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - spread
    - accrualPeriod
    - dt
    - size
    linkageType: ''
    returnType: Real
    signature: Real AveragingMultipleResetsPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:185,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:186,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:191,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:192,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: QuantLib::CompoundingMultipleResetsPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - spread
    - accrualPeriod
    - dt
    - size
    linkageType: ''
    returnType: Real
    signature: Real CompoundingMultipleResetsPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:200,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:200,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:201,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:203,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:203,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - schedule
    - index
    - resetsPerCoupon
    argTypes:
    - Schedule
    - ext::shared_ptr<IborIndex>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: QuantLib::MultipleResetsLeg::MultipleResetsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - calendar
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultipleResetsLeg::MultipleResetsLeg(Schedule schedule,\n                                         ext::shared_ptr<IborIndex>
      index,\n                                         Size resetsPerCoupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: '& MultipleResetsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& MultipleResetsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: '& MultipleResetsLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentDayCounter(const
      DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& MultipleResetsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: '& MultipleResetsLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentCalendar(const Calendar&
      cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: '& MultipleResetsLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: '& MultipleResetsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: '& MultipleResetsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: '& MultipleResetsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: '& MultipleResetsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionName: '& MultipleResetsLeg::withCouponSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withCouponSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: '& MultipleResetsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: '& MultipleResetsLeg::withRateSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withRateSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& MultipleResetsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: '& MultipleResetsLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: MultipleResetsLeg & MultipleResetsLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 292
    functionName: "& MultipleResetsLeg::withExCouponPeriod(const Period& period,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention convention,\n
      \                                                    bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MultipleResetsLeg
    signature: "MultipleResetsLeg & MultipleResetsLeg::withExCouponPeriod(const Period&
      period,\n                                                     const Calendar&
      cal,\n                                                     BusinessDayConvention
      convention,\n                                                     bool endOfMonth)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:296,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:298,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:299,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:299,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:301,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:303,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:305,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:307,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:308,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:308,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:309,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:312,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:313,1
    - Dst: after
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:314,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:315,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:317,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:318,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:319,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:322,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:327,1
    - Dst: ext::make_shared<MultipleResetsCoupon>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:327,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:328,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:328,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:329,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:329,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:330,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:331,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:337,1
    - Dst: ext::make_shared<AveragingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:337,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:340,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:340,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:343,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 346
    functionName: MultipleResetsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - calendar
    - back
    - date
    - empty
    - setCouponPricer
    - size
    - after
    - Calendar::advance
    - fixingDays
    - Period
    - QL_FAIL
    - ext::make_shared<AveragingMultipleResetsPricer>
    - advance
    - QL_REQUIRE
    - Integer
    - QuantLib::detail::get
    - ext::make_shared<MultipleResetsCoupon>
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: void
    signature: void MultipleResetsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& SubPeriodsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& SubPeriodsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withNotionals(const std::vector<Real>&
      notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 369
    functionName: '& SubPeriodsLeg::withPaymentDayCounter(const DayCounter& dc)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentDayCounter(const DayCounter&
      dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 374
    functionName: '& SubPeriodsLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentAdjustment(BusinessDayConvention
      convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' cal'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: '& SubPeriodsLeg::withPaymentCalendar(const Calendar& cal)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentCalendar(const Calendar&
      cal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - lag
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: '& SubPeriodsLeg::withPaymentLag(Integer lag)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withPaymentLag(Integer lag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: '& SubPeriodsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: '& SubPeriodsLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withFixingDays(const std::vector<Natural>&
      fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: '& SubPeriodsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionName: '& SubPeriodsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withGearings(const std::vector<Real>&
      gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionName: '& SubPeriodsLeg::withCouponSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withCouponSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: '& SubPeriodsLeg::withCouponSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withCouponSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 419
    functionName: '& SubPeriodsLeg::withRateSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withRateSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 424
    functionName: '& SubPeriodsLeg::withRateSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withRateSpreads(const std::vector<Spread>&
      spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - averagingMethod
    argTypes:
    - RateAveraging::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 429
    functionName: '& SubPeriodsLeg::withAveragingMethod(RateAveraging::Type averagingMethod)'
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: SubPeriodsLeg & SubPeriodsLeg::withAveragingMethod(RateAveraging::Type
      averagingMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 440
    functionName: "& SubPeriodsLeg::withExCouponPeriod(const Period& period,\n                                                     const
      Calendar& cal,\n                                                     BusinessDayConvention
      convention,\n                                                     bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubPeriodsLeg
    signature: "SubPeriodsLeg & SubPeriodsLeg::withExCouponPeriod(const Period& period,\n
      \                                                    const Calendar& cal,\n
      \                                                    BusinessDayConvention convention,\n
      \                                                    bool endOfMonth)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:444,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:448,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:449,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:449,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:450,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:450,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:451,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:452,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:452,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:453,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:454,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:454,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:455,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:456,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:456,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:457,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:459,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:462,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:463,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:464,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:466,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:466,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:467,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:467,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:468,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:468,1
    - Dst: Calendar::adjust
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:469,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:469,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:470,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:471,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:472,1
    - Dst: advance
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:475,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:480,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:481,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:481,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:482,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:482,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:483,1
    - Dst: MultipleResetsCoupon::MultipleResetsCoupon
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:479,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:489,1
    - Dst: ext::make_shared<AveragingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:489,1
    - Dst: setCouponPricer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:492,1
    - Dst: ext::make_shared<CompoundingMultipleResetsPricer>
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:492,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:495,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp:495,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 498
    functionName: SubPeriodsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/multipleresetscoupon.cpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - Calendar::adjust
    - MultipleResetsCoupon::MultipleResetsCoupon
    - calendar
    - back
    - hasIsRegular
    - date
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - setCouponPricer
    - size
    - isRegular
    - Calendar::advance
    - fixingDays
    - Period
    - QL_FAIL
    - ext::make_shared<AveragingMultipleResetsPricer>
    - advance
    - QL_REQUIRE
    - Integer
    - QuantLib::detail::get
    - ext::make_shared<CompoundingMultipleResetsPricer>
    linkageType: ''
    returnType: void
    signature: void SubPeriodsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~FloatingRateCouponPricer() override
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FloatingRateCouponPricer() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::FloatingRateCouponPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::IborCouponPricer::useIndexedCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool useIndexedCoupon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::IborCouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:79,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:82,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: QuantLib::IborCouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - Handle<OptionletVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void setCapletVolatility(\n                            const Handle<OptionletVolatilityStructure>&
      v =\n                                    Handle<OptionletVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:115,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:122,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 126
    functionName: QuantLib::BlackIborCouponPricer::BlackIborCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - Handle<OptionletVolatilityStructure>
    - ext::shared_ptr<Quote>
    - registerWith
    - SimpleQuote::SimpleQuote
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackIborCouponPricer(\n            const Handle<OptionletVolatilityStructure>&
      v = Handle<OptionletVolatilityStructure>(),\n            const TimingAdjustment
      timingAdjustment = Black76,\n            Handle<Quote> correlation = Handle<Quote>(ext::shared_ptr<Quote>(new
      SimpleQuote(1.0))),\n            const ext::optional<bool> useIndexedCoupon
      = ext::nullopt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:152,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:153,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::CmsCouponPricer::CmsCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Handle<SwaptionVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void CmsCouponPricer(\n            Handle<SwaptionVolatilityStructure>
      v = Handle<SwaptionVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::CmsCouponPricer::swaptionVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> swaptionVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:162,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:165,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 167
    functionName: QuantLib::CmsCouponPricer::setSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - Handle<SwaptionVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void setSwaptionVolatility(\n                            const Handle<SwaptionVolatilityStructure>&
      v=\n                                    Handle<SwaptionVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: ~MeanRevertingPricer()
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MeanRevertingPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:211,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:211,1
    - Dst: QuantLib::BlackIborCouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: QuantLib::BlackIborCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: QuantLib::BlackIborCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackIborCouponPricer::adjustedFixing
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:220,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:220,1
    - Dst: QuantLib::BlackIborCouponPricer::capletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::BlackIborCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::capletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 2
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::BlackIborCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackIborCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:230,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:230,1
    - Dst: QuantLib::BlackIborCouponPricer::floorletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::BlackIborCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::floorletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: QuantLib::BlackIborCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackIborCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~FloatingRateCouponPricer() override
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FloatingRateCouponPricer() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::FloatingRateCouponPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::IborCouponPricer::useIndexedCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool useIndexedCoupon() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::IborCouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<OptionletVolatilityStructure>
    signature: Handle<OptionletVolatilityStructure> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:79,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:80,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:82,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: QuantLib::IborCouponPricer::setCapletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - Handle<OptionletVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void setCapletVolatility(\n                            const Handle<OptionletVolatilityStructure>&
      v =\n                                    Handle<OptionletVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<OptionletVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:115,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:117,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:122,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 126
    functionName: QuantLib::BlackIborCouponPricer::BlackIborCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - Handle<OptionletVolatilityStructure>
    - ext::shared_ptr<Quote>
    - registerWith
    - SimpleQuote::SimpleQuote
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BlackIborCouponPricer(\n            const Handle<OptionletVolatilityStructure>&
      v = Handle<OptionletVolatilityStructure>(),\n            const TimingAdjustment
      timingAdjustment = Black76,\n            Handle<Quote> correlation = Handle<Quote>(ext::shared_ptr<Quote>(new
      SimpleQuote(1.0))),\n            const ext::optional<bool> useIndexedCoupon
      = ext::nullopt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:152,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:153,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::CmsCouponPricer::CmsCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Handle<SwaptionVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void CmsCouponPricer(\n            Handle<SwaptionVolatilityStructure>
      v = Handle<SwaptionVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: QuantLib::CmsCouponPricer::swaptionVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<SwaptionVolatilityStructure>
    signature: Handle<SwaptionVolatilityStructure> swaptionVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<SwaptionVolatilityStructure>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:162,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:165,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 167
    functionName: QuantLib::CmsCouponPricer::setSwaptionVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    - Handle<SwaptionVolatilityStructure>
    linkageType: ''
    returnType: void
    signature: "void setSwaptionVolatility(\n                            const Handle<SwaptionVolatilityStructure>&
      v=\n                                    Handle<SwaptionVolatilityStructure>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: ~MeanRevertingPricer()
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MeanRevertingPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:211,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:211,1
    - Dst: QuantLib::BlackIborCouponPricer::swapletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 3
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: QuantLib::BlackIborCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::adjustedFixing
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: QuantLib::BlackIborCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackIborCouponPricer::adjustedFixing
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::swapletRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:220,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:220,1
    - Dst: QuantLib::BlackIborCouponPricer::capletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 3
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::BlackIborCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::capletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 2
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::BlackIborCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackIborCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::capletRate(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:230,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:230,1
    - Dst: QuantLib::BlackIborCouponPricer::floorletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: QuantLib::BlackIborCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::BlackIborCouponPricer::floorletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real BlackIborCouponPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackIborCouponPricer::optionletRate
      Src: /src/quantlib/ql/cashflows/couponpricer.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: QuantLib::BlackIborCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/couponpricer.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackIborCouponPricer::optionletRate
    linkageType: ''
    returnType: Rate
    signature: Rate BlackIborCouponPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: '& swapIndex() const'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> & swapIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: '& swapIndex() const'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<SwapIndex>
    signature: ext::shared_ptr<SwapIndex> & swapIndex() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:74,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:75,1
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:76,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:88,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:88,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:91,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:91,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:94,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:94,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:97,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:100,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:105,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:110,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:110,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:113,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:114,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:116,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:118,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:119,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:119,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:122,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:123,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:123,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:125,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:126,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:129,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:132,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:135,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:136,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:142,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:146,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:148,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:148,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:150,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:151,1
    - Dst: FloatingCouponType::FloatingCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:158,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:160,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:160,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:162,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:163,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:164,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:164,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:165,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:165,1
    - Dst: CappedFlooredCouponType::CappedFlooredCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 12
    argNames:
    - ' schedule'
    - ' nominals'
    - ' index'
    - ' paymentDayCounter'
    - paymentAdj
    - ' fixingDays'
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - isInArrears
    - isZero
    argTypes:
    - Schedule
    - std::vector<Real>
    - ext::shared_ptr<InterestRateIndexType>
    - DayCounter
    - BusinessDayConvention
    - std::vector<Natural>
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 173
    functionName: QuantLib::FloatingLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.hpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - QuantLib::date
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - hasIsRegular
    - QuantLib::advance
    - tenor
    - CappedFlooredCouponType::CappedFlooredCouponType
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - FloatingCouponType::FloatingCouponType
    - adjust
    - QuantLib::detail::effectiveFixedRate
    - QuantLib::size
    - isRegular
    - fixingDays
    - Period
    - QuantLib::detail::noOption
    - Calendar
    - QL_REQUIRE
    - QuantLib::Null
    - QuantLib::detail::get
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: Leg
    signature: "Leg FloatingLeg(const Schedule& schedule,\n                    const
      std::vector<Real>& nominals,\n                    const ext::shared_ptr<InterestRateIndexType>&
      index,\n                    const DayCounter& paymentDayCounter,\n                    BusinessDayConvention
      paymentAdj,\n                    const std::vector<Natural>& fixingDays,\n                    const
      std::vector<Real>& gearings,\n                    const std::vector<Spread>&
      spreads,\n                    const std::vector<Rate>& caps,\n                    const
      std::vector<Rate>& floors,\n                    bool isInArrears,\n                    bool
      isZero,\n                    Integer paymentLag = 0,\n                    Calendar
      paymentCalendar = Calendar(),\n                    Period exCouponPeriod = Period(),\n
      \                   Calendar exCouponCalendar = Calendar(),\n                    BusinessDayConvention
      exCouponAdjustment = Unadjusted,\n                    bool exCouponEndOfMonth
      = false)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:200,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:201,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:201,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:204,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:204,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:207,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:207,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:210,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:210,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:213,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:213,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:214,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:217,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:220,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:226,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:227,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:228,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:230,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:231,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:231,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:234,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:235,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:235,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:237,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:240,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:241,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:247,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:249,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:249,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:251,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:252,1
    - Dst: FloatingCouponType::FloatingCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:245,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:258,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:258,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:261,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:261,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:262,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:262,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:265,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:265,1
    - Dst: DigitalCouponType::DigitalCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 18
    argNames:
    - ' schedule'
    - ' nominals'
    - ' index'
    - ' paymentDayCounter'
    - paymentAdj
    - ' fixingDays'
    - ' gearings'
    - ' spreads'
    - isInArrears
    - ' callStrikes'
    - callPosition
    - isCallATMIncluded
    - ' callDigitalPayoffs'
    - ' putStrikes'
    - putPosition
    - isPutATMIncluded
    - ' putDigitalPayoffs'
    - ' replication'
    argTypes:
    - Schedule
    - std::vector<Real>
    - ext::shared_ptr<InterestRateIndexType>
    - DayCounter
    - BusinessDayConvention
    - std::vector<Natural>
    - std::vector<Real>
    - std::vector<Spread>
    - bool
    - std::vector<Rate>
    - Position::Type
    - bool
    - std::vector<Rate>
    - std::vector<Rate>
    - Position::Type
    - bool
    - std::vector<Rate>
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 270
    functionName: QuantLib::FloatingDigitalLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.hpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - QuantLib::date
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - hasIsRegular
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - FloatingCouponType::FloatingCouponType
    - adjust
    - QuantLib::size
    - isRegular
    - fixingDays
    - DigitalCouponType::DigitalCouponType
    - QL_REQUIRE
    - QuantLib::Null
    - QuantLib::detail::get
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: Leg
    signature: "Leg FloatingDigitalLeg(\n                        const Schedule& schedule,\n
      \                       const std::vector<Real>& nominals,\n                        const
      ext::shared_ptr<InterestRateIndexType>& index,\n                        const
      DayCounter& paymentDayCounter,\n                        BusinessDayConvention
      paymentAdj,\n                        const std::vector<Natural>& fixingDays,\n
      \                       const std::vector<Real>& gearings,\n                        const
      std::vector<Spread>& spreads,\n                        bool isInArrears,\n                        const
      std::vector<Rate>& callStrikes,\n                        Position::Type callPosition,\n
      \                       bool isCallATMIncluded,\n                        const
      std::vector<Rate>& callDigitalPayoffs,\n                        const std::vector<Rate>&
      putStrikes,\n                        Position::Type putPosition,\n                        bool
      isPutATMIncluded,\n                        const std::vector<Rate>& putDigitalPayoffs,\n
      \                       const ext::shared_ptr<DigitalReplication>& replication,\n
      \                       bool nakedOption = false)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:74,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:75,1
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:76,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:86,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:88,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:88,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:91,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:91,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:92,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:94,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:94,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:97,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:100,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:105,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:110,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:110,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:113,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:114,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:116,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:117,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:118,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:119,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:119,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:121,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:122,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:123,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:123,1
    - Dst: Period
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:125,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:126,1
    - Dst: QuantLib::advance
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:129,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:132,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:135,1
    - Dst: QuantLib::detail::effectiveFixedRate
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:136,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:133,1
    - Dst: QuantLib::detail::noOption
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:142,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:146,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:148,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:148,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:150,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:151,1
    - Dst: FloatingCouponType::FloatingCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:143,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:158,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:160,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:160,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:162,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:163,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:164,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:164,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:165,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:165,1
    - Dst: CappedFlooredCouponType::CappedFlooredCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:155,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 12
    argNames:
    - ' schedule'
    - ' nominals'
    - ' index'
    - ' paymentDayCounter'
    - paymentAdj
    - ' fixingDays'
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - isInArrears
    - isZero
    argTypes:
    - Schedule
    - std::vector<Real>
    - ext::shared_ptr<InterestRateIndexType>
    - DayCounter
    - BusinessDayConvention
    - std::vector<Natural>
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 173
    functionName: QuantLib::FloatingLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.hpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - QuantLib::date
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - hasIsRegular
    - QuantLib::advance
    - tenor
    - CappedFlooredCouponType::CappedFlooredCouponType
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - FloatingCouponType::FloatingCouponType
    - adjust
    - QuantLib::detail::effectiveFixedRate
    - QuantLib::size
    - isRegular
    - fixingDays
    - Period
    - QuantLib::detail::noOption
    - Calendar
    - QL_REQUIRE
    - QuantLib::Null
    - QuantLib::detail::get
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: Leg
    signature: "Leg FloatingLeg(const Schedule& schedule,\n                    const
      std::vector<Real>& nominals,\n                    const ext::shared_ptr<InterestRateIndexType>&
      index,\n                    const DayCounter& paymentDayCounter,\n                    BusinessDayConvention
      paymentAdj,\n                    const std::vector<Natural>& fixingDays,\n                    const
      std::vector<Real>& gearings,\n                    const std::vector<Spread>&
      spreads,\n                    const std::vector<Rate>& caps,\n                    const
      std::vector<Rate>& floors,\n                    bool isInArrears,\n                    bool
      isZero,\n                    Integer paymentLag = 0,\n                    Calendar
      paymentCalendar = Calendar(),\n                    Period exCouponPeriod = Period(),\n
      \                   Calendar exCouponCalendar = Calendar(),\n                    BusinessDayConvention
      exCouponAdjustment = Unadjusted,\n                    bool exCouponEndOfMonth
      = false)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:199,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:200,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:201,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:201,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:204,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:204,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:207,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:207,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:210,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:210,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:213,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:213,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:214,1
    - Dst: Leg::reserve
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:217,1
    - Dst: calendar
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:220,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:226,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:227,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:228,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:229,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:230,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:231,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:231,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: isRegular
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:233,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:234,1
    - Dst: adjust
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:235,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:235,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:237,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:240,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:241,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:238,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:247,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:249,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:249,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:251,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:252,1
    - Dst: FloatingCouponType::FloatingCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:245,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:258,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:258,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:261,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:261,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:262,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:262,1
    - Dst: QuantLib::detail::get
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:265,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:265,1
    - Dst: DigitalCouponType::DigitalCouponType
      Src: /src/quantlib/ql/cashflows/cashflowvectors.hpp:255,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 18
    argNames:
    - ' schedule'
    - ' nominals'
    - ' index'
    - ' paymentDayCounter'
    - paymentAdj
    - ' fixingDays'
    - ' gearings'
    - ' spreads'
    - isInArrears
    - ' callStrikes'
    - callPosition
    - isCallATMIncluded
    - ' callDigitalPayoffs'
    - ' putStrikes'
    - putPosition
    - isPutATMIncluded
    - ' putDigitalPayoffs'
    - ' replication'
    argTypes:
    - Schedule
    - std::vector<Real>
    - ext::shared_ptr<InterestRateIndexType>
    - DayCounter
    - BusinessDayConvention
    - std::vector<Natural>
    - std::vector<Real>
    - std::vector<Spread>
    - bool
    - std::vector<Rate>
    - Position::Type
    - bool
    - std::vector<Rate>
    - std::vector<Rate>
    - Position::Type
    - bool
    - std::vector<Rate>
    - ext::shared_ptr<DigitalReplication>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 270
    functionName: QuantLib::FloatingDigitalLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cashflowvectors.hpp
    functionUses: 0
    functionsReached:
    - Leg::push_back
    - QuantLib::date
    - FixedRateCoupon::FixedRateCoupon
    - calendar
    - hasIsRegular
    - tenor
    - empty
    - ext::shared_ptr<CashFlow>
    - Leg::reserve
    - FloatingCouponType::FloatingCouponType
    - adjust
    - QuantLib::size
    - isRegular
    - fixingDays
    - DigitalCouponType::DigitalCouponType
    - QL_REQUIRE
    - QuantLib::Null
    - QuantLib::detail::get
    - businessDayConvention
    - hasTenor
    linkageType: ''
    returnType: Leg
    signature: "Leg FloatingDigitalLeg(\n                        const Schedule& schedule,\n
      \                       const std::vector<Real>& nominals,\n                        const
      ext::shared_ptr<InterestRateIndexType>& index,\n                        const
      DayCounter& paymentDayCounter,\n                        BusinessDayConvention
      paymentAdj,\n                        const std::vector<Natural>& fixingDays,\n
      \                       const std::vector<Real>& gearings,\n                        const
      std::vector<Spread>& spreads,\n                        bool isInArrears,\n                        const
      std::vector<Rate>& callStrikes,\n                        Position::Type callPosition,\n
      \                       bool isCallATMIncluded,\n                        const
      std::vector<Rate>& callDigitalPayoffs,\n                        const std::vector<Rate>&
      putStrikes,\n                        Position::Type putPosition,\n                        bool
      isPutATMIncluded,\n                        const std::vector<Rate>& putDigitalPayoffs,\n
      \                       const ext::shared_ptr<DigitalReplication>& replication,\n
      \                       bool nakedOption = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:29,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:31,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::SimpleCashFlow::SimpleCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SimpleCashFlow::SimpleCashFlow(Real amount,\n                                   const
      Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:29,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:31,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/simplecashflow.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: QuantLib::SimpleCashFlow::SimpleCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SimpleCashFlow::SimpleCashFlow(Real amount,\n                                   const
      Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - index
    - ' observationLag'
    - dayCounter
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<InflationIndex>
    - Period
    - DayCounter
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 50
    functionName: QuantLib::InflationCoupon::InflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void InflationCoupon::InflationCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     const Date& startDate,\n                                     const
      Date& endDate,\n                                     Natural fixingDays,\n                                     ext::shared_ptr<InflationIndex>
      index,\n                                     const Period& observationLag,\n
      \                                    DayCounter dayCounter,\n                                     const
      Date& refPeriodStart,\n                                     const Date& refPeriodEnd,\n
      \                                    const Date& exCouponDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:54,1
    - Dst: checkPricerImpl
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:54,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:59,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 61
    functionName: QuantLib::InflationCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - unregisterWith
    - update
    - checkPricerImpl
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::setPricer(const ext::shared_ptr<InflationCouponPricer>&
      pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::InflationCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate InflationCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:70,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:73,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::InflationCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    - Dst: QuantLib::InflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::InflationCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - accruedPeriod
    - nominal
    - QuantLib::InflationCoupon::rate
    linkageType: ''
    returnType: Real
    signature: Real InflationCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:90,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::InflationCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date InflationCoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationCoupon::amount
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::InflationCoupon::price
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - QuantLib::InflationCoupon::amount
    linkageType: ''
    returnType: Real
    signature: Real InflationCoupon::price(const Handle<YieldTermStructure>& discountingCurve)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:101,1
    - Dst: QuantLib::InflationCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::InflationCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InflationCoupon::fixingDate
    - fixing
    linkageType: ''
    returnType: Rate
    signature: Rate InflationCoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:48,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - index
    - ' observationLag'
    - dayCounter
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<InflationIndex>
    - Period
    - DayCounter
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 50
    functionName: QuantLib::InflationCoupon::InflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void InflationCoupon::InflationCoupon(const Date& paymentDate,\n                                     Real
      nominal,\n                                     const Date& startDate,\n                                     const
      Date& endDate,\n                                     Natural fixingDays,\n                                     ext::shared_ptr<InflationIndex>
      index,\n                                     const Period& observationLag,\n
      \                                    DayCounter dayCounter,\n                                     const
      Date& refPeriodStart,\n                                     const Date& refPeriodEnd,\n
      \                                    const Date& exCouponDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:54,1
    - Dst: checkPricerImpl
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:54,1
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:59,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<InflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 61
    functionName: QuantLib::InflationCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - unregisterWith
    - update
    - checkPricerImpl
    - registerWith
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::setPricer(const ext::shared_ptr<InflationCouponPricer>&
      pricer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::InflationCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 3
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate InflationCoupon::rate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:70,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:73,1
    - Dst: swapletRate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::InflationCoupon::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - initialize
    - swapletRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InflationCoupon::performCalculations() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    - Dst: QuantLib::InflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::InflationCoupon::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - accruedPeriod
    - nominal
    - QuantLib::InflationCoupon::rate
    linkageType: ''
    returnType: Real
    signature: Real InflationCoupon::accruedAmount(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixingCalendar
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:90,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::InflationCoupon::fixingDate
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - static_cast<Integer>
    - fixingCalendar
    linkageType: ''
    returnType: Date
    signature: Date InflationCoupon::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InflationCoupon::amount
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' discountingCurve'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::InflationCoupon::price
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - QuantLib::InflationCoupon::amount
    linkageType: ''
    returnType: Real
    signature: Real InflationCoupon::price(const Handle<YieldTermStructure>& discountingCurve)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:101,1
    - Dst: QuantLib::InflationCoupon::fixingDate
      Src: /src/quantlib/ql/cashflows/inflationcoupon.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::InflationCoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InflationCoupon::fixingDate
    - fixing
    linkageType: ''
    returnType: Rate
    signature: Rate InflationCoupon::indexFixing() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:34,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:37,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' dividendHandle'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::configureDividendHandle
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - empty
    - ext::make_shared<FlatForward>
    - Handle<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> configureDividendHandle(const Handle<YieldTermStructure>&
      dividendHandle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:34,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:37,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' dividendHandle'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::configureDividendHandle
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - empty
    - ext::make_shared<FlatForward>
    - Handle<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> configureDividendHandle(const Handle<YieldTermStructure>&
      dividendHandle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EquityCashFlow>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:47,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - ext::shared_ptr<EquityCashFlowPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::setPricer
    - ext::dynamic_pointer_cast<EquityCashFlow>
    linkageType: ''
    returnType: void
    signature: void setCouponPricer(const Leg& leg, const ext::shared_ptr<EquityCashFlowPricer>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - notional
    - index
    - ' baseDate'
    - ' fixingDate'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<EquityIndex>
    - Date
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::EquityCashFlow::EquityCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EquityCashFlow::EquityCashFlow(Real notional,\n                                   ext::shared_ptr<EquityIndex>
      index,\n                                   const Date& baseDate,\n                                   const
      Date& fixingDate,\n                                   const Date& paymentDate,\n
      \                                  bool growthOnly)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:66,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<EquityCashFlowPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::EquityCashFlow::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void EquityCashFlow::setPricer(const ext::shared_ptr<EquityCashFlowPricer>&
      pricer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::amount
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:72,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:73,1
    - Dst: notional
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:74,1
    - Dst: price
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::EquityCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - notional
    - price
    - initialize
    - QuantLib::IndexedCashFlow::amount
    linkageType: ''
    returnType: Real
    signature: Real EquityCashFlow::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:85,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:87,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - quantoCurrencyTermStructure
    - equityVolatility
    - fxVolatility
    - correlation
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 89
    functionName: QuantLib::EquityQuantoCashFlowPricer::EquityQuantoCashFlowPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EquityQuantoCashFlowPricer::EquityQuantoCashFlowPricer(\n        Handle<YieldTermStructure>
      quantoCurrencyTermStructure,\n        Handle<BlackVolTermStructure> equityVolatility,\n
      \       Handle<BlackVolTermStructure> fxVolatility,\n        Handle<Quote> correlation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EquityIndex>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:92,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:92,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:94,1
    - Dst: baseDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:96,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:98,1
    - Dst: growthOnly
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:101,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:105,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:107,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:109,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:109,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:110,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:111,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ' cashFlow'
    argTypes:
    - EquityCashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 114
    functionName: QuantLib::EquityQuantoCashFlowPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - empty
    - ext::dynamic_pointer_cast<EquityIndex>
    - fixingDate
    - QL_FAIL
    - index
    - growthOnly
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EquityQuantoCashFlowPricer::initialize(const EquityCashFlow& cashFlow)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:117,1
    - Dst: configureDividendHandle
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:119,1
    - Dst: equityDividendCurve
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:119,1
    - Dst: ext::make_shared<QuantoTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:121,1
    - Dst: equityInterestRateCurve
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:123,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:124,1
    - Dst: clone
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:126,1
    - Dst: spot
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:126,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:128,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: QuantLib::EquityQuantoCashFlowPricer::price
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<QuantoTermStructure>
    - value
    - ext::shared_ptr::fixing
    - clone
    - equityInterestRateCurve
    - equityDividendCurve
    - fixing
    - spot
    - configureDividendHandle
    linkageType: ''
    returnType: Real
    signature: Real EquityQuantoCashFlowPricer::price() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:34,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:37,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' dividendHandle'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::configureDividendHandle
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - empty
    - ext::make_shared<FlatForward>
    - Handle<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> configureDividendHandle(const Handle<YieldTermStructure>&
      dividendHandle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:34,1
    - Dst: ext::make_shared<FlatForward>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:35,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:36,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:37,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' dividendHandle'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: QuantLib::configureDividendHandle
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - empty
    - ext::make_shared<FlatForward>
    - Handle<YieldTermStructure>
    - Actual365Fixed
    - NullCalendar
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> configureDividendHandle(const Handle<YieldTermStructure>&
      dividendHandle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EquityCashFlow>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:47,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' leg'
    - ' p'
    argTypes:
    - Leg
    - ext::shared_ptr<EquityCashFlowPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::setCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::setPricer
    - ext::dynamic_pointer_cast<EquityCashFlow>
    linkageType: ''
    returnType: void
    signature: void setCouponPricer(const Leg& leg, const ext::shared_ptr<EquityCashFlowPricer>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - notional
    - index
    - ' baseDate'
    - ' fixingDate'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<EquityIndex>
    - Date
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::EquityCashFlow::EquityCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EquityCashFlow::EquityCashFlow(Real notional,\n                                   ext::shared_ptr<EquityIndex>
      index,\n                                   const Date& baseDate,\n                                   const
      Date& fixingDate,\n                                   const Date& paymentDate,\n
      \                                  bool growthOnly)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:66,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<EquityCashFlowPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: QuantLib::EquityCashFlow::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void EquityCashFlow::setPricer(const ext::shared_ptr<EquityCashFlowPricer>&
      pricer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::amount
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:72,1
    - Dst: initialize
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:73,1
    - Dst: notional
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:74,1
    - Dst: price
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::EquityCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - notional
    - price
    - initialize
    - QuantLib::IndexedCashFlow::amount
    linkageType: ''
    returnType: Real
    signature: Real EquityCashFlow::amount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:85,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:87,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - quantoCurrencyTermStructure
    - equityVolatility
    - fxVolatility
    - correlation
    argTypes:
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<BlackVolTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 89
    functionName: QuantLib::EquityQuantoCashFlowPricer::EquityQuantoCashFlowPricer
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EquityQuantoCashFlowPricer::EquityQuantoCashFlowPricer(\n        Handle<YieldTermStructure>
      quantoCurrencyTermStructure,\n        Handle<BlackVolTermStructure> equityVolatility,\n
      \       Handle<BlackVolTermStructure> fxVolatility,\n        Handle<Quote> correlation)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<EquityIndex>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:92,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:92,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:94,1
    - Dst: baseDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:96,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:97,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:98,1
    - Dst: growthOnly
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:99,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:101,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:103,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:105,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:105,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:107,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:109,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:109,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:110,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:111,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ' cashFlow'
    argTypes:
    - EquityCashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 114
    functionName: QuantLib::EquityQuantoCashFlowPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - empty
    - ext::dynamic_pointer_cast<EquityIndex>
    - fixingDate
    - QL_FAIL
    - index
    - growthOnly
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EquityQuantoCashFlowPricer::initialize(const EquityCashFlow& cashFlow)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:117,1
    - Dst: configureDividendHandle
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:119,1
    - Dst: equityDividendCurve
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:119,1
    - Dst: ext::make_shared<QuantoTermStructure>
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:121,1
    - Dst: equityInterestRateCurve
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:123,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:124,1
    - Dst: clone
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:126,1
    - Dst: spot
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:126,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:128,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/equitycashflow.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: QuantLib::EquityQuantoCashFlowPricer::price
    functionSourceFile: /src/quantlib/ql/cashflows/equitycashflow.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<QuantoTermStructure>
    - value
    - ext::shared_ptr::fixing
    - clone
    - equityInterestRateCurve
    - equityDividendCurve
    - fixing
    - spot
    - configureDividendHandle
    linkageType: ''
    returnType: Real
    signature: Real EquityQuantoCashFlowPricer::price() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:39,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:43,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:45,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:45,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' leg'
    argTypes:
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::CashFlows::startDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - QL_REQUIRE
    - date
    - empty
    - QuantLib::Date::maxDate
    - ext::shared_ptr::accrualStartDate
    - ext::dynamic_pointer_cast<Coupon>
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date CashFlows::startDate(const Leg& leg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:53,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:59,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:59,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:61,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' leg'
    argTypes:
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 64
    functionName: QuantLib::CashFlows::maturityDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - date
    - QuantLib::Date::minDate
    - empty
    - std::max
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date CashFlows::maturityDate(const Leg& leg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:70,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:73,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:76,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::CashFlows::isExpired
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - size
    linkageType: ''
    returnType: bool
    signature: "bool CashFlows::isExpired(const Leg& leg,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:87,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:90,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:91,1
    - Dst: rbegin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:94,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:94,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:95,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 99
    functionName: QuantLib::CashFlows::previousCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - rend
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - rbegin
    linkageType: ''
    returnType: Leg::const_reverse_iterator
    signature: "Leg::const_reverse_iterator CashFlows::previousCashFlow(const Leg&
      leg,\n                                bool includeSettlementDateFlows,\n                                Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:106,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:108,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:112,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:116,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 117
    functionName: QuantLib::CashFlows::nextCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - begin
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - end
    linkageType: ''
    returnType: Leg::const_iterator
    signature: "Leg::const_iterator CashFlows::nextCashFlow(const Leg& leg,\n                            bool
      includeSettlementDateFlows,\n                            Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:123,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:125,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 129
    functionName: QuantLib::CashFlows::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - rend
    - QuantLib::CashFlows::previousCashFlow
    - date
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::previousCashFlowDate(const Leg& leg,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:135,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:137,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: QuantLib::CashFlows::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - end
    - date
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::nextCashFlowDate(const Leg& leg,\n                                     bool
      includeSettlementDateFlows,\n                                     Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:147,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:149,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:150,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:152,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:154,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:154,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 157
    functionName: QuantLib::CashFlows::previousCashFlowAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - rend
    - Real
    - QuantLib::CashFlows::previousCashFlow
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::previousCashFlowAmount(const Leg& leg,\n                                           bool
      includeSettlementDateFlows,\n                                           Date
      settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:165,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:166,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:168,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:170,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:170,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 173
    functionName: QuantLib::CashFlows::nextCashFlowAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - Real
    - QuantLib::CashFlows::nextCashFlow
    - end
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::nextCashFlowAmount(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:184,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:190,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:196,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:201,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:202,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:203,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:205,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ' leg'
    - first
    - ' last'
    argTypes:
    - Leg
    - Iter
    - Iter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 211
    functionName: QuantLib::aggregateRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::date
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<Coupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate aggregateRate(const Leg& leg,\n                           Iter
      first,\n                           const Iter& last)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:184,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:190,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:196,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:201,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:202,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:203,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:205,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ' leg'
    - first
    - ' last'
    argTypes:
    - Leg
    - Iter
    - Iter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 211
    functionName: QuantLib::aggregateRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::date
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<Coupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate aggregateRate(const Leg& leg,\n                           Iter
      first,\n                           const Iter& last)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:219,1
    - Dst: aggregateRate<Leg::const_reverse_iterator>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:221,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 222
    functionName: QuantLib::CashFlows::previousCouponRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - rend
    - QuantLib::CashFlows::previousCashFlow
    - aggregateRate<Leg::const_reverse_iterator>
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::previousCouponRate(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:228,1
    - Dst: aggregateRate<Leg::const_iterator>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:229,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionName: QuantLib::CashFlows::nextCouponRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - end
    - aggregateRate<Leg::const_iterator>
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::nextCouponRate(const Leg& leg,\n                                   bool
      includeSettlementDateFlows,\n                                   Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:235,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:236,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:238,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:239,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:239,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:240,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 245
    functionName: QuantLib::CashFlows::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::shared_ptr::nominal
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::nominal(const Leg& leg,\n                            bool
      includeSettlementDateFlows,\n                            Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:250,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:251,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:255,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:255,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:256,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:258,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 261
    functionName: QuantLib::CashFlows::accrualStartDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualStartDate
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::accrualStartDate(const Leg& leg,\n                                     bool
      includeSettlementDateFlows,\n                                     Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:266,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:267,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:270,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:271,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:271,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:272,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 277
    functionName: QuantLib::CashFlows::accrualEndDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::accrualEndDate(const Leg& leg,\n                                   bool
      includeSettlementDateFlows,\n                                   Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:282,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:283,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:286,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:287,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:287,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:288,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:290,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 293
    functionName: QuantLib::CashFlows::referencePeriodStart
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::referencePeriodStart
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::referencePeriodStart(const Leg& leg,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:298,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:299,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:302,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:303,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:304,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::CashFlows::referencePeriodEnd
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::referencePeriodEnd(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:314,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:315,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:317,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:318,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:318,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:319,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:321,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 324
    functionName: QuantLib::CashFlows::accrualPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualPeriod
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::accrualPeriod(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:329,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:330,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:332,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:333,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:333,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:334,1
    - Dst: ext::shared_ptr::accrualDays
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:336,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 339
    functionName: QuantLib::CashFlows::accrualDays
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualDays
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type CashFlows::accrualDays(const Leg& leg,\n                                             bool
      includeSettlementDateFlows,\n                                             Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:344,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:345,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:347,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:348,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:350,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:351,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:351,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:352,1
    - Dst: ext::shared_ptr::accruedPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:354,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 357
    functionName: QuantLib::CashFlows::accruedPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - end
    - ext::shared_ptr::accruedPeriod
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::accruedPeriod(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:362,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:363,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:365,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:366,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:368,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:369,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:369,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:370,1
    - Dst: ext::shared_ptr::accruedDays
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:372,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 375
    functionName: QuantLib::CashFlows::accruedDays
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accruedDays
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type CashFlows::accruedDays(const Leg& leg,\n                                             bool
      includeSettlementDateFlows,\n                                             Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:380,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:381,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:383,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:384,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:386,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:388,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:388,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:389,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:391,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 394
    functionName: QuantLib::CashFlows::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accruedAmount
    - end
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::accruedAmount(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: QuantLib::BPSCalculator::BPSCalculator
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BPSCalculator(const YieldTermStructure& discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:406,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:407,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Coupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - accrualPeriod
    - nominal
    linkageType: ''
    returnType: void
    signature: void visit(Coupon& c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:412,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cf'
    argTypes:
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - amount
    - date
    linkageType: ''
    returnType: void
    signature: void visit(CashFlow& cf) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 415
    functionName: QuantLib::BPSCalculator::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real bps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: QuantLib::BPSCalculator::nonSensNPV
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonSensNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: QuantLib::BPSCalculator::BPSCalculator
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BPSCalculator(const YieldTermStructure& discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:406,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:407,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Coupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - accrualPeriod
    - nominal
    linkageType: ''
    returnType: void
    signature: void visit(Coupon& c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:412,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cf'
    argTypes:
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - amount
    - date
    linkageType: ''
    returnType: void
    signature: void visit(CashFlow& cf) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 415
    functionName: QuantLib::BPSCalculator::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real bps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: QuantLib::BPSCalculator::nonSensNPV
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonSensNPV() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:431,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:434,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:435,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:437,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:442,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:443,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:447,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 448
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 10
    functionsReached:
    - date
    - empty
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      YieldTermStructure& discountCurve,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:455,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:458,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:459,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:461,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:466,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:467,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:468,1
    - Dst: BPSCalculator::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:470,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:470,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 471
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 10
    functionsReached:
    - empty
    - accept
    - BPSCalculator::bps
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        const
      YieldTermStructure& discountCurve,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:481,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:485,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:486,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:488,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:493,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:495,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:496,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:497,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:497,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:498,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:500,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:500,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:503,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 508
    functionName: QuantLib::CashFlows::npvbps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - empty
    - ext::shared_ptr::accrualPeriod
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - ext::shared_ptr::nominal
    - tradingExCoupon
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> CashFlows::npvbps(const Leg& leg,\n                                            const
      YieldTermStructure& discountCurve,\n                                            bool
      includeSettlementDateFlows,\n                                            Date
      settlementDate,\n                                            Date npvDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:516,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:519,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:520,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:522,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:529,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:531,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:532,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:533,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:533,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:534,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:538,1
    - Dst: BPSCalculator::nonSensNPV
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:539,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:541,1
    - Dst: BPSCalculator::nonSensNPV
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:542,1
    - Dst: BPSCalculator::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:548,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 6
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - targetNpv
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 552
    functionName: QuantLib::CashFlows::atmRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 10
    functionsReached:
    - date
    - empty
    - accept
    - BPSCalculator::bps
    - Null<Real>
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    - BPSCalculator::nonSensNPV
    - amount
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::atmRate(const Leg& leg,\n                            const
      YieldTermStructure& discountCurve,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate,\n                            Real targetNpv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:559,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 566
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - T
    linkageType: ''
    returnType: Integer
    signature: Integer sign(T x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:573,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:576,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:578,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:579,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:591,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:598,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ' cashFlow'
    - ' dc'
    - npvDate
    - lastDate
    argTypes:
    - ext::shared_ptr<QuantLib::CashFlow>
    - DayCounter
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 601
    functionName: QuantLib::getStepwiseDiscountTime
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::date
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    linkageType: ''
    returnType: Time
    signature: "Time getStepwiseDiscountTime(const ext::shared_ptr<QuantLib::CashFlow>&
      cashFlow,\n                                     const DayCounter& dc,\n                                     Date
      npvDate,\n                                     Date lastDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:608,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:611,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:612,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:614,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:621,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:623,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:626,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:627,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:631,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:632,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:636,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 641
    functionName: QuantLib::simpleDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - tradingExCoupon
    - empty
    - QuantLib::date
    - dayCounter
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - discountFactor
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real simpleDuration(const Leg& leg,\n                            const
      InterestRate& y,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:648,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:651,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:652,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:654,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:660,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:661,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:663,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:665,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:668,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:669,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:673,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:674,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:676,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:699,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:702,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 708
    functionName: QuantLib::modifiedDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - QuantLib::date
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - frequency
    - hasOccurred
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real modifiedDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: QuantLib::modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 710
    functionDepth: 3
    functionLinenumber: 710
    functionLinenumberEnd: 723
    functionName: QuantLib::macaulayDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - rate
    - QuantLib::modifiedDuration
    - compounding
    - Integer
    - frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real macaulayDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - d
    argTypes:
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 729
    functionName: "operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:559,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 566
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - T
    linkageType: ''
    returnType: Integer
    signature: Integer sign(T x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:573,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:576,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:578,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:579,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:591,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:598,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ' cashFlow'
    - ' dc'
    - npvDate
    - lastDate
    argTypes:
    - ext::shared_ptr<QuantLib::CashFlow>
    - DayCounter
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 601
    functionName: QuantLib::getStepwiseDiscountTime
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - yearFraction
    - QuantLib::date
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    linkageType: ''
    returnType: Time
    signature: "Time getStepwiseDiscountTime(const ext::shared_ptr<QuantLib::CashFlow>&
      cashFlow,\n                                     const DayCounter& dc,\n                                     Date
      npvDate,\n                                     Date lastDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:608,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:611,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:612,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:614,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:621,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:623,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:626,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:627,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:631,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:632,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:636,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 641
    functionName: QuantLib::simpleDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - tradingExCoupon
    - empty
    - QuantLib::date
    - dayCounter
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - discountFactor
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real simpleDuration(const Leg& leg,\n                            const
      InterestRate& y,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:648,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:651,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:652,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:654,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:660,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:661,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:663,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:665,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:668,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:669,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:673,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:674,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:676,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:699,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:702,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 708
    functionName: QuantLib::modifiedDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 1
    functionsReached:
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - QuantLib::date
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - frequency
    - hasOccurred
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real modifiedDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: QuantLib::modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 710
    functionDepth: 3
    functionLinenumber: 710
    functionLinenumberEnd: 723
    functionName: QuantLib::macaulayDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - rate
    - QuantLib::modifiedDuration
    - compounding
    - Integer
    - frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real macaulayDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - d
    argTypes:
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 729
    functionName: "operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:742,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:746,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:747,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:749,1
    - Dst: checkSign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 8
    argNames:
    - ' leg'
    - npv
    - dayCounter
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 734
    functionDepth: 0
    functionLinenumber: 734
    functionLinenumberEnd: 753
    functionName: "CashFlows::IrrFinder::IrrFinder(const Leg& leg,\n                                    Real
      npv,\n                                    DayCounter dayCounter,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - std::move
    - checkSign
    linkageType: ''
    returnType: void
    signature: "void CashFlows::IrrFinder::IrrFinder(const Leg& leg,\n                                    Real
      npv,\n                                    DayCounter dayCounter,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 755
    functionDepth: 1
    functionLinenumber: 755
    functionLinenumberEnd: 761
    functionName: CashFlows::IrrFinder::operator()(Rate y) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    linkageType: ''
    returnType: Real
    signature: Real CashFlows::IrrFinder::operator()(Rate y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 768
    functionName: CashFlows::IrrFinder::derivative(Rate y) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - modifiedDuration
    linkageType: ''
    returnType: Real
    signature: Real CashFlows::IrrFinder::derivative(Rate y) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:775,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:775,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:778,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:779,1
    - Dst: sign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:780,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:780,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:788,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 770
    functionDepth: 1
    functionLinenumber: 770
    functionLinenumberEnd: 810
    functionName: CashFlows::IrrFinder::checkSign() const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - sign
    - Real
    - hasOccurred
    - tradingExCoupon
    - amount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CashFlows::IrrFinder::checkSign() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:818,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:821,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:822,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:824,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: std::adjacent_find
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: CashFlowLater
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:829,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:829,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:836,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:838,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:841,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:842,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:846,1
    - Dst: getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:846,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:848,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 854
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 11
    functionsReached:
    - date
    - tradingExCoupon
    - empty
    - dayCounter
    - getStepwiseDiscountTime
    - begin
    - amount
    - QuantLib::detail::instance
    - Date
    - CashFlowLater
    - hasOccurred
    - discountFactor
    - end
    - std::adjacent_find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      InterestRate& y,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:864,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 867
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - QuantLib::CashFlows::npv
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        Rate
      yield,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:875,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:878,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:879,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:881,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:884,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:884,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:885,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:885,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:886,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - ' leg'
    - ' yield'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 889
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 11
    functionsReached:
    - rate
    - empty
    - compounding
    - QuantLib::CashFlows::bps
    - dayCounter
    - QuantLib::detail::instance
    - Date
    - frequency
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        const
      InterestRate& yield,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:899,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 891
    functionDepth: 1
    functionLinenumber: 891
    functionLinenumberEnd: 902
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - QuantLib::CashFlows::bps
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        Rate
      yield,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:916,1
    - Dst: CashFlows::yield<NewtonSafe>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:917,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' leg'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 922
    functionName: QuantLib::CashFlows::yield
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - CashFlows::yield<NewtonSafe>
    - NewtonSafe::setMaxEvaluations
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::yield(const Leg& leg,\n                          Real
      npv,\n                          const DayCounter& dayCounter,\n                          Compounding
      compounding,\n                          Frequency frequency,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate,\n                          Real accuracy,\n
      \                         Size maxIterations,\n                          Rate
      guess)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:932,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:935,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:936,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:938,1
    - Dst: simpleDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:943,1
    - Dst: modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:947,1
    - Dst: macaulayDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:951,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:955,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 6
    argNames:
    - ' leg'
    - ' rate'
    - type
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - Duration::Type
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 925
    functionDepth: 1
    functionLinenumber: 925
    functionLinenumberEnd: 957
    functionName: QuantLib::CashFlows::duration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - macaulayDuration
    - simpleDuration
    - modifiedDuration
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::duration(const Leg& leg,\n                             const
      InterestRate& rate,\n                             Duration::Type type,\n                             bool
      includeSettlementDateFlows,\n                             Date settlementDate,\n
      \                            Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:968,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - type
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Duration::Type
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 972
    functionName: QuantLib::CashFlows::duration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::CashFlows::duration
    - InterestRate
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::duration(const Leg& leg,\n                             Rate
      yield,\n                             const DayCounter& dc,\n                             Compounding
      comp,\n                             Frequency freq,\n                             Duration::Type
      type,\n                             bool includeSettlementDateFlows,\n                             Date
      settlementDate,\n                             Date npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:979,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:982,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:983,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:985,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:988,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:993,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:994,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:997,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1000,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1001,1
    - Dst: getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1005,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1006,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1008,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1031,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1032,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1032,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1034,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 974
    functionDepth: 1
    functionLinenumber: 974
    functionLinenumberEnd: 1042
    functionName: QuantLib::CashFlows::convexity
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    - frequency
    - hasOccurred
    - getStepwiseDiscountTime
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::convexity(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1053,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1056
    functionName: QuantLib::CashFlows::convexity
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - InterestRate
    - QuantLib::CashFlows::convexity
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::convexity(const Leg& leg,\n                              Rate
      yield,\n                              const DayCounter& dc,\n                              Compounding
      comp,\n                              Frequency freq,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate,\n
      \                             Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1063,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1066,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1067,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1069,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1072,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1075,1
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1079,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1058
    functionDepth: 2
    functionLinenumber: 1058
    functionLinenumberEnd: 1090
    functionName: QuantLib::CashFlows::basisPointValue
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::CashFlows::duration
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    - QuantLib::CashFlows::convexity
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::basisPointValue(const Leg& leg,\n                                    const
      InterestRate& y,\n                                    bool includeSettlementDateFlows,\n
      \                                   Date settlementDate,\n                                    Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::basisPointValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1100,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1092
    functionDepth: 1
    functionLinenumber: 1092
    functionLinenumberEnd: 1103
    functionName: QuantLib::CashFlows::basisPointValue
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::CashFlows::basisPointValue
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::basisPointValue(const Leg& leg,\n                                    Rate
      yield,\n                                    const DayCounter& dc,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1110,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1113,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1114,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1116,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1119,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1105
    functionDepth: 2
    functionLinenumber: 1105
    functionLinenumberEnd: 1129
    functionName: QuantLib::CashFlows::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::CashFlows::duration
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::yieldValueBasisPoint(const Leg& leg,\n                                         const
      InterestRate& y,\n                                         bool includeSettlementDateFlows,\n
      \                                        Date settlementDate,\n                                         Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::yieldValueBasisPoint
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1139,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1131
    functionDepth: 1
    functionLinenumber: 1131
    functionLinenumberEnd: 1142
    functionName: QuantLib::CashFlows::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - InterestRate
    - QuantLib::CashFlows::yieldValueBasisPoint
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::yieldValueBasisPoint(const Leg& leg,\n                                         Rate
      yield,\n                                         const DayCounter& dc,\n                                         Compounding
      comp,\n                                         Frequency freq,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate,\n
      \                                        Date npvDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1158,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1159,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1165,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1166,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1168,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1173,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - npv
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1175
    functionName: QuantLib::ZSpreadFinder::ZSpreadFinder
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - enableExtrapolation
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::instance
    - Date
    - Handle<Quote>
    - allowsExtrapolation
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void ZSpreadFinder(const Leg& leg,\n                          const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                          Real
      npv,\n                          const DayCounter& dc,\n                          Compounding
      comp,\n                          Frequency freq,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1177,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - zSpread
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1182
    functionName: operator()(Rate zSpread) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate zSpread) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1158,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1159,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1165,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1166,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1168,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1173,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - npv
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1175
    functionName: QuantLib::ZSpreadFinder::ZSpreadFinder
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - enableExtrapolation
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::instance
    - Date
    - Handle<Quote>
    - allowsExtrapolation
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void ZSpreadFinder(const Leg& leg,\n                          const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                          Real
      npv,\n                          const DayCounter& dc,\n                          Compounding
      comp,\n                          Frequency freq,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1177,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - zSpread
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1182
    functionName: operator()(Rate zSpread) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate zSpread) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1204,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1207,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1208,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1210,1
    - Dst: ZeroSpreadedTermStructure::enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1221,1
    - Dst: Handle::allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1221,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1223,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - zSpread
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1226
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 17
    functionsReached:
    - empty
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    - Handle::allowsExtrapolation
    - ZeroSpreadedTermStructure::enableExtrapolation
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                        Spread
      zSpread,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1241,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1242,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1244,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1248,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1255,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 12
    argNames:
    - ' leg'
    - npv
    - ' discount'
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Leg
    - Real
    - ext::shared_ptr<YieldTermStructure>
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1228
    functionDepth: 0
    functionLinenumber: 1228
    functionLinenumberEnd: 1256
    functionName: QuantLib::CashFlows::zSpread
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Spread
    signature: "Spread CashFlows::zSpread(const Leg& leg,\n                              Real
      npv,\n                              const ext::shared_ptr<YieldTermStructure>&
      discount,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate,\n
      \                             Date npvDate,\n                              Real
      accuracy,\n                              Size maxIterations,\n                              Rate
      guess)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:39,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:39,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:43,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:45,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:45,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:47,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' leg'
    argTypes:
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionName: QuantLib::CashFlows::startDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - QL_REQUIRE
    - date
    - empty
    - QuantLib::Date::maxDate
    - ext::shared_ptr::accrualStartDate
    - ext::dynamic_pointer_cast<Coupon>
    - std::min
    linkageType: ''
    returnType: Date
    signature: Date CashFlows::startDate(const Leg& leg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:53,1
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:53,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:57,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:59,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:59,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:61,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' leg'
    argTypes:
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 64
    functionName: QuantLib::CashFlows::maturityDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - date
    - QuantLib::Date::minDate
    - empty
    - std::max
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date CashFlows::maturityDate(const Leg& leg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:70,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:73,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:76,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 81
    functionName: QuantLib::CashFlows::isExpired
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - size
    linkageType: ''
    returnType: bool
    signature: "bool CashFlows::isExpired(const Leg& leg,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:87,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:90,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:91,1
    - Dst: rbegin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:94,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:94,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:95,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 99
    functionName: QuantLib::CashFlows::previousCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 5
    functionsReached:
    - empty
    - rend
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - rbegin
    linkageType: ''
    returnType: Leg::const_reverse_iterator
    signature: "Leg::const_reverse_iterator CashFlows::previousCashFlow(const Leg&
      leg,\n                                bool includeSettlementDateFlows,\n                                Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:105,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:106,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:108,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:112,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:112,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:116,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 117
    functionName: QuantLib::CashFlows::nextCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 15
    functionsReached:
    - empty
    - begin
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - end
    linkageType: ''
    returnType: Leg::const_iterator
    signature: "Leg::const_iterator CashFlows::nextCashFlow(const Leg& leg,\n                            bool
      includeSettlementDateFlows,\n                            Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:123,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:125,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 129
    functionName: QuantLib::CashFlows::previousCashFlowDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - rend
    - QuantLib::CashFlows::previousCashFlow
    - date
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::previousCashFlowDate(const Leg& leg,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:135,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:137,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: QuantLib::CashFlows::nextCashFlowDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - end
    - date
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::nextCashFlowDate(const Leg& leg,\n                                     bool
      includeSettlementDateFlows,\n                                     Date settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:147,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:149,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:150,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:152,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:154,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:154,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 157
    functionName: QuantLib::CashFlows::previousCashFlowAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - rend
    - Real
    - QuantLib::CashFlows::previousCashFlow
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::previousCashFlowAmount(const Leg& leg,\n                                           bool
      includeSettlementDateFlows,\n                                           Date
      settlementDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:165,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:166,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:168,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:170,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:170,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 173
    functionName: QuantLib::CashFlows::nextCashFlowAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - Real
    - QuantLib::CashFlows::nextCashFlow
    - end
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::nextCashFlowAmount(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:184,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:190,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:196,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:201,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:202,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:203,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:205,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ' leg'
    - first
    - ' last'
    argTypes:
    - Leg
    - Iter
    - Iter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 211
    functionName: QuantLib::aggregateRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::date
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<Coupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate aggregateRate(const Leg& leg,\n                           Iter
      first,\n                           const Iter& last)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:184,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:190,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:191,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:194,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:195,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:196,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:201,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:202,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:203,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:205,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ' leg'
    - first
    - ' last'
    argTypes:
    - Leg
    - Iter
    - Iter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 211
    functionName: QuantLib::aggregateRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::date
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - ext::dynamic_pointer_cast<Coupon>
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate aggregateRate(const Leg& leg,\n                           Iter
      first,\n                           const Iter& last)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::previousCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:219,1
    - Dst: aggregateRate<Leg::const_reverse_iterator>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:221,1
    - Dst: rend
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 222
    functionName: QuantLib::CashFlows::previousCouponRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - rend
    - QuantLib::CashFlows::previousCashFlow
    - aggregateRate<Leg::const_reverse_iterator>
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::previousCouponRate(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:228,1
    - Dst: aggregateRate<Leg::const_iterator>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:229,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionName: QuantLib::CashFlows::nextCouponRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - end
    - aggregateRate<Leg::const_iterator>
    - QuantLib::CashFlows::nextCashFlow
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::nextCouponRate(const Leg& leg,\n                                   bool
      includeSettlementDateFlows,\n                                   Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:235,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:236,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:238,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:239,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:239,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:240,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 245
    functionName: QuantLib::CashFlows::nominal
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::shared_ptr::nominal
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::nominal(const Leg& leg,\n                            bool
      includeSettlementDateFlows,\n                            Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:250,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:251,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:255,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:255,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:256,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:258,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 261
    functionName: QuantLib::CashFlows::accrualStartDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualStartDate
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::accrualStartDate(const Leg& leg,\n                                     bool
      includeSettlementDateFlows,\n                                     Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:266,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:267,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:270,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:271,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:271,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:272,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 277
    functionName: QuantLib::CashFlows::accrualEndDate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::accrualEndDate(const Leg& leg,\n                                   bool
      includeSettlementDateFlows,\n                                   Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:282,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:283,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:286,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:287,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:287,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:288,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:290,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 293
    functionName: QuantLib::CashFlows::referencePeriodStart
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::referencePeriodStart
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::referencePeriodStart(const Leg& leg,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:298,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:299,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:302,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:303,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:303,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:304,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: QuantLib::CashFlows::referencePeriodEnd
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date
    signature: "Date CashFlows::referencePeriodEnd(const Leg& leg,\n                                       bool
      includeSettlementDateFlows,\n                                       Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:314,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:315,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:317,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:318,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:318,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:319,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:321,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 324
    functionName: QuantLib::CashFlows::accrualPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualPeriod
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::accrualPeriod(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:329,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:330,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:332,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:333,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:333,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:334,1
    - Dst: ext::shared_ptr::accrualDays
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:336,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 339
    functionName: QuantLib::CashFlows::accrualDays
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accrualDays
    - QuantLib::CashFlows::nextCashFlow
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type CashFlows::accrualDays(const Leg& leg,\n                                             bool
      includeSettlementDateFlows,\n                                             Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:344,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:345,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:347,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:348,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:350,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:351,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:351,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:352,1
    - Dst: ext::shared_ptr::accruedPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:354,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 357
    functionName: QuantLib::CashFlows::accruedPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - end
    - ext::shared_ptr::accruedPeriod
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::accruedPeriod(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:362,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:363,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:365,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:366,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:368,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:369,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:369,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:370,1
    - Dst: ext::shared_ptr::accruedDays
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:372,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 375
    functionName: QuantLib::CashFlows::accruedDays
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - ext::shared_ptr::accruedDays
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - end
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type CashFlows::accruedDays(const Leg& leg,\n                                             bool
      includeSettlementDateFlows,\n                                             Date
      settlementDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:380,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:381,1
    - Dst: QuantLib::CashFlows::nextCashFlow
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:383,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:384,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:386,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:388,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:388,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:389,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:391,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ' leg'
    - includeSettlementDateFlows
    - settlementDate
    argTypes:
    - Leg
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 394
    functionName: QuantLib::CashFlows::accruedAmount
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - QuantLib::CashFlows::nextCashFlow
    - QuantLib::detail::instance
    - Date
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accruedAmount
    - end
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::accruedAmount(const Leg& leg,\n                                  bool
      includeSettlementDateFlows,\n                                  Date settlementDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: QuantLib::BPSCalculator::BPSCalculator
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BPSCalculator(const YieldTermStructure& discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:406,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:407,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Coupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - accrualPeriod
    - nominal
    linkageType: ''
    returnType: void
    signature: void visit(Coupon& c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:412,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cf'
    argTypes:
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - amount
    - date
    linkageType: ''
    returnType: void
    signature: void visit(CashFlow& cf) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 415
    functionName: QuantLib::BPSCalculator::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real bps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: QuantLib::BPSCalculator::nonSensNPV
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonSensNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' discountCurve'
    argTypes:
    - YieldTermStructure
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: QuantLib::BPSCalculator::BPSCalculator
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BPSCalculator(const YieldTermStructure& discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:406,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:407,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Coupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - date
    - accrualPeriod
    - nominal
    linkageType: ''
    returnType: void
    signature: void visit(Coupon& c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:412,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' cf'
    argTypes:
    - CashFlow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: QuantLib::BPSCalculator::visit
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - discount
    - amount
    - date
    linkageType: ''
    returnType: void
    signature: void visit(CashFlow& cf) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 415
    functionName: QuantLib::BPSCalculator::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real bps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: QuantLib::BPSCalculator::nonSensNPV
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nonSensNPV() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:431,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:434,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:435,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:437,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:442,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:443,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:444,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:447,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 448
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 17
    functionsReached:
    - date
    - empty
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      YieldTermStructure& discountCurve,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:455,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:458,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:459,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:461,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:466,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:467,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:468,1
    - Dst: BPSCalculator::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:470,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:470,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 471
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 12
    functionsReached:
    - empty
    - accept
    - BPSCalculator::bps
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        const
      YieldTermStructure& discountCurve,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:481,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:485,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:486,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:488,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:493,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:495,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:496,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:497,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:497,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:498,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:500,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:500,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:503,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 5
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 508
    functionName: QuantLib::CashFlows::npvbps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - date
    - empty
    - ext::shared_ptr::accrualPeriod
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - ext::shared_ptr::nominal
    - tradingExCoupon
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> CashFlows::npvbps(const Leg& leg,\n                                            const
      YieldTermStructure& discountCurve,\n                                            bool
      includeSettlementDateFlows,\n                                            Date
      settlementDate,\n                                            Date npvDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:516,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:519,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:520,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:522,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:529,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:531,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:532,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:533,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:533,1
    - Dst: accept
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:534,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:538,1
    - Dst: BPSCalculator::nonSensNPV
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:539,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:541,1
    - Dst: BPSCalculator::nonSensNPV
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:542,1
    - Dst: BPSCalculator::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:548,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 6
    argNames:
    - ' leg'
    - ' discountCurve'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - targetNpv
    argTypes:
    - Leg
    - YieldTermStructure
    - bool
    - Date
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 552
    functionName: QuantLib::CashFlows::atmRate
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 10
    functionsReached:
    - date
    - empty
    - accept
    - BPSCalculator::bps
    - Null<Real>
    - discount
    - QuantLib::detail::instance
    - Date
    - hasOccurred
    - tradingExCoupon
    - BPSCalculator::nonSensNPV
    - amount
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::atmRate(const Leg& leg,\n                            const
      YieldTermStructure& discountCurve,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate,\n                            Real targetNpv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:559,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 566
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - T
    linkageType: ''
    returnType: Integer
    signature: Integer sign(T x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:573,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:576,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:578,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:579,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:591,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:598,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ' cashFlow'
    - ' dc'
    - npvDate
    - lastDate
    argTypes:
    - ext::shared_ptr<QuantLib::CashFlow>
    - DayCounter
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 601
    functionName: QuantLib::getStepwiseDiscountTime
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - yearFraction
    - QuantLib::date
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    linkageType: ''
    returnType: Time
    signature: "Time getStepwiseDiscountTime(const ext::shared_ptr<QuantLib::CashFlow>&
      cashFlow,\n                                     const DayCounter& dc,\n                                     Date
      npvDate,\n                                     Date lastDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:608,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:611,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:612,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:614,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:621,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:623,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:626,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:627,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:631,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:632,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:636,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 641
    functionName: QuantLib::simpleDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - tradingExCoupon
    - empty
    - QuantLib::date
    - dayCounter
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - discountFactor
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real simpleDuration(const Leg& leg,\n                            const
      InterestRate& y,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:648,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:651,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:652,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:654,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:660,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:661,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:663,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:665,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:668,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:669,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:673,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:674,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:676,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:699,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:702,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 708
    functionName: QuantLib::modifiedDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 2
    functionsReached:
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - QuantLib::date
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - frequency
    - hasOccurred
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real modifiedDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: QuantLib::modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 710
    functionDepth: 3
    functionLinenumber: 710
    functionLinenumberEnd: 723
    functionName: QuantLib::macaulayDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - rate
    - QuantLib::modifiedDuration
    - compounding
    - Integer
    - frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real macaulayDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - d
    argTypes:
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 729
    functionName: "operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: T
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:559,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 566
    functionName: QuantLib::sign
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - T
    linkageType: ''
    returnType: Integer
    signature: Integer sign(T x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:573,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:576,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:578,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:579,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:591,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:592,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:594,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:598,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ' cashFlow'
    - ' dc'
    - npvDate
    - lastDate
    argTypes:
    - ext::shared_ptr<QuantLib::CashFlow>
    - DayCounter
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 601
    functionName: QuantLib::getStepwiseDiscountTime
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 6
    functionsReached:
    - yearFraction
    - QuantLib::date
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::dynamic_pointer_cast<Coupon>
    linkageType: ''
    returnType: Time
    signature: "Time getStepwiseDiscountTime(const ext::shared_ptr<QuantLib::CashFlow>&
      cashFlow,\n                                     const DayCounter& dc,\n                                     Date
      npvDate,\n                                     Date lastDate)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:608,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:611,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:612,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:614,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:621,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:623,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:626,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:627,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:631,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:632,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:636,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 641
    functionName: QuantLib::simpleDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - tradingExCoupon
    - empty
    - QuantLib::date
    - dayCounter
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - discountFactor
    - hasOccurred
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real simpleDuration(const Leg& leg,\n                            const
      InterestRate& y,\n                            bool includeSettlementDateFlows,\n
      \                           Date settlementDate,\n                            Date
      npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:648,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:651,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:652,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:654,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:660,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:661,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:663,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:665,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:668,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:669,1
    - Dst: QuantLib::getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:673,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:674,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:676,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:699,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:700,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:702,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 708
    functionName: QuantLib::modifiedDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - QuantLib::date
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::Date
    - QuantLib::getStepwiseDiscountTime
    - frequency
    - hasOccurred
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real modifiedDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:716,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:719,1
    - Dst: QuantLib::modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 710
    functionDepth: 3
    functionLinenumber: 710
    functionLinenumberEnd: 723
    functionName: QuantLib::macaulayDuration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - rate
    - QuantLib::modifiedDuration
    - compounding
    - Integer
    - frequency
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real macaulayDuration(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    - Dst: ext::shared_ptr<CashFlow>::date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - d
    argTypes:
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr<CashFlow>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 729
    functionName: "operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<CashFlow>::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const ext::shared_ptr<CashFlow> &c,\n                            const
      ext::shared_ptr<CashFlow> &d)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:742,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:746,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:747,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:749,1
    - Dst: checkSign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 8
    argNames:
    - ' leg'
    - npv
    - dayCounter
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 734
    functionDepth: 0
    functionLinenumber: 734
    functionLinenumberEnd: 753
    functionName: "CashFlows::IrrFinder::IrrFinder(const Leg& leg,\n                                    Real
      npv,\n                                    DayCounter dayCounter,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - std::move
    - checkSign
    linkageType: ''
    returnType: void
    signature: "void CashFlows::IrrFinder::IrrFinder(const Leg& leg,\n                                    Real
      npv,\n                                    DayCounter dayCounter,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 755
    functionDepth: 1
    functionLinenumber: 755
    functionLinenumberEnd: 761
    functionName: CashFlows::IrrFinder::operator()(Rate y) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    linkageType: ''
    returnType: Real
    signature: Real CashFlows::IrrFinder::operator()(Rate y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 768
    functionName: CashFlows::IrrFinder::derivative(Rate y) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - modifiedDuration
    linkageType: ''
    returnType: Real
    signature: Real CashFlows::IrrFinder::derivative(Rate y) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:775,1
    - Dst: Real
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:775,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:778,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:779,1
    - Dst: sign
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:780,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:780,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:788,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 770
    functionDepth: 1
    functionLinenumber: 770
    functionLinenumberEnd: 810
    functionName: CashFlows::IrrFinder::checkSign() const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - sign
    - Real
    - hasOccurred
    - tradingExCoupon
    - amount
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CashFlows::IrrFinder::checkSign() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:818,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:821,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:822,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:824,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: std::adjacent_find
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:828,1
    - Dst: CashFlowLater
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:829,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:829,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:836,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:838,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:841,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:842,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:846,1
    - Dst: getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:846,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:848,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 854
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 18
    functionsReached:
    - date
    - tradingExCoupon
    - empty
    - dayCounter
    - getStepwiseDiscountTime
    - begin
    - amount
    - QuantLib::detail::instance
    - Date
    - CashFlowLater
    - hasOccurred
    - discountFactor
    - end
    - std::adjacent_find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      InterestRate& y,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:864,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 867
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 19
    functionsReached:
    - QuantLib::CashFlows::npv
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        Rate
      yield,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:875,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:878,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:879,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:881,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:884,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:884,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:885,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:885,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:886,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - ' leg'
    - ' yield'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 889
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 13
    functionsReached:
    - rate
    - empty
    - compounding
    - QuantLib::CashFlows::bps
    - dayCounter
    - QuantLib::detail::instance
    - Date
    - frequency
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        const
      InterestRate& yield,\n                        bool includeSettlementDateFlows,\n
      \                       Date settlementDate,\n                        Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:899,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 891
    functionDepth: 1
    functionLinenumber: 891
    functionLinenumberEnd: 902
    functionName: QuantLib::CashFlows::bps
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 14
    functionsReached:
    - QuantLib::CashFlows::bps
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::bps(const Leg& leg,\n                        Rate
      yield,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:916,1
    - Dst: CashFlows::yield<NewtonSafe>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:917,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - ' leg'
    - npv
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Leg
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 922
    functionName: QuantLib::CashFlows::yield
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - CashFlows::yield<NewtonSafe>
    - NewtonSafe::setMaxEvaluations
    linkageType: ''
    returnType: Rate
    signature: "Rate CashFlows::yield(const Leg& leg,\n                          Real
      npv,\n                          const DayCounter& dayCounter,\n                          Compounding
      compounding,\n                          Frequency frequency,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate,\n                          Real accuracy,\n
      \                         Size maxIterations,\n                          Rate
      guess)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:932,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:935,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:936,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:938,1
    - Dst: simpleDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:943,1
    - Dst: modifiedDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:947,1
    - Dst: macaulayDuration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:951,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:955,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 6
    argNames:
    - ' leg'
    - ' rate'
    - type
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - Duration::Type
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 925
    functionDepth: 1
    functionLinenumber: 925
    functionLinenumberEnd: 957
    functionName: QuantLib::CashFlows::duration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 5
    functionsReached:
    - empty
    - macaulayDuration
    - simpleDuration
    - modifiedDuration
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::duration(const Leg& leg,\n                             const
      InterestRate& rate,\n                             Duration::Type type,\n                             bool
      includeSettlementDateFlows,\n                             Date settlementDate,\n
      \                            Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:968,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - type
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - Duration::Type
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 972
    functionName: QuantLib::CashFlows::duration
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::CashFlows::duration
    - InterestRate
    linkageType: ''
    returnType: Time
    signature: "Time CashFlows::duration(const Leg& leg,\n                             Rate
      yield,\n                             const DayCounter& dc,\n                             Compounding
      comp,\n                             Frequency freq,\n                             Duration::Type
      type,\n                             bool includeSettlementDateFlows,\n                             Date
      settlementDate,\n                             Date npvDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:979,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:982,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:983,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:985,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:988,1
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:993,1
    - Dst: frequency
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:994,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:997,1
    - Dst: amount
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1000,1
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1001,1
    - Dst: getStepwiseDiscountTime
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1005,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1006,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1008,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1031,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1032,1
    - Dst: compounding
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1032,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1034,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 974
    functionDepth: 1
    functionLinenumber: 974
    functionLinenumberEnd: 1042
    functionName: QuantLib::CashFlows::convexity
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - date
    - rate
    - empty
    - tradingExCoupon
    - compounding
    - dayCounter
    - Integer
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    - frequency
    - hasOccurred
    - getStepwiseDiscountTime
    - discountFactor
    - amount
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::convexity(const Leg& leg,\n                              const
      InterestRate& y,\n                              bool includeSettlementDateFlows,\n
      \                             Date settlementDate,\n                              Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1053,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1056
    functionName: QuantLib::CashFlows::convexity
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 5
    functionsReached:
    - InterestRate
    - QuantLib::CashFlows::convexity
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::convexity(const Leg& leg,\n                              Rate
      yield,\n                              const DayCounter& dc,\n                              Compounding
      comp,\n                              Frequency freq,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate,\n
      \                             Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1063,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1066,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1067,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1069,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1072,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1075,1
    - Dst: QuantLib::CashFlows::convexity
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1079,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1058
    functionDepth: 2
    functionLinenumber: 1058
    functionLinenumberEnd: 1090
    functionName: QuantLib::CashFlows::basisPointValue
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - empty
    - QuantLib::CashFlows::duration
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    - QuantLib::CashFlows::convexity
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::basisPointValue(const Leg& leg,\n                                    const
      InterestRate& y,\n                                    bool includeSettlementDateFlows,\n
      \                                   Date settlementDate,\n                                    Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::basisPointValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1100,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1092
    functionDepth: 1
    functionLinenumber: 1092
    functionLinenumberEnd: 1103
    functionName: QuantLib::CashFlows::basisPointValue
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::CashFlows::basisPointValue
    - InterestRate
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::basisPointValue(const Leg& leg,\n                                    Rate
      yield,\n                                    const DayCounter& dc,\n                                    Compounding
      comp,\n                                    Frequency freq,\n                                    bool
      includeSettlementDateFlows,\n                                    Date settlementDate,\n
      \                                   Date npvDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1110,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1113,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1114,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1116,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1119,1
    - Dst: QuantLib::CashFlows::duration
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - ' leg'
    - ' y'
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - InterestRate
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1105
    functionDepth: 2
    functionLinenumber: 1105
    functionLinenumberEnd: 1129
    functionName: QuantLib::CashFlows::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 3
    functionsReached:
    - empty
    - QuantLib::CashFlows::duration
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::yieldValueBasisPoint(const Leg& leg,\n                                         const
      InterestRate& y,\n                                         bool includeSettlementDateFlows,\n
      \                                        Date settlementDate,\n                                         Date
      npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CashFlows::yieldValueBasisPoint
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1139,1
    - Dst: InterestRate
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' leg'
    - yield
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - Rate
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1131
    functionDepth: 1
    functionLinenumber: 1131
    functionLinenumberEnd: 1142
    functionName: QuantLib::CashFlows::yieldValueBasisPoint
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - InterestRate
    - QuantLib::CashFlows::yieldValueBasisPoint
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::yieldValueBasisPoint(const Leg& leg,\n                                         Rate
      yield,\n                                         const DayCounter& dc,\n                                         Compounding
      comp,\n                                         Frequency freq,\n                                         bool
      includeSettlementDateFlows,\n                                         Date settlementDate,\n
      \                                        Date npvDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1158,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1159,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1165,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1166,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1168,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1173,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - npv
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1175
    functionName: QuantLib::ZSpreadFinder::ZSpreadFinder
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - enableExtrapolation
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::instance
    - Date
    - Handle<Quote>
    - allowsExtrapolation
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void ZSpreadFinder(const Leg& leg,\n                          const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                          Real
      npv,\n                          const DayCounter& dc,\n                          Compounding
      comp,\n                          Frequency freq,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1177,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - zSpread
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1182
    functionName: operator()(Rate zSpread) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate zSpread) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1158,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1159,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1160,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1165,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1166,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1168,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1173,1
    - Dst: allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - npv
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Real
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1149
    functionDepth: 0
    functionLinenumber: 1149
    functionLinenumberEnd: 1175
    functionName: QuantLib::ZSpreadFinder::ZSpreadFinder
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - enableExtrapolation
    - SimpleQuote::SimpleQuote
    - QuantLib::detail::instance
    - Date
    - Handle<Quote>
    - allowsExtrapolation
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: "void ZSpreadFinder(const Leg& leg,\n                          const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                          Real
      npv,\n                          const DayCounter& dc,\n                          Compounding
      comp,\n                          Frequency freq,\n                          bool
      includeSettlementDateFlows,\n                          Date settlementDate,\n
      \                         Date npvDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1177,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - zSpread
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1182
    functionName: operator()(Rate zSpread) const
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CashFlows::npv
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Rate zSpread) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1204,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1207,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1208,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1210,1
    - Dst: ZeroSpreadedTermStructure::enableExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1221,1
    - Dst: Handle::allowsExtrapolation
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1221,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1223,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 9
    argNames:
    - ' leg'
    - ' discountCurve'
    - zSpread
    - ' dc'
    - comp
    - freq
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    argTypes:
    - Leg
    - ext::shared_ptr<YieldTermStructure>
    - Spread
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1226
    functionName: QuantLib::CashFlows::npv
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 24
    functionsReached:
    - empty
    - QuantLib::CashFlows::npv
    - QuantLib::detail::instance
    - Date
    - Handle::allowsExtrapolation
    - ZeroSpreadedTermStructure::enableExtrapolation
    linkageType: ''
    returnType: Real
    signature: "Real CashFlows::npv(const Leg& leg,\n                        const
      ext::shared_ptr<YieldTermStructure>& discountCurve,\n                        Spread
      zSpread,\n                        const DayCounter& dc,\n                        Compounding
      comp,\n                        Frequency freq,\n                        bool
      includeSettlementDateFlows,\n                        Date settlementDate,\n
      \                       Date npvDate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1241,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1242,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1244,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1248,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/cashflows/cashflows.cpp:1255,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 12
    argNames:
    - ' leg'
    - npv
    - ' discount'
    - ' dayCounter'
    - compounding
    - frequency
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - accuracy
    - maxIterations
    - guess
    argTypes:
    - Leg
    - Real
    - ext::shared_ptr<YieldTermStructure>
    - DayCounter
    - Compounding
    - Frequency
    - bool
    - Date
    - Date
    - Real
    - Size
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1228
    functionDepth: 0
    functionLinenumber: 1228
    functionLinenumberEnd: 1256
    functionName: QuantLib::CashFlows::zSpread
    functionSourceFile: /src/quantlib/ql/cashflows/cashflows.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::instance
    - Date
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Spread
    signature: "Spread CashFlows::zSpread(const Leg& leg,\n                              Real
      npv,\n                              const ext::shared_ptr<YieldTermStructure>&
      discount,\n                              const DayCounter& dayCounter,\n                              Compounding
      compounding,\n                              Frequency frequency,\n                              bool
      includeSettlementDateFlows,\n                              Date settlementDate,\n
      \                             Date npvDate,\n                              Real
      accuracy,\n                              Size maxIterations,\n                              Rate
      guess)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~VanillaOptionPricer()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VanillaOptionPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~GFunction()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~GFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::GFunctionFactory::GFunctionFactory
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - q
    - delta
    - swapLength
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::GFunctionFactory::GFunctionStandard::GFunctionStandard
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GFunctionStandard(Size q,\n                              Real
      delta,\n                              Size swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: ~ObjectiveFunction()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ObjectiveFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' o'
    - Rs
    argTypes:
    - GFunctionWithShifts
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction(const GFunctionWithShifts& o, const Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 164
    functionName: '& gFunctionWithShifts() const'
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFunctionWithShifts
    signature: GFunctionWithShifts & gFunctionWithShifts() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - GFunctionFactory::YieldCurveModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 191
    functionName: "& operator<<(std::ostream& out,\n                                    GFunctionFactory::YieldCurveModel
      type)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    GFunctionFactory::YieldCurveModel
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:209,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:211,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' meanReversion'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionName: QuantLib::HaganPricer::setMeanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void setMeanReversion(const Handle<Quote>& meanReversion) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 258
    functionName: QuantLib::NumericHaganPricer::upperLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upperLimit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 259
    functionName: QuantLib::NumericHaganPricer::lowerLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lowerLimit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 260
    functionName: QuantLib::NumericHaganPricer::stdDeviations
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real stdDeviations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: ~Function()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Function()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~VanillaOptionPricer()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~VanillaOptionPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~GFunction()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~GFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::GFunctionFactory::GFunctionFactory
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - q
    - delta
    - swapLength
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::GFunctionFactory::GFunctionStandard::GFunctionStandard
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GFunctionStandard(Size q,\n                              Real
      delta,\n                              Size swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: ~ObjectiveFunction()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ObjectiveFunction()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' o'
    - Rs
    argTypes:
    - GFunctionWithShifts
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ObjectiveFunction(const GFunctionWithShifts& o, const Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 164
    functionName: '& gFunctionWithShifts() const'
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFunctionWithShifts
    signature: GFunctionWithShifts & gFunctionWithShifts() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - type
    argTypes:
    - std::ostream
    - GFunctionFactory::YieldCurveModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 191
    functionName: "& operator<<(std::ostream& out,\n                                    GFunctionFactory::YieldCurveModel
      type)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                    GFunctionFactory::YieldCurveModel
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:209,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:211,1
    - Dst: update
      Src: /src/quantlib/ql/cashflows/conundrumpricer.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' meanReversion'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionName: QuantLib::HaganPricer::setMeanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - update
    linkageType: ''
    returnType: void
    signature: void setMeanReversion(const Handle<Quote>& meanReversion) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 258
    functionName: QuantLib::NumericHaganPricer::upperLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real upperLimit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 259
    functionName: QuantLib::NumericHaganPricer::lowerLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lowerLimit() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 260
    functionName: QuantLib::NumericHaganPricer::stdDeviations
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real stdDeviations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: ~Function()
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Function()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::CPICashFlow::observationDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date observationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: QuantLib::CPICashFlow::observationLag
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: QuantLib::CPICashFlow::interpolation
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType interpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: QuantLib::CPICashFlow::frequency
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: QuantLib::CPICoupon::fixedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPICoupon::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:264,1
    - Dst: QuantLib::CPICoupon::fixedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionName: QuantLib::CPICoupon::adjustedIndexGrowth
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICoupon::fixedRate
    - rate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::adjustedIndexGrowth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 267
    functionDepth: 2
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionName: QuantLib::CPICoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached:
    - observationLag
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICoupon::cpiIndex
    - QuantLib::CPICoupon::observationInterpolation
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionName: QuantLib::CPICoupon::baseCPI
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::CPICoupon::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date CPICoupon::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::CPICoupon::observationInterpolation
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType CPICoupon::observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<ZeroInflationIndex>
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:284,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::CPICoupon::cpiIndex
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 3
    functionsReached:
    - index
    - ext::dynamic_pointer_cast<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> CPICoupon::cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<ZeroInflationIndex>
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:289,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::CPICashFlow::cpiIndex
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 4
    functionsReached:
    - index
    - ext::dynamic_pointer_cast<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> CPICashFlow::cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::CPICashFlow::observationDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date observationDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: QuantLib::CPICashFlow::observationLag
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: QuantLib::CPICashFlow::interpolation
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType interpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: QuantLib::CPICashFlow::frequency
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: QuantLib::CPICoupon::fixedRate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPICoupon::fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:264,1
    - Dst: QuantLib::CPICoupon::fixedRate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionName: QuantLib::CPICoupon::adjustedIndexGrowth
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICoupon::fixedRate
    - rate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::adjustedIndexGrowth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: QuantLib::CPICoupon::cpiIndex
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    - Dst: QuantLib::CPICoupon::observationInterpolation
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 267
    functionDepth: 2
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionName: QuantLib::CPICoupon::indexFixing
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 0
    functionsReached:
    - observationLag
    - QuantLib::CPI::laggedFixing
    - QuantLib::CPICoupon::cpiIndex
    - QuantLib::CPICoupon::observationInterpolation
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::indexFixing() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionName: QuantLib::CPICoupon::baseCPI
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPICoupon::baseCPI() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::CPICoupon::baseDate
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date CPICoupon::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::CPICoupon::observationInterpolation
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType CPICoupon::observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<ZeroInflationIndex>
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:284,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: QuantLib::CPICoupon::cpiIndex
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 4
    functionsReached:
    - index
    - ext::dynamic_pointer_cast<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> CPICoupon::cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<ZeroInflationIndex>
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:289,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/cpicoupon.hpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: QuantLib::CPICashFlow::cpiIndex
    functionSourceFile: /src/quantlib/ql/cashflows/cpicoupon.hpp
    functionUses: 4
    functionsReached:
    - index
    - ext::dynamic_pointer_cast<ZeroInflationIndex>
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> CPICashFlow::cpiIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:86,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:89,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - ' observationLag'
    - interpolation
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 96
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    - Date
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon(const Date& paymentDate,\n                                        Real
      nominal,\n                                        const Date& startDate,\n                                        const
      Date& endDate,\n                                        Natural fixingDays,\n
      \                                       const ext::shared_ptr<YoYInflationIndex>&
      index,\n                                        const Period& observationLag,\n
      \                                       const CPI::InterpolationType interpolation,\n
      \                                       const DayCounter& dayCounter,\n                                        Real
      gearing = 1.0,\n                                        Spread spread = 0.0,\n
      \                                       const Rate cap = Null<Rate>(),\n                                        const
      Rate floor = Null<Rate>(),\n                                        const Date&
      refPeriodStart = Date(),\n                                        const Date&
      refPeriodEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:112,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:113,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - ' observationLag'
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 119
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Date
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon(const Date& paymentDate,\n                                        Real
      nominal,\n                                        const Date& startDate,\n                                        const
      Date& endDate,\n                                        Natural fixingDays,\n
      \                                       const ext::shared_ptr<YoYInflationIndex>&
      index,\n                                        const Period& observationLag,\n
      \                                       const DayCounter& dayCounter,\n                                        Real
      gearing = 1.0,\n                                        Spread spread = 0.0,\n
      \                                       const Rate cap = Null<Rate>(),\n                                        const
      Rate floor = Null<Rate>(),\n                                        const Date&
      refPeriodStart = Date(),\n                                        const Date&
      refPeriodEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::isCapped
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isCapped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::isFloored
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFloored() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:86,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:88,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:89,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - ' observationLag'
    - interpolation
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - CPI::InterpolationType
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 96
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    - Date
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon(const Date& paymentDate,\n                                        Real
      nominal,\n                                        const Date& startDate,\n                                        const
      Date& endDate,\n                                        Natural fixingDays,\n
      \                                       const ext::shared_ptr<YoYInflationIndex>&
      index,\n                                        const Period& observationLag,\n
      \                                       const CPI::InterpolationType interpolation,\n
      \                                       const DayCounter& dayCounter,\n                                        Real
      gearing = 1.0,\n                                        Spread spread = 0.0,\n
      \                                       const Rate cap = Null<Rate>(),\n                                        const
      Rate floor = Null<Rate>(),\n                                        const Date&
      refPeriodStart = Date(),\n                                        const Date&
      refPeriodEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:112,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:113,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' index'
    - ' observationLag'
    - ' dayCounter'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Period
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 119
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Date
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon(const Date& paymentDate,\n                                        Real
      nominal,\n                                        const Date& startDate,\n                                        const
      Date& endDate,\n                                        Natural fixingDays,\n
      \                                       const ext::shared_ptr<YoYInflationIndex>&
      index,\n                                        const Period& observationLag,\n
      \                                       const DayCounter& dayCounter,\n                                        Real
      gearing = 1.0,\n                                        Spread spread = 0.0,\n
      \                                       const Rate cap = Null<Rate>(),\n                                        const
      Rate floor = Null<Rate>(),\n                                        const Date&
      refPeriodStart = Date(),\n                                        const Date&
      refPeriodEnd = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::isCapped
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isCapped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::isFloored
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isFloored() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:55,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:55,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:56,1
    - Dst: close_enough
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:57,1
    - Dst: shift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - forwardValue
    - expiryDate
    - ' swapTenor'
    - ' volatilityStructure'
    argTypes:
    - Rate
    - Date
    - Period
    - ext::shared_ptr<SwaptionVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 59
    functionName: QuantLib::MarketQuotedOptionPricer::MarketQuotedOptionPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - shift
    - QL_REQUIRE
    - smileSection
    - volatilityType
    - close_enough
    linkageType: ''
    returnType: void
    signature: "void MarketQuotedOptionPricer::MarketQuotedOptionPricer(\n            Rate
      forwardValue,\n            Date expiryDate,\n            const Period& swapTenor,\n
      \           const ext::shared_ptr<SwaptionVolatilityStructure>& volatilityStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:64,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:65,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:67,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - strike
    - optionType
    - deflator
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 72
    functionName: "MarketQuotedOptionPricer::operator()(Real strike,\n                                              Option::Type
      optionType,\n                                              Real deflator) const"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    - volatilityType
    - blackFormula
    - std::sqrt
    - variance
    linkageType: ''
    returnType: Real
    signature: "Real MarketQuotedOptionPricer::operator()(Real strike,\n                                              Option::Type
      optionType,\n                                              Real deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:82,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - meanReversion
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::HaganPricer::HaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HaganPricer::HaganPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                             GFunctionFactory::YieldCurveModel
      modelOfYieldCurve,\n                             Handle<Quote> meanReversion)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CmsCoupon*>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:88,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:89,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:90,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:92,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:94,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:95,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:96,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:99,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:102,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:108,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:109,1
    - Dst: ext::shared_ptr::fairRate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:111,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:114,1
    - Dst: ext::shared_ptr::fixedLegBPS
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:114,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:116,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:117,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:118,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:120,1
    - Dst: ext::shared_ptr::startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:121,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:124,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:124,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionStandard
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:130,1
    - Dst: length
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:130,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionExactYield
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:133,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:136,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:136,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:137,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:144,1
    - Dst: ext::shared_ptr<VanillaOptionPricer>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:146,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:148,1
    - Dst: MarketQuotedOptionPricer::MarketQuotedOptionPricer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 150
    functionName: QuantLib::HaganPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - yearFraction
    - dayCounter
    - swapIndex
    - length
    - MarketQuotedOptionPricer::MarketQuotedOptionPricer
    - ext::shared_ptr<VanillaOptionPricer>
    - date
    - tenor
    - fixedLegTenor
    - referenceDate
    - spread
    - accrualPeriod
    - ext::shared_ptr<Quote>
    - swaptionVolatility
    - std::fabs
    - ext::shared_ptr::fixedLegBPS
    - QuantLib::GFunctionFactory::newGFunctionExactYield
    - fixingDate
    - QL_FAIL
    - forwardingTermStructure
    - SimpleQuote::SimpleQuote
    - QL_REQUIRE
    - dynamic_cast<const CmsCoupon*>
    - discountingTermStructure
    - ext::shared_ptr::fairRate
    - underlyingSwap
    - ext::shared_ptr::fixedSchedule
    - ext::shared_ptr::startDate
    - QuantLib::GFunctionFactory::newGFunctionWithShifts
    - discount
    - QuantLib::detail::instance
    - QuantLib::GFunctionFactory::newGFunctionStandard
    linkageType: ''
    returnType: void
    signature: void HaganPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::HaganPricer::meanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::meanReversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:155,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::HaganPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - swapletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::swapletRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:160,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:164,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:164,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:165,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:171,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:176,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:177,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:182,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 186
    functionName: QuantLib::HaganPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - std::max
    - QuantLib::detail::instance
    - optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HaganPricer::capletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:189,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::HaganPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HaganPricer::capletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::capletRate(Rate effectiveCap) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:194,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:198,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:198,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:199,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:209,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:210,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 220
    functionName: QuantLib::HaganPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - std::max
    - QuantLib::detail::instance
    - optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HaganPricer::floorletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:224,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::HaganPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HaganPricer::floorletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - k
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::VariableChange::VariableChange
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VariableChange(std::function<Real (Real)>& f,\n                           Real
      a, Real b, Size k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionName: QuantLib::VariableChange::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 255
    functionName: QuantLib::Spy::Spy
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Spy(std::function<Real(Real)> f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:257,1
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:258,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 261
    functionName: QuantLib::Spy::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    - push_back
    linkageType: ''
    returnType: Real
    signature: Real value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - k
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::VariableChange::VariableChange
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VariableChange(std::function<Real (Real)>& f,\n                           Real
      a, Real b, Size k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionName: QuantLib::VariableChange::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 255
    functionName: QuantLib::Spy::Spy
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Spy(std::function<Real(Real)> f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:257,1
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:258,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 261
    functionName: QuantLib::Spy::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    - push_back
    linkageType: ''
    returnType: Real
    signature: Real value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - ' meanReversion'
    - lowerLimit
    - upperLimit
    - precision
    - hardUpperLimit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 279
    functionName: QuantLib::NumericHaganPricer::NumericHaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NumericHaganPricer::NumericHaganPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                           GFunctionFactory::YieldCurveModel
      modelOfYieldCurve,\n                                           const Handle<Quote>&
      meanReversion,\n                                           Real lowerLimit,\n
      \                                          Real upperLimit,\n                                           Real
      precision,\n                                           Real hardUpperLimit)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: integrand
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:295,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:299,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:306,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:306,1
    - Dst: std::cref
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:309,1
    - Dst: VariableChange::value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:311,1
    - Dst: gaussKronrodNonAdaptive
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:312,1
    - Dst: std::cref
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:315,1
    - Dst: gaussKronrodNonAdaptive
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:316,1
    - Dst: GaussKronrodNonAdaptive::integrationSuccess
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:320,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:322,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:322,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:323,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:327,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:327,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:328,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:330,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:339,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - a
    - b
    - ' integrand'
    argTypes:
    - Real
    - Real
    - ConundrumIntegrand
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 343
    functionName: QuantLib::NumericHaganPricer::integrate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - VariableChange::value
    - gaussKronrodNonAdaptive
    - std::cref
    - GaussKronrodNonAdaptive::integrationSuccess
    - swaptionVolatility
    - integrand
    - std::max
    - integrator
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::integrate(Real a, Real b, const ConundrumIntegrand&
      integrand) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ConundrumIntegrand::ConundrumIntegrand
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:349,1
    - Dst: QuantLib::NumericHaganPricer::resetUpperLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:357,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:362,1
    - Dst: QuantLib::NumericHaganPricer::resetLowerLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:365,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:366,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:368,1
    - Dst: ext::shared_ptr::firstDerivativeOfF
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:371,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:376,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 378
    functionName: QuantLib::NumericHaganPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - ConundrumIntegrand::ConundrumIntegrand
    - QuantLib::NumericHaganPricer::resetLowerLimit
    - Integer
    - accrualPeriod
    - ext::shared_ptr::firstDerivativeOfF
    - QuantLib::NumericHaganPricer::resetUpperLimit
    - QuantLib::NumericHaganPricer::integrate
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real NumericHaganPricer::optionletPrice(\n                                Option::Type
      optionType, Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:382,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:385,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:386,1
    - Dst: QuantLib::NumericHaganPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:389,1
    - Dst: QuantLib::NumericHaganPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:390,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:391,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 395
    functionName: QuantLib::NumericHaganPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NumericHaganPricer::optionletPrice
    - QuantLib::detail::instance
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:400,1
    - Dst: QuantLib::NumericHaganPricer::resetUpperLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:403,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - integralValue
    - ' integrand'
    argTypes:
    - Real
    - ConundrumIntegrand
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 409
    functionName: QuantLib::NumericHaganPricer::refineIntegration
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::NumericHaganPricer::integrate
    - QuantLib::NumericHaganPricer::resetUpperLimit
    linkageType: ''
    returnType: Real
    signature: "Real NumericHaganPricer::refineIntegration(Real integralValue,\n                                                const
      ConundrumIntegrand& integrand) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:415,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:417,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - stdDeviationsForUpperLimit
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 422
    functionName: QuantLib::NumericHaganPricer::resetUpperLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - std::exp
    - swaptionVolatility
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::resetUpperLimit(Real stdDeviationsForUpperLimit)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:428,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:430,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - stdDeviationsForUpperLimit
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 435
    functionName: QuantLib::NumericHaganPricer::resetLowerLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - std::sqrt
    - swaptionVolatility
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::resetLowerLimit(Real stdDeviationsForUpperLimit)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:452,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - o
    - gFunction
    - fixingDate
    - paymentDate
    - annuity
    - forwardValue
    - strike
    - optionType
    argTypes:
    - ext::shared_ptr<VanillaOptionPricer>
    - ext::shared_ptr<GFunction>
    - Date
    - Date
    - Real
    - Real
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 454
    functionName: "NumericHaganPricer::ConundrumIntegrand::ConundrumIntegrand(\n        ext::shared_ptr<VanillaOptionPricer>
      o,\n        const ext::shared_ptr<YieldTermStructure>&,\n        ext::shared_ptr<GFunction>
      gFunction,\n        Date fixingDate,\n        Date paymentDate,\n        Real
      annuity,\n        Real forwardValue,\n        Real strike,\n        Option::Type
      optionType)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NumericHaganPricer::ConundrumIntegrand::ConundrumIntegrand(\n
      \       ext::shared_ptr<VanillaOptionPricer> o,\n        const ext::shared_ptr<YieldTermStructure>&,\n
      \       ext::shared_ptr<GFunction> gFunction,\n        Date fixingDate,\n        Date
      paymentDate,\n        Real annuity,\n        Real forwardValue,\n        Real
      strike,\n        Option::Type optionType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 458
    functionName: NumericHaganPricer::ConundrumIntegrand::setStrike(Real strike)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NumericHaganPricer::ConundrumIntegrand::setStrike(Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: NumericHaganPricer::ConundrumIntegrand::strike() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionName: NumericHaganPricer::ConundrumIntegrand::annuity() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::annuity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: NumericHaganPricer::ConundrumIntegrand::fixingDate() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date NumericHaganPricer::ConundrumIntegrand::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: NumericHaganPricer::ConundrumIntegrand::functionF (const Real x)
      const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::functionF (const Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 483
    functionName: NumericHaganPricer::ConundrumIntegrand::firstDerivativeOfF (const
      Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::firstDerivativeOfF (const
      Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:487,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 490
    functionName: NumericHaganPricer::ConundrumIntegrand::secondDerivativeOfF (const
      Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - secondDerivative
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::secondDerivativeOfF (const
      Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: secondDerivativeOfF
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 495
    functionName: NumericHaganPricer::ConundrumIntegrand::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - secondDerivativeOfF
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - ' meanReversion'
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 508
    functionName: QuantLib::AnalyticHaganPricer::AnalyticHaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticHaganPricer::AnalyticHaganPricer(\n        const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n        GFunctionFactory::YieldCurveModel modelOfYieldCurve,\n
      \       const Handle<Quote>& meanReversion)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:513,1
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:516,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:523,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:524,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:525,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:531,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:532,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:533,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:534,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:537,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:540,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:544,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:546,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 552
    functionName: QuantLib::AnalyticHaganPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - Integer
    - accrualPeriod
    - swaptionVolatility
    - std::sqrt
    - cumulativeOfNormal
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHaganPricer::optionletPrice(Option::Type optionType,\n
      \                                            Real strike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:558,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:561,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:562,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:565,1
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:568,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:572,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:574,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 580
    functionName: QuantLib::AnalyticHaganPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - QuantLib::detail::instance
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHaganPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:589,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:590,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 592
    functionName: GFunctionFactory::GFunctionStandard::operator()(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::operator()(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:595,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:598,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:598,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:600,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:601,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:601,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 606
    functionName: GFunctionFactory::GFunctionStandard::firstDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::firstDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:609,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:613,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:613,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:614,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:615,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:616,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:616,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:619,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:620,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:621,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:621,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:624,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:624,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:625,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 629
    functionName: GFunctionFactory::GFunctionStandard::secondDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::secondDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:633,1
    - Dst: GFunctionStandard::GFunctionStandard
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - q
    - delta
    - swapLength
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 634
    functionName: QuantLib::GFunctionFactory::newGFunctionStandard
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - GFunctionStandard::GFunctionStandard
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: "ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionStandard(Size
      q,\n                                                            Real delta,
      Size swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:642,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:644,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:644,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:646,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:648,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:650,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:652,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:652,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:653,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:654,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:654,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:655,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:657,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:657,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:663,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:664,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:667,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:668,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 670
    functionName: GFunctionFactory::GFunctionExactYield::GFunctionExactYield(const
      CmsCoupon& coupon)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - fixedSchedule
    - date
    - yearFraction
    - dayCounter
    - underlyingSwap
    - swapIndex
    - push_back
    - ext::shared_ptr::accrualPeriod
    - fixingDate
    - size
    - forwardingTermStructure
    - Handle::referenceDate
    - ext::dynamic_pointer_cast<Coupon>
    - startDate
    - reserve
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory::GFunctionExactYield::GFunctionExactYield(const
      CmsCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 678
    functionName: GFunctionFactory::GFunctionExactYield::operator()(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::operator()(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:684,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:684,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:687,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:695,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:696,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:696,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 699
    functionName: GFunctionFactory::GFunctionExactYield::firstDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::pow
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::firstDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:706,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:706,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:709,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:712,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:718,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:718,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:720,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 701
    functionDepth: 0
    functionLinenumber: 701
    functionLinenumberEnd: 724
    functionName: GFunctionFactory::GFunctionExactYield::secondDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::pow
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::secondDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:727,1
    - Dst: GFunctionExactYield::GFunctionExactYield
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 728
    functionName: QuantLib::GFunctionFactory::newGFunctionExactYield
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - GFunctionExactYield::GFunctionExactYield
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionExactYield(const
      CmsCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:738,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:740,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:741,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:741,1
    - Dst: fairRate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:743,1
    - Dst: ext::make_shared<ObjectiveFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:745,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:747,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:749,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:750,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:752,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:752,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:753,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:754,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:754,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:756,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:756,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:757,1
    - Dst: shapeOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:759,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:762,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:763,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:764,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:765,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:768,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:769,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:769,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:770,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:771,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:771,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:772,1
    - Dst: shapeOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:772,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:773,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:773,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' coupon'
    - meanReversion
    argTypes:
    - CmsCoupon
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 776
    functionName: "GFunctionFactory::GFunctionWithShifts::GFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                               Handle<Quote>
      meanReversion)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - Handle::discount
    - dayCounter
    - swapIndex
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - startDate
    - back
    - fixedSchedule
    - date
    - fairRate
    - size
    - push_back
    - fixingDate
    - forwardingTermStructure
    - shapeOfShift
    - reserve
    - underlyingSwap
    - std::move
    - ext::make_shared<ObjectiveFunction>
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: "void GFunctionFactory::GFunctionWithShifts::GFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                               Handle<Quote>
      meanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:779,1
    - Dst: functionZ
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 781
    functionName: GFunctionFactory::GFunctionWithShifts::operator()(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - calibrationOfShift
    - functionZ
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::operator()(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:784,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:785,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 786
    functionName: GFunctionFactory::GFunctionWithShifts::functionZ(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - back
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::functionZ(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:791,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:793,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:795,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:800,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:800,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:801,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:801,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:804,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 806
    functionName: GFunctionFactory::GFunctionWithShifts::derRs_derX(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - size
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::derRs_derX(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:812,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:814,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:816,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:818,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:821,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:824,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:824,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:825,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:825,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:829,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:833,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:833,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:834,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:834,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:835,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:835,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:837,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:837,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:838,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:838,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 847
    functionName: GFunctionFactory::GFunctionWithShifts::der2Rs_derX2(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::pow
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::der2Rs_derX2(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:850,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:850,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:852,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:855,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:856,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 859
    functionName: GFunctionFactory::GFunctionWithShifts::derZ_derX(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::derZ_derX(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:862,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:862,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:864,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:865,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:868,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:869,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:869,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:871,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:872,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:875,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:875,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:876,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:877,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 883
    functionName: GFunctionFactory::GFunctionWithShifts::der2Z_derX2(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::der2Z_derX2(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:888,1
    - Dst: functionZ
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 885
    functionDepth: 0
    functionLinenumber: 885
    functionLinenumberEnd: 890
    functionName: GFunctionFactory::GFunctionWithShifts::firstDerivative(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - derRs_derX
    - derZ_derX
    - calibrationOfShift
    - functionZ
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::firstDerivative(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:895,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:896,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:896,1
    - Dst: der2Z_derX2
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:898,1
    - Dst: der2Rs_derX2
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:898,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:899,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 892
    functionDepth: 0
    functionLinenumber: 892
    functionLinenumberEnd: 900
    functionName: GFunctionFactory::GFunctionWithShifts::secondDerivative(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - der2Rs_derX2
    - calibrationOfShift
    - derRs_derX
    - derZ_derX
    - std::pow
    - der2Z_derX2
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::secondDerivative(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accruals_::size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:905,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:907,1
    - Dst: swapPaymentDiscounts_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:913,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:914,1
    - Dst: shapedSwapPaymentTimes_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:914,1
    - Dst: shapedSwapPaymentTimes_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:917,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 919
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::operator
      ()(const Real& x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - accruals_::size
    - swapPaymentDiscounts_::back
    - std::exp
    - shapedSwapPaymentTimes_::back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::operator
      ()(const Real& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 921
    functionDepth: 0
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::derivative(const
      Real&) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::derivative(const
      Real&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 925
    functionDepth: 0
    functionLinenumber: 925
    functionLinenumberEnd: 927
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::setSwapRateValue(Real
      x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::setSwapRateValue(Real
      x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:931,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 938
    functionName: GFunctionFactory::GFunctionWithShifts::shapeOfShift(Real s) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::shapeOfShift(Real s) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:944,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:950,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:950,1
    - Dst: gFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:951,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:952,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:952,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:953,1
    - Dst: setSwapRateValue
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:956,1
    - Dst: Newton::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:958,1
    - Dst: Newton::solve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:967,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:968,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:968,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:971,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:971,1
    - Dst: what
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:975,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 980
    functionName: GFunctionFactory::GFunctionWithShifts::calibrationOfShift(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    - Newton::setMaxEvaluations
    - setSwapRateValue
    - std::max
    - QL_FAIL
    - what
    - Newton::solve
    - size
    - back
    - gFunctionWithShifts
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::calibrationOfShift(Real
      Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:984,1
    - Dst: GFunctionWithShifts::GFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' coupon'
    - ' meanReversion'
    argTypes:
    - CmsCoupon
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 982
    functionDepth: 0
    functionLinenumber: 982
    functionLinenumberEnd: 985
    functionName: QuantLib::GFunctionFactory::newGFunctionWithShifts
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - GFunctionWithShifts::GFunctionWithShifts
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: "ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                                          const
      Handle<Quote>& meanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:55,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:55,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:56,1
    - Dst: close_enough
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:57,1
    - Dst: shift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - forwardValue
    - expiryDate
    - ' swapTenor'
    - ' volatilityStructure'
    argTypes:
    - Rate
    - Date
    - Period
    - ext::shared_ptr<SwaptionVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 59
    functionName: QuantLib::MarketQuotedOptionPricer::MarketQuotedOptionPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - shift
    - QL_REQUIRE
    - smileSection
    - volatilityType
    - close_enough
    linkageType: ''
    returnType: void
    signature: "void MarketQuotedOptionPricer::MarketQuotedOptionPricer(\n            Rate
      forwardValue,\n            Date expiryDate,\n            const Period& swapTenor,\n
      \           const ext::shared_ptr<SwaptionVolatilityStructure>& volatilityStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: variance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:64,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:65,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:67,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:67,1
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - strike
    - optionType
    - deflator
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 72
    functionName: "MarketQuotedOptionPricer::operator()(Real strike,\n                                              Option::Type
      optionType,\n                                              Real deflator) const"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - bachelierBlackFormula
    - volatilityType
    - blackFormula
    - std::sqrt
    - variance
    linkageType: ''
    returnType: Real
    signature: "Real MarketQuotedOptionPricer::operator()(Real strike,\n                                              Option::Type
      optionType,\n                                              Real deflator) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:82,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - meanReversion
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionName: QuantLib::HaganPricer::HaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HaganPricer::HaganPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                             GFunctionFactory::YieldCurveModel
      modelOfYieldCurve,\n                             Handle<Quote> meanReversion)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const CmsCoupon*>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:87,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:88,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:89,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:90,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:91,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:92,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:94,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:95,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:96,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: discountingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:97,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:99,1
    - Dst: discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:102,1
    - Dst: tenor
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:108,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:109,1
    - Dst: ext::shared_ptr::fairRate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:111,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:114,1
    - Dst: ext::shared_ptr::fixedLegBPS
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:114,1
    - Dst: fixedLegTenor
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:116,1
    - Dst: ext::shared_ptr::fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:117,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:118,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:120,1
    - Dst: ext::shared_ptr::startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:121,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:123,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:124,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:124,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionStandard
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:130,1
    - Dst: length
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:130,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionExactYield
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:133,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:136,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:136,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:137,1
    - Dst: QuantLib::GFunctionFactory::newGFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:144,1
    - Dst: ext::shared_ptr<VanillaOptionPricer>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:146,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:148,1
    - Dst: MarketQuotedOptionPricer::MarketQuotedOptionPricer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 150
    functionName: QuantLib::HaganPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - yearFraction
    - dayCounter
    - swapIndex
    - length
    - MarketQuotedOptionPricer::MarketQuotedOptionPricer
    - ext::shared_ptr<VanillaOptionPricer>
    - date
    - tenor
    - fixedLegTenor
    - referenceDate
    - spread
    - accrualPeriod
    - ext::shared_ptr<Quote>
    - swaptionVolatility
    - std::fabs
    - ext::shared_ptr::fixedLegBPS
    - QuantLib::GFunctionFactory::newGFunctionExactYield
    - fixingDate
    - QL_FAIL
    - forwardingTermStructure
    - SimpleQuote::SimpleQuote
    - QL_REQUIRE
    - dynamic_cast<const CmsCoupon*>
    - discountingTermStructure
    - ext::shared_ptr::fairRate
    - underlyingSwap
    - ext::shared_ptr::fixedSchedule
    - ext::shared_ptr::startDate
    - QuantLib::GFunctionFactory::newGFunctionWithShifts
    - discount
    - QuantLib::detail::instance
    - QuantLib::GFunctionFactory::newGFunctionStandard
    linkageType: ''
    returnType: void
    signature: void HaganPricer::initialize(const FloatingRateCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::HaganPricer::meanReversion
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::meanReversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:155,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::HaganPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - swapletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::swapletRate() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:160,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:164,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:164,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:165,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:171,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:176,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:177,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:182,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 186
    functionName: QuantLib::HaganPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - std::max
    - QuantLib::detail::instance
    - optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::capletPrice(Rate effectiveCap) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HaganPricer::capletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:189,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveCap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::HaganPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HaganPricer::capletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::capletRate(Rate effectiveCap) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:194,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:198,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:198,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:199,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:204,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:209,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:210,1
    - Dst: optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 220
    functionName: QuantLib::HaganPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - std::max
    - QuantLib::detail::instance
    - optionletPrice
    linkageType: ''
    returnType: Real
    signature: Real HaganPricer::floorletPrice(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::HaganPricer::floorletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:224,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - effectiveFloor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: QuantLib::HaganPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::HaganPricer::floorletPrice
    - accrualPeriod
    linkageType: ''
    returnType: Rate
    signature: Rate HaganPricer::floorletRate(Rate effectiveFloor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - k
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::VariableChange::VariableChange
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VariableChange(std::function<Real (Real)>& f,\n                           Real
      a, Real b, Size k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionName: QuantLib::VariableChange::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 255
    functionName: QuantLib::Spy::Spy
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Spy(std::function<Real(Real)> f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:257,1
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:258,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 261
    functionName: QuantLib::Spy::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    - push_back
    linkageType: ''
    returnType: Real
    signature: Real value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' f'
    - a
    - b
    - k
    argTypes:
    - std::function<Real (Real)>
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::VariableChange::VariableChange
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VariableChange(std::function<Real (Real)>& f,\n                           Real
      a, Real b, Size k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionName: QuantLib::VariableChange::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 255
    functionName: QuantLib::Spy::Spy
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Spy(std::function<Real(Real)> f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:257,1
    - Dst: f_
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:258,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 261
    functionName: QuantLib::Spy::value
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - f_
    - push_back
    linkageType: ''
    returnType: Real
    signature: Real value(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - ' meanReversion'
    - lowerLimit
    - upperLimit
    - precision
    - hardUpperLimit
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 279
    functionName: QuantLib::NumericHaganPricer::NumericHaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NumericHaganPricer::NumericHaganPricer(const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n                                           GFunctionFactory::YieldCurveModel
      modelOfYieldCurve,\n                                           const Handle<Quote>&
      meanReversion,\n                                           Real lowerLimit,\n
      \                                          Real upperLimit,\n                                           Real
      precision,\n                                           Real hardUpperLimit)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: integrand
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:295,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:299,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:306,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:306,1
    - Dst: std::cref
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:309,1
    - Dst: VariableChange::value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:311,1
    - Dst: gaussKronrodNonAdaptive
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:312,1
    - Dst: std::cref
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:315,1
    - Dst: gaussKronrodNonAdaptive
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:316,1
    - Dst: GaussKronrodNonAdaptive::integrationSuccess
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:320,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:322,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:322,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:323,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:327,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:327,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:328,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:330,1
    - Dst: integrator
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:339,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - a
    - b
    - ' integrand'
    argTypes:
    - Real
    - Real
    - ConundrumIntegrand
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 343
    functionName: QuantLib::NumericHaganPricer::integrate
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - VariableChange::value
    - gaussKronrodNonAdaptive
    - std::cref
    - GaussKronrodNonAdaptive::integrationSuccess
    - swaptionVolatility
    - integrand
    - std::max
    - integrator
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::integrate(Real a, Real b, const ConundrumIntegrand&
      integrand) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ConundrumIntegrand::ConundrumIntegrand
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:349,1
    - Dst: QuantLib::NumericHaganPricer::resetUpperLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:357,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:362,1
    - Dst: QuantLib::NumericHaganPricer::resetLowerLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:365,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:366,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:368,1
    - Dst: ext::shared_ptr::firstDerivativeOfF
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:371,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:376,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 378
    functionName: QuantLib::NumericHaganPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 1
    functionsReached:
    - ConundrumIntegrand::ConundrumIntegrand
    - QuantLib::NumericHaganPricer::resetLowerLimit
    - Integer
    - accrualPeriod
    - ext::shared_ptr::firstDerivativeOfF
    - QuantLib::NumericHaganPricer::resetUpperLimit
    - QuantLib::NumericHaganPricer::integrate
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real NumericHaganPricer::optionletPrice(\n                                Option::Type
      optionType, Real strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:382,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:385,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:386,1
    - Dst: QuantLib::NumericHaganPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:389,1
    - Dst: QuantLib::NumericHaganPricer::optionletPrice
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:390,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:391,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 395
    functionName: QuantLib::NumericHaganPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::NumericHaganPricer::optionletPrice
    - QuantLib::detail::instance
    - swapIndex
    - accrualPeriod
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:400,1
    - Dst: QuantLib::NumericHaganPricer::resetUpperLimit
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:403,1
    - Dst: QuantLib::NumericHaganPricer::integrate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - integralValue
    - ' integrand'
    argTypes:
    - Real
    - ConundrumIntegrand
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 409
    functionName: QuantLib::NumericHaganPricer::refineIntegration
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - QuantLib::NumericHaganPricer::integrate
    - QuantLib::NumericHaganPricer::resetUpperLimit
    linkageType: ''
    returnType: Real
    signature: "Real NumericHaganPricer::refineIntegration(Real integralValue,\n                                                const
      ConundrumIntegrand& integrand) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:415,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:417,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:418,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - stdDeviationsForUpperLimit
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 422
    functionName: QuantLib::NumericHaganPricer::resetUpperLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 4
    functionsReached:
    - std::sqrt
    - std::exp
    - swaptionVolatility
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::resetUpperLimit(Real stdDeviationsForUpperLimit)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:428,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:430,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - stdDeviationsForUpperLimit
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 435
    functionName: QuantLib::NumericHaganPricer::resetLowerLimit
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    - swaptionVolatility
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::resetLowerLimit(Real stdDeviationsForUpperLimit)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:452,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - o
    - gFunction
    - fixingDate
    - paymentDate
    - annuity
    - forwardValue
    - strike
    - optionType
    argTypes:
    - ext::shared_ptr<VanillaOptionPricer>
    - ext::shared_ptr<GFunction>
    - Date
    - Date
    - Real
    - Real
    - Real
    - Option::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 454
    functionName: "NumericHaganPricer::ConundrumIntegrand::ConundrumIntegrand(\n        ext::shared_ptr<VanillaOptionPricer>
      o,\n        const ext::shared_ptr<YieldTermStructure>&,\n        ext::shared_ptr<GFunction>
      gFunction,\n        Date fixingDate,\n        Date paymentDate,\n        Real
      annuity,\n        Real forwardValue,\n        Real strike,\n        Option::Type
      optionType)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NumericHaganPricer::ConundrumIntegrand::ConundrumIntegrand(\n
      \       ext::shared_ptr<VanillaOptionPricer> o,\n        const ext::shared_ptr<YieldTermStructure>&,\n
      \       ext::shared_ptr<GFunction> gFunction,\n        Date fixingDate,\n        Date
      paymentDate,\n        Real annuity,\n        Real forwardValue,\n        Real
      strike,\n        Option::Type optionType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 458
    functionName: NumericHaganPricer::ConundrumIntegrand::setStrike(Real strike)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NumericHaganPricer::ConundrumIntegrand::setStrike(Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionName: NumericHaganPricer::ConundrumIntegrand::strike() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::strike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionName: NumericHaganPricer::ConundrumIntegrand::annuity() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::annuity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: NumericHaganPricer::ConundrumIntegrand::fixingDate() const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date NumericHaganPricer::ConundrumIntegrand::fixingDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: NumericHaganPricer::ConundrumIntegrand::functionF (const Real x)
      const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::functionF (const Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 483
    functionName: NumericHaganPricer::ConundrumIntegrand::firstDerivativeOfF (const
      Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::firstDerivativeOfF (const
      Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:487,1
    - Dst: secondDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 490
    functionName: NumericHaganPricer::ConundrumIntegrand::secondDerivativeOfF (const
      Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - secondDerivative
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::secondDerivativeOfF (const
      Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: secondDerivativeOfF
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 495
    functionName: NumericHaganPricer::ConundrumIntegrand::operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - secondDerivativeOfF
    linkageType: ''
    returnType: Real
    signature: Real NumericHaganPricer::ConundrumIntegrand::operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' swaptionVol'
    - modelOfYieldCurve
    - ' meanReversion'
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - GFunctionFactory::YieldCurveModel
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 508
    functionName: QuantLib::AnalyticHaganPricer::AnalyticHaganPricer
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AnalyticHaganPricer::AnalyticHaganPricer(\n        const Handle<SwaptionVolatilityStructure>&
      swaptionVol,\n        GFunctionFactory::YieldCurveModel modelOfYieldCurve,\n
      \       const Handle<Quote>& meanReversion)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:513,1
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:516,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:523,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:524,1
    - Dst: std::log
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:525,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:531,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:532,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:533,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:534,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:537,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:540,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:544,1
    - Dst: cumulativeOfNormal
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:546,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - optionType
    - strike
    argTypes:
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 552
    functionName: QuantLib::AnalyticHaganPricer::optionletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - Integer
    - accrualPeriod
    - swaptionVolatility
    - std::sqrt
    - cumulativeOfNormal
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHaganPricer::optionletPrice(Option::Type optionType,\n
      \                                            Real strike) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:558,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:561,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:562,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:565,1
    - Dst: firstDerivative
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:568,1
    - Dst: swaptionVolatility
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:572,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:574,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 580
    functionName: QuantLib::AnalyticHaganPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - swapIndex
    - accrualPeriod
    - swaptionVolatility
    - QuantLib::detail::instance
    - firstDerivative
    linkageType: ''
    returnType: Real
    signature: Real AnalyticHaganPricer::swapletPrice() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:589,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:590,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 592
    functionName: GFunctionFactory::GFunctionStandard::operator()(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::operator()(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:595,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:598,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:598,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:600,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:601,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:601,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 606
    functionName: GFunctionFactory::GFunctionStandard::firstDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::firstDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:609,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:613,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:613,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:614,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:615,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:616,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:616,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:619,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:620,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:621,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:621,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:623,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:624,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:624,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:625,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 629
    functionName: GFunctionFactory::GFunctionStandard::secondDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - static_cast<Real>
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionStandard::secondDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:633,1
    - Dst: GFunctionStandard::GFunctionStandard
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - q
    - delta
    - swapLength
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 634
    functionName: QuantLib::GFunctionFactory::newGFunctionStandard
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - GFunctionStandard::GFunctionStandard
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: "ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionStandard(Size
      q,\n                                                            Real delta,
      Size swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:642,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:644,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:644,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:646,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:648,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:650,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:652,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:652,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:653,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:654,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:654,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:655,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:657,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:657,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:663,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:664,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:667,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:668,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 670
    functionName: GFunctionFactory::GFunctionExactYield::GFunctionExactYield(const
      CmsCoupon& coupon)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - fixedSchedule
    - date
    - yearFraction
    - dayCounter
    - underlyingSwap
    - swapIndex
    - push_back
    - ext::shared_ptr::accrualPeriod
    - fixingDate
    - size
    - forwardingTermStructure
    - Handle::referenceDate
    - ext::dynamic_pointer_cast<Coupon>
    - startDate
    - reserve
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory::GFunctionExactYield::GFunctionExactYield(const
      CmsCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 678
    functionName: GFunctionFactory::GFunctionExactYield::operator()(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::operator()(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:684,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:684,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:687,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:695,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:696,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:696,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 699
    functionName: GFunctionFactory::GFunctionExactYield::firstDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::pow
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::firstDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:706,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:706,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:709,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:712,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:718,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:718,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:720,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 701
    functionDepth: 0
    functionLinenumber: 701
    functionLinenumberEnd: 724
    functionName: GFunctionFactory::GFunctionExactYield::secondDerivative(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::pow
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionExactYield::secondDerivative(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:727,1
    - Dst: GFunctionExactYield::GFunctionExactYield
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - CmsCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 728
    functionName: QuantLib::GFunctionFactory::newGFunctionExactYield
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - GFunctionExactYield::GFunctionExactYield
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionExactYield(const
      CmsCoupon& coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:738,1
    - Dst: swapIndex
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:740,1
    - Dst: underlyingSwap
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:741,1
    - Dst: fixingDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:741,1
    - Dst: fairRate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:743,1
    - Dst: ext::make_shared<ObjectiveFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:745,1
    - Dst: fixedSchedule
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:747,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:749,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:750,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:752,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:752,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:753,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:754,1
    - Dst: startDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:754,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:756,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:756,1
    - Dst: date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:757,1
    - Dst: shapeOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:759,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:762,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:763,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:764,1
    - Dst: reserve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:765,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:768,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:769,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:769,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:770,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:771,1
    - Dst: Handle::referenceDate
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:771,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:772,1
    - Dst: shapeOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:772,1
    - Dst: push_back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:773,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:773,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ' coupon'
    - meanReversion
    argTypes:
    - CmsCoupon
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 776
    functionName: "GFunctionFactory::GFunctionWithShifts::GFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                               Handle<Quote>
      meanReversion)"
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - Handle::discount
    - dayCounter
    - swapIndex
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - startDate
    - back
    - fixedSchedule
    - date
    - fairRate
    - size
    - push_back
    - fixingDate
    - forwardingTermStructure
    - shapeOfShift
    - reserve
    - underlyingSwap
    - std::move
    - ext::make_shared<ObjectiveFunction>
    - Handle::referenceDate
    linkageType: ''
    returnType: void
    signature: "void GFunctionFactory::GFunctionWithShifts::GFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                               Handle<Quote>
      meanReversion)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:779,1
    - Dst: functionZ
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 781
    functionName: GFunctionFactory::GFunctionWithShifts::operator()(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - calibrationOfShift
    - functionZ
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::operator()(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:784,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:785,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 786
    functionName: GFunctionFactory::GFunctionWithShifts::functionZ(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - back
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::functionZ(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:791,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:793,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:795,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:800,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:800,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:801,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:801,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:802,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:804,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 806
    functionName: GFunctionFactory::GFunctionWithShifts::derRs_derX(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - size
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::derRs_derX(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:812,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:814,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:816,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:818,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:821,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:824,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:824,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:825,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:825,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:826,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:829,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:832,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:833,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:833,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:834,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:834,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:835,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:835,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:837,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:837,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:838,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:838,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:839,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 847
    functionName: GFunctionFactory::GFunctionWithShifts::der2Rs_derX2(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::pow
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::der2Rs_derX2(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:850,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:850,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:852,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:855,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:856,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 859
    functionName: GFunctionFactory::GFunctionWithShifts::derZ_derX(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::derZ_derX(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:862,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:862,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:863,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:864,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:865,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:868,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:869,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:869,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:871,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:872,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:874,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:875,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:875,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:876,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:877,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 883
    functionName: GFunctionFactory::GFunctionWithShifts::der2Z_derX2(Real x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - back
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::der2Z_derX2(Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:888,1
    - Dst: functionZ
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 885
    functionDepth: 0
    functionLinenumber: 885
    functionLinenumberEnd: 890
    functionName: GFunctionFactory::GFunctionWithShifts::firstDerivative(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - derRs_derX
    - derZ_derX
    - calibrationOfShift
    - functionZ
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::firstDerivative(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calibrationOfShift
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:895,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:896,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:896,1
    - Dst: der2Z_derX2
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:897,1
    - Dst: derZ_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:898,1
    - Dst: der2Rs_derX2
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:898,1
    - Dst: std::pow
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:899,1
    - Dst: derRs_derX
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 892
    functionDepth: 0
    functionLinenumber: 892
    functionLinenumberEnd: 900
    functionName: GFunctionFactory::GFunctionWithShifts::secondDerivative(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - der2Rs_derX2
    - calibrationOfShift
    - derRs_derX
    - derZ_derX
    - std::pow
    - der2Z_derX2
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::secondDerivative(Real Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: accruals_::size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:905,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:907,1
    - Dst: swapPaymentDiscounts_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:913,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:914,1
    - Dst: shapedSwapPaymentTimes_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:914,1
    - Dst: shapedSwapPaymentTimes_::back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:917,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 919
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::operator
      ()(const Real& x) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - accruals_::size
    - swapPaymentDiscounts_::back
    - std::exp
    - shapedSwapPaymentTimes_::back
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::operator
      ()(const Real& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 921
    functionDepth: 0
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::derivative(const
      Real&) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::derivative(const
      Real&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 925
    functionDepth: 0
    functionLinenumber: 925
    functionLinenumberEnd: 927
    functionName: GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::setSwapRateValue(Real
      x)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GFunctionFactory::GFunctionWithShifts::ObjectiveFunction::setSwapRateValue(Real
      x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:931,1
    - Dst: std::exp
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 938
    functionName: GFunctionFactory::GFunctionWithShifts::shapeOfShift(Real s) const
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - value
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::shapeOfShift(Real s) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:944,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:950,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:950,1
    - Dst: gFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:951,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:952,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:952,1
    - Dst: back
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:953,1
    - Dst: setSwapRateValue
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:956,1
    - Dst: Newton::setMaxEvaluations
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:958,1
    - Dst: Newton::solve
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:967,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:968,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:968,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:971,1
    - Dst: value
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:971,1
    - Dst: what
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:975,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - Rs
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 980
    functionName: GFunctionFactory::GFunctionWithShifts::calibrationOfShift(Real Rs)
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 0
    functionsReached:
    - value
    - Newton::setMaxEvaluations
    - setSwapRateValue
    - std::max
    - QL_FAIL
    - what
    - Newton::solve
    - size
    - back
    - gFunctionWithShifts
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real GFunctionFactory::GFunctionWithShifts::calibrationOfShift(Real
      Rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<GFunction>
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:984,1
    - Dst: GFunctionWithShifts::GFunctionWithShifts
      Src: /src/quantlib/ql/cashflows/conundrumpricer.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' coupon'
    - ' meanReversion'
    argTypes:
    - CmsCoupon
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 982
    functionDepth: 0
    functionLinenumber: 982
    functionLinenumberEnd: 985
    functionName: QuantLib::GFunctionFactory::newGFunctionWithShifts
    functionSourceFile: /src/quantlib/ql/cashflows/conundrumpricer.cpp
    functionUses: 2
    functionsReached:
    - GFunctionWithShifts::GFunctionWithShifts
    - ext::shared_ptr<GFunction>
    linkageType: ''
    returnType: ext::shared_ptr<GFunction>
    signature: "ext::shared_ptr<GFunction> GFunctionFactory::newGFunctionWithShifts(const
      CmsCoupon& coupon,\n                                                                          const
      Handle<Quote>& meanReversion)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:32,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:36,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:41,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:51,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - cap
    - floor
    argTypes:
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 54
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - Null<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::setCommon(\n        Rate cap,
      Rate floor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:60,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:61,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:62,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:63,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:64,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:65,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:66,1
    - Dst: interpolation
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:68,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:69,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:70,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:71,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:72,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' underlying'
    - cap
    - floor
    argTypes:
    - ext::shared_ptr<YoYInflationCoupon>
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 76
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - date
    - yoyIndex
    - spread
    - dayCounter
    - fixingDays
    - observationLag
    - accrualStartDate
    - referencePeriodEnd
    - interpolation
    - registerWith
    - QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    - referencePeriodStart
    - nominal
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon(\n
      \               const ext::shared_ptr<YoYInflationCoupon>& underlying,\n                        Rate
      cap, Rate floor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:82,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<YoYInflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CappedFlooredYoYInflationCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::setPricer(\n            const
      ext::shared_ptr<YoYInflationCouponPricer>& pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:89,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CappedFlooredYoYInflationCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::underlyingRate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:93,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:95,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:98,1
    - Dst: auto::floorletRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:101,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:101,1
    - Dst: auto::capletRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:102,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 105
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - auto::capletRate
    - pricer
    - QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
    - QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
    - auto::floorletRate
    - QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::rate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::cap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::cap() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::floor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::floor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:127,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - spread
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::effectiveCap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:132,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - spread
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::effectiveFloor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::update
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void CappedFlooredYoYInflationCoupon::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredYoYInflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:143,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:146,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 149
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredYoYInflationCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void CappedFlooredYoYInflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:32,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:36,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:41,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:51,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - cap
    - floor
    argTypes:
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 54
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 3
    functionsReached:
    - Null<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::setCommon(\n        Rate cap,
      Rate floor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:60,1
    - Dst: nominal
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:61,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:62,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:63,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:64,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:65,1
    - Dst: observationLag
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:66,1
    - Dst: interpolation
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:67,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:68,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:69,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:70,1
    - Dst: referencePeriodStart
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:71,1
    - Dst: referencePeriodEnd
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:72,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setCommon
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:74,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' underlying'
    - cap
    - floor
    argTypes:
    - ext::shared_ptr<YoYInflationCoupon>
    - Rate
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 76
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - date
    - yoyIndex
    - spread
    - dayCounter
    - fixingDays
    - observationLag
    - accrualStartDate
    - referencePeriodEnd
    - interpolation
    - registerWith
    - QuantLib::CappedFlooredYoYInflationCoupon::setCommon
    - referencePeriodStart
    - nominal
    - accrualEndDate
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::CappedFlooredYoYInflationCoupon(\n
      \               const ext::shared_ptr<YoYInflationCoupon>& underlying,\n                        Rate
      cap, Rate floor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:82,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' pricer'
    argTypes:
    - ext::shared_ptr<YoYInflationCouponPricer>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::setPricer
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CappedFlooredYoYInflationCoupon::setPricer
    linkageType: ''
    returnType: void
    signature: "void CappedFlooredYoYInflationCoupon::setPricer(\n            const
      ext::shared_ptr<YoYInflationCouponPricer>& pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:89,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::rate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 3
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CappedFlooredYoYInflationCoupon::rate
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::underlyingRate() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:93,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:95,1
    - Dst: pricer
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:98,1
    - Dst: auto::floorletRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:101,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:101,1
    - Dst: auto::capletRate
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:102,1
    - Dst: QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 105
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::rate
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - auto::capletRate
    - pricer
    - QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
    - QuantLib::CappedFlooredYoYInflationCoupon::underlyingRate
    - auto::floorletRate
    - QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::rate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::cap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::cap() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::floor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::floor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:127,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::effectiveCap
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - gearing
    - spread
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::effectiveCap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:132,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::effectiveFloor
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 2
    functionsReached:
    - gearing
    - spread
    linkageType: ''
    returnType: Rate
    signature: Rate CappedFlooredYoYInflationCoupon::effectiveFloor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::update
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void CappedFlooredYoYInflationCoupon::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CappedFlooredYoYInflationCoupon>*>
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:143,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:146,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 149
    functionName: QuantLib::CappedFlooredYoYInflationCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/capflooredinflationcoupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<CappedFlooredYoYInflationCoupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void CappedFlooredYoYInflationCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::ZeroInflationCashFlow::zeroInflationIndex
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> zeroInflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ZeroInflationCashFlow::observationInterpolation
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::ZeroInflationCashFlow::zeroInflationIndex
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> zeroInflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ZeroInflationCashFlow::observationInterpolation
    functionSourceFile: /src/quantlib/ql/cashflows/zeroinflationcashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CPI::InterpolationType
    signature: CPI::InterpolationType observationInterpolation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:35,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' interestDates'
    - ' date'
    - applyObservationShift
    argTypes:
    - std::vector<Date>
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::determineNumberOfFixings
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Size
    signature: "Size determineNumberOfFixings(const std::vector<Date>& interestDates,\n
      \                                     const Date& date,\n                                      bool
      applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:35,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' interestDates'
    - ' date'
    - applyObservationShift
    argTypes:
    - std::vector<Date>
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::determineNumberOfFixings
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Size
    signature: "Size determineNumberOfFixings(const std::vector<Date>& interestDates,\n
      \                                     const Date& date,\n                                      bool
      applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const OvernightIndexedCoupon*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:46,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const OvernightIndexedCoupon*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void CompoundingOvernightIndexedCouponPricer::initialize(const FloatingRateCoupon&
      coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:51,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CompoundingOvernightIndexedCouponPricer::swapletRate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:58,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:58,1
    - Dst: ext::shared_ptr::timeSeries
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:59,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:61,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:62,1
    - Dst: interestDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:63,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:64,1
    - Dst: applyObservationShift
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:65,1
    - Dst: determineNumberOfFixings
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:76,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:77,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:90,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:93,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:109,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:109,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:110,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:114,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:117,1
    - Dst: canApplyTelescopicFormula
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:121,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:133,1
    - Dst: lockoutDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:139,1
    - Dst: lockoutDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:140,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:145,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:145,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:149,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:156,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:160,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:168,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:170,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:175,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:176,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:176,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 177
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - gearing
    - Handle::discount
    - ext::shared_ptr::dayCounter
    - interestDates
    - accruedPeriod
    - spread
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::shared_ptr::forwardingTermStructure
    - dt
    - canApplyTelescopicFormula
    - valueDates
    - effectiveRate
    - ext::shared_ptr::fixing
    - ext::shared_ptr::timeSeries
    - Null<Real>
    - applyObservationShift
    - std::max
    - index
    - Handle::empty
    - determineNumberOfFixings
    - QL_REQUIRE
    - ext::shared_ptr::name
    - std::min<Size>
    - lockoutDays
    - QuantLib::detail::instance
    - fixingDates
    linkageType: ''
    returnType: Rate
    signature: Rate CompoundingOvernightIndexedCouponPricer::averageRate(const Date&
      date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const OvernightIndexedCoupon*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const OvernightIndexedCoupon*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void ArithmeticAveragedOvernightIndexedCouponPricer::initialize(const
      FloatingRateCoupon& coupon)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:188,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:188,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:190,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:193,1
    - Dst: ext::shared_ptr::timeSeries
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:197,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:204,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:205,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:215,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:230,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:231,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:231,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:232,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:234,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:235,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:236,1
    - Dst: log
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:239,1
    - Dst: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:245,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:246,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:246,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:247,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:249,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:250,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:253,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:254,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:255,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:258,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:266,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:267,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:267,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 268
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - Handle::discount
    - QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
    - spread
    - ext::dynamic_pointer_cast<OvernightIndex>
    - accrualPeriod
    - log
    - ext::shared_ptr::forwardingTermStructure
    - dt
    - size
    - exp
    - valueDates
    - Handle::timeFromReference
    - ext::shared_ptr::fixing
    - ext::shared_ptr::timeSeries
    - Null<Real>
    - index
    - Handle::empty
    - QL_REQUIRE
    - ext::shared_ptr::name
    - QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
    - QuantLib::detail::instance
    - pow
    - fixingDates
    linkageType: ''
    returnType: Rate
    signature: Rate ArithmeticAveragedOvernightIndexedCouponPricer::swapletRate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:271,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:271,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:272,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - te
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - pow
    - exp
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1(Time
      ts, Time te) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:276,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - te
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 1
    functionsReached:
    - pow
    - exp
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2(Time
      ts, Time te) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:35,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' interestDates'
    - ' date'
    - applyObservationShift
    argTypes:
    - std::vector<Date>
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::determineNumberOfFixings
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Size
    signature: "Size determineNumberOfFixings(const std::vector<Date>& interestDates,\n
      \                                     const Date& date,\n                                      bool
      applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: end
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:34,1
    - Dst: begin
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:35,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' interestDates'
    - ' date'
    - applyObservationShift
    argTypes:
    - std::vector<Date>
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionName: QuantLib::determineNumberOfFixings
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - std::lower_bound
    - end
    - begin
    linkageType: ''
    returnType: Size
    signature: "Size determineNumberOfFixings(const std::vector<Date>& interestDates,\n
      \                                     const Date& date,\n                                      bool
      applyObservationShift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const OvernightIndexedCoupon*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:46,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const OvernightIndexedCoupon*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void CompoundingOvernightIndexedCouponPricer::initialize(const FloatingRateCoupon&
      coupon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:51,1
    - Dst: accrualEndDate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
    - accrualEndDate
    linkageType: ''
    returnType: Rate
    signature: Rate CompoundingOvernightIndexedCouponPricer::swapletRate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:55,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:58,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:58,1
    - Dst: ext::shared_ptr::timeSeries
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:59,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:61,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:62,1
    - Dst: interestDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:63,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:64,1
    - Dst: applyObservationShift
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:65,1
    - Dst: determineNumberOfFixings
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:76,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:76,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:77,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:80,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:90,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:93,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:109,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:109,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:110,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:114,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:117,1
    - Dst: canApplyTelescopicFormula
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:121,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:133,1
    - Dst: lockoutDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:139,1
    - Dst: lockoutDays
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:140,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:145,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:145,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:149,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:156,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:160,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:168,1
    - Dst: effectiveRate
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:170,1
    - Dst: accruedPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:175,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:176,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:176,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 177
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::averageRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 2
    functionsReached:
    - gearing
    - Handle::discount
    - ext::shared_ptr::dayCounter
    - interestDates
    - accruedPeriod
    - spread
    - ext::dynamic_pointer_cast<OvernightIndex>
    - ext::shared_ptr::forwardingTermStructure
    - dt
    - canApplyTelescopicFormula
    - valueDates
    - effectiveRate
    - ext::shared_ptr::fixing
    - ext::shared_ptr::timeSeries
    - Null<Real>
    - applyObservationShift
    - std::max
    - index
    - Handle::empty
    - determineNumberOfFixings
    - QL_REQUIRE
    - ext::shared_ptr::name
    - std::min<Size>
    - lockoutDays
    - QuantLib::detail::instance
    - fixingDates
    linkageType: ''
    returnType: Rate
    signature: Rate CompoundingOvernightIndexedCouponPricer::averageRate(const Date&
      date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const OvernightIndexedCoupon*>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:181,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' coupon'
    argTypes:
    - FloatingRateCoupon
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::initialize
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const OvernightIndexedCoupon*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void ArithmeticAveragedOvernightIndexedCouponPricer::initialize(const
      FloatingRateCoupon& coupon)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:188,1
    - Dst: index
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:188,1
    - Dst: fixingDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:190,1
    - Dst: dt
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:193,1
    - Dst: ext::shared_ptr::timeSeries
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:197,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:204,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:204,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:205,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:215,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:230,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:231,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:231,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:232,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:234,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:235,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:236,1
    - Dst: log
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:239,1
    - Dst: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:240,1
    - Dst: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:241,1
    - Dst: ext::shared_ptr::forwardingTermStructure
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:245,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:246,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:246,1
    - Dst: ext::shared_ptr::name
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:247,1
    - Dst: valueDates
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:249,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:250,1
    - Dst: ext::shared_ptr::fixing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:253,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:254,1
    - Dst: Handle::timeFromReference
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:255,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:258,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:259,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:260,1
    - Dst: accrualPeriod
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:266,1
    - Dst: gearing
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:267,1
    - Dst: spread
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:267,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 268
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::swapletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 0
    functionsReached:
    - gearing
    - Handle::discount
    - QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
    - spread
    - ext::dynamic_pointer_cast<OvernightIndex>
    - accrualPeriod
    - log
    - ext::shared_ptr::forwardingTermStructure
    - dt
    - size
    - exp
    - valueDates
    - Handle::timeFromReference
    - ext::shared_ptr::fixing
    - ext::shared_ptr::timeSeries
    - Null<Real>
    - index
    - Handle::empty
    - QL_REQUIRE
    - ext::shared_ptr::name
    - QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
    - QuantLib::detail::instance
    - pow
    - fixingDates
    linkageType: ''
    returnType: Rate
    signature: Rate ArithmeticAveragedOvernightIndexedCouponPricer::swapletRate()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:271,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:271,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:272,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - te
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 2
    functionsReached:
    - pow
    - exp
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAveragedOvernightIndexedCouponPricer::convAdj1(Time
      ts, Time te) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:276,1
    - Dst: pow
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:277,1
    - Dst: exp
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - te
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.cpp
    functionUses: 2
    functionsReached:
    - pow
    - exp
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAveragedOvernightIndexedCouponPricer::convAdj2(Time
      ts, Time te) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' swapIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<SwapIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: QuantLib::CmsCoupon::CmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CmsCoupon::CmsCoupon(const Date& paymentDate,\n                         Real
      nominal,\n                         const Date& startDate,\n                         const
      Date& endDate,\n                         Natural fixingDays,\n                         const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                         Real gearing,\n
      \                        Spread spread,\n                         const Date&
      refPeriodStart,\n                         const Date& refPeriodEnd,\n                         const
      DayCounter& dayCounter,\n                         bool isInArrears,\n                         const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:49,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:51,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: QuantLib::CmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - dynamic_cast<Visitor<CmsCoupon>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void CmsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - swapIndex
    argTypes:
    - Schedule
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::CmsLeg::CmsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CmsLeg::CmsLeg(Schedule schedule, ext::shared_ptr<SwapIndex> swapIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: '& CmsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: '& CmsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& CmsLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: '& CmsLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: '& CmsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& CmsLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFixingDays(const std::vector<Natural>& fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: '& CmsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '& CmsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withGearings(const std::vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& CmsLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: '& CmsLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withSpreads(const std::vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: '& CmsLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: '& CmsLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: '& CmsLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: '& CmsLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: '& CmsLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: '& CmsLeg::withZeroPayments(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withZeroPayments(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 152
    functionName: "& CmsLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: "CmsLeg & CmsLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingLeg<SwapIndex, CmsCoupon, CappedFlooredCmsCoupon>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:155,1
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: CmsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingLeg<SwapIndex, CmsCoupon, CappedFlooredCmsCoupon>
    - Calendar
    linkageType: ''
    returnType: void
    signature: void CmsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - ' paymentDate'
    - nominal
    - ' startDate'
    - ' endDate'
    - fixingDays
    - ' swapIndex'
    - gearing
    - spread
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' dayCounter'
    - isInArrears
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Natural
    - ext::shared_ptr<SwapIndex>
    - Real
    - Spread
    - Date
    - Date
    - DayCounter
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: QuantLib::CmsCoupon::CmsCoupon
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CmsCoupon::CmsCoupon(const Date& paymentDate,\n                         Real
      nominal,\n                         const Date& startDate,\n                         const
      Date& endDate,\n                         Natural fixingDays,\n                         const
      ext::shared_ptr<SwapIndex>& swapIndex,\n                         Real gearing,\n
      \                        Spread spread,\n                         const Date&
      refPeriodStart,\n                         const Date& refPeriodEnd,\n                         const
      DayCounter& dayCounter,\n                         bool isInArrears,\n                         const
      Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<CmsCoupon>*>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:49,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:51,1
    - Dst: QuantLib::FloatingRateCoupon::accept
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: QuantLib::CmsCoupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FloatingRateCoupon::accept
    - dynamic_cast<Visitor<CmsCoupon>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void CmsCoupon::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:58,1
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - schedule
    - swapIndex
    argTypes:
    - Schedule
    - ext::shared_ptr<SwapIndex>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::CmsLeg::CmsLeg
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CmsLeg::CmsLeg(Schedule schedule, ext::shared_ptr<SwapIndex> swapIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - notional
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: '& CmsLeg::withNotionals(Real notional)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withNotionals(Real notional)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' notionals'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: '& CmsLeg::withNotionals(const std::vector<Real>& notionals)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withNotionals(const std::vector<Real>& notionals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dayCounter'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: '& CmsLeg::withPaymentDayCounter(const DayCounter& dayCounter)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withPaymentDayCounter(const DayCounter& dayCounter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - convention
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: '& CmsLeg::withPaymentAdjustment(BusinessDayConvention convention)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withPaymentAdjustment(BusinessDayConvention convention)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Natural>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fixingDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: '& CmsLeg::withFixingDays(Natural fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Natural>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFixingDays(Natural fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' fixingDays'
    argTypes:
    - std::vector<Natural>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: '& CmsLeg::withFixingDays(const std::vector<Natural>& fixingDays)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFixingDays(const std::vector<Natural>& fixingDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - gearing
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: '& CmsLeg::withGearings(Real gearing)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withGearings(Real gearing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' gearings'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: '& CmsLeg::withGearings(const std::vector<Real>& gearings)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withGearings(const std::vector<Real>& gearings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - spread
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: '& CmsLeg::withSpreads(Spread spread)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Spread>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withSpreads(Spread spread)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' spreads'
    argTypes:
    - std::vector<Spread>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: '& CmsLeg::withSpreads(const std::vector<Spread>& spreads)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withSpreads(const std::vector<Spread>& spreads)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: '& CmsLeg::withCaps(Rate cap)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withCaps(Rate cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' caps'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: '& CmsLeg::withCaps(const std::vector<Rate>& caps)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withCaps(const std::vector<Rate>& caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - floor
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: '& CmsLeg::withFloors(Rate floor)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Rate>
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFloors(Rate floor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' floors'
    argTypes:
    - std::vector<Rate>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: '& CmsLeg::withFloors(const std::vector<Rate>& floors)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withFloors(const std::vector<Rate>& floors)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: '& CmsLeg::inArrears(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::inArrears(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: '& CmsLeg::withZeroPayments(bool flag)'
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: CmsLeg & CmsLeg::withZeroPayments(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' period'
    - ' cal'
    - convention
    - endOfMonth
    argTypes:
    - Period
    - Calendar
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 152
    functionName: "& CmsLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CmsLeg
    signature: "CmsLeg & CmsLeg::withExCouponPeriod(\n                                const
      Period& period,\n                                const Calendar& cal,\n                                BusinessDayConvention
      convention,\n                                bool endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FloatingLeg<SwapIndex, CmsCoupon, CappedFlooredCmsCoupon>
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:155,1
    - Dst: Calendar
      Src: /src/quantlib/ql/cashflows/cmscoupon.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: CmsLeg::operator Leg() const
    functionSourceFile: /src/quantlib/ql/cashflows/cmscoupon.cpp
    functionUses: 0
    functionsReached:
    - FloatingLeg<SwapIndex, CmsCoupon, CappedFlooredCmsCoupon>
    - Calendar
    linkageType: ''
    returnType: void
    signature: void CmsLeg::operator Leg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - notional
    - index
    - ' baseDate'
    - ' fixingDate'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<Index>
    - Date
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::IndexedCashFlow::IndexedCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IndexedCashFlow::IndexedCashFlow(Real notional,\n                                     ext::shared_ptr<Index>
      index,\n                                     const Date& baseDate,\n                                     const
      Date& fixingDate,\n                                     const Date& paymentDate,\n
      \                                    bool growthOnly)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::IndexedCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real IndexedCashFlow::amount() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::baseFixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:44,1
    - Dst: QuantLib::IndexedCashFlow::indexFixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:45,1
    - Dst: QuantLib::IndexedCashFlow::notional
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:48,1
    - Dst: QuantLib::IndexedCashFlow::notional
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: QuantLib::IndexedCashFlow::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexedCashFlow::indexFixing
    - QuantLib::IndexedCashFlow::baseFixing
    - QuantLib::IndexedCashFlow::notional
    linkageType: ''
    returnType: void
    signature: void IndexedCashFlow::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:34,1
    - Dst: registerWith
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - notional
    - index
    - ' baseDate'
    - ' fixingDate'
    - ' paymentDate'
    - growthOnly
    argTypes:
    - Real
    - ext::shared_ptr<Index>
    - Date
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::IndexedCashFlow::IndexedCashFlow
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IndexedCashFlow::IndexedCashFlow(Real notional,\n                                     ext::shared_ptr<Index>
      index,\n                                     const Date& baseDate,\n                                     const
      Date& fixingDate,\n                                     const Date& paymentDate,\n
      \                                    bool growthOnly)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::IndexedCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 2
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real IndexedCashFlow::amount() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IndexedCashFlow::baseFixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:44,1
    - Dst: QuantLib::IndexedCashFlow::indexFixing
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:45,1
    - Dst: QuantLib::IndexedCashFlow::notional
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:48,1
    - Dst: QuantLib::IndexedCashFlow::notional
      Src: /src/quantlib/ql/cashflows/indexedcashflow.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: QuantLib::IndexedCashFlow::performCalculations
    functionSourceFile: /src/quantlib/ql/cashflows/indexedcashflow.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IndexedCashFlow::indexFixing
    - QuantLib::IndexedCashFlow::baseFixing
    - QuantLib::IndexedCashFlow::notional
    linkageType: ''
    returnType: void
    signature: void IndexedCashFlow::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::DigitalReplication::replicationType
    functionSourceFile: /src/quantlib/ql/cashflows/replication.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Replication::Type
    signature: Replication::Type replicationType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::DigitalReplication::gap
    functionSourceFile: /src/quantlib/ql/cashflows/replication.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::DigitalReplication::replicationType
    functionSourceFile: /src/quantlib/ql/cashflows/replication.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Replication::Type
    signature: Replication::Type replicationType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::DigitalReplication::gap
    functionSourceFile: /src/quantlib/ql/cashflows/replication.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gap() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:37,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/coupon.cpp:38,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/coupon.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 7
    argNames:
    - ' paymentDate'
    - nominal
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::Coupon::Coupon
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    linkageType: ''
    returnType: void
    signature: "void Coupon::Coupon(const Date& paymentDate,\n                   Real
      nominal,\n                   const Date& accrualStartDate,\n                   const
      Date& accrualEndDate,\n                   const Date& refPeriodStart,\n                   const
      Date& refPeriodEnd,\n                   const Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:45,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::Coupon::accrualPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - dayCounter
    linkageType: ''
    returnType: Time
    signature: Time Coupon::accrualPeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::Coupon::accrualDays
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Coupon::accrualDays() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/coupon.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/coupon.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/coupon.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: QuantLib::Coupon::accruedPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - dayCounter
    - std::min
    - tradingExCoupon
    linkageType: ''
    returnType: Time
    signature: Time Coupon::accruedPeriod(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:75,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/coupon.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::Coupon::accruedDays
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - std::min
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Coupon::accruedDays(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Coupon>*>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:81,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/coupon.cpp:83,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/coupon.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::Coupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Coupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Coupon::accept(AcyclicVisitor& v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:37,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/coupon.cpp:38,1
    - Dst: Date
      Src: /src/quantlib/ql/cashflows/coupon.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 7
    argNames:
    - ' paymentDate'
    - nominal
    - ' accrualStartDate'
    - ' accrualEndDate'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    - ' exCouponDate'
    argTypes:
    - Date
    - Real
    - Date
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::Coupon::Coupon
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    linkageType: ''
    returnType: void
    signature: "void Coupon::Coupon(const Date& paymentDate,\n                   Real
      nominal,\n                   const Date& accrualStartDate,\n                   const
      Date& accrualEndDate,\n                   const Date& refPeriodStart,\n                   const
      Date& refPeriodEnd,\n                   const Date& exCouponDate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:45,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: QuantLib::Coupon::accrualPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - dayCounter
    linkageType: ''
    returnType: Time
    signature: Time Coupon::accrualPeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::Coupon::accrualDays
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Coupon::accrualDays() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tradingExCoupon
      Src: /src/quantlib/ql/cashflows/coupon.cpp:60,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/cashflows/coupon.cpp:61,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:64,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/coupon.cpp:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: QuantLib::Coupon::accruedPeriod
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - dayCounter
    - std::min
    - tradingExCoupon
    linkageType: ''
    returnType: Time
    signature: Time Coupon::accruedPeriod(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/cashflows/coupon.cpp:75,1
    - Dst: std::min
      Src: /src/quantlib/ql/cashflows/coupon.cpp:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: QuantLib::Coupon::accruedDays
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dayCounter
    - std::min
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Coupon::accruedDays(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Coupon>*>
      Src: /src/quantlib/ql/cashflows/coupon.cpp:81,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/coupon.cpp:83,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/coupon.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::Coupon::accept
    functionSourceFile: /src/quantlib/ql/cashflows/coupon.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<Coupon>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Coupon::accept(AcyclicVisitor& v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/replication.cpp:35,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/replication.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - r
    argTypes:
    - std::ostream
    - Replication::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 37
    functionName: '& operator<<(std::ostream& out, Replication::Type r)'
    functionSourceFile: /src/quantlib/ql/cashflows/replication.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Replication::Type r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t
    - gap
    argTypes:
    - Replication::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::DigitalReplication::DigitalReplication
    functionSourceFile: /src/quantlib/ql/cashflows/replication.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DigitalReplication::DigitalReplication(Replication::Type t, Real
      gap)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/replication.cpp:35,1
    - Dst: Integer
      Src: /src/quantlib/ql/cashflows/replication.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' out'
    - r
    argTypes:
    - std::ostream
    - Replication::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 37
    functionName: '& operator<<(std::ostream& out, Replication::Type r)'
    functionSourceFile: /src/quantlib/ql/cashflows/replication.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Replication::Type r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t
    - gap
    argTypes:
    - Replication::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: QuantLib::DigitalReplication::DigitalReplication
    functionSourceFile: /src/quantlib/ql/cashflows/replication.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DigitalReplication::DigitalReplication(Replication::Type t, Real
      gap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAveragedOvernightIndexedCouponPricer(\n            Real
      meanReversion = 0.03,\n            Real volatility = 0.00, // NO convexity adjustment
      by default\n            bool byApprox = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - byApprox
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAveragedOvernightIndexedCouponPricer(\n            bool
      byApprox)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::CompoundingOvernightIndexedCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAveragedOvernightIndexedCouponPricer(\n            Real
      meanReversion = 0.03,\n            Real volatility = 0.00, // NO convexity adjustment
      by default\n            bool byApprox = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - byApprox
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAveragedOvernightIndexedCouponPricer(\n            bool
      byApprox)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::swapletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real swapletPrice() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::capletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real capletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::capletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate capletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::floorletPrice
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real floorletPrice(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::ArithmeticAveragedOvernightIndexedCouponPricer::floorletRate
    functionSourceFile: /src/quantlib/ql/cashflows/overnightindexedcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Rate
    signature: Rate floorletRate(Rate) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::InflationCouponPricer::InflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING InflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~InflationCouponPricer() override
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InflationCouponPricer() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::InflationCouponPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void YoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::YoYInflationCouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYOptionletVolatilitySurface>
    signature: Handle<YoYOptionletVolatilitySurface> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYInflationCouponPricer::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:149,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void BlackYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackYoYInflationCouponPricer(\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackYoYInflationCouponPricer(\n            const Handle<YoYOptionletVolatilitySurface>&
      capletVol,\n            const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:169,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void UnitDisplacedBlackYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UnitDisplacedBlackYoYInflationCouponPricer(\n            const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UnitDisplacedBlackYoYInflationCouponPricer(\n            const
      Handle<YoYOptionletVolatilitySurface>& capletVol,\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:189,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void BachelierYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierYoYInflationCouponPricer(\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierYoYInflationCouponPricer(\n            const Handle<YoYOptionletVolatilitySurface>&
      capletVol,\n            const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QuantLib::InflationCouponPricer::InflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: QL_DEPRECATED_DISABLE_WARNING
    signature: QL_DEPRECATED_DISABLE_WARNING InflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~InflationCouponPricer() override
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InflationCouponPricer() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::InflationCouponPricer::update
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::YoYInflationCouponPricer::YoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void YoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: QuantLib::YoYInflationCouponPricer::capletVolatility
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Handle<YoYOptionletVolatilitySurface>
    signature: Handle<YoYOptionletVolatilitySurface> capletVolatility() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYInflationCouponPricer::nominalTermStructure
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> nominalTermStructure() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:149,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void BlackYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackYoYInflationCouponPricer(\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: QuantLib::BlackYoYInflationCouponPricer::BlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackYoYInflationCouponPricer(\n            const Handle<YoYOptionletVolatilitySurface>&
      capletVol,\n            const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:169,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void UnitDisplacedBlackYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UnitDisplacedBlackYoYInflationCouponPricer(\n            const
      Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: QuantLib::UnitDisplacedBlackYoYInflationCouponPricer::UnitDisplacedBlackYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void UnitDisplacedBlackYoYInflationCouponPricer(\n            const
      Handle<YoYOptionletVolatilitySurface>& capletVol,\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<YoYOptionletVolatilitySurface>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:189,1
    - Dst: Handle<YieldTermStructure>
      Src: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    linkageType: ''
    returnType: void
    signature: void BachelierYoYInflationCouponPricer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' nominalTermStructure'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierYoYInflationCouponPricer(\n            const Handle<YieldTermStructure>&
      nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' capletVol'
    - ' nominalTermStructure'
    argTypes:
    - Handle<YoYOptionletVolatilitySurface>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: QuantLib::BachelierYoYInflationCouponPricer::BachelierYoYInflationCouponPricer
    functionSourceFile: /src/quantlib/ql/cashflows/inflationcouponpricer.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BachelierYoYInflationCouponPricer(\n            const Handle<YoYOptionletVolatilitySurface>&
      capletVol,\n            const Handle<YieldTermStructure>& nominalTermStructure)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SimpleCashFlow::date
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::SimpleCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Redemption::Redemption
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Redemption(Real amount,\n                   const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::AmortizingPayment::AmortizingPayment
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AmortizingPayment(Real amount,\n                          const
      Date& date)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SimpleCashFlow>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:91,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:93,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: QuantLib::SimpleCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<SimpleCashFlow>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void SimpleCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Redemption>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:99,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:101,1
    - Dst: QuantLib::SimpleCashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 3
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: QuantLib::Redemption::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<Redemption>*>
    - QuantLib::SimpleCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Redemption::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AmortizingPayment>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:107,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:109,1
    - Dst: QuantLib::SimpleCashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: QuantLib::AmortizingPayment::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<AmortizingPayment>*>
    - QuantLib::SimpleCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void AmortizingPayment::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::SimpleCashFlow::date
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date date() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: QuantLib::SimpleCashFlow::amount
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amount() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::Redemption::Redemption
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Redemption(Real amount,\n                   const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - amount
    - ' date'
    argTypes:
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::AmortizingPayment::AmortizingPayment
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AmortizingPayment(Real amount,\n                          const
      Date& date)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SimpleCashFlow>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:91,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:93,1
    - Dst: QuantLib::CashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 96
    functionName: QuantLib::SimpleCashFlow::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 2
    functionsReached:
    - dynamic_cast<Visitor<SimpleCashFlow>*>
    - auto*::visit
    - QuantLib::CashFlow::accept
    linkageType: ''
    returnType: void
    signature: void SimpleCashFlow::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<Redemption>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:99,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:101,1
    - Dst: QuantLib::SimpleCashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 3
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: QuantLib::Redemption::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<Redemption>*>
    - QuantLib::SimpleCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void Redemption::accept(AcyclicVisitor& v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AmortizingPayment>*>
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:107,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:109,1
    - Dst: QuantLib::SimpleCashFlow::accept
      Src: /src/quantlib/ql/cashflows/simplecashflow.hpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: QuantLib::AmortizingPayment::accept
    functionSourceFile: /src/quantlib/ql/cashflows/simplecashflow.hpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<AmortizingPayment>*>
    - QuantLib::SimpleCashFlow::accept
    linkageType: ''
    returnType: void
    signature: void AmortizingPayment::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:44,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:45,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:47,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - boost::string_view
    - boost::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: "operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - boost::string_view
    - std::toupper
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:44,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:45,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:47,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - boost::string_view
    - boost::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: "operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - boost::string_view
    - std::toupper
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: '& ECB::knownDates()'
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & ECB::knownDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/time/ecb.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::ECB::addDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - insert
    linkageType: ''
    returnType: void
    signature: void ECB::addDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/time/ecb.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::ECB::removeDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: void ECB::removeDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/ecb.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: QuantLib::ToInteger
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_ASSERT
    linkageType: ''
    returnType: int
    signature: int ToInteger(const char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/ecb.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: QuantLib::ToInteger
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_ASSERT
    linkageType: ''
    returnType: int
    signature: int ToInteger(const char c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:183,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:183,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:187,1
    - Dst: left::at
      Src: /src/quantlib/ql/time/ecb.cpp:188,1
    - Dst: ToInteger
      Src: /src/quantlib/ql/time/ecb.cpp:191,1
    - Dst: ToInteger
      Src: /src/quantlib/ql/time/ecb.cpp:191,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:192,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:194,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:194,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/ecb.cpp:195,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/ecb.cpp:196,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/ecb.cpp:197,1
    - Dst: QuantLib::ECB::nextDate
      Src: /src/quantlib/ql/time/ecb.cpp:198,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/ecb.cpp:198,1
    - Dst: QuantLib::ECB::nextDate
      Src: /src/quantlib/ql/time/ecb.cpp:200,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' ecbCode'
    - ' refDate'
    argTypes:
    - string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 201
    functionName: QuantLib::ECB::date
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - data
    - left::at
    - ToInteger
    - QuantLib::Date::minDate
    - QuantLib::ECB::isECBcode
    - Date::year
    - QuantLib::ECB::nextDate
    - QuantLib::detail::instance
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date ECB::date(const string& ecbCode,\n                   const Date&
      refDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:205,1
    - Dst: isECBdate
      Src: /src/quantlib/ql/time/ecb.cpp:205,1
    - Dst: right::at
      Src: /src/quantlib/ql/time/ecb.cpp:209,1
    - Dst: month
      Src: /src/quantlib/ql/time/ecb.cpp:209,1
    - Dst: year
      Src: /src/quantlib/ql/time/ecb.cpp:212,1
    - Dst: std::snprintf
      Src: /src/quantlib/ql/time/ecb.cpp:216,1
    - Dst: boost::string_view::data
      Src: /src/quantlib/ql/time/ecb.cpp:216,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/ecb.cpp:219,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' ecbDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 224
    functionName: QuantLib::ECB::code
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - right::at
    - boost::string_view::data
    - QL_ENSURE
    - month
    - std::snprintf
    - QuantLib::ECB::isECBcode
    - isECBdate
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: string
    signature: string ECB::code(const Date& ecbDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:227,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:228,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:233,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:233,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 236
    functionName: QuantLib::ECB::nextDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 1
    functionsReached:
    - knownDates
    - QuantLib::detail::instance
    - Date
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date ECB::nextDate(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:239,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:240,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:245,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:245,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:246,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/time/ecb.cpp:247,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 248
    functionName: QuantLib::ECB::nextDates
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    - knownDates
    - QuantLib::detail::instance
    - Date
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> ECB::nextDates(const Date& date)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/ecb.cpp:253,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:258,1
    - Dst: left::find
      Src: /src/quantlib/ql/time/ecb.cpp:259,1
    - Dst: left::end
      Src: /src/quantlib/ql/time/ecb.cpp:259,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/ecb.cpp:264,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/ecb.cpp:264,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/ecb.cpp:265,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/ecb.cpp:265,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 266
    functionName: QuantLib::ECB::isECBcode
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 2
    functionsReached:
    - left::end
    - data
    - left::find
    - length
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool ECB::isECBcode(const std::string& ecbCode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:269,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:269,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:272,1
    - Dst: left::at
      Src: /src/quantlib/ql/time/ecb.cpp:273,1
    - Dst: string::reserve
      Src: /src/quantlib/ql/time/ecb.cpp:276,1
    - Dst: static_cast<Month>
      Src: /src/quantlib/ql/time/ecb.cpp:279,1
    - Dst: right::at
      Src: /src/quantlib/ql/time/ecb.cpp:280,1
    - Dst: string::append
      Src: /src/quantlib/ql/time/ecb.cpp:281,1
    - Dst: boost::string_view::data
      Src: /src/quantlib/ql/time/ecb.cpp:281,1
    - Dst: string::append
      Src: /src/quantlib/ql/time/ecb.cpp:287,1
    - Dst: incrementAndCheckForOverlow
      Src: /src/quantlib/ql/time/ecb.cpp:303,1
    - Dst: incrementAndCheckForOverlow
      Src: /src/quantlib/ql/time/ecb.cpp:304,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/ecb.cpp:308,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 313
    functionName: QuantLib::ECB::nextCode
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Month>
    - data
    - left::at
    - right::at
    - boost::string_view::data
    - QL_ENSURE
    - string::reserve
    - QuantLib::ECB::isECBcode
    - string::append
    - incrementAndCheckForOverlow
    - QL_REQUIRE
    linkageType: ''
    returnType: string
    signature: string ECB::nextCode(const std::string& ecbCode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:44,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:45,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:47,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - boost::string_view
    - boost::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: "operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - boost::string_view
    - std::toupper
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:44,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/ecb.cpp:45,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:47,1
    - Dst: boost::string_view
      Src: /src/quantlib/ql/time/ecb.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - boost::string_view
    - boost::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: "operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - boost::string_view
    - std::toupper
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const boost::string_view lhs,\n                          const
      boost::string_view rhs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: '& ECB::knownDates()'
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & ECB::knownDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/time/ecb.cpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::ECB::addDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - insert
    linkageType: ''
    returnType: void
    signature: void ECB::addDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/quantlib/ql/time/ecb.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::ECB::removeDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - erase
    linkageType: ''
    returnType: void
    signature: void ECB::removeDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/ecb.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: QuantLib::ToInteger
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_ASSERT
    linkageType: ''
    returnType: int
    signature: int ToInteger(const char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/ecb.cpp:174,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/ecb.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: QuantLib::ToInteger
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_ASSERT
    linkageType: ''
    returnType: int
    signature: int ToInteger(const char c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:183,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:183,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:187,1
    - Dst: left::at
      Src: /src/quantlib/ql/time/ecb.cpp:188,1
    - Dst: ToInteger
      Src: /src/quantlib/ql/time/ecb.cpp:191,1
    - Dst: ToInteger
      Src: /src/quantlib/ql/time/ecb.cpp:191,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:192,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:194,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:194,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/ecb.cpp:195,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/ecb.cpp:196,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/ecb.cpp:197,1
    - Dst: QuantLib::ECB::nextDate
      Src: /src/quantlib/ql/time/ecb.cpp:198,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/ecb.cpp:198,1
    - Dst: QuantLib::ECB::nextDate
      Src: /src/quantlib/ql/time/ecb.cpp:200,1
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' ecbCode'
    - ' refDate'
    argTypes:
    - string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 201
    functionName: QuantLib::ECB::date
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - data
    - left::at
    - ToInteger
    - QuantLib::Date::minDate
    - QuantLib::ECB::isECBcode
    - Date::year
    - QuantLib::ECB::nextDate
    - QuantLib::detail::instance
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date ECB::date(const string& ecbCode,\n                   const Date&
      refDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:205,1
    - Dst: isECBdate
      Src: /src/quantlib/ql/time/ecb.cpp:205,1
    - Dst: right::at
      Src: /src/quantlib/ql/time/ecb.cpp:209,1
    - Dst: month
      Src: /src/quantlib/ql/time/ecb.cpp:209,1
    - Dst: year
      Src: /src/quantlib/ql/time/ecb.cpp:212,1
    - Dst: std::snprintf
      Src: /src/quantlib/ql/time/ecb.cpp:216,1
    - Dst: boost::string_view::data
      Src: /src/quantlib/ql/time/ecb.cpp:216,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/ecb.cpp:219,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' ecbDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 224
    functionName: QuantLib::ECB::code
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - right::at
    - boost::string_view::data
    - QL_ENSURE
    - month
    - std::snprintf
    - QuantLib::ECB::isECBcode
    - isECBdate
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: string
    signature: string ECB::code(const Date& ecbDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:227,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:228,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:233,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:233,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 236
    functionName: QuantLib::ECB::nextDate
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 2
    functionsReached:
    - knownDates
    - QuantLib::detail::instance
    - Date
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date ECB::nextDate(const Date& date)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/ecb.cpp:239,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/ecb.cpp:240,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:243,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:245,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:245,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:246,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/time/ecb.cpp:247,1
    - Dst: knownDates
      Src: /src/quantlib/ql/time/ecb.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 248
    functionName: QuantLib::ECB::nextDates
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Date>
    - knownDates
    - QuantLib::detail::instance
    - Date
    - std::upper_bound
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> ECB::nextDates(const Date& date)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/ecb.cpp:253,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:258,1
    - Dst: left::find
      Src: /src/quantlib/ql/time/ecb.cpp:259,1
    - Dst: left::end
      Src: /src/quantlib/ql/time/ecb.cpp:259,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/ecb.cpp:264,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/ecb.cpp:264,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/ecb.cpp:265,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/ecb.cpp:265,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 266
    functionName: QuantLib::ECB::isECBcode
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 5
    functionsReached:
    - left::end
    - data
    - left::find
    - length
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool ECB::isECBcode(const std::string& ecbCode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/ecb.cpp:269,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:269,1
    - Dst: data
      Src: /src/quantlib/ql/time/ecb.cpp:272,1
    - Dst: left::at
      Src: /src/quantlib/ql/time/ecb.cpp:273,1
    - Dst: string::reserve
      Src: /src/quantlib/ql/time/ecb.cpp:276,1
    - Dst: static_cast<Month>
      Src: /src/quantlib/ql/time/ecb.cpp:279,1
    - Dst: right::at
      Src: /src/quantlib/ql/time/ecb.cpp:280,1
    - Dst: string::append
      Src: /src/quantlib/ql/time/ecb.cpp:281,1
    - Dst: boost::string_view::data
      Src: /src/quantlib/ql/time/ecb.cpp:281,1
    - Dst: string::append
      Src: /src/quantlib/ql/time/ecb.cpp:287,1
    - Dst: incrementAndCheckForOverlow
      Src: /src/quantlib/ql/time/ecb.cpp:303,1
    - Dst: incrementAndCheckForOverlow
      Src: /src/quantlib/ql/time/ecb.cpp:304,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/ecb.cpp:308,1
    - Dst: QuantLib::ECB::isECBcode
      Src: /src/quantlib/ql/time/ecb.cpp:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 313
    functionName: QuantLib::ECB::nextCode
    functionSourceFile: /src/quantlib/ql/time/ecb.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Month>
    - data
    - left::at
    - right::at
    - boost::string_view::data
    - QL_ENSURE
    - string::reserve
    - QuantLib::ECB::isECBcode
    - string::append
    - incrementAndCheckForOverlow
    - QL_REQUIRE
    linkageType: ''
    returnType: string
    signature: string ECB::nextCode(const std::string& ecbCode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::long_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::short_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::shortest_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void shortest_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::long_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::short_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::shortest_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void shortest_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::long_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::short_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::shortest_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void shortest_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::detail::long_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::detail::short_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_weekday_holder(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::shortest_weekday_holder
    functionSourceFile: /src/quantlib/ql/time/weekday.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void shortest_weekday_holder(Weekday d)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/frequency.cpp:58,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/frequency.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - ' out'
    - f
    argTypes:
    - std::ostream
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 60
    functionName: '& operator<<(std::ostream& out, Frequency f)'
    functionSourceFile: /src/quantlib/ql/time/frequency.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Frequency f)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/frequency.cpp:58,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/frequency.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - ' out'
    - f
    argTypes:
    - std::ostream
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 60
    functionName: '& operator<<(std::ostream& out, Frequency f)'
    functionSourceFile: /src/quantlib/ql/time/frequency.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Frequency f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Period()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - units
    argTypes:
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Period(Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Period::length
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer length() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Period::units
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeUnit
    signature: TimeUnit units() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::long_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_period_holder(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::detail::short_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_period_holder(Period p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::long_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_period_holder(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::detail::short_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_period_holder(Period p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period::normalize
      Src: /src/quantlib/ql/time/period.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::Period::normalized
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Period::normalize
    linkageType: ''
    returnType: Period
    signature: Period Period::normalized() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - units
    argTypes:
    - T
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: operator*(T n, TimeUnit units)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: Period
    signature: Period operator*(T n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - units
    - n
    argTypes:
    - TimeUnit
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: operator*(TimeUnit units, T n)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: Period
    signature: Period operator*(TimeUnit units, T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:156,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 156
    functionName: operator-(const Period& p)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator-(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - Integer
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: operator*(Integer n, const Period& p)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator*(Integer n, const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:160,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - n
    argTypes:
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: operator*(const Period& p, Integer n)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator*(const Period& p, Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: operator==(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: operator!=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: operator>(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: operator<=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: operator>=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Period()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - units
    argTypes:
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Period(Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Period::length
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer length() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::Period::units
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeUnit
    signature: TimeUnit units() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::long_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_period_holder(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::detail::short_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_period_holder(Period p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::detail::long_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_period_holder(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - p
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::detail::short_period_holder
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_period_holder(Period p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period::normalize
      Src: /src/quantlib/ql/time/period.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: QuantLib::Period::normalized
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Period::normalize
    linkageType: ''
    returnType: Period
    signature: Period Period::normalized() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - units
    argTypes:
    - T
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: operator*(T n, TimeUnit units)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: Period
    signature: Period operator*(T n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - units
    - n
    argTypes:
    - TimeUnit
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: operator*(TimeUnit units, T n)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - Integer
    linkageType: ''
    returnType: Period
    signature: Period operator*(TimeUnit units, T n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:156,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 156
    functionName: operator-(const Period& p)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator-(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - Integer
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 158
    functionName: operator*(Integer n, const Period& p)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator*(Integer n, const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.hpp:160,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - n
    argTypes:
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: operator*(const Period& p, Integer n)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached:
    - length
    - units
    linkageType: ''
    returnType: Period
    signature: Period operator*(const Period& p, Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: operator==(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: operator!=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: operator>(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: operator<=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: operator>=(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Period& p1, const Period& p2)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/businessdayconvention.cpp:47,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/businessdayconvention.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - b
    argTypes:
    - std::ostream
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 49
    functionName: "& operator<<(std::ostream& out,\n                             BusinessDayConvention
      b)"
    functionSourceFile: /src/quantlib/ql/time/businessdayconvention.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             BusinessDayConvention
      b)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/businessdayconvention.cpp:47,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/businessdayconvention.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - b
    argTypes:
    - std::ostream
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 49
    functionName: "& operator<<(std::ostream& out,\n                             BusinessDayConvention
      b)"
    functionSourceFile: /src/quantlib/ql/time/businessdayconvention.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             BusinessDayConvention
      b)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/asx.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/time/asx.cpp:48,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 57
    functionName: QuantLib::ASX::isASXdate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 4
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool ASX::isASXdate(const Date& date, bool mainCycle)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/asx.cpp:60,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/asx.cpp:64,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/asx.cpp:64,1
    - Dst: boost::string_view::find
      Src: /src/quantlib/ql/time/asx.cpp:69,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/asx.cpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' in'
    - mainCycle
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionName: QuantLib::ASX::isASXcode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - std::toupper
    - length
    - boost::string_view::find
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool ASX::isASXcode(const std::string& in, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/asx.cpp:73,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/time/asx.cpp:73,1
    - Dst: month
      Src: /src/quantlib/ql/time/asx.cpp:77,1
    - Dst: static_cast<char>
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/asx.cpp:82,1
    - Dst: QuantLib::ASX::isASXcode
      Src: /src/quantlib/ql/time/asx.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionName: QuantLib::ASX::code
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - QL_ENSURE
    - QuantLib::ASX::isASXcode
    - QuantLib::ASX::isASXdate
    - month
    - static_cast<char>
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string ASX::code(const Date& date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/asx.cpp:92,1
    - Dst: QuantLib::ASX::isASXcode
      Src: /src/quantlib/ql/time/asx.cpp:92,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:95,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:97,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/asx.cpp:97,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/asx.cpp:99,1
    - Dst: front
      Src: /src/quantlib/ql/time/asx.cpp:99,1
    - Dst: find
      Src: /src/quantlib/ql/time/asx.cpp:100,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/asx.cpp:101,1
    - Dst: static_cast<QuantLib::Month>
      Src: /src/quantlib/ql/time/asx.cpp:104,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:107,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:107,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/asx.cpp:108,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:112,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:113,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:114,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:115,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' asxCode'
    - ' refDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 117
    functionName: QuantLib::ASX::date
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - std::toupper
    - find
    - static_cast<QuantLib::Month>
    - QuantLib::ASX::isASXcode
    - QL_ASSERT
    - Date::year
    - QuantLib::detail::instance
    - Date
    - QuantLib::ASX::nextDate
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date ASX::date(const std::string& asxCode,\n                   const
      Date& refDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:120,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:121,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/asx.cpp:121,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:123,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/asx.cpp:124,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:128,1
    - Dst: Size
      Src: /src/quantlib/ql/time/asx.cpp:129,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:131,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:133,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/asx.cpp:138,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:140,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:140,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 142
    functionName: QuantLib::ASX::nextDate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 4
    functionsReached:
    - Size
    - QuantLib::IborIndex::endOfMonth
    - QuantLib::Date::nthWeekday
    - Date::year
    - QuantLib::detail::instance
    - Date
    - Date::dayOfMonth
    - Date::month
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: Date
    signature: Date ASX::nextDate(const Date& date, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::date
      Src: /src/quantlib/ql/time/asx.cpp:147,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' ASXcode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionName: QuantLib::ASX::nextDate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::ASX::date
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date ASX::nextDate(const std::string& ASXcode,\n                       bool
      mainCycle,\n                       const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:153,1
    - Dst: QuantLib::ASX::code
      Src: /src/quantlib/ql/time/asx.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::ASX::nextCode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::code
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string ASX::nextCode(const Date& d,\n                              bool
      mainCycle)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:160,1
    - Dst: QuantLib::ASX::code
      Src: /src/quantlib/ql/time/asx.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' asxCode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: QuantLib::ASX::nextCode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::code
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string ASX::nextCode(const std::string& asxCode,\n                              bool
      mainCycle,\n                              const Date& referenceDate)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/asx.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/time/asx.cpp:48,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 57
    functionName: QuantLib::ASX::isASXdate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 5
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool ASX::isASXdate(const Date& date, bool mainCycle)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/asx.cpp:60,1
    - Dst: std::isdigit
      Src: /src/quantlib/ql/time/asx.cpp:64,1
    - Dst: static_cast<unsigned char>
      Src: /src/quantlib/ql/time/asx.cpp:64,1
    - Dst: boost::string_view::find
      Src: /src/quantlib/ql/time/asx.cpp:69,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/asx.cpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' in'
    - mainCycle
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionName: QuantLib::ASX::isASXcode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 2
    functionsReached:
    - std::toupper
    - length
    - boost::string_view::find
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool ASX::isASXcode(const std::string& in, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/asx.cpp:73,1
    - Dst: QuantLib::ASX::isASXdate
      Src: /src/quantlib/ql/time/asx.cpp:73,1
    - Dst: month
      Src: /src/quantlib/ql/time/asx.cpp:77,1
    - Dst: static_cast<char>
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/asx.cpp:78,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/asx.cpp:82,1
    - Dst: QuantLib::ASX::isASXcode
      Src: /src/quantlib/ql/time/asx.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionName: QuantLib::ASX::code
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 2
    functionsReached:
    - static_cast<int>
    - QL_ENSURE
    - QuantLib::ASX::isASXcode
    - QuantLib::ASX::isASXdate
    - month
    - static_cast<char>
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string ASX::code(const Date& date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/asx.cpp:92,1
    - Dst: QuantLib::ASX::isASXcode
      Src: /src/quantlib/ql/time/asx.cpp:92,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:95,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:97,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/asx.cpp:97,1
    - Dst: std::toupper
      Src: /src/quantlib/ql/time/asx.cpp:99,1
    - Dst: front
      Src: /src/quantlib/ql/time/asx.cpp:99,1
    - Dst: find
      Src: /src/quantlib/ql/time/asx.cpp:100,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/asx.cpp:101,1
    - Dst: static_cast<QuantLib::Month>
      Src: /src/quantlib/ql/time/asx.cpp:104,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:107,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/time/asx.cpp:107,1
    - Dst: QL_ASSERT
      Src: /src/quantlib/ql/time/asx.cpp:108,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:112,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:113,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:114,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:115,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:116,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' asxCode'
    - ' refDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 117
    functionName: QuantLib::ASX::date
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 1
    functionsReached:
    - static_cast<int>
    - std::toupper
    - find
    - static_cast<QuantLib::Month>
    - QuantLib::ASX::isASXcode
    - QL_ASSERT
    - Date::year
    - QuantLib::detail::instance
    - Date
    - QuantLib::ASX::nextDate
    - front
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date ASX::date(const std::string& asxCode,\n                   const
      Date& refDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:120,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:121,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/asx.cpp:121,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/asx.cpp:123,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/asx.cpp:124,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:128,1
    - Dst: Size
      Src: /src/quantlib/ql/time/asx.cpp:129,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:131,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/asx.cpp:133,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/asx.cpp:138,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:140,1
    - Dst: Date
      Src: /src/quantlib/ql/time/asx.cpp:140,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 142
    functionName: QuantLib::ASX::nextDate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 9
    functionsReached:
    - Size
    - QuantLib::IborIndex::endOfMonth
    - QuantLib::Date::nthWeekday
    - Date::year
    - QuantLib::detail::instance
    - Date
    - Date::dayOfMonth
    - Date::month
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: Date
    signature: Date ASX::nextDate(const Date& date, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::date
      Src: /src/quantlib/ql/time/asx.cpp:147,1
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' ASXcode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionName: QuantLib::ASX::nextDate
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::ASX::date
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date ASX::nextDate(const std::string& ASXcode,\n                       bool
      mainCycle,\n                       const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:153,1
    - Dst: QuantLib::ASX::code
      Src: /src/quantlib/ql/time/asx.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: QuantLib::ASX::nextCode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::code
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string ASX::nextCode(const Date& d,\n                              bool
      mainCycle)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ASX::nextDate
      Src: /src/quantlib/ql/time/asx.cpp:160,1
    - Dst: QuantLib::ASX::code
      Src: /src/quantlib/ql/time/asx.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' asxCode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: QuantLib::ASX::nextCode
    functionSourceFile: /src/quantlib/ql/time/asx.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ASX::code
    - QuantLib::ASX::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string ASX::nextCode(const std::string& asxCode,\n                              bool
      mainCycle,\n                              const Date& referenceDate)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/dategenerationrule.cpp:50,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/dategenerationrule.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - ' out'
    - r
    argTypes:
    - std::ostream
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 52
    functionName: '& operator<<(std::ostream& out, DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/time/dategenerationrule.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, DateGeneration::Rule r)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/dategenerationrule.cpp:50,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/dategenerationrule.cpp:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - ' out'
    - r
    argTypes:
    - std::ostream
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 52
    functionName: '& operator<<(std::ostream& out, DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/time/dategenerationrule.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, DateGeneration::Rule r)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/timeunit.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - ' out'
    - ' timeunit'
    argTypes:
    - std::ostream
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 51
    functionName: '& operator<<(std::ostream& out, const TimeUnit& timeunit)'
    functionSourceFile: /src/quantlib/ql/time/timeunit.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const TimeUnit& timeunit)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/timeunit.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - ' out'
    - ' timeunit'
    argTypes:
    - std::ostream
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 51
    functionName: '& operator<<(std::ostream& out, const TimeUnit& timeunit)'
    functionSourceFile: /src/quantlib/ql/time/timeunit.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const TimeUnit& timeunit)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::serial_type
      Src: /src/quantlib/ql/time/date.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - Date::serial_type
    linkageType: ''
    returnType: void
    signature: void Date::Date()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::checkSerialNumber
    linkageType: ''
    returnType: void
    signature: void Date::Date(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:70,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:73,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.cpp:74,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:75,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:76,1
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 80
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::monthOffset
    - Integer
    - QuantLib::Date::isLeap
    - QuantLib::Date::yearOffset
    - QuantLib::Date::monthLength
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Date::Date(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfYear
      Src: /src/quantlib/ql/time/date.cpp:83,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:85,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:85,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:86,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:86,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:88,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:88,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 91
    functionName: QuantLib::Date::month
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::monthOffset
    - QuantLib::Date::year
    - Month
    - QuantLib::Date::isLeap
    - QuantLib::Date::dayOfYear
    linkageType: ''
    returnType: Month
    signature: Month Date::month() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.cpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::Date::year
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Date::yearOffset
    linkageType: ''
    returnType: Year
    signature: Year Date::year() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionName: '& Date::operator+=(Date::serial_type days)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(Date::serial_type days)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:109,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:109,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: '& Date::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: '& Date::operator-=(Date::serial_type days)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(Date::serial_type days)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:121,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:121,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& Date::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: '& Date::operator++()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: '& Date::operator--()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator--()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:146,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:147,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:147,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:148,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/date.cpp:158,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:166,1
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:169,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:170,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:171,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/date.cpp:173,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:183,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - ' date'
    - n
    - units
    argTypes:
    - Date
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 185
    functionName: QuantLib::Date::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::year
    - QL_ENSURE
    - QuantLib::Date::month
    - Month
    - Integer
    - QuantLib::Date::dayOfMonth
    - QuantLib::Date::isLeap
    - QL_FAIL
    - QuantLib::Date::monthLength
    linkageType: ''
    returnType: Date
    signature: Date Date::advance(const Date& date, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 256
    functionName: QuantLib::Date::isLeap
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Date::isLeap(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - leapYear
    argTypes:
    - Month
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 267
    functionName: QuantLib::Date::monthLength
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer Date::monthLength(Month m, bool leapYear)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - leapYear
    argTypes:
    - Month
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 281
    functionName: QuantLib::Date::monthOffset
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer Date::monthOffset(Month m, bool leapYear)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 351
    functionName: QuantLib::Date::yearOffset
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::yearOffset(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::serialNumberDateReference
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date & serialNumberDateReference()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: boost::gregorian::greg_weekday::as_number
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - d
    argTypes:
    - boost::gregorian::greg_weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 401
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - Weekday
    - QL_FAIL
    - boost::gregorian::greg_weekday::as_number
    linkageType: ''
    returnType: Weekday
    signature: Weekday mapBoostDateType2QL(boost::gregorian::greg_weekday d)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: boost::gregorian::greg_month::as_number
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - boost::gregorian::greg_month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month::as_number
    - Month
    linkageType: ''
    returnType: Month
    signature: Month mapBoostDateType2QL(boost::gregorian::greg_month m)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::greg_month
      Src: /src/quantlib/ql/time/date.cpp:432,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:449,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 452
    functionName: QuantLib::mapQLDateType2Boost
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month
    linkageType: ''
    returnType: boost::gregorian::greg_month
    signature: boost::gregorian::greg_month mapQLDateType2Boost(Month m)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:459,1
    - Dst: QuantLib::weeks
      Src: /src/quantlib/ql/time/date.cpp:462,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:466,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:467,1
    - Dst: boost::gregorian::date::year
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: boost::gregorian::date::month
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: QuantLib::months
      Src: /src/quantlib/ql/time/date.cpp:471,1
    - Dst: QuantLib::years
      Src: /src/quantlib/ql/time/date.cpp:474,1
    - Dst: boost::gregorian::date::day
      Src: /src/quantlib/ql/time/date.cpp:477,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:481,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:485,1
    - Dst: QuantLib::Date::hours
      Src: /src/quantlib/ql/time/date.cpp:491,1
    - Dst: QuantLib::Date::minutes
      Src: /src/quantlib/ql/time/date.cpp:494,1
    - Dst: QuantLib::Date::seconds
      Src: /src/quantlib/ql/time/date.cpp:497,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:500,1
    - Dst: QuantLib::Date::microseconds
      Src: /src/quantlib/ql/time/date.cpp:503,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:506,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 3
    argNames:
    - ' dt'
    - n
    - units
    argTypes:
    - ptime
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 508
    functionName: QuantLib::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::hours
    - QuantLib::date
    - QuantLib::weeks
    - gregorian_calendar::end_of_month_day
    - boost::gregorian::date::year
    - boost::gregorian::date::month
    - QuantLib::years
    - QuantLib::Date::seconds
    - QL_FAIL
    - boost::gregorian::date::day
    - QuantLib::Date::milliseconds
    - QuantLib::months
    - QuantLib::Date::minutes
    - QuantLib::Date::microseconds
    - QuantLib::days
    linkageType: ''
    returnType: void
    signature: void advance(ptime& dt, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:511,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:514,1
    - Dst: QuantLib::mapQLDateType2Boost
      Src: /src/quantlib/ql/time/date.cpp:518,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:521,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:522,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:523,1
    - Dst: QuantLib::Exercise::date
      Src: /src/quantlib/ql/time/date.cpp:526,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - y
    - m
    - d
    argTypes:
    - Year
    - Month
    - Day
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 527
    functionName: QuantLib::gregorianDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Exercise::date
    - QuantLib::mapQLDateType2Boost
    - Integer
    - boost::gregorian::gregorian_calendar::end_of_month_day
    - QL_REQUIRE
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date gregorianDate(Year y, Month m, Day d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::serialNumberDateReference
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date & serialNumberDateReference()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: boost::gregorian::greg_weekday::as_number
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - d
    argTypes:
    - boost::gregorian::greg_weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 401
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - Weekday
    - QL_FAIL
    - boost::gregorian::greg_weekday::as_number
    linkageType: ''
    returnType: Weekday
    signature: Weekday mapBoostDateType2QL(boost::gregorian::greg_weekday d)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: boost::gregorian::greg_month::as_number
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - boost::gregorian::greg_month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month::as_number
    - Month
    linkageType: ''
    returnType: Month
    signature: Month mapBoostDateType2QL(boost::gregorian::greg_month m)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::greg_month
      Src: /src/quantlib/ql/time/date.cpp:432,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:449,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 452
    functionName: QuantLib::mapQLDateType2Boost
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month
    linkageType: ''
    returnType: boost::gregorian::greg_month
    signature: boost::gregorian::greg_month mapQLDateType2Boost(Month m)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:459,1
    - Dst: QuantLib::weeks
      Src: /src/quantlib/ql/time/date.cpp:462,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:466,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:467,1
    - Dst: boost::gregorian::date::year
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: boost::gregorian::date::month
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: QuantLib::months
      Src: /src/quantlib/ql/time/date.cpp:471,1
    - Dst: QuantLib::years
      Src: /src/quantlib/ql/time/date.cpp:474,1
    - Dst: boost::gregorian::date::day
      Src: /src/quantlib/ql/time/date.cpp:477,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:481,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:485,1
    - Dst: QuantLib::Date::hours
      Src: /src/quantlib/ql/time/date.cpp:491,1
    - Dst: QuantLib::Date::minutes
      Src: /src/quantlib/ql/time/date.cpp:494,1
    - Dst: QuantLib::Date::seconds
      Src: /src/quantlib/ql/time/date.cpp:497,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:500,1
    - Dst: QuantLib::Date::microseconds
      Src: /src/quantlib/ql/time/date.cpp:503,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:506,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 3
    argNames:
    - ' dt'
    - n
    - units
    argTypes:
    - ptime
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 508
    functionName: QuantLib::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::hours
    - QuantLib::date
    - QuantLib::weeks
    - gregorian_calendar::end_of_month_day
    - boost::gregorian::date::year
    - boost::gregorian::date::month
    - QuantLib::years
    - QuantLib::Date::seconds
    - QL_FAIL
    - boost::gregorian::date::day
    - QuantLib::Date::milliseconds
    - QuantLib::months
    - QuantLib::Date::minutes
    - QuantLib::Date::microseconds
    - QuantLib::days
    linkageType: ''
    returnType: void
    signature: void advance(ptime& dt, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:511,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:514,1
    - Dst: QuantLib::mapQLDateType2Boost
      Src: /src/quantlib/ql/time/date.cpp:518,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:521,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:522,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:523,1
    - Dst: QuantLib::Exercise::date
      Src: /src/quantlib/ql/time/date.cpp:526,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - y
    - m
    - d
    argTypes:
    - Year
    - Month
    - Day
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 527
    functionName: QuantLib::gregorianDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Exercise::date
    - QuantLib::mapQLDateType2Boost
    - Integer
    - boost::gregorian::gregorian_calendar::end_of_month_day
    - QL_REQUIRE
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date gregorianDate(Year y, Month m, Day d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 532
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - serialNumberDateReference
    linkageType: ''
    returnType: void
    signature: void Date::Date()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dateTime'
    argTypes:
    - ptime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 535
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Date::Date(const ptime& dateTime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gregorianDate
      Src: /src/quantlib/ql/time/date.cpp:538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 538
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - gregorianDate
    linkageType: ''
    returnType: void
    signature: void Date::Date(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gregorianDate
      Src: /src/quantlib/ql/time/date.cpp:544,1
    - Dst: boost::posix_time::time_duration
      Src: /src/quantlib/ql/time/date.cpp:545,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:547,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - d
    - m
    - y
    - hours
    - minutes
    - seconds
    - millisec
    - microsec
    argTypes:
    - Day
    - Month
    - Year
    - Hour
    - Minute
    - Second
    - Millisecond
    - Microsecond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 548
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - boost::posix_time::time_duration
    - time_duration::ticks_per_second
    - gregorianDate
    linkageType: ''
    returnType: void
    signature: "void Date::Date(Day d, Month m, Year y,\n               Hour hours,
      Minute minutes, Second seconds,\n               Millisecond millisec, Microsecond
      microsec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:552,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:553,1
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 555
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - serialNumberDateReference
    - QuantLib::days
    - QuantLib::Date::checkSerialNumber
    linkageType: ''
    returnType: void
    signature: void Date::Date(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapBoostDateType2QL<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:558,1
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: QuantLib::Date::weekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - date
    - mapBoostDateType2QL<compatibleEnums>
    linkageType: ''
    returnType: Weekday
    signature: Weekday Date::weekday() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionName: QuantLib::Date::dayOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - date
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionName: QuantLib::Date::dayOfYear
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - date
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfYear() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapBoostDateType2QL<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:571,1
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionName: QuantLib::Date::month
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - date
    - mapBoostDateType2QL<compatibleEnums>
    linkageType: ''
    returnType: Month
    signature: Month Date::month() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: QuantLib::Date::year
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - date
    linkageType: ''
    returnType: Year
    signature: Year Date::year() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionName: QuantLib::Date::hours
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Hour
    signature: Hour Date::hours() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 584
    functionName: QuantLib::Date::minutes
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Minute
    signature: Minute Date::minutes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionName: QuantLib::Date::seconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Second
    signature: Second Date::seconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:591,1
    - Dst: time_duration::hours
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: time_duration::minutes
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: time_duration::seconds
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: Real
      Src: /src/quantlib/ql/time/date.cpp:595,1
    - Dst: time_duration::fractional_seconds
      Src: /src/quantlib/ql/time/date.cpp:595,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 590
    functionDepth: 1
    functionLinenumber: 590
    functionLinenumberEnd: 598
    functionName: QuantLib::Date::fractionOfDay
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - time_duration::seconds
    - time_duration::hours
    - QuantLib::Date::ticksPerSecond
    - Real
    - time_duration::minutes
    - time_duration::fractional_seconds
    linkageType: ''
    returnType: Time
    signature: Time Date::fractionOfDay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:601,1
    - Dst: Real
      Src: /src/quantlib/ql/time/date.cpp:602,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 1
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: QuantLib::Date::fractionOfSecond
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - time_of_day
    - QuantLib::Date::ticksPerSecond
    - Real
    linkageType: ''
    returnType: Time
    signature: Time Date::fractionOfSecond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:606,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: QuantLib::Date::milliseconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - time_of_day
    - QuantLib::Date::ticksPerSecond
    linkageType: ''
    returnType: Millisecond
    signature: Millisecond Date::milliseconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:611,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:612,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:612,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 610
    functionDepth: 2
    functionLinenumber: 610
    functionLinenumberEnd: 614
    functionName: QuantLib::Date::microseconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - time_of_day
    - time_duration::ticks_per_second
    - QuantLib::Date::ticksPerSecond
    - QuantLib::Date::milliseconds
    linkageType: ''
    returnType: Microsecond
    signature: Microsecond Date::microseconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 618
    functionName: QuantLib::Date::ticksPerSecond
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - time_duration::ticks_per_second
    linkageType: ''
    returnType: time_duration::tick_type
    signature: time_duration::tick_type Date::ticksPerSecond()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: days
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:624,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 626
    functionName: QuantLib::Date::serialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::checkSerialNumber
    - date
    - days
    - serialNumberDateReference
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::serialNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 628
    functionName: '& Date::dateTime() const'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ptime
    signature: ptime & Date::dateTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionName: '& Date::operator+=(Date::serial_type d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(Date::serial_type d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:636,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:636,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 635
    functionDepth: 0
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionName: '& Date::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: '& Date::operator-=(Date::serial_type d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(Date::serial_type d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:645,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:645,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:645,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: '& Date::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 652
    functionName: '& Date::operator++()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 657
    functionName: '& Date::operator--()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator--()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 664
    functionName: Date::operator+(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 671
    functionName: Date::operator-(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 678
    functionName: Date::operator+(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 685
    functionName: Date::operator-(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:688,1
    - Dst: boost::posix_time::microsec_clock::local_time
      Src: /src/quantlib/ql/time/date.cpp:688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 689
    functionName: QuantLib::Date::localDateTime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::Date
    - boost::posix_time::microsec_clock::local_time
    linkageType: ''
    returnType: Date
    signature: Date Date::localDateTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:692,1
    - Dst: boost::posix_time::microsec_clock::universal_time
      Src: /src/quantlib/ql/time/date.cpp:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 691
    functionDepth: 1
    functionLinenumber: 691
    functionLinenumberEnd: 693
    functionName: QuantLib::Date::universalDateTime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::Date
    - boost::posix_time::microsec_clock::universal_time
    linkageType: ''
    returnType: Date
    signature: Date Date::universalDateTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::gregorian_calendar::is_leap_year
      Src: /src/quantlib/ql/time/date.cpp:696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionName: QuantLib::Date::isLeap
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - boost::gregorian::gregorian_calendar::is_leap_year
    linkageType: ''
    returnType: bool
    signature: bool Date::isLeap(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:700,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:701,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:702,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: mapQLDateType2Boost<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 699
    functionDepth: 2
    functionLinenumber: 699
    functionLinenumberEnd: 706
    functionName: QuantLib::Date::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::Date::Date
    - QuantLib::Date::year
    - QuantLib::Date::month
    - mapQLDateType2Boost<compatibleEnums>
    - boost::gregorian::gregorian_calendar::end_of_month_day
    linkageType: ''
    returnType: Date
    signature: Date Date::endOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:709,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:710,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:711,1
    - Dst: mapQLDateType2Boost<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:711,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 712
    functionName: QuantLib::Date::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::month
    - QuantLib::Date::dayOfMonth
    - mapQLDateType2Boost<compatibleEnums>
    - boost::gregorian::gregorian_calendar::end_of_month_day
    linkageType: ''
    returnType: bool
    signature: bool Date::isEndOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:716,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:716,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 717
    functionName: operator-(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - QuantLib::days
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type operator-(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fractionOfDay
      Src: /src/quantlib/ql/time/date.cpp:721,1
    - Dst: fractionOfDay
      Src: /src/quantlib/ql/time/date.cpp:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: QuantLib::daysBetween
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - fractionOfDay
    linkageType: ''
    returnType: Time
    signature: Time daysBetween(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:725,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionName: operator<(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:729,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 728
    functionDepth: 0
    functionLinenumber: 728
    functionLinenumberEnd: 730
    functionName: operator<=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:733,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: operator>(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:737,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 738
    functionName: operator>=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:741,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:741,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 742
    functionName: operator==(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:745,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 744
    functionDepth: 0
    functionLinenumber: 744
    functionLinenumberEnd: 746
    functionName: operator!=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 751
    functionName: QuantLib::Date::minimumSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::minimumSerialNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 755
    functionName: QuantLib::Date::maximumSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::maximumSerialNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:758,1
    - Dst: QuantLib::Date::minimumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:758,1
    - Dst: QuantLib::Date::maximumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:759,1
    - Dst: QuantLib::Date::minimumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:761,1
    - Dst: QuantLib::Date::maximumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:762,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/date.cpp:763,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/time/date.cpp:763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 764
    functionName: QuantLib::Date::checkSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Date::minimumSerialNumber
    - QuantLib::Date::minDate
    - QuantLib::Date::maxDate
    - QuantLib::Date::maximumSerialNumber
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Date::checkSerialNumber(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 769
    functionName: QuantLib::Date::minDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::minDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 774
    functionName: QuantLib::Date::maxDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 33
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::maxDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 780
    functionName: Date::operator++(int )
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator++(int )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 786
    functionName: Date::operator--(int )
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator--(int )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::time
      Src: /src/quantlib/ql/time/date.cpp:791,1
    - Dst: std::time_t
      Src: /src/quantlib/ql/time/date.cpp:791,1
    - Dst: std::localtime
      Src: /src/quantlib/ql/time/date.cpp:793,1
    - Dst: Day
      Src: /src/quantlib/ql/time/date.cpp:794,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:794,1
    - Dst: Year
      Src: /src/quantlib/ql/time/date.cpp:794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 788
    functionDepth: 0
    functionLinenumber: 788
    functionLinenumberEnd: 795
    functionName: QuantLib::Date::todaysDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 7
    functionsReached:
    - std::time
    - std::time_t
    - Month
    - std::localtime
    - Day
    - Year
    linkageType: ''
    returnType: Date
    signature: Date Date::todaysDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::weekday
      Src: /src/quantlib/ql/time/date.cpp:798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - dayOfWeek
    argTypes:
    - Date
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: QuantLib::Date::nextWeekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::weekday
    linkageType: ''
    returnType: Date
    signature: Date Date::nextWeekday(const Date& d, Weekday dayOfWeek)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:804,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:806,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:808,1
    - Dst: Day
      Src: /src/quantlib/ql/time/date.cpp:810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - nth
    - dayOfWeek
    - m
    - y
    argTypes:
    - Size
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 802
    functionDepth: 1
    functionLinenumber: 802
    functionLinenumberEnd: 811
    functionName: QuantLib::Date::nthWeekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::Date::Date
    - Day
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Date::nthWeekday(Size nth, Weekday dayOfWeek,\n                          Month
      m, Year y)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:842,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - ' out'
    - m
    argTypes:
    - std::ostream
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 844
    functionName: '& operator<<(std::ostream& out, Month m)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Month m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/time/date.cpp:849,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.cpp:849,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/time/date.cpp:850,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:850,1
    - Dst: std::hash<Date::serial_type>
      Src: /src/quantlib/ql/time/date.cpp:853,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.cpp:853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 846
    functionDepth: 3
    functionLinenumber: 846
    functionLinenumberEnd: 855
    functionName: QuantLib::hash_value
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - std::hash<Date::serial_type>
    - serialNumber
    - QuantLib::local_hash_combine
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t hash_value(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::long_date
      Src: /src/quantlib/ql/time/date.cpp:860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' d'
    argTypes:
    - std::ostream
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 859
    functionDepth: 1
    functionLinenumber: 859
    functionLinenumberEnd: 861
    functionName: '& operator<<(std::ostream& out, const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::long_date
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 870
    functionName: QuantLib::detail::do_grouping
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string do_grouping() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::ostream::flags
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::fill
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:874,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: nopunct::nopunct
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: std::ostream::imbue
      Src: /src/quantlib/ql/time/date.cpp:876,1
    - Dst: std::resetiosflags
      Src: /src/quantlib/ql/time/date.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 882
    functionName: QuantLib::detail::FormatResetter
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::ostream::getloc
    - std::ostream::imbue
    - std::resetiosflags
    - std::ostream::flags
    - nopunct::nopunct
    - std::ostream::fill
    linkageType: ''
    returnType: void
    signature: void FormatResetter(std::ostream &out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/time/date.cpp:884,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:885,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 887
    functionName: ~FormatResetter()
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - flags
    - fill
    - imbue
    linkageType: ''
    returnType: void
    signature: void ~FormatResetter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:897,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:902,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:903,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 910
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    - fill
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:915,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:919,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 924
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - QuantLib::io::ordinal
    - month
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:929,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:934,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:937,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 940
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:946,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: f::c_str
      Src: /src/quantlib/ql/time/date.cpp:952,1
    - Dst: date_facet::date_facet
      Src: /src/quantlib/ql/time/date.cpp:952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - formatted_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 956
    functionName: "& operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::locale
    - date_facet::date_facet
    - dayOfMonth
    - month
    - imbue
    - Date
    - year
    - f::c_str
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/time/date.cpp:963,1
    - Dst: hours
      Src: /src/quantlib/ql/time/date.cpp:965,1
    - Dst: minutes
      Src: /src/quantlib/ql/time/date.cpp:966,1
    - Dst: seconds
      Src: /src/quantlib/ql/time/date.cpp:967,1
    - Dst: milliseconds
      Src: /src/quantlib/ql/time/date.cpp:968,1
    - Dst: microseconds
      Src: /src/quantlib/ql/time/date.cpp:969,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:975,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_datetime_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 978
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - microseconds
    - std::setfill
    - seconds
    - std::setw
    - minutes
    - QuantLib::io::iso_date
    - milliseconds
    - hours
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 870
    functionName: QuantLib::detail::do_grouping
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string do_grouping() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::ostream::flags
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::fill
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:874,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: nopunct::nopunct
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: std::ostream::imbue
      Src: /src/quantlib/ql/time/date.cpp:876,1
    - Dst: std::resetiosflags
      Src: /src/quantlib/ql/time/date.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 882
    functionName: QuantLib::detail::FormatResetter
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::ostream::getloc
    - std::ostream::imbue
    - std::resetiosflags
    - std::ostream::flags
    - nopunct::nopunct
    - std::ostream::fill
    linkageType: ''
    returnType: void
    signature: void FormatResetter(std::ostream &out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/time/date.cpp:884,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:885,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 887
    functionName: ~FormatResetter()
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - flags
    - fill
    - imbue
    linkageType: ''
    returnType: void
    signature: void ~FormatResetter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:897,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:902,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:903,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 910
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    - fill
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:915,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:919,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 924
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - QuantLib::io::ordinal
    - month
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:929,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:934,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:937,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 940
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:946,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: f::c_str
      Src: /src/quantlib/ql/time/date.cpp:952,1
    - Dst: date_facet::date_facet
      Src: /src/quantlib/ql/time/date.cpp:952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - formatted_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 956
    functionName: "& operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::locale
    - date_facet::date_facet
    - dayOfMonth
    - month
    - imbue
    - Date
    - year
    - f::c_str
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/time/date.cpp:963,1
    - Dst: hours
      Src: /src/quantlib/ql/time/date.cpp:965,1
    - Dst: minutes
      Src: /src/quantlib/ql/time/date.cpp:966,1
    - Dst: seconds
      Src: /src/quantlib/ql/time/date.cpp:967,1
    - Dst: milliseconds
      Src: /src/quantlib/ql/time/date.cpp:968,1
    - Dst: microseconds
      Src: /src/quantlib/ql/time/date.cpp:969,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:975,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_datetime_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 978
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - microseconds
    - std::setfill
    - seconds
    - std::setw
    - minutes
    - QuantLib::io::iso_date
    - milliseconds
    - hours
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_date_holder
      Src: /src/quantlib/ql/time/date.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 983
    functionDepth: 1
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionName: QuantLib::io::short_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_date_holder
    linkageType: ''
    returnType: detail::short_date_holder
    signature: detail::short_date_holder short_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_date_holder
      Src: /src/quantlib/ql/time/date.cpp:988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionName: QuantLib::io::long_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::long_date_holder
    linkageType: ''
    returnType: detail::long_date_holder
    signature: detail::long_date_holder long_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_date_holder
      Src: /src/quantlib/ql/time/date.cpp:992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionName: QuantLib::io::iso_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::iso_date_holder
    linkageType: ''
    returnType: detail::iso_date_holder
    signature: detail::iso_date_holder iso_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::formatted_date_holder
      Src: /src/quantlib/ql/time/date.cpp:997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' f'
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 998
    functionName: QuantLib::io::formatted_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::formatted_date_holder
    linkageType: ''
    returnType: detail::formatted_date_holder
    signature: "detail::formatted_date_holder formatted_date(const Date& d,\n                                                     const
      std::string& f)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_datetime_holder
      Src: /src/quantlib/ql/time/date.cpp:1002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionName: QuantLib::io::iso_datetime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::iso_datetime_holder
    linkageType: ''
    returnType: detail::iso_datetime_holder
    signature: detail::iso_datetime_holder iso_datetime(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_date_holder
      Src: /src/quantlib/ql/time/date.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 983
    functionDepth: 1
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionName: QuantLib::io::short_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_date_holder
    linkageType: ''
    returnType: detail::short_date_holder
    signature: detail::short_date_holder short_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_date_holder
      Src: /src/quantlib/ql/time/date.cpp:988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionName: QuantLib::io::long_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::long_date_holder
    linkageType: ''
    returnType: detail::long_date_holder
    signature: detail::long_date_holder long_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_date_holder
      Src: /src/quantlib/ql/time/date.cpp:992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionName: QuantLib::io::iso_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::iso_date_holder
    linkageType: ''
    returnType: detail::iso_date_holder
    signature: detail::iso_date_holder iso_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::formatted_date_holder
      Src: /src/quantlib/ql/time/date.cpp:997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' f'
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 998
    functionName: QuantLib::io::formatted_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::formatted_date_holder
    linkageType: ''
    returnType: detail::formatted_date_holder
    signature: "detail::formatted_date_holder formatted_date(const Date& d,\n                                                     const
      std::string& f)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_datetime_holder
      Src: /src/quantlib/ql/time/date.cpp:1002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionName: QuantLib::io::iso_datetime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::iso_datetime_holder
    linkageType: ''
    returnType: detail::iso_datetime_holder
    signature: detail::iso_datetime_holder iso_datetime(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::serial_type
      Src: /src/quantlib/ql/time/date.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - Date::serial_type
    linkageType: ''
    returnType: void
    signature: void Date::Date()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Date::checkSerialNumber
    linkageType: ''
    returnType: void
    signature: void Date::Date(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:69,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:70,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:73,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.cpp:74,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:75,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:76,1
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 80
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Date::monthOffset
    - Integer
    - QuantLib::Date::isLeap
    - QuantLib::Date::yearOffset
    - QuantLib::Date::monthLength
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Date::Date(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfYear
      Src: /src/quantlib/ql/time/date.cpp:83,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:85,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:85,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:86,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:86,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.cpp:88,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:88,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 91
    functionName: QuantLib::Date::month
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Date::monthOffset
    - QuantLib::Date::year
    - Month
    - QuantLib::Date::isLeap
    - QuantLib::Date::dayOfYear
    linkageType: ''
    returnType: Month
    signature: Month Date::month() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.cpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::Date::year
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::Date::yearOffset
    linkageType: ''
    returnType: Year
    signature: Year Date::year() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionName: '& Date::operator+=(Date::serial_type days)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(Date::serial_type days)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:109,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:109,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: '& Date::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: '& Date::operator-=(Date::serial_type days)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(Date::serial_type days)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:121,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:121,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: '& Date::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: '& Date::operator++()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: '& Date::operator--()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - checkSerialNumber
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator--()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:146,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:147,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:147,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:148,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/date.cpp:158,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:162,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:166,1
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:169,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:170,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:171,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/date.cpp:173,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.cpp:177,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:183,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - ' date'
    - n
    - units
    argTypes:
    - Date
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 185
    functionName: QuantLib::Date::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::year
    - QL_ENSURE
    - QuantLib::Date::month
    - Month
    - Integer
    - QuantLib::Date::dayOfMonth
    - QuantLib::Date::isLeap
    - QL_FAIL
    - QuantLib::Date::monthLength
    linkageType: ''
    returnType: Date
    signature: Date Date::advance(const Date& date, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 256
    functionName: QuantLib::Date::isLeap
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Date::isLeap(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - leapYear
    argTypes:
    - Month
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 267
    functionName: QuantLib::Date::monthLength
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer Date::monthLength(Month m, bool leapYear)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - leapYear
    argTypes:
    - Month
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 281
    functionName: QuantLib::Date::monthOffset
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Integer
    signature: Integer Date::monthOffset(Month m, bool leapYear)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 351
    functionName: QuantLib::Date::yearOffset
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::yearOffset(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::serialNumberDateReference
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date & serialNumberDateReference()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: boost::gregorian::greg_weekday::as_number
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - d
    argTypes:
    - boost::gregorian::greg_weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 401
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - Weekday
    - QL_FAIL
    - boost::gregorian::greg_weekday::as_number
    linkageType: ''
    returnType: Weekday
    signature: Weekday mapBoostDateType2QL(boost::gregorian::greg_weekday d)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: boost::gregorian::greg_month::as_number
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - boost::gregorian::greg_month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month::as_number
    - Month
    linkageType: ''
    returnType: Month
    signature: Month mapBoostDateType2QL(boost::gregorian::greg_month m)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::greg_month
      Src: /src/quantlib/ql/time/date.cpp:432,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:449,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 452
    functionName: QuantLib::mapQLDateType2Boost
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month
    linkageType: ''
    returnType: boost::gregorian::greg_month
    signature: boost::gregorian::greg_month mapQLDateType2Boost(Month m)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:459,1
    - Dst: QuantLib::weeks
      Src: /src/quantlib/ql/time/date.cpp:462,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:466,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:467,1
    - Dst: boost::gregorian::date::year
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: boost::gregorian::date::month
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: QuantLib::months
      Src: /src/quantlib/ql/time/date.cpp:471,1
    - Dst: QuantLib::years
      Src: /src/quantlib/ql/time/date.cpp:474,1
    - Dst: boost::gregorian::date::day
      Src: /src/quantlib/ql/time/date.cpp:477,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:481,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:485,1
    - Dst: QuantLib::Date::hours
      Src: /src/quantlib/ql/time/date.cpp:491,1
    - Dst: QuantLib::Date::minutes
      Src: /src/quantlib/ql/time/date.cpp:494,1
    - Dst: QuantLib::Date::seconds
      Src: /src/quantlib/ql/time/date.cpp:497,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:500,1
    - Dst: QuantLib::Date::microseconds
      Src: /src/quantlib/ql/time/date.cpp:503,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:506,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 3
    argNames:
    - ' dt'
    - n
    - units
    argTypes:
    - ptime
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 454
    functionDepth: 3
    functionLinenumber: 454
    functionLinenumberEnd: 508
    functionName: QuantLib::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::hours
    - QuantLib::date
    - QuantLib::weeks
    - gregorian_calendar::end_of_month_day
    - boost::gregorian::date::year
    - boost::gregorian::date::month
    - QuantLib::years
    - QuantLib::Date::seconds
    - QL_FAIL
    - boost::gregorian::date::day
    - QuantLib::Date::milliseconds
    - QuantLib::months
    - QuantLib::Date::minutes
    - QuantLib::Date::microseconds
    - QuantLib::days
    linkageType: ''
    returnType: void
    signature: void advance(ptime& dt, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:511,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:514,1
    - Dst: QuantLib::mapQLDateType2Boost
      Src: /src/quantlib/ql/time/date.cpp:518,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:521,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:522,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:523,1
    - Dst: QuantLib::Exercise::date
      Src: /src/quantlib/ql/time/date.cpp:526,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - y
    - m
    - d
    argTypes:
    - Year
    - Month
    - Day
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 527
    functionName: QuantLib::gregorianDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Exercise::date
    - QuantLib::mapQLDateType2Boost
    - Integer
    - boost::gregorian::gregorian_calendar::end_of_month_day
    - QL_REQUIRE
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date gregorianDate(Year y, Month m, Day d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::serialNumberDateReference
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date & serialNumberDateReference()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: boost::gregorian::greg_weekday::as_number
      Src: /src/quantlib/ql/time/date.cpp:386,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - d
    argTypes:
    - boost::gregorian::greg_weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 401
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - Weekday
    - QL_FAIL
    - boost::gregorian::greg_weekday::as_number
    linkageType: ''
    returnType: Weekday
    signature: Weekday mapBoostDateType2QL(boost::gregorian::greg_weekday d)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: boost::gregorian::greg_month::as_number
      Src: /src/quantlib/ql/time/date.cpp:406,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - boost::gregorian::greg_month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: QuantLib::mapBoostDateType2QL
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month::as_number
    - Month
    linkageType: ''
    returnType: Month
    signature: Month mapBoostDateType2QL(boost::gregorian::greg_month m)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::greg_month
      Src: /src/quantlib/ql/time/date.cpp:432,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:449,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - m
    argTypes:
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 452
    functionName: QuantLib::mapQLDateType2Boost
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - boost::gregorian::greg_month
    linkageType: ''
    returnType: boost::gregorian::greg_month
    signature: boost::gregorian::greg_month mapQLDateType2Boost(Month m)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:459,1
    - Dst: QuantLib::weeks
      Src: /src/quantlib/ql/time/date.cpp:462,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:466,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:467,1
    - Dst: boost::gregorian::date::year
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: boost::gregorian::date::month
      Src: /src/quantlib/ql/time/date.cpp:468,1
    - Dst: QuantLib::months
      Src: /src/quantlib/ql/time/date.cpp:471,1
    - Dst: QuantLib::years
      Src: /src/quantlib/ql/time/date.cpp:474,1
    - Dst: boost::gregorian::date::day
      Src: /src/quantlib/ql/time/date.cpp:477,1
    - Dst: gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:481,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/date.cpp:482,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:485,1
    - Dst: QuantLib::Date::hours
      Src: /src/quantlib/ql/time/date.cpp:491,1
    - Dst: QuantLib::Date::minutes
      Src: /src/quantlib/ql/time/date.cpp:494,1
    - Dst: QuantLib::Date::seconds
      Src: /src/quantlib/ql/time/date.cpp:497,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:500,1
    - Dst: QuantLib::Date::microseconds
      Src: /src/quantlib/ql/time/date.cpp:503,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:506,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 3
    argNames:
    - ' dt'
    - n
    - units
    argTypes:
    - ptime
    - Integer
    - TimeUnit
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 454
    functionDepth: 3
    functionLinenumber: 454
    functionLinenumberEnd: 508
    functionName: QuantLib::advance
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::hours
    - QuantLib::date
    - QuantLib::weeks
    - gregorian_calendar::end_of_month_day
    - boost::gregorian::date::year
    - boost::gregorian::date::month
    - QuantLib::years
    - QuantLib::Date::seconds
    - QL_FAIL
    - boost::gregorian::date::day
    - QuantLib::Date::milliseconds
    - QuantLib::months
    - QuantLib::Date::minutes
    - QuantLib::Date::microseconds
    - QuantLib::days
    linkageType: ''
    returnType: void
    signature: void advance(ptime& dt, Integer n, TimeUnit units)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:511,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:513,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:514,1
    - Dst: QuantLib::mapQLDateType2Boost
      Src: /src/quantlib/ql/time/date.cpp:518,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:521,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:522,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:523,1
    - Dst: QuantLib::Exercise::date
      Src: /src/quantlib/ql/time/date.cpp:526,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 3
    argNames:
    - y
    - m
    - d
    argTypes:
    - Year
    - Month
    - Day
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 527
    functionName: QuantLib::gregorianDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Exercise::date
    - QuantLib::mapQLDateType2Boost
    - Integer
    - boost::gregorian::gregorian_calendar::end_of_month_day
    - QL_REQUIRE
    linkageType: ''
    returnType: boost::gregorian::date
    signature: boost::gregorian::date gregorianDate(Year y, Month m, Day d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 532
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - serialNumberDateReference
    linkageType: ''
    returnType: void
    signature: void Date::Date()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' dateTime'
    argTypes:
    - ptime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 535
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Date::Date(const ptime& dateTime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gregorianDate
      Src: /src/quantlib/ql/time/date.cpp:538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 538
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - gregorianDate
    linkageType: ''
    returnType: void
    signature: void Date::Date(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gregorianDate
      Src: /src/quantlib/ql/time/date.cpp:544,1
    - Dst: boost::posix_time::time_duration
      Src: /src/quantlib/ql/time/date.cpp:545,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:547,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - d
    - m
    - y
    - hours
    - minutes
    - seconds
    - millisec
    - microsec
    argTypes:
    - Day
    - Month
    - Year
    - Hour
    - Minute
    - Second
    - Millisecond
    - Microsecond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 548
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - boost::posix_time::time_duration
    - time_duration::ticks_per_second
    - gregorianDate
    linkageType: ''
    returnType: void
    signature: "void Date::Date(Day d, Month m, Year y,\n               Hour hours,
      Minute minutes, Second seconds,\n               Millisecond millisec, Microsecond
      microsec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:552,1
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:553,1
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 550
    functionDepth: 2
    functionLinenumber: 550
    functionLinenumberEnd: 555
    functionName: QuantLib::Date::Date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - serialNumberDateReference
    - QuantLib::days
    - QuantLib::Date::checkSerialNumber
    linkageType: ''
    returnType: void
    signature: void Date::Date(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapBoostDateType2QL<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:558,1
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: QuantLib::Date::weekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached:
    - date
    - mapBoostDateType2QL<compatibleEnums>
    linkageType: ''
    returnType: Weekday
    signature: Weekday Date::weekday() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionName: QuantLib::Date::dayOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 3
    functionsReached:
    - date
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionName: QuantLib::Date::dayOfYear
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - date
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfYear() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapBoostDateType2QL<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:571,1
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionName: QuantLib::Date::month
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - date
    - mapBoostDateType2QL<compatibleEnums>
    linkageType: ''
    returnType: Month
    signature: Month Date::month() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: QuantLib::Date::year
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - date
    linkageType: ''
    returnType: Year
    signature: Year Date::year() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionName: QuantLib::Date::hours
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Hour
    signature: Hour Date::hours() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 584
    functionName: QuantLib::Date::minutes
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Minute
    signature: Minute Date::minutes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionName: QuantLib::Date::seconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - time_of_day
    linkageType: ''
    returnType: Second
    signature: Second Date::seconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:591,1
    - Dst: time_duration::hours
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: time_duration::minutes
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: time_duration::seconds
      Src: /src/quantlib/ql/time/date.cpp:594,1
    - Dst: Real
      Src: /src/quantlib/ql/time/date.cpp:595,1
    - Dst: time_duration::fractional_seconds
      Src: /src/quantlib/ql/time/date.cpp:595,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 590
    functionDepth: 1
    functionLinenumber: 590
    functionLinenumberEnd: 598
    functionName: QuantLib::Date::fractionOfDay
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - time_duration::seconds
    - time_duration::hours
    - QuantLib::Date::ticksPerSecond
    - Real
    - time_duration::minutes
    - time_duration::fractional_seconds
    linkageType: ''
    returnType: Time
    signature: Time Date::fractionOfDay() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:601,1
    - Dst: Real
      Src: /src/quantlib/ql/time/date.cpp:602,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 1
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: QuantLib::Date::fractionOfSecond
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - time_of_day
    - QuantLib::Date::ticksPerSecond
    - Real
    linkageType: ''
    returnType: Time
    signature: Time Date::fractionOfSecond() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:606,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: QuantLib::Date::milliseconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 5
    functionsReached:
    - time_of_day
    - QuantLib::Date::ticksPerSecond
    linkageType: ''
    returnType: Millisecond
    signature: Millisecond Date::milliseconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_of_day
      Src: /src/quantlib/ql/time/date.cpp:611,1
    - Dst: QuantLib::Date::milliseconds
      Src: /src/quantlib/ql/time/date.cpp:612,1
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:612,1
    - Dst: QuantLib::Date::ticksPerSecond
      Src: /src/quantlib/ql/time/date.cpp:613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 610
    functionDepth: 2
    functionLinenumber: 610
    functionLinenumberEnd: 614
    functionName: QuantLib::Date::microseconds
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 4
    functionsReached:
    - time_of_day
    - time_duration::ticks_per_second
    - QuantLib::Date::ticksPerSecond
    - QuantLib::Date::milliseconds
    linkageType: ''
    returnType: Microsecond
    signature: Microsecond Date::microseconds() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time_duration::ticks_per_second
      Src: /src/quantlib/ql/time/date.cpp:617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 618
    functionName: QuantLib::Date::ticksPerSecond
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 8
    functionsReached:
    - time_duration::ticks_per_second
    linkageType: ''
    returnType: time_duration::tick_type
    signature: time_duration::tick_type Date::ticksPerSecond()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: serialNumberDateReference
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: days
      Src: /src/quantlib/ql/time/date.cpp:622,1
    - Dst: QuantLib::Date::checkSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:624,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 620
    functionDepth: 2
    functionLinenumber: 620
    functionLinenumberEnd: 626
    functionName: QuantLib::Date::serialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::checkSerialNumber
    - date
    - days
    - serialNumberDateReference
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::serialNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 628
    functionName: '& Date::dateTime() const'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ptime
    signature: ptime & Date::dateTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionName: '& Date::operator+=(Date::serial_type d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(Date::serial_type d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:636,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:636,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 635
    functionDepth: 0
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionName: '& Date::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: '& Date::operator-=(Date::serial_type d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(Date::serial_type d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.cpp:645,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.cpp:645,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.cpp:645,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: '& Date::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 652
    functionName: '& Date::operator++()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::days
      Src: /src/quantlib/ql/time/date.cpp:655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 657
    functionName: '& Date::operator--()'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::days
    linkageType: ''
    returnType: Date
    signature: Date & Date::operator--()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 664
    functionName: Date::operator+(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 671
    functionName: Date::operator-(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 678
    functionName: Date::operator+(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 685
    functionName: Date::operator-(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:688,1
    - Dst: boost::posix_time::microsec_clock::local_time
      Src: /src/quantlib/ql/time/date.cpp:688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 689
    functionName: QuantLib::Date::localDateTime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::Date
    - boost::posix_time::microsec_clock::local_time
    linkageType: ''
    returnType: Date
    signature: Date Date::localDateTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:692,1
    - Dst: boost::posix_time::microsec_clock::universal_time
      Src: /src/quantlib/ql/time/date.cpp:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 691
    functionDepth: 1
    functionLinenumber: 691
    functionLinenumberEnd: 693
    functionName: QuantLib::Date::universalDateTime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::Date
    - boost::posix_time::microsec_clock::universal_time
    linkageType: ''
    returnType: Date
    signature: Date Date::universalDateTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::gregorian::gregorian_calendar::is_leap_year
      Src: /src/quantlib/ql/time/date.cpp:696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionName: QuantLib::Date::isLeap
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - boost::gregorian::gregorian_calendar::is_leap_year
    linkageType: ''
    returnType: bool
    signature: bool Date::isLeap(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:700,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:701,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:702,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: mapQLDateType2Boost<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:703,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 699
    functionDepth: 2
    functionLinenumber: 699
    functionLinenumberEnd: 706
    functionName: QuantLib::Date::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::Date::Date
    - QuantLib::Date::year
    - QuantLib::Date::month
    - mapQLDateType2Boost<compatibleEnums>
    - boost::gregorian::gregorian_calendar::end_of_month_day
    linkageType: ''
    returnType: Date
    signature: Date Date::endOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:709,1
    - Dst: boost::gregorian::gregorian_calendar::end_of_month_day
      Src: /src/quantlib/ql/time/date.cpp:710,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.cpp:711,1
    - Dst: mapQLDateType2Boost<compatibleEnums>
      Src: /src/quantlib/ql/time/date.cpp:711,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.cpp:711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 712
    functionName: QuantLib::Date::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::month
    - QuantLib::Date::dayOfMonth
    - mapQLDateType2Boost<compatibleEnums>
    - boost::gregorian::gregorian_calendar::end_of_month_day
    linkageType: ''
    returnType: bool
    signature: bool Date::isEndOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:716,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:716,1
    - Dst: days
      Src: /src/quantlib/ql/time/date.cpp:716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 717
    functionName: operator-(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - days
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type operator-(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fractionOfDay
      Src: /src/quantlib/ql/time/date.cpp:721,1
    - Dst: fractionOfDay
      Src: /src/quantlib/ql/time/date.cpp:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: QuantLib::daysBetween
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - fractionOfDay
    linkageType: ''
    returnType: Time
    signature: Time daysBetween(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:725,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionName: operator<(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:729,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 728
    functionDepth: 0
    functionLinenumber: 728
    functionLinenumberEnd: 730
    functionName: operator<=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:733,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: operator>(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:737,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 738
    functionName: operator>=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:741,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:741,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 742
    functionName: operator==(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:745,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 744
    functionDepth: 0
    functionLinenumber: 744
    functionLinenumberEnd: 746
    functionName: operator!=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 751
    functionName: QuantLib::Date::minimumSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::minimumSerialNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 755
    functionName: QuantLib::Date::maximumSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::maximumSerialNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:758,1
    - Dst: QuantLib::Date::minimumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:758,1
    - Dst: QuantLib::Date::maximumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:759,1
    - Dst: QuantLib::Date::minimumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:761,1
    - Dst: QuantLib::Date::maximumSerialNumber
      Src: /src/quantlib/ql/time/date.cpp:762,1
    - Dst: QuantLib::Date::minDate
      Src: /src/quantlib/ql/time/date.cpp:763,1
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/time/date.cpp:763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - serialNumber
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 764
    functionName: QuantLib::Date::checkSerialNumber
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::Date::minimumSerialNumber
    - QuantLib::Date::minDate
    - QuantLib::Date::maxDate
    - QuantLib::Date::maximumSerialNumber
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Date::checkSerialNumber(Date::serial_type serialNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 769
    functionName: QuantLib::Date::minDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::minDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 774
    functionName: QuantLib::Date::maxDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::maxDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 780
    functionName: Date::operator++(int )
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator++(int )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 786
    functionName: Date::operator--(int )
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date Date::operator--(int )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::time
      Src: /src/quantlib/ql/time/date.cpp:791,1
    - Dst: std::time_t
      Src: /src/quantlib/ql/time/date.cpp:791,1
    - Dst: std::localtime
      Src: /src/quantlib/ql/time/date.cpp:793,1
    - Dst: Day
      Src: /src/quantlib/ql/time/date.cpp:794,1
    - Dst: Month
      Src: /src/quantlib/ql/time/date.cpp:794,1
    - Dst: Year
      Src: /src/quantlib/ql/time/date.cpp:794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 788
    functionDepth: 0
    functionLinenumber: 788
    functionLinenumberEnd: 795
    functionName: QuantLib::Date::todaysDate
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 7
    functionsReached:
    - std::time
    - std::time_t
    - Month
    - std::localtime
    - Day
    - Year
    linkageType: ''
    returnType: Date
    signature: Date Date::todaysDate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::weekday
      Src: /src/quantlib/ql/time/date.cpp:798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - dayOfWeek
    argTypes:
    - Date
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: QuantLib::Date::nextWeekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::weekday
    linkageType: ''
    returnType: Date
    signature: Date Date::nextWeekday(const Date& d, Weekday dayOfWeek)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:804,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/date.cpp:806,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.cpp:808,1
    - Dst: Day
      Src: /src/quantlib/ql/time/date.cpp:810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - nth
    - dayOfWeek
    - m
    - y
    argTypes:
    - Size
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 802
    functionDepth: 1
    functionLinenumber: 802
    functionLinenumberEnd: 811
    functionName: QuantLib::Date::nthWeekday
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 10
    functionsReached:
    - QuantLib::Date::Date
    - Day
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Date::nthWeekday(Size nth, Weekday dayOfWeek,\n                          Month
      m, Year y)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/date.cpp:842,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - ' out'
    - m
    argTypes:
    - std::ostream
    - Month
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 844
    functionName: '& operator<<(std::ostream& out, Month m)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, Month m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/time/date.cpp:849,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.cpp:849,1
    - Dst: QuantLib::local_hash_combine
      Src: /src/quantlib/ql/time/date.cpp:850,1
    - Dst: dateTime
      Src: /src/quantlib/ql/time/date.cpp:850,1
    - Dst: std::hash<Date::serial_type>
      Src: /src/quantlib/ql/time/date.cpp:853,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.cpp:853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 846
    functionDepth: 3
    functionLinenumber: 846
    functionLinenumberEnd: 855
    functionName: QuantLib::hash_value
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dateTime
    - std::hash<Date::serial_type>
    - serialNumber
    - QuantLib::local_hash_combine
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t hash_value(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::long_date
      Src: /src/quantlib/ql/time/date.cpp:860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' d'
    argTypes:
    - std::ostream
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 859
    functionDepth: 2
    functionLinenumber: 859
    functionLinenumberEnd: 861
    functionName: '& operator<<(std::ostream& out, const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::long_date
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 870
    functionName: QuantLib::detail::do_grouping
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string do_grouping() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::ostream::flags
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::fill
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:874,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: nopunct::nopunct
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: std::ostream::imbue
      Src: /src/quantlib/ql/time/date.cpp:876,1
    - Dst: std::resetiosflags
      Src: /src/quantlib/ql/time/date.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 882
    functionName: QuantLib::detail::FormatResetter
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::ostream::getloc
    - std::ostream::imbue
    - std::resetiosflags
    - std::ostream::flags
    - nopunct::nopunct
    - std::ostream::fill
    linkageType: ''
    returnType: void
    signature: void FormatResetter(std::ostream &out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/time/date.cpp:884,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:885,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 887
    functionName: ~FormatResetter()
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - flags
    - fill
    - imbue
    linkageType: ''
    returnType: void
    signature: void ~FormatResetter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:897,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:902,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:903,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 910
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    - fill
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:915,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:919,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 924
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - QuantLib::io::ordinal
    - month
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:929,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:934,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:937,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 940
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:946,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: f::c_str
      Src: /src/quantlib/ql/time/date.cpp:952,1
    - Dst: date_facet::date_facet
      Src: /src/quantlib/ql/time/date.cpp:952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - formatted_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 956
    functionName: "& operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::locale
    - date_facet::date_facet
    - dayOfMonth
    - month
    - imbue
    - Date
    - year
    - f::c_str
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/time/date.cpp:963,1
    - Dst: hours
      Src: /src/quantlib/ql/time/date.cpp:965,1
    - Dst: minutes
      Src: /src/quantlib/ql/time/date.cpp:966,1
    - Dst: seconds
      Src: /src/quantlib/ql/time/date.cpp:967,1
    - Dst: milliseconds
      Src: /src/quantlib/ql/time/date.cpp:968,1
    - Dst: microseconds
      Src: /src/quantlib/ql/time/date.cpp:969,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:975,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_datetime_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 959
    functionDepth: 2
    functionLinenumber: 959
    functionLinenumberEnd: 978
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - microseconds
    - std::setfill
    - seconds
    - std::setw
    - minutes
    - QuantLib::io::iso_date
    - milliseconds
    - hours
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 870
    functionName: QuantLib::detail::do_grouping
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string do_grouping() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::ostream::flags
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::fill
      Src: /src/quantlib/ql/time/date.cpp:873,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:874,1
    - Dst: std::ostream::getloc
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: nopunct::nopunct
      Src: /src/quantlib/ql/time/date.cpp:875,1
    - Dst: std::ostream::imbue
      Src: /src/quantlib/ql/time/date.cpp:876,1
    - Dst: std::resetiosflags
      Src: /src/quantlib/ql/time/date.cpp:877,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 882
    functionName: QuantLib::detail::FormatResetter
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::ostream::getloc
    - std::ostream::imbue
    - std::resetiosflags
    - std::ostream::flags
    - nopunct::nopunct
    - std::ostream::fill
    linkageType: ''
    returnType: void
    signature: void FormatResetter(std::ostream &out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flags
      Src: /src/quantlib/ql/time/date.cpp:884,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:885,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 887
    functionName: ~FormatResetter()
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - flags
    - fill
    - imbue
    linkageType: ''
    returnType: void
    signature: void ~FormatResetter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:897,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:901,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:902,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:903,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:904,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:905,1
    - Dst: fill
      Src: /src/quantlib/ql/time/date.cpp:907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 910
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    - fill
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:915,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:919,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:920,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 924
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - QuantLib::io::ordinal
    - month
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:929,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:933,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:934,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:936,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:937,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 940
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - dayOfMonth
    - Integer
    - month
    - std::setw
    - Date
    - year
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_date_holder& holder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.cpp:946,1
    - Dst: year
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: month
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/date.cpp:950,1
    - Dst: imbue
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: std::locale
      Src: /src/quantlib/ql/time/date.cpp:951,1
    - Dst: f::c_str
      Src: /src/quantlib/ql/time/date.cpp:952,1
    - Dst: date_facet::date_facet
      Src: /src/quantlib/ql/time/date.cpp:952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - formatted_date_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 942
    functionDepth: 0
    functionLinenumber: 942
    functionLinenumberEnd: 956
    functionName: "& operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - std::locale
    - date_facet::date_facet
    - dayOfMonth
    - month
    - imbue
    - Date
    - year
    - f::c_str
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      formatted_date_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::iso_date
      Src: /src/quantlib/ql/time/date.cpp:963,1
    - Dst: hours
      Src: /src/quantlib/ql/time/date.cpp:965,1
    - Dst: minutes
      Src: /src/quantlib/ql/time/date.cpp:966,1
    - Dst: seconds
      Src: /src/quantlib/ql/time/date.cpp:967,1
    - Dst: milliseconds
      Src: /src/quantlib/ql/time/date.cpp:968,1
    - Dst: microseconds
      Src: /src/quantlib/ql/time/date.cpp:969,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:971,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:972,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:973,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:974,1
    - Dst: std::setw
      Src: /src/quantlib/ql/time/date.cpp:975,1
    - Dst: std::setfill
      Src: /src/quantlib/ql/time/date.cpp:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - iso_datetime_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 959
    functionDepth: 2
    functionLinenumber: 959
    functionLinenumberEnd: 978
    functionName: "& operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - microseconds
    - std::setfill
    - seconds
    - std::setw
    - minutes
    - QuantLib::io::iso_date
    - milliseconds
    - hours
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      iso_datetime_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_date_holder
      Src: /src/quantlib/ql/time/date.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 983
    functionDepth: 1
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionName: QuantLib::io::short_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_date_holder
    linkageType: ''
    returnType: detail::short_date_holder
    signature: detail::short_date_holder short_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_date_holder
      Src: /src/quantlib/ql/time/date.cpp:988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionName: QuantLib::io::long_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::long_date_holder
    linkageType: ''
    returnType: detail::long_date_holder
    signature: detail::long_date_holder long_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_date_holder
      Src: /src/quantlib/ql/time/date.cpp:992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionName: QuantLib::io::iso_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::iso_date_holder
    linkageType: ''
    returnType: detail::iso_date_holder
    signature: detail::iso_date_holder iso_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::formatted_date_holder
      Src: /src/quantlib/ql/time/date.cpp:997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' f'
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 998
    functionName: QuantLib::io::formatted_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::formatted_date_holder
    linkageType: ''
    returnType: detail::formatted_date_holder
    signature: "detail::formatted_date_holder formatted_date(const Date& d,\n                                                     const
      std::string& f)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_datetime_holder
      Src: /src/quantlib/ql/time/date.cpp:1002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionName: QuantLib::io::iso_datetime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::iso_datetime_holder
    linkageType: ''
    returnType: detail::iso_datetime_holder
    signature: detail::iso_datetime_holder iso_datetime(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_date_holder
      Src: /src/quantlib/ql/time/date.cpp:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 983
    functionDepth: 1
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionName: QuantLib::io::short_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_date_holder
    linkageType: ''
    returnType: detail::short_date_holder
    signature: detail::short_date_holder short_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_date_holder
      Src: /src/quantlib/ql/time/date.cpp:988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionName: QuantLib::io::long_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::long_date_holder
    linkageType: ''
    returnType: detail::long_date_holder
    signature: detail::long_date_holder long_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_date_holder
      Src: /src/quantlib/ql/time/date.cpp:992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 991
    functionDepth: 1
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionName: QuantLib::io::iso_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::detail::iso_date_holder
    linkageType: ''
    returnType: detail::iso_date_holder
    signature: detail::iso_date_holder iso_date(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::formatted_date_holder
      Src: /src/quantlib/ql/time/date.cpp:997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - ' f'
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 998
    functionName: QuantLib::io::formatted_date
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::formatted_date_holder
    linkageType: ''
    returnType: detail::formatted_date_holder
    signature: "detail::formatted_date_holder formatted_date(const Date& d,\n                                                     const
      std::string& f)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::iso_datetime_holder
      Src: /src/quantlib/ql/time/date.cpp:1002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionName: QuantLib::io::iso_datetime
    functionSourceFile: /src/quantlib/ql/time/date.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::iso_datetime_holder
    linkageType: ''
    returnType: detail::iso_datetime_holder
    signature: detail::iso_datetime_holder iso_datetime(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::long_weekday
      Src: /src/quantlib/ql/time/weekday.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' w'
    argTypes:
    - std::ostream
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: '& operator<<(std::ostream& out, const Weekday& w)'
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::long_weekday
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Weekday& w)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 80
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - shortest_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 102
    functionName: "& operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 80
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - shortest_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 102
    functionName: "& operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::io::long_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::long_weekday_holder
    linkageType: ''
    returnType: detail::long_weekday_holder
    signature: detail::long_weekday_holder long_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::short_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_weekday_holder
    linkageType: ''
    returnType: detail::short_weekday_holder
    signature: detail::short_weekday_holder short_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::shortest_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::shortest_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::shortest_weekday_holder
    linkageType: ''
    returnType: detail::shortest_weekday_holder
    signature: detail::shortest_weekday_holder shortest_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::io::long_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::long_weekday_holder
    linkageType: ''
    returnType: detail::long_weekday_holder
    signature: detail::long_weekday_holder long_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::short_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_weekday_holder
    linkageType: ''
    returnType: detail::short_weekday_holder
    signature: detail::short_weekday_holder short_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::shortest_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::shortest_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::shortest_weekday_holder
    linkageType: ''
    returnType: detail::shortest_weekday_holder
    signature: detail::shortest_weekday_holder shortest_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::long_weekday
      Src: /src/quantlib/ql/time/weekday.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' w'
    argTypes:
    - std::ostream
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: '& operator<<(std::ostream& out, const Weekday& w)'
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::long_weekday
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Weekday& w)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 80
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - shortest_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 102
    functionName: "& operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 80
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_weekday_holder& holder)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/weekday.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - shortest_weekday_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 102
    functionName: "& operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      shortest_weekday_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::io::long_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::long_weekday_holder
    linkageType: ''
    returnType: detail::long_weekday_holder
    signature: detail::long_weekday_holder long_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::short_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_weekday_holder
    linkageType: ''
    returnType: detail::short_weekday_holder
    signature: detail::short_weekday_holder short_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::shortest_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::shortest_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::shortest_weekday_holder
    linkageType: ''
    returnType: detail::shortest_weekday_holder
    signature: detail::shortest_weekday_holder shortest_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::io::long_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::long_weekday_holder
    linkageType: ''
    returnType: detail::long_weekday_holder
    signature: detail::long_weekday_holder long_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::io::short_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::short_weekday_holder
    linkageType: ''
    returnType: detail::short_weekday_holder
    signature: detail::short_weekday_holder short_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::shortest_weekday_holder
      Src: /src/quantlib/ql/time/weekday.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::io::shortest_weekday
    functionSourceFile: /src/quantlib/ql/time/weekday.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::shortest_weekday_holder
    linkageType: ''
    returnType: detail::shortest_weekday_holder
    signature: detail::shortest_weekday_holder shortest_weekday(Weekday d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::Calendar::Calendar
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Calendar()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::Calendar::empty
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:213,1
    - Dst: QuantLib::Calendar::name
      Src: /src/quantlib/ql/time/calendar.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::Calendar::name
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Calendar::name
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string Calendar::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: '& Calendar::addedHolidays() const'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & Calendar::addedHolidays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: '& Calendar::removedHolidays() const'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & Calendar::removedHolidays() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:230,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: addedHolidays::empty
      Src: /src/quantlib/ql/time/calendar.hpp:238,1
    - Dst: addedHolidays::find
      Src: /src/quantlib/ql/time/calendar.hpp:239,1
    - Dst: addedHolidays::end
      Src: /src/quantlib/ql/time/calendar.hpp:239,1
    - Dst: removedHolidays::empty
      Src: /src/quantlib/ql/time/calendar.hpp:242,1
    - Dst: removedHolidays::find
      Src: /src/quantlib/ql/time/calendar.hpp:243,1
    - Dst: removedHolidays::end
      Src: /src/quantlib/ql/time/calendar.hpp:243,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.hpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 247
    functionName: QuantLib::Calendar::isBusinessDay
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 1
    functionsReached:
    - removedHolidays::end
    - dayOfMonth
    - addedHolidays::end
    - removedHolidays::find
    - month
    - addedHolidays::empty
    - addedHolidays::find
    - removedHolidays::empty
    - year
    - QuantLib::Calendar::isBusinessDay
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isBusinessDay(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::startOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: QuantLib::Calendar::isStartOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::startOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isStartOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.hpp:254,1
    - Dst: QuantLib::Date::startOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionName: QuantLib::Calendar::startOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Calendar::adjust
    - QuantLib::Date::startOfMonth
    linkageType: ''
    returnType: Date
    signature: Date Calendar::startOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::endOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: QuantLib::Calendar::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::endOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isEndOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.hpp:262,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionName: QuantLib::Calendar::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Calendar::adjust
    - QuantLib::Date::endOfMonth
    linkageType: ''
    returnType: Date
    signature: Date Calendar::endOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionName: QuantLib::Calendar::isHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isHoliday(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:270,1
    - Dst: QuantLib::Calendar::isWeekend
      Src: /src/quantlib/ql/time/calendar.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: QuantLib::Calendar::isWeekend
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Calendar::isWeekend
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:275,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:275,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: name
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: name
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Calendar
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: operator==(const Calendar& c1, const Calendar& c2)
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Calendar& c1, const Calendar& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Calendar
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: operator!=(const Calendar& c1, const Calendar& c2)
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Calendar& c1, const Calendar& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar::name
      Src: /src/quantlib/ql/time/calendar.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - c
    argTypes:
    - std::ostream
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: '& operator<<(std::ostream& out, const Calendar &c)'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - Calendar::name
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Calendar &c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::Calendar::Calendar
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Calendar()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::Calendar::empty
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:213,1
    - Dst: QuantLib::Calendar::name
      Src: /src/quantlib/ql/time/calendar.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::Calendar::name
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Calendar::name
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string Calendar::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: '& Calendar::addedHolidays() const'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & Calendar::addedHolidays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: '& Calendar::removedHolidays() const'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: std::set<Date>
    signature: std::set<Date> & Calendar::removedHolidays() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:230,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.hpp:233,1
    - Dst: addedHolidays::empty
      Src: /src/quantlib/ql/time/calendar.hpp:238,1
    - Dst: addedHolidays::find
      Src: /src/quantlib/ql/time/calendar.hpp:239,1
    - Dst: addedHolidays::end
      Src: /src/quantlib/ql/time/calendar.hpp:239,1
    - Dst: removedHolidays::empty
      Src: /src/quantlib/ql/time/calendar.hpp:242,1
    - Dst: removedHolidays::find
      Src: /src/quantlib/ql/time/calendar.hpp:243,1
    - Dst: removedHolidays::end
      Src: /src/quantlib/ql/time/calendar.hpp:243,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.hpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 247
    functionName: QuantLib::Calendar::isBusinessDay
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 3
    functionsReached:
    - removedHolidays::end
    - dayOfMonth
    - addedHolidays::end
    - removedHolidays::find
    - month
    - addedHolidays::empty
    - addedHolidays::find
    - removedHolidays::empty
    - year
    - QuantLib::Calendar::isBusinessDay
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isBusinessDay(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::startOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: QuantLib::Calendar::isStartOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::startOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isStartOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.hpp:254,1
    - Dst: QuantLib::Date::startOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionName: QuantLib::Calendar::startOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Calendar::adjust
    - QuantLib::Date::startOfMonth
    linkageType: ''
    returnType: Date
    signature: Date Calendar::startOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::endOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: QuantLib::Calendar::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::endOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isEndOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.hpp:262,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/calendar.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionName: QuantLib::Calendar::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Calendar::adjust
    - QuantLib::Date::endOfMonth
    linkageType: ''
    returnType: Date
    signature: Date Calendar::endOfMonth(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.hpp:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionName: QuantLib::Calendar::isHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isHoliday(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.hpp:270,1
    - Dst: QuantLib::Calendar::isWeekend
      Src: /src/quantlib/ql/time/calendar.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: QuantLib::Calendar::isWeekend
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Calendar::isWeekend
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Calendar::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:275,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:275,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: empty
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: name
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    - Dst: name
      Src: /src/quantlib/ql/time/calendar.hpp:276,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Calendar
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: operator==(const Calendar& c1, const Calendar& c2)
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Calendar& c1, const Calendar& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' c1'
    - ' c2'
    argTypes:
    - Calendar
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: operator!=(const Calendar& c1, const Calendar& c2)
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Calendar& c1, const Calendar& c2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar::name
      Src: /src/quantlib/ql/time/calendar.hpp:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - c
    argTypes:
    - std::ostream
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: '& operator<<(std::ostream& out, const Calendar &c)'
    functionSourceFile: /src/quantlib/ql/time/calendar.hpp
    functionUses: 0
    functionsReached:
    - Calendar::name
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Calendar &c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Schedule()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Schedule::size
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::Schedule::empty
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::Schedule::begin
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::Schedule::end
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: '& Schedule::date(Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::date(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionName: '& Schedule::operator[](Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: '& Schedule::at(Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.hpp:179,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: '& Schedule::front() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - front
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:184,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.hpp:184,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: '& Schedule::back() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - back
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& Schedule::calendar() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Schedule::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: '& Schedule::startDate() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: '&Schedule::endDate() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date &Schedule::endDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::Schedule::hasTenor
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:203,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/time/schedule.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: '& Schedule::tenor() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - hasTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Schedule::tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::Schedule::businessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Schedule::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::Schedule::hasTerminationDateBusinessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasTerminationDateBusinessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:219,1
    - Dst: QuantLib::Schedule::hasTerminationDateBusinessDayConvention
      Src: /src/quantlib/ql/time/schedule.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: QuantLib::Schedule::terminationDateBusinessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasTerminationDateBusinessDayConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Schedule::terminationDateBusinessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::Schedule::hasRule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasRule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:229,1
    - Dst: QuantLib::Schedule::hasRule
      Src: /src/quantlib/ql/time/schedule.hpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::Schedule::rule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasRule
    - QL_REQUIRE
    linkageType: ''
    returnType: DateGeneration::Rule
    signature: DateGeneration::Rule Schedule::rule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: QuantLib::Schedule::hasEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasEndOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:238,1
    - Dst: QuantLib::Schedule::hasEndOfMonth
      Src: /src/quantlib/ql/time/schedule.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: QuantLib::Schedule::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasEndOfMonth
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Schedule::endOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Schedule()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::Schedule::size
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Schedule::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::Schedule::empty
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Schedule::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::Schedule::begin
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Schedule::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::Schedule::end
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: '& Schedule::date(Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::date(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionName: '& Schedule::operator[](Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::operator[](Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/time/schedule.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: '& Schedule::at(Size i) const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::at(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:179,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.hpp:179,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: '& Schedule::front() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - front
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:184,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.hpp:184,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: '& Schedule::back() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - back
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: '& Schedule::calendar() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Calendar
    signature: Calendar & Schedule::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: '& Schedule::startDate() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Date
    signature: Date & Schedule::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 196
    functionName: '&Schedule::endDate() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date &Schedule::endDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: QuantLib::Schedule::hasTenor
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasTenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:203,1
    - Dst: hasTenor
      Src: /src/quantlib/ql/time/schedule.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: '& Schedule::tenor() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - hasTenor
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Schedule::tenor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: QuantLib::Schedule::businessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Schedule::businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::Schedule::hasTerminationDateBusinessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasTerminationDateBusinessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:219,1
    - Dst: QuantLib::Schedule::hasTerminationDateBusinessDayConvention
      Src: /src/quantlib/ql/time/schedule.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: QuantLib::Schedule::terminationDateBusinessDayConvention
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasTerminationDateBusinessDayConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention Schedule::terminationDateBusinessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: QuantLib::Schedule::hasRule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasRule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:229,1
    - Dst: QuantLib::Schedule::hasRule
      Src: /src/quantlib/ql/time/schedule.hpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::Schedule::rule
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasRule
    - QL_REQUIRE
    linkageType: ''
    returnType: DateGeneration::Rule
    signature: DateGeneration::Rule Schedule::rule() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/quantlib/ql/time/schedule.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: QuantLib::Schedule::hasEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 1
    functionsReached:
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasEndOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.hpp:238,1
    - Dst: QuantLib::Schedule::hasEndOfMonth
      Src: /src/quantlib/ql/time/schedule.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: QuantLib::Schedule::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::hasEndOfMonth
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Schedule::endOfMonth() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/imm.cpp:35,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/imm.cpp:44,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 53
    functionName: QuantLib::IMM::isIMMdate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 4
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool IMM::isIMMdate(const Date& date, bool mainCycle)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/imm.cpp:56,1
    - Dst: string::find
      Src: /src/quantlib/ql/time/imm.cpp:60,1
    - Dst: substr
      Src: /src/quantlib/ql/time/imm.cpp:60,1
    - Dst: string::find
      Src: /src/quantlib/ql/time/imm.cpp:66,1
    - Dst: substr
      Src: /src/quantlib/ql/time/imm.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' in'
    - mainCycle
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::IMM::isIMMcode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - length
    - string::find
    - substr
    linkageType: ''
    returnType: bool
    signature: bool IMM::isIMMcode(const std::string& in, bool mainCycle)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/imm.cpp:71,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/imm.cpp:71,1
    - Dst: year
      Src: /src/quantlib/ql/time/imm.cpp:75,1
    - Dst: month
      Src: /src/quantlib/ql/time/imm.cpp:76,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/imm.cpp:114,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: QuantLib::IMM::isIMMcode
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:119,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:122,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 123
    functionName: QuantLib::IMM::code
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::isIMMcode
    - QL_ENSURE
    - QuantLib::IMM::isIMMdate
    - month
    - QL_FAIL
    - std::ostringstream::str
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string IMM::code(const Date& date)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/imm.cpp:127,1
    - Dst: QuantLib::IMM::isIMMcode
      Src: /src/quantlib/ql/time/imm.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:130,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:132,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/imm.cpp:132,1
    - Dst: to_upper_copy
      Src: /src/quantlib/ql/time/imm.cpp:134,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/time/imm.cpp:135,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/imm.cpp:149,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/time/imm.cpp:151,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/time/imm.cpp:151,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:154,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:155,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:156,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:157,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:157,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:159,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:159,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 33
    argCount: 2
    argNames:
    - ' immCode'
    - ' refDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 162
    functionName: QuantLib::IMM::date
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - to_upper_copy
    - QuantLib::IMM::isIMMcode
    - QuantLib::IMM::nextDate
    - std::stoi
    - Date::year
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    - std::string::substr
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date IMM::date(const std::string& immCode,\n                   const
      Date& refDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:165,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:166,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/imm.cpp:166,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:168,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/imm.cpp:169,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:173,1
    - Dst: Size
      Src: /src/quantlib/ql/time/imm.cpp:174,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:176,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:178,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/imm.cpp:183,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:185,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 187
    functionName: QuantLib::IMM::nextDate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::IMM::nextDate
    - Size
    - QuantLib::IborIndex::endOfMonth
    - QuantLib::Date::nthWeekday
    - Date::year
    - QuantLib::detail::instance
    - Date
    - Date::dayOfMonth
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date IMM::nextDate(const Date& date, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::date
      Src: /src/quantlib/ql/time/imm.cpp:192,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' IMMcode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 194
    functionName: QuantLib::IMM::nextDate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 9
    functionsReached:
    - QuantLib::IMM::date
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date IMM::nextDate(const std::string& IMMcode,\n                       bool
      mainCycle,\n                       const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:198,1
    - Dst: QuantLib::IMM::code
      Src: /src/quantlib/ql/time/imm.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: QuantLib::IMM::nextCode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::code
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string IMM::nextCode(const Date& d,\n                              bool
      mainCycle)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:205,1
    - Dst: QuantLib::IMM::code
      Src: /src/quantlib/ql/time/imm.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' immCode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 207
    functionName: QuantLib::IMM::nextCode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::code
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string IMM::nextCode(const std::string& immCode,\n                              bool
      mainCycle,\n                              const Date& referenceDate)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/imm.cpp:35,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/imm.cpp:44,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 53
    functionName: QuantLib::IMM::isIMMdate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 5
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool IMM::isIMMdate(const Date& date, bool mainCycle)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/imm.cpp:56,1
    - Dst: string::find
      Src: /src/quantlib/ql/time/imm.cpp:60,1
    - Dst: substr
      Src: /src/quantlib/ql/time/imm.cpp:60,1
    - Dst: string::find
      Src: /src/quantlib/ql/time/imm.cpp:66,1
    - Dst: substr
      Src: /src/quantlib/ql/time/imm.cpp:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' in'
    - mainCycle
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::IMM::isIMMcode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 2
    functionsReached:
    - length
    - string::find
    - substr
    linkageType: ''
    returnType: bool
    signature: bool IMM::isIMMcode(const std::string& in, bool mainCycle)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/imm.cpp:71,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/imm.cpp:71,1
    - Dst: year
      Src: /src/quantlib/ql/time/imm.cpp:75,1
    - Dst: month
      Src: /src/quantlib/ql/time/imm.cpp:76,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/imm.cpp:114,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: QuantLib::IMM::isIMMcode
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:118,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:119,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/imm.cpp:122,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 123
    functionName: QuantLib::IMM::code
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::IMM::isIMMcode
    - QL_ENSURE
    - QuantLib::IMM::isIMMdate
    - month
    - QL_FAIL
    - std::ostringstream::str
    - year
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string IMM::code(const Date& date)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/imm.cpp:127,1
    - Dst: QuantLib::IMM::isIMMcode
      Src: /src/quantlib/ql/time/imm.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:130,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:132,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/imm.cpp:132,1
    - Dst: to_upper_copy
      Src: /src/quantlib/ql/time/imm.cpp:134,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/time/imm.cpp:135,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/imm.cpp:149,1
    - Dst: std::stoi
      Src: /src/quantlib/ql/time/imm.cpp:151,1
    - Dst: std::string::substr
      Src: /src/quantlib/ql/time/imm.cpp:151,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:154,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:155,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:156,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:157,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:157,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:159,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:159,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 33
    argCount: 2
    argNames:
    - ' immCode'
    - ' refDate'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 162
    functionName: QuantLib::IMM::date
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 1
    functionsReached:
    - to_upper_copy
    - QuantLib::IMM::isIMMcode
    - QuantLib::IMM::nextDate
    - std::stoi
    - Date::year
    - QL_FAIL
    - QuantLib::detail::instance
    - Date
    - std::string::substr
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date IMM::date(const std::string& immCode,\n                   const
      Date& refDate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:165,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:166,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/imm.cpp:166,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/imm.cpp:168,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/imm.cpp:169,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:173,1
    - Dst: Size
      Src: /src/quantlib/ql/time/imm.cpp:174,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:176,1
    - Dst: QuantLib::IborIndex::endOfMonth
      Src: /src/quantlib/ql/time/imm.cpp:178,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/imm.cpp:183,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:185,1
    - Dst: Date
      Src: /src/quantlib/ql/time/imm.cpp:185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' date'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 187
    functionName: QuantLib::IMM::nextDate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 13
    functionsReached:
    - QuantLib::IMM::nextDate
    - Size
    - QuantLib::IborIndex::endOfMonth
    - QuantLib::Date::nthWeekday
    - Date::year
    - QuantLib::detail::instance
    - Date
    - Date::dayOfMonth
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date IMM::nextDate(const Date& date, bool mainCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::date
      Src: /src/quantlib/ql/time/imm.cpp:192,1
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' IMMcode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 194
    functionName: QuantLib::IMM::nextDate
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 14
    functionsReached:
    - QuantLib::IMM::date
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date IMM::nextDate(const std::string& IMMcode,\n                       bool
      mainCycle,\n                       const Date& referenceDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:198,1
    - Dst: QuantLib::IMM::code
      Src: /src/quantlib/ql/time/imm.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - mainCycle
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 200
    functionName: QuantLib::IMM::nextCode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::code
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string IMM::nextCode(const Date& d,\n                              bool
      mainCycle)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IMM::nextDate
      Src: /src/quantlib/ql/time/imm.cpp:205,1
    - Dst: QuantLib::IMM::code
      Src: /src/quantlib/ql/time/imm.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' immCode'
    - mainCycle
    - ' referenceDate'
    argTypes:
    - std::string
    - bool
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 207
    functionName: QuantLib::IMM::nextCode
    functionSourceFile: /src/quantlib/ql/time/imm.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IMM::code
    - QuantLib::IMM::nextDate
    linkageType: ''
    returnType: std::string
    signature: "std::string IMM::nextCode(const std::string& immCode,\n                              bool
      mainCycle,\n                              const Date& referenceDate)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:65,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:65,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 67
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: void
    signature: void Period::Period(Frequency f)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/time/period.cpp:71,1
    - Dst: Frequency
      Src: /src/quantlib/ql/time/period.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:104,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:104,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 106
    functionName: QuantLib::Period::frequency
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Frequency
    - Integer
    - std::abs
    linkageType: ''
    returnType: Frequency
    signature: Frequency Period::frequency() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:129,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 132
    functionName: QuantLib::Period::normalize
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: void
    signature: void Period::normalize()
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:137,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:138,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:139,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:141,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:146,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:153,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:153,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:163,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:169,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:179,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:186,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:186,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:196,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:202,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:202,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:212,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:212,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 217
    functionName: '& Period::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - QL_FAIL
    - length
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: '& Period::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& Period::operator*=(Integer n)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator*=(Integer n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:251,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 257
    functionName: '& Period::operator/=(Integer n)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator/=(Integer n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:263,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:263,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:280,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:282,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:284,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:286,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:288,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:290,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:292,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:292,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 294
    functionName: QuantLib::years
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real years(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:297,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:299,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:301,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:303,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:305,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:307,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:309,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:309,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:309,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 311
    functionName: QuantLib::months
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real months(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:314,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:316,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:318,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:320,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:322,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:324,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:326,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:326,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 328
    functionName: QuantLib::weeks
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real weeks(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:331,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:333,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:335,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:337,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:339,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:341,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:343,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:343,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 345
    functionName: QuantLib::days
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 15
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real days(const Period& p)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:350,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:351,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:352,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:353,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:356,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:356,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:357,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:357,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:358,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:358,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:359,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:359,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:360,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:360,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:361,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:361,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:362,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:362,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:363,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:363,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:364,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:364,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:365,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:365,1
    - Dst: QuantLib::daysMinMax
      Src: /src/quantlib/ql/time/period.cpp:368,1
    - Dst: QuantLib::daysMinMax
      Src: /src/quantlib/ql/time/period.cpp:369,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:376,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 20
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 377
    functionName: operator<(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - length
    - QuantLib::daysMinMax
    - units
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 380
    functionDepth: 0
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionName: operator+(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator+(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: operator-(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator-(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p'
    - n
    argTypes:
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 394
    functionName: operator/(const Period& p, Integer n)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator/(const Period& p, Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/time/period.cpp:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' p'
    argTypes:
    - std::ostream
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionName: '& operator<<(std::ostream& out, const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::short_period
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:406,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 419
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:423,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:424,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 436
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:406,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 419
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:423,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:424,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 436
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_period_holder
      Src: /src/quantlib/ql/time/period.cpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: QuantLib::io::long_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::long_period_holder
    linkageType: ''
    returnType: detail::long_period_holder
    signature: detail::long_period_holder long_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_period_holder
      Src: /src/quantlib/ql/time/period.cpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: QuantLib::io::short_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::short_period_holder
    linkageType: ''
    returnType: detail::short_period_holder
    signature: detail::short_period_holder short_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_period_holder
      Src: /src/quantlib/ql/time/period.cpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: QuantLib::io::long_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::long_period_holder
    linkageType: ''
    returnType: detail::long_period_holder
    signature: detail::long_period_holder long_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_period_holder
      Src: /src/quantlib/ql/time/period.cpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: QuantLib::io::short_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::short_period_holder
    linkageType: ''
    returnType: detail::short_period_holder
    signature: detail::short_period_holder short_period(const Period& p)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:63,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:65,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:65,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 67
    functionName: QuantLib::Period::Period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: void
    signature: void Period::Period(Frequency f)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: std::abs
      Src: /src/quantlib/ql/time/period.cpp:71,1
    - Dst: Frequency
      Src: /src/quantlib/ql/time/period.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:104,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:104,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 106
    functionName: QuantLib::Period::frequency
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Frequency
    - Integer
    - std::abs
    linkageType: ''
    returnType: Frequency
    signature: Frequency Period::frequency() const
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:129,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 132
    functionName: QuantLib::Period::normalize
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: void
    signature: void Period::normalize()
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:137,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:138,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:139,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:141,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:146,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:153,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:153,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:158,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:163,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:169,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:174,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:179,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:186,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:186,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:191,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:196,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:202,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:202,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:207,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:212,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:212,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 217
    functionName: '& Period::operator+=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - QL_FAIL
    - length
    - units
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator+=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: '& Period::operator-=(const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator-=(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: '& Period::operator*=(Integer n)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator*=(Integer n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:229,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/period.cpp:251,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - n
    argTypes:
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 257
    functionName: '& Period::operator/=(Integer n)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Period
    signature: Period & Period::operator/=(Integer n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:263,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 1
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:263,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:265,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:267,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:269,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:271,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:273,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: QuantLib::daysMinMax
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 1
    functionsReached:
    - std::make_pair
    - Integer
    - QL_FAIL
    - length
    - units
    linkageType: ''
    returnType: std::pair<Integer,Integer>
    signature: std::pair<Integer,Integer> daysMinMax(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:280,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:282,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:284,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:286,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:288,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:290,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:292,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:292,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 294
    functionName: QuantLib::years
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real years(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:297,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:299,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:301,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:303,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:305,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:307,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:309,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:309,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:309,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 311
    functionName: QuantLib::months
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real months(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:314,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:316,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:318,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:320,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:322,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:324,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:326,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:326,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 328
    functionName: QuantLib::weeks
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real weeks(const Period& p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:331,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:333,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:335,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:337,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:339,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:341,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:343,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:343,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:343,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 345
    functionName: QuantLib::days
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 15
    functionsReached:
    - QL_FAIL
    - length
    - Integer
    - units
    linkageType: ''
    returnType: Real
    signature: Real days(const Period& p)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:350,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:351,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:352,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:353,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:356,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:356,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:357,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:357,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:358,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:358,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:359,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:359,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:360,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:360,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:361,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:361,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:362,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:362,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:363,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:363,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:364,1
    - Dst: units
      Src: /src/quantlib/ql/time/period.cpp:364,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:365,1
    - Dst: length
      Src: /src/quantlib/ql/time/period.cpp:365,1
    - Dst: daysMinMax
      Src: /src/quantlib/ql/time/period.cpp:368,1
    - Dst: daysMinMax
      Src: /src/quantlib/ql/time/period.cpp:369,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:376,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 20
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 377
    functionName: operator<(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - length
    - daysMinMax
    - units
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 380
    functionDepth: 0
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionName: operator+(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator+(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p1'
    - ' p2'
    argTypes:
    - Period
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: operator-(const Period& p1, const Period& p2)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator-(const Period& p1, const Period& p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p'
    - n
    argTypes:
    - Period
    - Integer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 394
    functionName: operator/(const Period& p, Integer n)
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period operator/(const Period& p, Integer n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::io::short_period
      Src: /src/quantlib/ql/time/period.cpp:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - ' p'
    argTypes:
    - std::ostream
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 398
    functionDepth: 2
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionName: '& operator<<(std::ostream& out, const Period& p)'
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::short_period
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const Period& p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:406,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 419
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:423,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:424,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 436
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:406,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:417,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - long_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 419
    functionName: "& operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      long_period_holder& holder)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: p::length
      Src: /src/quantlib/ql/time/period.cpp:423,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:424,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/period.cpp:434,1
    - Dst: p::units
      Src: /src/quantlib/ql/time/period.cpp:434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - ' out'
    - ' holder'
    argTypes:
    - std::ostream
    - short_period_holder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 436
    functionName: "& operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - p::units
    - p::length
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                                 const
      short_period_holder& holder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_period_holder
      Src: /src/quantlib/ql/time/period.cpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: QuantLib::io::long_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::long_period_holder
    linkageType: ''
    returnType: detail::long_period_holder
    signature: detail::long_period_holder long_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_period_holder
      Src: /src/quantlib/ql/time/period.cpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: QuantLib::io::short_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::short_period_holder
    linkageType: ''
    returnType: detail::short_period_holder
    signature: detail::short_period_holder short_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::long_period_holder
      Src: /src/quantlib/ql/time/period.cpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: QuantLib::io::long_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::long_period_holder
    linkageType: ''
    returnType: detail::long_period_holder
    signature: detail::long_period_holder long_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::short_period_holder
      Src: /src/quantlib/ql/time/period.cpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: QuantLib::io::short_period
    functionSourceFile: /src/quantlib/ql/time/period.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::short_period_holder
    linkageType: ''
    returnType: detail::short_period_holder
    signature: detail::short_period_holder short_period(const Period& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' cal'
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Calendar
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::daysBetweenImpl
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - static_cast<Date::serial_type>
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type daysBetweenImpl(const Calendar& cal,\n                                          const
      Date& from, const Date& to,\n                                          bool
      includeFirst, bool includeLast)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' cal'
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Calendar
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::daysBetweenImpl
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - static_cast<Date::serial_type>
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type daysBetweenImpl(const Calendar& cal,\n                                          const
      Date& from, const Date& to,\n                                          bool
      includeFirst, bool includeLast)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: removedHolidays::erase
      Src: /src/quantlib/ql/time/calendar.cpp:55,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:58,1
    - Dst: addedHolidays::insert
      Src: /src/quantlib/ql/time/calendar.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionName: QuantLib::Calendar::addHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - removedHolidays::erase
    - dayOfMonth
    - addedHolidays::insert
    - month
    - year
    - QuantLib::Calendar::isBusinessDay
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Calendar::addHoliday(const Date& d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:63,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: addedHolidays::erase
      Src: /src/quantlib/ql/time/calendar.cpp:72,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:75,1
    - Dst: removedHolidays::insert
      Src: /src/quantlib/ql/time/calendar.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 77
    functionName: QuantLib::Calendar::removeHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dayOfMonth
    - month
    - removedHolidays::insert
    - year
    - QuantLib::Calendar::isBusinessDay
    - addedHolidays::erase
    linkageType: ''
    returnType: void
    signature: void Calendar::removeHoliday(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: addedHolidays::clear
      Src: /src/quantlib/ql/time/calendar.cpp:80,1
    - Dst: removedHolidays::clear
      Src: /src/quantlib/ql/time/calendar.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::Calendar::resetAddedAndRemovedHolidays
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - addedHolidays::clear
    - removedHolidays::clear
    linkageType: ''
    returnType: void
    signature: void Calendar::resetAddedAndRemovedHolidays()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:86,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendar.cpp:86,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:94,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/calendar.cpp:98,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:98,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:99,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:102,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:102,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:103,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:108,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/calendar.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:110,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:111,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:115,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:115,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:120,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendar.cpp:125,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 37
    argCount: 2
    argNames:
    - ' d'
    - c
    argTypes:
    - Date
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 128
    functionName: QuantLib::Calendar::adjust
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 5
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isHoliday
    - Date::dayOfMonth
    - Date
    - QL_FAIL
    - Date::month
    - QuantLib::Calendar::adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::adjust(const Date& d,\n                          BusinessDayConvention
      c) const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:134,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendar.cpp:134,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:136,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:142,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:149,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:157,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:165,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:165,1
    - Dst: QuantLib::Calendar::isEndOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:168,1
    - Dst: QuantLib::Calendar::endOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:168,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:171,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 5
    argNames:
    - ' d'
    - n
    - unit
    - c
    - endOfMonth
    argTypes:
    - Date
    - Integer
    - TimeUnit
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 130
    functionDepth: 4
    functionLinenumber: 130
    functionLinenumberEnd: 173
    functionName: QuantLib::Calendar::advance
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::endOfMonth
    - QuantLib::Calendar::isHoliday
    - Date
    - QuantLib::Date::isEndOfMonth
    - QuantLib::Calendar::endOfMonth
    - QuantLib::Calendar::isEndOfMonth
    - QuantLib::Calendar::adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::advance(const Date& d,\n                           Integer
      n, TimeUnit unit,\n                           BusinessDayConvention c,\n                           bool
      endOfMonth) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::advance
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    - Dst: length
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    - Dst: units
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d'
    - ' p'
    - c
    - endOfMonth
    argTypes:
    - Date
    - Period
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 180
    functionName: QuantLib::Calendar::advance
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 1
    functionsReached:
    - length
    - QuantLib::Calendar::advance
    - units
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::advance(const Date & d,\n                           const
      Period & p,\n                           BusinessDayConvention c,\n                           bool
      endOfMonth) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetweenImpl
      Src: /src/quantlib/ql/time/calendar.cpp:186,1
    - Dst: daysBetweenImpl
      Src: /src/quantlib/ql/time/calendar.cpp:187,1
    - Dst: Date::serial_type
      Src: /src/quantlib/ql/time/calendar.cpp:188,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::Calendar::businessDaysBetween
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - daysBetweenImpl
    - Date::serial_type
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Calendar::businessDaysBetween(const Date& from,\n
      \                                                   const Date& to,\n                                                    bool
      includeFirst,\n                                                    bool includeLast)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: Calendar::WesternImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::WesternImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 233
    functionName: Calendar::WesternImpl::easterMonday(Year y)
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Day
    signature: Day Calendar::WesternImpl::easterMonday(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: Calendar::OrthodoxImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::OrthodoxImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 275
    functionName: Calendar::OrthodoxImpl::easterMonday(Year y)
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Day
    signature: Day Calendar::OrthodoxImpl::easterMonday(Year y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:280,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: QuantLib::Calendar::isWeekend
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/calendar.cpp:286,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - includeWeekEnds
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 289
    functionName: QuantLib::Calendar::holidayList
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isWeekend
    - QuantLib::Calendar::isHoliday
    - Date::weekday
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> Calendar::holidayList(\n        const Date& from,
      const Date& to, bool includeWeekEnds) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:294,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:299,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/calendar.cpp:300,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' from'
    - ' to'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 303
    functionName: QuantLib::Calendar::businessDayList
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isBusinessDay
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> Calendar::businessDayList(\n        const Date&
      from, const Date& to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' cal'
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Calendar
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::daysBetweenImpl
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - static_cast<Date::serial_type>
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type daysBetweenImpl(const Calendar& cal,\n                                          const
      Date& from, const Date& to,\n                                          bool
      includeFirst, bool includeLast)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:36,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - ' cal'
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Calendar
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::daysBetweenImpl
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - static_cast<Date::serial_type>
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type daysBetweenImpl(const Calendar& cal,\n                                          const
      Date& from, const Date& to,\n                                          bool
      includeFirst, bool includeLast)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.cpp:49,1
    - Dst: removedHolidays::erase
      Src: /src/quantlib/ql/time/calendar.cpp:55,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:58,1
    - Dst: addedHolidays::insert
      Src: /src/quantlib/ql/time/calendar.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionName: QuantLib::Calendar::addHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - removedHolidays::erase
    - dayOfMonth
    - addedHolidays::insert
    - month
    - year
    - QuantLib::Calendar::isBusinessDay
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Calendar::addHoliday(const Date& d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:63,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendar.cpp:66,1
    - Dst: addedHolidays::erase
      Src: /src/quantlib/ql/time/calendar.cpp:72,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:75,1
    - Dst: removedHolidays::insert
      Src: /src/quantlib/ql/time/calendar.cpp:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 77
    functionName: QuantLib::Calendar::removeHoliday
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - dayOfMonth
    - month
    - removedHolidays::insert
    - year
    - QuantLib::Calendar::isBusinessDay
    - addedHolidays::erase
    linkageType: ''
    returnType: void
    signature: void Calendar::removeHoliday(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: addedHolidays::clear
      Src: /src/quantlib/ql/time/calendar.cpp:80,1
    - Dst: removedHolidays::clear
      Src: /src/quantlib/ql/time/calendar.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::Calendar::resetAddedAndRemovedHolidays
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - addedHolidays::clear
    - removedHolidays::clear
    linkageType: ''
    returnType: void
    signature: void Calendar::resetAddedAndRemovedHolidays()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:86,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendar.cpp:86,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:94,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/calendar.cpp:98,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:98,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:99,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:102,1
    - Dst: Date::dayOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:102,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:103,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:108,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/calendar.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendar.cpp:110,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:111,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:115,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:115,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:120,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendar.cpp:125,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 37
    argCount: 2
    argNames:
    - ' d'
    - c
    argTypes:
    - Date
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 128
    functionName: QuantLib::Calendar::adjust
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 7
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isHoliday
    - Date::dayOfMonth
    - Date
    - QL_FAIL
    - Date::month
    - QuantLib::Calendar::adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::adjust(const Date& d,\n                          BusinessDayConvention
      c) const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:134,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendar.cpp:134,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:136,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:142,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:149,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:157,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:165,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:165,1
    - Dst: QuantLib::Calendar::isEndOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:168,1
    - Dst: QuantLib::Calendar::endOfMonth
      Src: /src/quantlib/ql/time/calendar.cpp:168,1
    - Dst: QuantLib::Calendar::adjust
      Src: /src/quantlib/ql/time/calendar.cpp:171,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 5
    argNames:
    - ' d'
    - n
    - unit
    - c
    - endOfMonth
    argTypes:
    - Date
    - Integer
    - TimeUnit
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 130
    functionDepth: 4
    functionLinenumber: 130
    functionLinenumberEnd: 173
    functionName: QuantLib::Calendar::advance
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Date::endOfMonth
    - QuantLib::Calendar::isHoliday
    - Date
    - QuantLib::Date::isEndOfMonth
    - QuantLib::Calendar::endOfMonth
    - QuantLib::Calendar::isEndOfMonth
    - QuantLib::Calendar::adjust
    - QL_REQUIRE
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::advance(const Date& d,\n                           Integer
      n, TimeUnit unit,\n                           BusinessDayConvention c,\n                           bool
      endOfMonth) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::advance
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    - Dst: length
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    - Dst: units
      Src: /src/quantlib/ql/time/calendar.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d'
    - ' p'
    - c
    - endOfMonth
    argTypes:
    - Date
    - Period
    - BusinessDayConvention
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 180
    functionName: QuantLib::Calendar::advance
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 2
    functionsReached:
    - length
    - QuantLib::Calendar::advance
    - units
    linkageType: ''
    returnType: Date
    signature: "Date Calendar::advance(const Date & d,\n                           const
      Period & p,\n                           BusinessDayConvention c,\n                           bool
      endOfMonth) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetweenImpl
      Src: /src/quantlib/ql/time/calendar.cpp:186,1
    - Dst: daysBetweenImpl
      Src: /src/quantlib/ql/time/calendar.cpp:187,1
    - Dst: Date::serial_type
      Src: /src/quantlib/ql/time/calendar.cpp:188,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - ' from'
    - ' to'
    - includeFirst
    - includeLast
    argTypes:
    - Date
    - Date
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: QuantLib::Calendar::businessDaysBetween
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - daysBetweenImpl
    - Date::serial_type
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Calendar::businessDaysBetween(const Date& from,\n
      \                                                   const Date& to,\n                                                    bool
      includeFirst,\n                                                    bool includeLast)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: Calendar::WesternImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::WesternImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 233
    functionName: Calendar::WesternImpl::easterMonday(Year y)
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Day
    signature: Day Calendar::WesternImpl::easterMonday(Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: Calendar::OrthodoxImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Calendar::OrthodoxImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 275
    functionName: Calendar::OrthodoxImpl::easterMonday(Year y)
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Day
    signature: Day Calendar::OrthodoxImpl::easterMonday(Year y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:280,1
    - Dst: QuantLib::Calendar::isHoliday
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: QuantLib::Calendar::isWeekend
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendar.cpp:285,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/calendar.cpp:286,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ' from'
    - ' to'
    - includeWeekEnds
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 289
    functionName: QuantLib::Calendar::holidayList
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isWeekend
    - QuantLib::Calendar::isHoliday
    - Date::weekday
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> Calendar::holidayList(\n        const Date& from,
      const Date& to, bool includeWeekEnds) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/calendar.cpp:294,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendar.cpp:299,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/calendar.cpp:300,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' from'
    - ' to'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 303
    functionName: QuantLib::Calendar::businessDayList
    functionSourceFile: /src/quantlib/ql/time/calendar.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Calendar::isBusinessDay
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> Calendar::businessDayList(\n        const Date&
      from, const Date& to) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 316
    functionName: QuantLib::detail::short_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_date_holder(const Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 322
    functionName: QuantLib::detail::long_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::iso_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/date.hpp:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' d'
    - f
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 334
    functionName: QuantLib::detail::formatted_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void formatted_date_holder(const Date& d, std::string f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::iso_datetime_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_datetime_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 316
    functionName: QuantLib::detail::short_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_date_holder(const Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 322
    functionName: QuantLib::detail::long_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::iso_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/date.hpp:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' d'
    - f
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 334
    functionName: QuantLib::detail::formatted_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void formatted_date_holder(const Date& d, std::string f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::iso_datetime_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_datetime_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:381,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:382,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionName: QuantLib::Date::startOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::Date
    - QuantLib::Date::year
    - QuantLib::Date::month
    linkageType: ''
    returnType: Date
    signature: Date Date::startOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: QuantLib::Date::isStartOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::dayOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Date::isStartOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: QuantLib::Date::weekday
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - Weekday
    linkageType: ''
    returnType: Weekday
    signature: Weekday Date::weekday() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfYear
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 396
    functionDepth: 2
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionName: QuantLib::Date::dayOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::monthOffset
    - QuantLib::Date::month
    - QuantLib::Date::isLeap
    - QuantLib::Date::dayOfYear
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.hpp:401,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionName: QuantLib::Date::dayOfYear
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::Date::yearOffset
    - QuantLib::Date::year
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfYear() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 406
    functionName: QuantLib::Date::serialNumber
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::serialNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.hpp:409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: Date::operator+(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.hpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionName: Date::operator-(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.hpp:417,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.hpp:417,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.hpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionName: Date::operator+(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.hpp:421,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.hpp:421,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.hpp:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionName: Date::operator-(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:425,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:426,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.hpp:427,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 424
    functionDepth: 2
    functionLinenumber: 424
    functionLinenumberEnd: 428
    functionName: QuantLib::Date::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 9
    functionsReached:
    - QuantLib::Date::isLeap
    - QuantLib::Date::year
    - QuantLib::Date::monthLength
    - QuantLib::Date::month
    linkageType: ''
    returnType: Date
    signature: Date Date::endOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 432
    functionName: QuantLib::Date::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::month
    - QuantLib::Date::dayOfMonth
    - QuantLib::Date::isLeap
    - QuantLib::Date::monthLength
    linkageType: ''
    returnType: bool
    signature: bool Date::isEndOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:435,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 436
    functionName: operator-(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type operator-(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Time
      Src: /src/quantlib/ql/time/date.hpp:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionName: QuantLib::daysBetween
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Time
    linkageType: ''
    returnType: Time
    signature: Time daysBetween(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:443,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: operator==(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:447,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: operator!=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:451,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionName: operator<(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:455,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: operator<=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:459,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: operator>(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:463,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionName: operator>=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 316
    functionName: QuantLib::detail::short_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_date_holder(const Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 322
    functionName: QuantLib::detail::long_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::iso_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/date.hpp:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' d'
    - f
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 334
    functionName: QuantLib::detail::formatted_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void formatted_date_holder(const Date& d, std::string f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::iso_datetime_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_datetime_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 316
    functionName: QuantLib::detail::short_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short_date_holder(const Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 322
    functionName: QuantLib::detail::long_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 328
    functionName: QuantLib::detail::iso_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_date_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/date.hpp:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' d'
    - f
    argTypes:
    - Date
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 334
    functionName: QuantLib::detail::formatted_date_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void formatted_date_holder(const Date& d, std::string f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::detail::iso_datetime_holder
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iso_datetime_holder(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:381,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:382,1
    - Dst: QuantLib::Date::Date
      Src: /src/quantlib/ql/time/date.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionName: QuantLib::Date::startOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::Date
    - QuantLib::Date::year
    - QuantLib::Date::month
    linkageType: ''
    returnType: Date
    signature: Date Date::startOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: QuantLib::Date::isStartOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::dayOfMonth
    linkageType: ''
    returnType: bool
    signature: bool Date::isStartOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Weekday
      Src: /src/quantlib/ql/time/date.hpp:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: QuantLib::Date::weekday
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - Weekday
    linkageType: ''
    returnType: Weekday
    signature: Weekday Date::weekday() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfYear
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::monthOffset
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:397,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 396
    functionDepth: 2
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionName: QuantLib::Date::dayOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::monthOffset
    - QuantLib::Date::month
    - QuantLib::Date::isLeap
    - QuantLib::Date::dayOfYear
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfMonth() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::yearOffset
      Src: /src/quantlib/ql/time/date.hpp:401,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionName: QuantLib::Date::dayOfYear
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::Date::yearOffset
    - QuantLib::Date::year
    linkageType: ''
    returnType: Day
    signature: Day Date::dayOfYear() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 406
    functionName: QuantLib::Date::serialNumber
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type Date::serialNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.hpp:409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: Date::operator+(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/date.hpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - days
    argTypes:
    - Date::serial_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionName: Date::operator-(Date::serial_type days) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(Date::serial_type days) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.hpp:417,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.hpp:417,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.hpp:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionName: Date::operator+(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date Date::operator+(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/quantlib/ql/time/date.hpp:421,1
    - Dst: length
      Src: /src/quantlib/ql/time/date.hpp:421,1
    - Dst: units
      Src: /src/quantlib/ql/time/date.hpp:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionName: Date::operator-(const Period& p) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - length
    - advance
    - units
    linkageType: ''
    returnType: Date
    signature: Date Date::operator-(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:425,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:426,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.hpp:427,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 424
    functionDepth: 2
    functionLinenumber: 424
    functionLinenumberEnd: 428
    functionName: QuantLib::Date::endOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 9
    functionsReached:
    - QuantLib::Date::isLeap
    - QuantLib::Date::year
    - QuantLib::Date::monthLength
    - QuantLib::Date::month
    linkageType: ''
    returnType: Date
    signature: Date Date::endOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::dayOfMonth
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::monthLength
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::month
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/date.hpp:431,1
    - Dst: QuantLib::Date::year
      Src: /src/quantlib/ql/time/date.hpp:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 432
    functionName: QuantLib::Date::isEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date::year
    - QuantLib::Date::month
    - QuantLib::Date::dayOfMonth
    - QuantLib::Date::isLeap
    - QuantLib::Date::monthLength
    linkageType: ''
    returnType: bool
    signature: bool Date::isEndOfMonth(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:435,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 436
    functionName: operator-(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type operator-(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Time
      Src: /src/quantlib/ql/time/date.hpp:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionName: QuantLib::daysBetween
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - Time
    linkageType: ''
    returnType: Time
    signature: Time daysBetween(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:443,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: operator==(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:447,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: operator!=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:451,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionName: operator<(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:455,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: operator<=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:459,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: operator>(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:463,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/time/date.hpp:463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionName: operator>=(const Date& d1, const Date& d2)
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - serialNumber
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::hash_value
      Src: /src/quantlib/ql/time/date.hpp:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - QuantLib::Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 471
    functionDepth: 4
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionName: operator()(const QuantLib::Date& d) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::hash_value
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(const QuantLib::Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::hash_value
      Src: /src/quantlib/ql/time/date.hpp:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - QuantLib::Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 471
    functionDepth: 4
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionName: operator()(const QuantLib::Date& d) const
    functionSourceFile: /src/quantlib/ql/time/date.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::hash_value
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(const QuantLib::Date& d) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:41,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 48
    functionName: QuantLib::nextTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date nextTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::allowsEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - units
    linkageType: ''
    returnType: bool
    signature: bool allowsEndOfMonth(const Period& tenor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:41,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 48
    functionName: QuantLib::nextTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date nextTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::allowsEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - units
    linkageType: ''
    returnType: bool
    signature: bool allowsEndOfMonth(const Period& tenor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:66,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:68,1
    - Dst: allowsEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:76,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 8
    argNames:
    - ' dates'
    - calendar
    - convention
    - ' terminationDateConvention'
    - ' tenor'
    - ' rule'
    - ' endOfMonth'
    - isRegular
    argTypes:
    - std::vector<Date>
    - Calendar
    - BusinessDayConvention
    - ext::optional<BusinessDayConvention>
    - ext::optional<Period>
    - ext::optional<DateGeneration::Rule>
    - ext::optional<bool>
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - allowsEndOfMonth
    - std::move
    - QuantLib::Schedule::empty
    - QuantLib::Schedule::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Schedule::Schedule(const std::vector<Date>& dates,\n                       Calendar
      calendar,\n                       BusinessDayConvention convention,\n                       const
      ext::optional<BusinessDayConvention>& terminationDateConvention,\n                       const
      ext::optional<Period>& tenor,\n                       const ext::optional<DateGeneration::Rule>&
      rule,\n                       const ext::optional<bool>& endOfMonth,\n                       std::vector<bool>
      isRegular)"
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:91,1
    - Dst: allowsEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:93,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:94,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:101,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:101,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/schedule.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:104,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:116,1
    - Dst: length
      Src: /src/quantlib/ql/time/schedule.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:124,1
    - Dst: length
      Src: /src/quantlib/ql/time/schedule.cpp:124,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:140,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/schedule.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:153,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:153,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:169,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/schedule.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:182,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:182,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/time/schedule.cpp:188,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:195,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:196,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:197,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:202,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:205,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:206,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:207,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:209,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:214,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:218,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:221,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:222,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:222,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:223,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:224,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:225,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:231,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:232,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:233,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:234,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:240,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:241,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:242,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:243,1
    - Dst: std::reverse
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: std::reverse
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:256,1
    - Dst: previousTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:263,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:264,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:265,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:266,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:268,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:270,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:273,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:275,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:276,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:277,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:280,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:282,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:289,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:295,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:299,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:300,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:306,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:309,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:312,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:313,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:313,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:314,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:315,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:316,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:322,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:322,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:323,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:324,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:325,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:331,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:331,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:332,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:338,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:338,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:339,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:341,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:342,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:349,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:349,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:354,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/schedule.cpp:355,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:356,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:357,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:377,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:379,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:380,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:380,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:382,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:383,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:392,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:393,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:394,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:394,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:396,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:396,1
    - Dst: pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:397,1
    - Dst: pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:398,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:400,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:400,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:402,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:403,1
    - Dst: erase
      Src: /src/quantlib/ql/time/schedule.cpp:404,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:404,1
    - Dst: erase
      Src: /src/quantlib/ql/time/schedule.cpp:405,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:405,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/schedule.cpp:408,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:408,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 200
    argCount: 10
    argNames:
    - effectiveDate
    - ' terminationDate'
    - ' tenor'
    - cal
    - convention
    - terminationDateConvention
    - rule
    - endOfMonth
    - ' first'
    - ' nextToLast'
    argTypes:
    - Date
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - BusinessDayConvention
    - DateGeneration::Rule
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 418
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - nextTwentieth
    - month
    - length
    - Date
    - pop_back
    - year
    - back
    - QL_ENSURE
    - QuantLib::IMM::isIMMdate
    - std::reverse
    - adjust
    - previousTwentieth
    - front
    - Calendar::advance
    - push_back
    - QuantLib::Date::endOfMonth
    - QL_FAIL
    - NullCalendar
    - QL_REQUIRE
    - QuantLib::Date::nthWeekday
    - allowsEndOfMonth
    - Integer
    - std::move
    - isEndOfMonth
    - QuantLib::Schedule::begin
    - QuantLib::detail::instance
    - QuantLib::Schedule::size
    - erase
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: void
    signature: "void Schedule::Schedule(Date effectiveDate,\n                       const
      Date& terminationDate,\n                       const Period& tenor,\n                       Calendar
      cal,\n                       BusinessDayConvention convention,\n                       BusinessDayConvention
      terminationDateConvention,\n                       DateGeneration::Rule rule,\n
      \                      bool endOfMonth,\n                       const Date&
      first,\n                       const Date& nextToLast)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:423,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:423,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:426,1
    - Dst: Schedule::dates_::erase
      Src: /src/quantlib/ql/time/schedule.cpp:430,1
    - Dst: Schedule::dates_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:430,1
    - Dst: Schedule::isRegular_::empty
      Src: /src/quantlib/ql/time/schedule.cpp:431,1
    - Dst: Schedule::isRegular_::erase
      Src: /src/quantlib/ql/time/schedule.cpp:432,1
    - Dst: Schedule::isRegular_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:432,1
    - Dst: Schedule::dates_::front
      Src: /src/quantlib/ql/time/schedule.cpp:436,1
    - Dst: Schedule::dates_::insert
      Src: /src/quantlib/ql/time/schedule.cpp:437,1
    - Dst: Schedule::dates_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:437,1
    - Dst: Schedule::isRegular_::insert
      Src: /src/quantlib/ql/time/schedule.cpp:438,1
    - Dst: Schedule::isRegular_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:438,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:446,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:448,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ' truncationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 420
    functionDepth: 1
    functionLinenumber: 420
    functionLinenumberEnd: 452
    functionName: QuantLib::Schedule::after
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Schedule::isRegular_::insert
    - QL_REQUIRE
    - Schedule::isRegular_::begin
    - Schedule::dates_::back
    - Schedule::dates_::insert
    - Schedule::isRegular_::erase
    - Schedule::isRegular_::empty
    - Date
    - Schedule::dates_::erase
    - Schedule::dates_::front
    - Schedule::dates_::begin
    linkageType: ''
    returnType: Schedule
    signature: Schedule Schedule::after(const Date& truncationDate) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:457,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:461,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:463,1
    - Dst: Schedule::dates_::pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:464,1
    - Dst: Schedule::isRegular_::empty
      Src: /src/quantlib/ql/time/schedule.cpp:465,1
    - Dst: Schedule::isRegular_::pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:466,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:470,1
    - Dst: Schedule::dates_::push_back
      Src: /src/quantlib/ql/time/schedule.cpp:471,1
    - Dst: Schedule::isRegular_::push_back
      Src: /src/quantlib/ql/time/schedule.cpp:472,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:479,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:481,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ' truncationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 485
    functionName: QuantLib::Schedule::until
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Schedule::isRegular_::pop_back
    - Schedule::dates_::push_back
    - Schedule::dates_::back
    - Schedule::isRegular_::empty
    - Date
    - Schedule::isRegular_::push_back
    - Schedule::dates_::pop_back
    - QL_REQUIRE
    linkageType: ''
    returnType: Schedule
    signature: Schedule Schedule::until(const Date& truncationDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:489,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/schedule.cpp:490,1
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 493
    functionName: QuantLib::Schedule::lower_bound
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::begin
    - QuantLib::detail::instance
    - Date
    - QuantLib::Schedule::lower_bound
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: std::vector<Date>::const_iterator
    signature: std::vector<Date>::const_iterator Schedule::lower_bound(const Date&
      refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:496,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 495
    functionDepth: 3
    functionLinenumber: 495
    functionLinenumberEnd: 501
    functionName: QuantLib::Schedule::nextDate
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::lower_bound
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: Date
    signature: Date Schedule::nextDate(const Date& refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:504,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 503
    functionDepth: 3
    functionLinenumber: 503
    functionLinenumberEnd: 509
    functionName: QuantLib::Schedule::previousDate
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::begin
    - QuantLib::Schedule::lower_bound
    linkageType: ''
    returnType: Date
    signature: Date Schedule::previousDate(const Date& refDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.cpp:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 511
    functionName: QuantLib::Schedule::hasIsRegular
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::empty
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasIsRegular() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:514,1
    - Dst: QuantLib::Schedule::hasIsRegular
      Src: /src/quantlib/ql/time/schedule.cpp:514,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:516,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:516,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 513
    functionDepth: 3
    functionLinenumber: 513
    functionLinenumberEnd: 520
    functionName: QuantLib::Schedule::isRegular
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::size
    - QuantLib::Schedule::hasIsRegular
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Schedule::isRegular(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:523,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.cpp:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 522
    functionDepth: 1
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionName: '& Schedule::isRegular() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> & Schedule::isRegular() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: '& MakeSchedule::from(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::from(const Date& effectiveDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: '& MakeSchedule::to(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::to(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: '& MakeSchedule::withTenor(const Period& tenor)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withTenor(const Period& tenor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/time/schedule.cpp:543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - frequency
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: '& MakeSchedule::withFrequency(Frequency frequency)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withFrequency(Frequency frequency)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' calendar'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 547
    functionDepth: 0
    functionLinenumber: 547
    functionLinenumberEnd: 550
    functionName: '& MakeSchedule::withCalendar(const Calendar& calendar)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withCalendar(const Calendar& calendar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - conv
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: '& MakeSchedule::withConvention(BusinessDayConvention conv)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withConvention(BusinessDayConvention conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - conv
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 561
    functionName: "& MakeSchedule::withTerminationDateConvention(\n                                                BusinessDayConvention
      conv)"
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: "MakeSchedule & MakeSchedule::withTerminationDateConvention(\n                                                BusinessDayConvention
      conv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: '& MakeSchedule::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 571
    functionName: '& MakeSchedule::forwards()'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::forwards()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: '& MakeSchedule::backwards()'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::backwards()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionName: '& MakeSchedule::endOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::endOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: '& MakeSchedule::withFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 591
    functionName: '& MakeSchedule::withNextToLastDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withNextToLastDate(const Date& d)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:595,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:595,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:596,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:596,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:597,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.cpp:605,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/time/schedule.cpp:625,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/time/schedule.cpp:627,1
    - Dst: Schedule
      Src: /src/quantlib/ql/time/schedule.cpp:630,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 593
    functionDepth: 1
    functionLinenumber: 593
    functionLinenumberEnd: 633
    functionName: MakeSchedule::operator Schedule() const
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Calendar::empty
    - Date
    - NullCalendar
    - Schedule
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeSchedule::operator Schedule() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:643,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 635
    functionDepth: 2
    functionLinenumber: 635
    functionLinenumberEnd: 650
    functionName: QuantLib::previousTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 2
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date previousTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:41,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 48
    functionName: QuantLib::nextTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date nextTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::allowsEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - units
    linkageType: ''
    returnType: bool
    signature: bool allowsEndOfMonth(const Period& tenor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:34,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:41,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 48
    functionName: QuantLib::nextTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date nextTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    - Dst: units
      Src: /src/quantlib/ql/time/schedule.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::allowsEndOfMonth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - units
    linkageType: ''
    returnType: bool
    signature: bool allowsEndOfMonth(const Period& tenor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:66,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:68,1
    - Dst: allowsEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:70,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:75,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:76,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 8
    argNames:
    - ' dates'
    - calendar
    - convention
    - ' terminationDateConvention'
    - ' tenor'
    - ' rule'
    - ' endOfMonth'
    - isRegular
    argTypes:
    - std::vector<Date>
    - Calendar
    - BusinessDayConvention
    - ext::optional<BusinessDayConvention>
    - ext::optional<Period>
    - ext::optional<DateGeneration::Rule>
    - ext::optional<bool>
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - allowsEndOfMonth
    - std::move
    - QuantLib::Schedule::empty
    - QuantLib::Schedule::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Schedule::Schedule(const std::vector<Date>& dates,\n                       Calendar
      calendar,\n                       BusinessDayConvention convention,\n                       const
      ext::optional<BusinessDayConvention>& terminationDateConvention,\n                       const
      ext::optional<Period>& tenor,\n                       const ext::optional<DateGeneration::Rule>&
      rule,\n                       const ext::optional<bool>& endOfMonth,\n                       std::vector<bool>
      isRegular)"
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/schedule.cpp:91,1
    - Dst: allowsEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:93,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:94,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:97,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:101,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:101,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/schedule.cpp:103,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:104,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:106,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:114,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:116,1
    - Dst: length
      Src: /src/quantlib/ql/time/schedule.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:124,1
    - Dst: length
      Src: /src/quantlib/ql/time/schedule.cpp:124,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:127,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:140,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/schedule.cpp:140,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:150,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:153,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:153,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:169,1
    - Dst: QuantLib::IMM::isIMMdate
      Src: /src/quantlib/ql/time/schedule.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:179,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:182,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:182,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/time/schedule.cpp:188,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:195,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:196,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:197,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:202,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:205,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:206,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:207,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:209,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:214,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:218,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:221,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:222,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:222,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:223,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:224,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:225,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:231,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:232,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:233,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:234,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:240,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:241,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:242,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:243,1
    - Dst: std::reverse
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:245,1
    - Dst: std::reverse
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:246,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:256,1
    - Dst: previousTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:263,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:264,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:265,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:266,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:268,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:270,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:273,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:275,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:276,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:277,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:280,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:282,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:289,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:295,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:299,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:300,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:306,1
    - Dst: Calendar::advance
      Src: /src/quantlib/ql/time/schedule.cpp:309,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:312,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:313,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:313,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:314,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:315,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:316,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:322,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:322,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:323,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:324,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:325,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:331,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:331,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:332,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:338,1
    - Dst: nextTwentieth
      Src: /src/quantlib/ql/time/schedule.cpp:338,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:339,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:341,1
    - Dst: push_back
      Src: /src/quantlib/ql/time/schedule.cpp:342,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/schedule.cpp:349,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/schedule.cpp:349,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:354,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/schedule.cpp:355,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:356,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:357,1
    - Dst: QuantLib::Date::nthWeekday
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:360,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:364,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:373,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:377,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:379,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:380,1
    - Dst: QuantLib::Date::endOfMonth
      Src: /src/quantlib/ql/time/schedule.cpp:380,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:382,1
    - Dst: adjust
      Src: /src/quantlib/ql/time/schedule.cpp:383,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:390,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:392,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:393,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:394,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:394,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:396,1
    - Dst: back
      Src: /src/quantlib/ql/time/schedule.cpp:396,1
    - Dst: pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:397,1
    - Dst: pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:398,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:400,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:400,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:402,1
    - Dst: front
      Src: /src/quantlib/ql/time/schedule.cpp:403,1
    - Dst: erase
      Src: /src/quantlib/ql/time/schedule.cpp:404,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:404,1
    - Dst: erase
      Src: /src/quantlib/ql/time/schedule.cpp:405,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:405,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/time/schedule.cpp:408,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:408,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 200
    argCount: 10
    argNames:
    - effectiveDate
    - ' terminationDate'
    - ' tenor'
    - cal
    - convention
    - terminationDateConvention
    - rule
    - endOfMonth
    - ' first'
    - ' nextToLast'
    argTypes:
    - Date
    - Date
    - Period
    - Calendar
    - BusinessDayConvention
    - BusinessDayConvention
    - DateGeneration::Rule
    - bool
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 418
    functionName: QuantLib::Schedule::Schedule
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - nextTwentieth
    - month
    - length
    - Date
    - pop_back
    - year
    - back
    - QL_ENSURE
    - QuantLib::IMM::isIMMdate
    - std::reverse
    - adjust
    - previousTwentieth
    - front
    - Calendar::advance
    - push_back
    - QuantLib::Date::endOfMonth
    - QL_FAIL
    - NullCalendar
    - QL_REQUIRE
    - QuantLib::Date::nthWeekday
    - allowsEndOfMonth
    - Integer
    - std::move
    - isEndOfMonth
    - QuantLib::Schedule::begin
    - QuantLib::detail::instance
    - QuantLib::Schedule::size
    - erase
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: void
    signature: "void Schedule::Schedule(Date effectiveDate,\n                       const
      Date& terminationDate,\n                       const Period& tenor,\n                       Calendar
      cal,\n                       BusinessDayConvention convention,\n                       BusinessDayConvention
      terminationDateConvention,\n                       DateGeneration::Rule rule,\n
      \                      bool endOfMonth,\n                       const Date&
      first,\n                       const Date& nextToLast)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:423,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:423,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:426,1
    - Dst: Schedule::dates_::erase
      Src: /src/quantlib/ql/time/schedule.cpp:430,1
    - Dst: Schedule::dates_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:430,1
    - Dst: Schedule::isRegular_::empty
      Src: /src/quantlib/ql/time/schedule.cpp:431,1
    - Dst: Schedule::isRegular_::erase
      Src: /src/quantlib/ql/time/schedule.cpp:432,1
    - Dst: Schedule::isRegular_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:432,1
    - Dst: Schedule::dates_::front
      Src: /src/quantlib/ql/time/schedule.cpp:436,1
    - Dst: Schedule::dates_::insert
      Src: /src/quantlib/ql/time/schedule.cpp:437,1
    - Dst: Schedule::dates_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:437,1
    - Dst: Schedule::isRegular_::insert
      Src: /src/quantlib/ql/time/schedule.cpp:438,1
    - Dst: Schedule::isRegular_::begin
      Src: /src/quantlib/ql/time/schedule.cpp:438,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:446,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:448,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ' truncationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 420
    functionDepth: 1
    functionLinenumber: 420
    functionLinenumberEnd: 452
    functionName: QuantLib::Schedule::after
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Schedule::isRegular_::insert
    - QL_REQUIRE
    - Schedule::isRegular_::begin
    - Schedule::dates_::back
    - Schedule::dates_::insert
    - Schedule::isRegular_::erase
    - Schedule::isRegular_::empty
    - Date
    - Schedule::dates_::erase
    - Schedule::dates_::front
    - Schedule::dates_::begin
    linkageType: ''
    returnType: Schedule
    signature: Schedule Schedule::after(const Date& truncationDate) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:457,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:461,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:463,1
    - Dst: Schedule::dates_::pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:464,1
    - Dst: Schedule::isRegular_::empty
      Src: /src/quantlib/ql/time/schedule.cpp:465,1
    - Dst: Schedule::isRegular_::pop_back
      Src: /src/quantlib/ql/time/schedule.cpp:466,1
    - Dst: Schedule::dates_::back
      Src: /src/quantlib/ql/time/schedule.cpp:470,1
    - Dst: Schedule::dates_::push_back
      Src: /src/quantlib/ql/time/schedule.cpp:471,1
    - Dst: Schedule::isRegular_::push_back
      Src: /src/quantlib/ql/time/schedule.cpp:472,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:479,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:481,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ' truncationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 485
    functionName: QuantLib::Schedule::until
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Schedule::isRegular_::pop_back
    - Schedule::dates_::push_back
    - Schedule::dates_::back
    - Schedule::isRegular_::empty
    - Date
    - Schedule::isRegular_::push_back
    - Schedule::dates_::pop_back
    - QL_REQUIRE
    linkageType: ''
    returnType: Schedule
    signature: Schedule Schedule::until(const Date& truncationDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:489,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/time/schedule.cpp:490,1
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 493
    functionName: QuantLib::Schedule::lower_bound
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Schedule::begin
    - QuantLib::detail::instance
    - Date
    - QuantLib::Schedule::lower_bound
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: std::vector<Date>::const_iterator
    signature: std::vector<Date>::const_iterator Schedule::lower_bound(const Date&
      refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:496,1
    - Dst: QuantLib::Schedule::end
      Src: /src/quantlib/ql/time/schedule.cpp:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 495
    functionDepth: 3
    functionLinenumber: 495
    functionLinenumberEnd: 501
    functionName: QuantLib::Schedule::nextDate
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::lower_bound
    - QuantLib::Schedule::end
    linkageType: ''
    returnType: Date
    signature: Date Schedule::nextDate(const Date& refDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::lower_bound
      Src: /src/quantlib/ql/time/schedule.cpp:504,1
    - Dst: QuantLib::Schedule::begin
      Src: /src/quantlib/ql/time/schedule.cpp:505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' refDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 503
    functionDepth: 3
    functionLinenumber: 503
    functionLinenumberEnd: 509
    functionName: QuantLib::Schedule::previousDate
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::begin
    - QuantLib::Schedule::lower_bound
    linkageType: ''
    returnType: Date
    signature: Date Schedule::previousDate(const Date& refDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Schedule::empty
      Src: /src/quantlib/ql/time/schedule.cpp:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 511
    functionName: QuantLib::Schedule::hasIsRegular
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Schedule::empty
    linkageType: ''
    returnType: bool
    signature: bool Schedule::hasIsRegular() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:514,1
    - Dst: QuantLib::Schedule::hasIsRegular
      Src: /src/quantlib/ql/time/schedule.cpp:514,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:516,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:516,1
    - Dst: QuantLib::Schedule::size
      Src: /src/quantlib/ql/time/schedule.cpp:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 513
    functionDepth: 3
    functionLinenumber: 513
    functionLinenumberEnd: 520
    functionName: QuantLib::Schedule::isRegular
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Schedule::size
    - QuantLib::Schedule::hasIsRegular
    - QL_REQUIRE
    linkageType: ''
    returnType: bool
    signature: bool Schedule::isRegular(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:523,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.cpp:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 522
    functionDepth: 1
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionName: '& Schedule::isRegular() const'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> & Schedule::isRegular() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: '& MakeSchedule::from(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::from(const Date& effectiveDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: '& MakeSchedule::to(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::to(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' tenor'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: '& MakeSchedule::withTenor(const Period& tenor)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withTenor(const Period& tenor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/time/schedule.cpp:543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - frequency
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: '& MakeSchedule::withFrequency(Frequency frequency)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withFrequency(Frequency frequency)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' calendar'
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 547
    functionDepth: 0
    functionLinenumber: 547
    functionLinenumberEnd: 550
    functionName: '& MakeSchedule::withCalendar(const Calendar& calendar)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withCalendar(const Calendar& calendar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - conv
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: '& MakeSchedule::withConvention(BusinessDayConvention conv)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withConvention(BusinessDayConvention conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - conv
    argTypes:
    - BusinessDayConvention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 561
    functionName: "& MakeSchedule::withTerminationDateConvention(\n                                                BusinessDayConvention
      conv)"
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: "MakeSchedule & MakeSchedule::withTerminationDateConvention(\n                                                BusinessDayConvention
      conv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: '& MakeSchedule::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withRule(DateGeneration::Rule r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 571
    functionName: '& MakeSchedule::forwards()'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::forwards()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: '& MakeSchedule::backwards()'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::backwards()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionName: '& MakeSchedule::endOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::endOfMonth(bool flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: '& MakeSchedule::withFirstDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withFirstDate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 591
    functionName: '& MakeSchedule::withNextToLastDate(const Date& d)'
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeSchedule
    signature: MakeSchedule & MakeSchedule::withNextToLastDate(const Date& d)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:595,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:595,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:596,1
    - Dst: Date
      Src: /src/quantlib/ql/time/schedule.cpp:596,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/schedule.cpp:597,1
    - Dst: empty
      Src: /src/quantlib/ql/time/schedule.cpp:605,1
    - Dst: Calendar::empty
      Src: /src/quantlib/ql/time/schedule.cpp:625,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/time/schedule.cpp:627,1
    - Dst: Schedule
      Src: /src/quantlib/ql/time/schedule.cpp:630,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 593
    functionDepth: 1
    functionLinenumber: 593
    functionLinenumberEnd: 633
    functionName: MakeSchedule::operator Schedule() const
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Calendar::empty
    - Date
    - NullCalendar
    - Schedule
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeSchedule::operator Schedule() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: month
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: year
      Src: /src/quantlib/ql/time/schedule.cpp:636,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/schedule.cpp:643,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - ' d'
    - rule
    argTypes:
    - Date
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 635
    functionDepth: 2
    functionLinenumber: 635
    functionLinenumberEnd: 650
    functionName: QuantLib::previousTwentieth
    functionSourceFile: /src/quantlib/ql/time/schedule.cpp
    functionUses: 2
    functionsReached:
    - year
    - QuantLib::Date
    - month
    - Date::month
    linkageType: ''
    returnType: Date
    signature: Date previousTwentieth(const Date& d, DateGeneration::Rule rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::DayCounter::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type dayCount(const Date& d1,\n                                               const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounter.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - impl
    argTypes:
    - ext::shared_ptr<Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::DayCounter::DayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DayCounter(ext::shared_ptr<Impl> impl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::DayCounter::DayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::DayCounter::empty
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool DayCounter::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:118,1
    - Dst: QuantLib::DayCounter::name
      Src: /src/quantlib/ql/time/daycounter.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: QuantLib::DayCounter::name
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DayCounter::name
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string DayCounter::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:124,1
    - Dst: QuantLib::DayCounter::dayCount
      Src: /src/quantlib/ql/time/daycounter.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::DayCounter::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DayCounter::dayCount
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type DayCounter::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:130,1
    - Dst: QuantLib::DayCounter::yearFraction
      Src: /src/quantlib/ql/time/daycounter.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionName: QuantLib::DayCounter::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DayCounter::yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time DayCounter::yearFraction(const Date& d1, const Date& d2,\n        const
      Date& refPeriodStart, const Date& refPeriodEnd) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:136,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:136,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: operator==(const DayCounter& d1, const DayCounter& d2)
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DayCounter& d1, const DayCounter& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: operator!=(const DayCounter& d1, const DayCounter& d2)
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const DayCounter& d1, const DayCounter& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter::name
      Src: /src/quantlib/ql/time/daycounter.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - d
    argTypes:
    - std::ostream
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: '& operator<<(std::ostream& out, const DayCounter &d)'
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - DayCounter::name
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const DayCounter &d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: ~Impl()
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::DayCounter::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type dayCount(const Date& d1,\n                                               const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounter.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - impl
    argTypes:
    - ext::shared_ptr<Impl>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::DayCounter::DayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void DayCounter(ext::shared_ptr<Impl> impl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::DayCounter::DayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: QuantLib::DayCounter::empty
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool DayCounter::empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:118,1
    - Dst: QuantLib::DayCounter::name
      Src: /src/quantlib/ql/time/daycounter.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: QuantLib::DayCounter::name
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DayCounter::name
    - QL_REQUIRE
    linkageType: ''
    returnType: std::string
    signature: std::string DayCounter::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:124,1
    - Dst: QuantLib::DayCounter::dayCount
      Src: /src/quantlib/ql/time/daycounter.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::DayCounter::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DayCounter::dayCount
    - QL_REQUIRE
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type DayCounter::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounter.hpp:130,1
    - Dst: QuantLib::DayCounter::yearFraction
      Src: /src/quantlib/ql/time/daycounter.hpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionName: QuantLib::DayCounter::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DayCounter::yearFraction
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time DayCounter::yearFraction(const Date& d1, const Date& d2,\n        const
      Date& refPeriodStart, const Date& refPeriodEnd) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:136,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:136,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: empty
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounter.hpp:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: operator==(const DayCounter& d1, const DayCounter& d2)
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - empty
    - name
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DayCounter& d1, const DayCounter& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: operator!=(const DayCounter& d1, const DayCounter& d2)
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const DayCounter& d1, const DayCounter& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter::name
      Src: /src/quantlib/ql/time/daycounter.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' out'
    - d
    argTypes:
    - std::ostream
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: '& operator<<(std::ostream& out, const DayCounter &d)'
    functionSourceFile: /src/quantlib/ql/time/daycounter.hpp
    functionUses: 0
    functionsReached:
    - DayCounter::name
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& out, const DayCounter &d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:42,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - y
    argTypes:
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::date
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 25
    functionsReached:
    - QuantLib::Date
    - QuantLib::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date date(Month m,\n                         Year y)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:66,1
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:67,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/ecb.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::nextDate
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date
    - QuantLib::nextDate
    - QuantLib::date
    linkageType: ''
    returnType: Date
    signature: "Date nextDate(const std::string& ecbCode,\n                             const
      Date& referenceDate = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:75,1
    - Dst: QuantLib::nextDates
      Src: /src/quantlib/ql/time/ecb.hpp:76,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/ecb.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::nextDates
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Date
    - QuantLib::date
    - QuantLib::nextDates
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> nextDates(const std::string& ecbCode,\n                                           const
      Date& referenceDate = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 4
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::isECBdate
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::nextDate
    linkageType: ''
    returnType: bool
    signature: bool isECBdate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:90,1
    - Dst: code
      Src: /src/quantlib/ql/time/ecb.hpp:91,1
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 4
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::nextCode
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - code
    - QuantLib::nextDate
    linkageType: ''
    returnType: std::string
    signature: std::string nextCode(const Date& d = Date())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:42,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - m
    - y
    argTypes:
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 4
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: QuantLib::date
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 27
    functionsReached:
    - QuantLib::Date
    - QuantLib::nextDate
    linkageType: ''
    returnType: Date
    signature: "Date date(Month m,\n                         Year y)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:66,1
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:67,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/ecb.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::nextDate
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::Date
    - QuantLib::nextDate
    - QuantLib::date
    linkageType: ''
    returnType: Date
    signature: "Date nextDate(const std::string& ecbCode,\n                             const
      Date& referenceDate = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:75,1
    - Dst: QuantLib::nextDates
      Src: /src/quantlib/ql/time/ecb.hpp:76,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/ecb.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ecbCode'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::nextDates
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Date
    - QuantLib::date
    - QuantLib::nextDates
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> nextDates(const std::string& ecbCode,\n                                           const
      Date& referenceDate = Date())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 4
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: QuantLib::isECBdate
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::nextDate
    linkageType: ''
    returnType: bool
    signature: bool isECBdate(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/ecb.hpp:90,1
    - Dst: code
      Src: /src/quantlib/ql/time/ecb.hpp:91,1
    - Dst: QuantLib::nextDate
      Src: /src/quantlib/ql/time/ecb.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 4
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::nextCode
    functionSourceFile: /src/quantlib/ql/time/ecb.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - code
    - QuantLib::nextDate
    linkageType: ''
    returnType: std::string
    signature: std::string nextCode(const Date& d = Date())
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:30,1
    - Dst: Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:30,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:32,1
    - Dst: CA_Impl::CA_Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:32,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:34,1
    - Dst: NL_Impl::NL_Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:34,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - c
    argTypes:
    - Actual365Fixed::Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::Actual365Fixed::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - CA_Impl::CA_Impl
    - NL_Impl::NL_Impl
    - Impl::Impl
    - QL_FAIL
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> Actual365Fixed::implementation(Actual365Fixed::Convention
      c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:48,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:49,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:49,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:51,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:52,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:53,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:54,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:58,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 67
    functionName: "Actual365Fixed::CA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - daysBetween
    - Date
    - std::lround
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time Actual365Fixed::CA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:77,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:78,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:79,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:80,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:80,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:82,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: "Actual365Fixed::NL_Impl::dayCount(const Date& d1,\n                                                        const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Actual365Fixed::NL_Impl::dayCount(const Date& d1,\n
      \                                                       const Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: "Actual365Fixed::NL_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time Actual365Fixed::NL_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:30,1
    - Dst: Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:30,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:32,1
    - Dst: CA_Impl::CA_Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:32,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:34,1
    - Dst: NL_Impl::NL_Impl
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:34,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - c
    argTypes:
    - Actual365Fixed::Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::Actual365Fixed::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - CA_Impl::CA_Impl
    - NL_Impl::NL_Impl
    - Impl::Impl
    - QL_FAIL
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> Actual365Fixed::implementation(Actual365Fixed::Convention
      c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:48,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:49,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:49,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:51,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:52,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:53,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:54,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:58,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' refPeriodStart'
    - ' refPeriodEnd'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 67
    functionName: "Actual365Fixed::CA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - daysBetween
    - Date
    - std::lround
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time Actual365Fixed::CA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& refPeriodStart,\n
      \                                              const Date& refPeriodEnd) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:77,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:78,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:79,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:80,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:80,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:82,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 91
    functionName: "Actual365Fixed::NL_Impl::dayCount(const Date& d1,\n                                                        const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Actual365Fixed::NL_Impl::dayCount(const Date& d1,\n
      \                                                       const Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: "Actual365Fixed::NL_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time Actual365Fixed::NL_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Actual365Fixed::implementation
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::Actual365Fixed::Actual365Fixed
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Actual365Fixed::implementation
    linkageType: ''
    returnType: void
    signature: void Actual365Fixed(Convention c = Actual365Fixed::Standard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Actual365Fixed::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::Actual365Fixed::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::Actual365Fixed::CA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Actual365Fixed::NL_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Actual365Fixed::implementation
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::Actual365Fixed::Actual365Fixed
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Actual365Fixed::implementation
    linkageType: ''
    returnType: void
    signature: void Actual365Fixed(Convention c = Actual365Fixed::Standard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Actual365Fixed::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: QuantLib::Actual365Fixed::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::Actual365Fixed::CA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual365fixed.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Actual365Fixed::NL_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual365fixed.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Business252::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Calendar c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brazil
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:50,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:51,1
    - Dst: Business252::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: QuantLib::Business252::Business252
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Business252::Impl::Impl
    - Brazil
    linkageType: ''
    returnType: void
    signature: void Business252(const Calendar& c = Brazil())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::Business252::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Calendar c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Brazil
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:50,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:51,1
    - Dst: Business252::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/business252.hpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: QuantLib::Business252::Business252
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Business252::Impl::Impl
    - Brazil
    linkageType: ''
    returnType: void
    signature: void Business252(const Calendar& c = Brazil())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty365.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Thirty365::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/thirty365.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::Thirty365::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.hpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty365.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Thirty365::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/thirty365.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: QuantLib::Thirty365::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.hpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Actual36525::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:46,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Actual36525::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Actual36525::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::Actual36525::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:60,1
    - Dst: Actual36525::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Actual36525::Actual36525
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - Actual36525::Impl::Impl
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: void
    signature: void Actual36525(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Actual36525::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:46,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Actual36525::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Actual36525::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::Actual36525::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:60,1
    - Dst: Actual36525::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual36525.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Actual36525::Actual36525
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual36525.hpp
    functionUses: 0
    functionsReached:
    - Actual36525::Impl::Impl
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: void
    signature: void Actual36525(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - schedule
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ActualActual::ISMA_Impl::ISMA_Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ISMA_Impl(Schedule schedule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ActualActual::ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::ActualActual::Old_ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::ActualActual::ISDA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::ActualActual::AFB_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:92,1
    - Dst: QuantLib::ActualActual::implementation
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::ActualActual::ActualActual
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ActualActual::implementation
    - Schedule
    - std::move
    linkageType: ''
    returnType: void
    signature: void ActualActual(Convention c, Schedule schedule = Schedule())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - schedule
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ActualActual::ISMA_Impl::ISMA_Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ISMA_Impl(Schedule schedule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ActualActual::ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::ActualActual::Old_ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: QuantLib::ActualActual::ISDA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::ActualActual::AFB_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:92,1
    - Dst: QuantLib::ActualActual::implementation
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QuantLib::ActualActual::ActualActual
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ActualActual::implementation
    - Schedule
    - std::move
    linkageType: ''
    returnType: void
    signature: void ActualActual(Convention c, Schedule schedule = Schedule())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - refStart
    - refEnd
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::findCouponsPerYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - std::lround
    - dayCount
    - Real
    linkageType: ''
    returnType: Integer
    signature: "Integer findCouponsPerYear(const T& impl,\n                                   Date
      refStart, Date refEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - ' start'
    - ' end'
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::yearFractionGuess
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    - Real
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionGuess(const T& impl,\n                               const
      Date& start, const Date& end)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:52,1
    - Dst: dates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:53,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:57,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:60,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:61,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:62,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:63,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:70,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:72,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:83,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:84,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:87,1
    - Dst: endDate
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:89,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:92,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:93,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:94,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:95,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:96,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' schedule'
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 101
    functionName: QuantLib::getListOfPeriodDatesIncludingQuasiPayments
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - tenor
    - QuantLib::date
    - endOfMonth
    - isRegular
    - std::vector::begin
    - QuantLib::size
    - dates
    - calendar
    - businessDayConvention
    - std::vector::insert
    - std::vector::push_back
    - endDate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> getListOfPeriodDatesIncludingQuasiPayments(\n                                                   const
      Schedule& schedule)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:116,1
    - Dst: QuantLib::findCouponsPerYear
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ' impl'
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - T
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 122
    functionName: QuantLib::yearFractionWithReferenceDates
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::findCouponsPerYear
    - dayCount
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionWithReferenceDates(const T& impl,\n                                            const
      Date& d1, const Date& d2,\n                                            const
      Date& d3, const Date& d4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - refStart
    - refEnd
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::findCouponsPerYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 1
    functionsReached:
    - std::lround
    - dayCount
    - Real
    linkageType: ''
    returnType: Integer
    signature: "Integer findCouponsPerYear(const T& impl,\n                                   Date
      refStart, Date refEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - ' start'
    - ' end'
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::yearFractionGuess
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    - Real
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionGuess(const T& impl,\n                               const
      Date& start, const Date& end)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:52,1
    - Dst: dates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:53,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:57,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:60,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:61,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:62,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:63,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:70,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:72,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:83,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:84,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:87,1
    - Dst: endDate
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:89,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:92,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:93,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:94,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:95,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:96,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' schedule'
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 101
    functionName: QuantLib::getListOfPeriodDatesIncludingQuasiPayments
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - tenor
    - QuantLib::date
    - endOfMonth
    - isRegular
    - std::vector::begin
    - QuantLib::size
    - dates
    - calendar
    - businessDayConvention
    - std::vector::insert
    - std::vector::push_back
    - endDate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> getListOfPeriodDatesIncludingQuasiPayments(\n                                                   const
      Schedule& schedule)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:116,1
    - Dst: QuantLib::findCouponsPerYear
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ' impl'
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - T
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 122
    functionName: QuantLib::yearFractionWithReferenceDates
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::findCouponsPerYear
    - dayCount
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionWithReferenceDates(const T& impl,\n                                            const
      Date& d1, const Date& d2,\n                                            const
      Date& d3, const Date& d4)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:131,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: ISMA_Impl::ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:134,1
    - Dst: Old_ISMA_Impl::Old_ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:134,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:138,1
    - Dst: ISDA_Impl::ISDA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:138,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:141,1
    - Dst: AFB_Impl::AFB_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - c
    - schedule
    argTypes:
    - ActualActual::Convention
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 145
    functionName: QuantLib::ActualActual::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 2
    functionsReached:
    - ISMA_Impl::ISMA_Impl
    - std::move
    - QL_FAIL
    - Schedule::empty
    - ISDA_Impl::ISDA_Impl
    - ext::shared_ptr<DayCounter::Impl>
    - AFB_Impl::AFB_Impl
    - Old_ISMA_Impl::Old_ISMA_Impl
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> ActualActual::implementation(ActualActual::Convention
      c, Schedule schedule)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:155,1
    - Dst: getListOfPeriodDatesIncludingQuasiPayments
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:159,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:164,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:169,1
    - Dst: yearFractionWithReferenceDates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:174,1
    - Dst: std::max
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:175,1
    - Dst: std::min
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:176,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 182
    functionName: "ActualActual::ISMA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::vector::begin
    - std::vector::end
    - getListOfPeriodDatesIncludingQuasiPayments
    - std::min
    - std::max
    - std::max_element
    - yearFractionWithReferenceDates
    - std::vector::size
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::ISMA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:193,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:197,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:200,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:208,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:208,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:218,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:229,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:229,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:230,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:243,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:245,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:253,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:259,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:277,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 280
    functionName: "ActualActual::Old_ISMA_Impl::yearFraction(const Date& d1,\n                                                   const
      Date& d2,\n                                                   const Date& d3,\n
      \                                                  const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - Real
    - daysBetween
    - Date
    - std::lround
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::Old_ISMA_Impl::yearFraction(const Date& d1,\n                                                   const
      Date& d2,\n                                                   const Date& d3,\n
      \                                                  const Date& d4) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:293,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:293,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:294,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:295,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:298,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:298,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:299,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 283
    functionDepth: 2
    functionLinenumber: 283
    functionLinenumberEnd: 301
    functionName: "ActualActual::ISDA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date&,\n                                               const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::Date::isLeap
    - daysBetween
    - Date
    - year
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::ISDA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date&,\n                                               const
      Date&) const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:318,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:318,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:319,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:319,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:330,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:330,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:331,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:331,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:334,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:334,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:335,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:335,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:340,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 341
    functionName: "ActualActual::AFB_Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - dayOfMonth
    - month
    - Date::year
    - QuantLib::Date::isLeap
    - daysBetween
    - Date
    - year
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::AFB_Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - refStart
    - refEnd
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::findCouponsPerYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 2
    functionsReached:
    - std::lround
    - dayCount
    - Real
    linkageType: ''
    returnType: Integer
    signature: "Integer findCouponsPerYear(const T& impl,\n                                   Date
      refStart, Date refEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - ' start'
    - ' end'
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::yearFractionGuess
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    - Real
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionGuess(const T& impl,\n                               const
      Date& start, const Date& end)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:52,1
    - Dst: dates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:53,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:57,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:60,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:61,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:62,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:63,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:70,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:72,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:83,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:84,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:87,1
    - Dst: endDate
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:89,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:92,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:93,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:94,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:95,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:96,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' schedule'
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 101
    functionName: QuantLib::getListOfPeriodDatesIncludingQuasiPayments
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - tenor
    - QuantLib::date
    - endOfMonth
    - isRegular
    - std::vector::begin
    - QuantLib::size
    - dates
    - calendar
    - businessDayConvention
    - std::vector::insert
    - std::vector::push_back
    - endDate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> getListOfPeriodDatesIncludingQuasiPayments(\n                                                   const
      Schedule& schedule)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:116,1
    - Dst: QuantLib::findCouponsPerYear
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ' impl'
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - T
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 122
    functionName: QuantLib::yearFractionWithReferenceDates
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::findCouponsPerYear
    - dayCount
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionWithReferenceDates(const T& impl,\n                                            const
      Date& d1, const Date& d2,\n                                            const
      Date& d3, const Date& d4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:34,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - refStart
    - refEnd
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::findCouponsPerYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 3
    functionsReached:
    - std::lround
    - dayCount
    - Real
    linkageType: ''
    returnType: Integer
    signature: "Integer findCouponsPerYear(const T& impl,\n                                   Date
      refStart, Date refEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' impl'
    - ' start'
    - ' end'
    argTypes:
    - T
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: QuantLib::yearFractionGuess
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    - Real
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionGuess(const T& impl,\n                               const
      Date& start, const Date& end)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:52,1
    - Dst: dates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:53,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:55,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:57,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:60,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:61,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:62,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:63,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:70,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:71,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:72,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:73,1
    - Dst: std::vector::insert
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:74,1
    - Dst: hasIsRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: isRegular
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:79,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:82,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:83,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:84,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:85,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:87,1
    - Dst: endDate
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:89,1
    - Dst: calendar
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:92,1
    - Dst: tenor
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:93,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:94,1
    - Dst: endOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:95,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:96,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ' schedule'
    argTypes:
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 101
    functionName: QuantLib::getListOfPeriodDatesIncludingQuasiPayments
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - hasIsRegular
    - tenor
    - QuantLib::date
    - endOfMonth
    - isRegular
    - std::vector::begin
    - QuantLib::size
    - dates
    - calendar
    - businessDayConvention
    - std::vector::insert
    - std::vector::push_back
    - endDate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> getListOfPeriodDatesIncludingQuasiPayments(\n                                                   const
      Schedule& schedule)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:111,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:116,1
    - Dst: QuantLib::findCouponsPerYear
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ' impl'
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - T
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 122
    functionName: QuantLib::yearFractionWithReferenceDates
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::findCouponsPerYear
    - dayCount
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time yearFractionWithReferenceDates(const T& impl,\n                                            const
      Date& d1, const Date& d2,\n                                            const
      Date& d3, const Date& d4)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::empty
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:131,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: std::move
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: ISMA_Impl::ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:132,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:134,1
    - Dst: Old_ISMA_Impl::Old_ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:134,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:138,1
    - Dst: ISDA_Impl::ISDA_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:138,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:141,1
    - Dst: AFB_Impl::AFB_Impl
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:141,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - c
    - schedule
    argTypes:
    - ActualActual::Convention
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 145
    functionName: QuantLib::ActualActual::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 2
    functionsReached:
    - ISMA_Impl::ISMA_Impl
    - std::move
    - QL_FAIL
    - Schedule::empty
    - ISDA_Impl::ISDA_Impl
    - ext::shared_ptr<DayCounter::Impl>
    - AFB_Impl::AFB_Impl
    - Old_ISMA_Impl::Old_ISMA_Impl
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> ActualActual::implementation(ActualActual::Convention
      c, Schedule schedule)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:155,1
    - Dst: getListOfPeriodDatesIncludingQuasiPayments
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:159,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:161,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:164,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:169,1
    - Dst: yearFractionWithReferenceDates
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:174,1
    - Dst: std::max
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:175,1
    - Dst: std::min
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:176,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 182
    functionName: "ActualActual::ISMA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - std::vector::begin
    - std::vector::end
    - getListOfPeriodDatesIncludingQuasiPayments
    - std::min
    - std::max
    - std::max_element
    - yearFractionWithReferenceDates
    - std::vector::size
    - std::min_element
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::ISMA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date& d3,\n
      \                                              const Date& d4) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:193,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:197,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:198,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:200,1
    - Dst: std::lround
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:208,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:208,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:218,1
    - Dst: Real
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:229,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:229,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:230,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:243,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:245,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:253,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:259,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:277,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - ' d1'
    - ' d2'
    - ' d3'
    - ' d4'
    argTypes:
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 280
    functionName: "ActualActual::Old_ISMA_Impl::yearFraction(const Date& d1,\n                                                   const
      Date& d2,\n                                                   const Date& d3,\n
      \                                                  const Date& d4) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - Real
    - daysBetween
    - Date
    - std::lround
    - QL_REQUIRE
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::Old_ISMA_Impl::yearFraction(const Date& d1,\n                                                   const
      Date& d2,\n                                                   const Date& d3,\n
      \                                                  const Date& d4) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:291,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:293,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:293,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:294,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:295,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:298,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:298,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:299,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 283
    functionDepth: 2
    functionLinenumber: 283
    functionLinenumberEnd: 301
    functionName: "ActualActual::ISDA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date&,\n                                               const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - QuantLib::Date::isLeap
    - daysBetween
    - Date
    - year
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::ISDA_Impl::yearFraction(const Date& d1,\n                                               const
      Date& d2,\n                                               const Date&,\n                                               const
      Date&) const"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:312,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:318,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:318,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:319,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:319,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:330,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:330,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:331,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:331,1
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:334,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:334,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:335,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:335,1
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actualactual.cpp:340,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 341
    functionName: "ActualActual::AFB_Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/actualactual.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - dayOfMonth
    - month
    - Date::year
    - QuantLib::Date::isLeap
    - daysBetween
    - Date
    - year
    linkageType: ''
    returnType: Time
    signature: "Time ActualActual::AFB_Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::sameYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    linkageType: ''
    returnType: bool
    signature: bool sameYear(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::sameMonth
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    - month
    linkageType: ''
    returnType: bool
    signature: bool sameMonth(const Date& d1, const Date& d2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:47,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' cache'
    - ' calendar'
    - month
    - year
    argTypes:
    - Cache
    - Calendar
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - businessDaysBetween
    - QuantLib::Date
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(Cache& cache,\n                                       const
      Calendar& calendar,\n                                       Month month, Year
      year)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:62,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' outerCache'
    - ' cache'
    - ' calendar'
    - year
    argTypes:
    - OuterCache
    - Cache
    - Calendar
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::businessDays
    - Month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(OuterCache& outerCache,\n                                       Cache&
      cache,\n                                       const Calendar& calendar,\n                                       Year
      year)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::sameYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    linkageType: ''
    returnType: bool
    signature: bool sameYear(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::sameMonth
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    - month
    linkageType: ''
    returnType: bool
    signature: bool sameMonth(const Date& d1, const Date& d2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:47,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' cache'
    - ' calendar'
    - month
    - year
    argTypes:
    - Cache
    - Calendar
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 1
    functionsReached:
    - businessDaysBetween
    - QuantLib::Date
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(Cache& cache,\n                                       const
      Calendar& calendar,\n                                       Month month, Year
      year)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:62,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' outerCache'
    - ' cache'
    - ' calendar'
    - year
    argTypes:
    - OuterCache
    - Cache
    - Calendar
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::businessDays
    - Month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(OuterCache& outerCache,\n                                       Cache&
      cache,\n                                       const Calendar& calendar,\n                                       Year
      year)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:74,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: Business252::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string Business252::Impl::name() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sameMonth
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:80,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:85,1
    - Dst: sameYear
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:86,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:92,1
    - Dst: sameMonth
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:95,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:96,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:97,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:97,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:101,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:104,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:105,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:111,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:113,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:113,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:114,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:115,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:118,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:118,1
    - Dst: sameYear
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:119,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:120,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:121,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:126,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:126,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:127,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:128,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:128,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 135
    functionName: "Business252::Impl::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - sameYear
    - Month
    - name
    - businessDaysBetween
    - Integer
    - month
    - Date::year
    - sameMonth
    - Date
    - businessDays
    - Date::month
    - year
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Business252::Impl::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 142
    functionName: "Business252::Impl::yearFraction(const Date& d1,\n                                         const
      Date& d2,\n                                         const Date&,\n                                         const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time Business252::Impl::yearFraction(const Date& d1,\n                                         const
      Date& d2,\n                                         const Date&,\n                                         const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::sameYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    linkageType: ''
    returnType: bool
    signature: bool sameYear(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::sameMonth
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    - month
    linkageType: ''
    returnType: bool
    signature: bool sameMonth(const Date& d1, const Date& d2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:47,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' cache'
    - ' calendar'
    - month
    - year
    argTypes:
    - Cache
    - Calendar
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 2
    functionsReached:
    - businessDaysBetween
    - QuantLib::Date
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(Cache& cache,\n                                       const
      Calendar& calendar,\n                                       Month month, Year
      year)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:62,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' outerCache'
    - ' cache'
    - ' calendar'
    - year
    argTypes:
    - OuterCache
    - Cache
    - Calendar
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::businessDays
    - Month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(OuterCache& outerCache,\n                                       Cache&
      cache,\n                                       const Calendar& calendar,\n                                       Year
      year)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::sameYear
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    linkageType: ''
    returnType: bool
    signature: bool sameYear(const Date& d1, const Date& d2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::sameMonth
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - year
    - month
    linkageType: ''
    returnType: bool
    signature: bool sameMonth(const Date& d1, const Date& d2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:47,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ' cache'
    - ' calendar'
    - month
    - year
    argTypes:
    - Cache
    - Calendar
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 3
    functionsReached:
    - businessDaysBetween
    - QuantLib::Date
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(Cache& cache,\n                                       const
      Calendar& calendar,\n                                       Month month, Year
      year)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:62,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ' outerCache'
    - ' cache'
    - ' calendar'
    - year
    argTypes:
    - OuterCache
    - Cache
    - Calendar
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::businessDays
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::businessDays
    - Month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type businessDays(OuterCache& outerCache,\n                                       Cache&
      cache,\n                                       const Calendar& calendar,\n                                       Year
      year)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:74,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: Business252::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - std::ostringstream::str
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string Business252::Impl::name() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sameMonth
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:80,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:85,1
    - Dst: sameYear
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:86,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:87,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:91,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:92,1
    - Dst: sameMonth
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:95,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:96,1
    - Dst: Date::month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:97,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:97,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:101,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:104,1
    - Dst: name
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:105,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:110,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:111,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:113,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:113,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:114,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:115,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:118,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:118,1
    - Dst: sameYear
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:119,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:120,1
    - Dst: Date::year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:121,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:126,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:126,1
    - Dst: businessDays
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:127,1
    - Dst: Month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:128,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:128,1
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:131,1
    - Dst: businessDaysBetween
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 135
    functionName: "Business252::Impl::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - sameYear
    - Month
    - name
    - businessDaysBetween
    - Integer
    - month
    - Date::year
    - sameMonth
    - Date
    - businessDays
    - Date::month
    - year
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Business252::Impl::dayCount(const Date& d1,\n                                                  const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/business252.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 142
    functionName: "Business252::Impl::yearFraction(const Date& d1,\n                                         const
      Date& d2,\n                                         const Date&,\n                                         const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/business252.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time Business252::Impl::yearFraction(const Date& d1,\n                                         const
      Date& d2,\n                                         const Date&,\n                                         const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SimpleDayCounter::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp:57,1
    - Dst: SimpleDayCounter::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::SimpleDayCounter::SimpleDayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp
    functionUses: 0
    functionsReached:
    - SimpleDayCounter::Impl::Impl
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: void
    signature: void SimpleDayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::SimpleDayCounter::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp:57,1
    - Dst: SimpleDayCounter::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::SimpleDayCounter::SimpleDayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.hpp
    functionUses: 0
    functionsReached:
    - SimpleDayCounter::Impl::Impl
    - ext::shared_ptr<DayCounter::Impl>
    linkageType: ''
    returnType: void
    signature: void SimpleDayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::Thirty360::Thirty360_Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time yearFraction(const Date& d1, const Date& d2,\n                              const
      Date&, const Date&) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::Thirty360::US_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::Thirty360::ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::Thirty360::EU_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::Thirty360::IT_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: QuantLib::Thirty360::ISDA_Impl::ISDA_Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ISDA_Impl(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::Thirty360::ISDA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::Thirty360::NASD_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:134,1
    - Dst: QuantLib::Thirty360::implementation
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: QuantLib::Thirty360::Thirty360
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::Thirty360::implementation
    linkageType: ''
    returnType: void
    signature: void Thirty360(Convention c, const Date& terminationDate = Date())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::Thirty360::Thirty360_Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Time
    signature: "Time yearFraction(const Date& d1, const Date& d2,\n                              const
      Date&, const Date&) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: QuantLib::Thirty360::US_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::Thirty360::ISMA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: QuantLib::Thirty360::EU_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::Thirty360::IT_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: QuantLib::Thirty360::ISDA_Impl::ISDA_Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ISDA_Impl(const Date& terminationDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::Thirty360::ISDA_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::Thirty360::NASD_Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:134,1
    - Dst: QuantLib::Thirty360::implementation
      Src: /src/quantlib/ql/time/daycounters/thirty360.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - c
    argTypes:
    - Convention
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: QuantLib::Thirty360::Thirty360
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::Thirty360::implementation
    linkageType: ''
    returnType: void
    signature: void Thirty360(Convention c, const Date& terminationDate = Date())
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: round
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:32,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:34,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:34,1
    - Dst: round
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:35,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:36,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:38,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:41,1
    - Dst: copysign
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:41,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:48,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:50,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:54,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:55,1
    - Dst: std::abs
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:56,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:56,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:57,1
    - Dst: std::abs
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:58,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ' dayCounter'
    - ' referenceDate'
    - t
    argTypes:
    - DayCounter
    - Date
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 62
    functionName: QuantLib::yearFractionToDate
    functionSourceFile: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - boost::numeric_cast<Integer>
    - QuantLib::close_enough
    - round
    - Period
    - copysign
    - std::abs
    linkageType: ''
    returnType: Date
    signature: "Date yearFractionToDate(\n        const DayCounter& dayCounter, const
      Date& referenceDate, Time t)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: round
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:31,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:32,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:34,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:34,1
    - Dst: round
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:35,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:36,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:38,1
    - Dst: boost::numeric_cast<Integer>
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:41,1
    - Dst: copysign
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:41,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:48,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:50,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:54,1
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:55,1
    - Dst: std::abs
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:56,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:56,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:57,1
    - Dst: std::abs
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:58,1
    - Dst: Period
      Src: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ' dayCounter'
    - ' referenceDate'
    - t
    argTypes:
    - DayCounter
    - Date
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 62
    functionName: QuantLib::yearFractionToDate
    functionSourceFile: /src/quantlib/ql/time/daycounters/yearfractiontodate.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - boost::numeric_cast<Integer>
    - QuantLib::close_enough
    - round
    - Period
    - copysign
    - std::abs
    linkageType: ''
    returnType: Date
    signature: "Date yearFractionToDate(\n        const DayCounter& dayCounter, const
      Date& referenceDate, Time t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::isLastOfFebruary
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::isLeap
    linkageType: ''
    returnType: bool
    signature: bool isLastOfFebruary(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::isLastOfFebruary
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::isLeap
    linkageType: ''
    returnType: bool
    signature: bool isLastOfFebruary(Day d, Month m, Year y)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:38,1
    - Dst: US_Impl::US_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:38,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:41,1
    - Dst: EU_Impl::EU_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:41,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:43,1
    - Dst: IT_Impl::IT_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:43,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:46,1
    - Dst: ISMA_Impl::ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:46,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:49,1
    - Dst: ISDA_Impl::ISDA_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:49,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:51,1
    - Dst: NASD_Impl::NASD_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - c
    - ' terminationDate'
    argTypes:
    - Thirty360::Convention
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 55
    functionName: QuantLib::Thirty360::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 2
    functionsReached:
    - EU_Impl::EU_Impl
    - ISMA_Impl::ISMA_Impl
    - QL_FAIL
    - IT_Impl::IT_Impl
    - NASD_Impl::NASD_Impl
    - ISDA_Impl::ISDA_Impl
    - ext::shared_ptr<DayCounter::Impl>
    - US_Impl::US_Impl
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> Thirty360::implementation(Thirty360::Convention
      c, const Date& terminationDate)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:59,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:59,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:60,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:60,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:61,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:61,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:65,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:66,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: "Thirty360::US_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - isLastOfFebruary
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::US_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:77,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:77,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:78,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:79,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 85
    functionName: "Thirty360::ISMA_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::ISMA_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:89,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:89,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:90,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:90,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:91,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: "Thirty360::EU_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::EU_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:101,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:101,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:102,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:102,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:103,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 112
    functionName: "Thirty360::IT_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::IT_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:116,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:116,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:117,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:117,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:118,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:118,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:123,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:125,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: "Thirty360::ISDA_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - isLastOfFebruary
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::ISDA_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:132,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:132,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:133,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:133,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:134,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:134,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 141
    functionName: "Thirty360::NASD_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::NASD_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::isLastOfFebruary
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::isLeap
    linkageType: ''
    returnType: bool
    signature: bool isLastOfFebruary(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::isLeap
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: QuantLib::isLastOfFebruary
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::isLeap
    linkageType: ''
    returnType: bool
    signature: bool isLastOfFebruary(Day d, Month m, Year y)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:38,1
    - Dst: US_Impl::US_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:38,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:41,1
    - Dst: EU_Impl::EU_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:41,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:43,1
    - Dst: IT_Impl::IT_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:43,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:46,1
    - Dst: ISMA_Impl::ISMA_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:46,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:49,1
    - Dst: ISDA_Impl::ISDA_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:49,1
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:51,1
    - Dst: NASD_Impl::NASD_Impl
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:51,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - c
    - ' terminationDate'
    argTypes:
    - Thirty360::Convention
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 55
    functionName: QuantLib::Thirty360::implementation
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 2
    functionsReached:
    - EU_Impl::EU_Impl
    - ISMA_Impl::ISMA_Impl
    - QL_FAIL
    - IT_Impl::IT_Impl
    - NASD_Impl::NASD_Impl
    - ISDA_Impl::ISDA_Impl
    - ext::shared_ptr<DayCounter::Impl>
    - US_Impl::US_Impl
    linkageType: ''
    returnType: ext::shared_ptr<DayCounter::Impl>
    signature: ext::shared_ptr<DayCounter::Impl> Thirty360::implementation(Thirty360::Convention
      c, const Date& terminationDate)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:59,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:59,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:60,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:60,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:61,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:61,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:65,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:66,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: "Thirty360::US_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - isLastOfFebruary
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::US_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:77,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:77,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:78,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:78,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:79,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 85
    functionName: "Thirty360::ISMA_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::ISMA_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:89,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:89,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:90,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:90,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:91,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: "Thirty360::EU_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::EU_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:101,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:101,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:102,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:102,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:103,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 112
    functionName: "Thirty360::IT_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::IT_Impl::dayCount(const Date& d1,\n                                                   const
      Date& d2) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:116,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:116,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:117,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:117,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:118,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:118,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:123,1
    - Dst: isLastOfFebruary
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:125,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: "Thirty360::ISDA_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - isLastOfFebruary
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::ISDA_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:132,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:132,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:133,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:133,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:134,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty360.cpp:134,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 141
    functionName: "Thirty360::NASD_Impl::dayCount(const Date& d1,\n                                                     const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty360.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty360::NASD_Impl::dayCount(const Date& d1,\n
      \                                                    const Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Actual366::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:46,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Actual366::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Actual366::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::Actual366::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:60,1
    - Dst: Actual366::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Actual366::Actual366
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual366::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual366(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: QuantLib::Actual366::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:46,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::Actual366::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::Actual366::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::Actual366::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:60,1
    - Dst: Actual366::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual366.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::Actual366::Actual366
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual366.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual366::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual366(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/one.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::OneDayCounter::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::OneDayCounter::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Time
      Src: /src/quantlib/ql/time/daycounters/one.hpp:44,1
    - Dst: QuantLib::OneDayCounter::Impl::dayCount
      Src: /src/quantlib/ql/time/daycounters/one.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::OneDayCounter::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneDayCounter::Impl::dayCount
    - Time
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/one.hpp:49,1
    - Dst: OneDayCounter::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/one.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::OneDayCounter::OneDayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - OneDayCounter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void OneDayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/one.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::OneDayCounter::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::OneDayCounter::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Time
      Src: /src/quantlib/ql/time/daycounters/one.hpp:44,1
    - Dst: QuantLib::OneDayCounter::Impl::dayCount
      Src: /src/quantlib/ql/time/daycounters/one.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::OneDayCounter::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneDayCounter::Impl::dayCount
    - Time
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/one.hpp:49,1
    - Dst: OneDayCounter::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/one.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::OneDayCounter::OneDayCounter
    functionSourceFile: /src/quantlib/ql/time/daycounters/one.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - OneDayCounter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void OneDayCounter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::Actual360::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:47,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Actual360::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::Actual360::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Actual360::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:61,1
    - Dst: Actual360::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::Actual360::Actual360
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual360::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual360(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - includeLastDay
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::Actual360::Impl::Impl
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Impl(const bool includeLastDay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:47,1
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::Actual360::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: QuantLib::Actual360::Impl::dayCount
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date::serial_type
    signature: Date::serial_type dayCount(const Date& d1, const Date& d2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Actual360::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:61,1
    - Dst: Actual360::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual360.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::Actual360::Actual360
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual360.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual360::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual360(const bool includeLastDay = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: "SimpleDayCounter::Impl::dayCount(const Date& d1,\n                                                       const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type SimpleDayCounter::Impl::dayCount(const Date& d1,\n
      \                                                      const Date& d2) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:36,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:37,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:41,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:43,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:45,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: "SimpleDayCounter::Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - dayOfMonth
    - Integer
    - month
    - QuantLib::Date::isEndOfMonth
    - year
    linkageType: ''
    returnType: Time
    signature: "Time SimpleDayCounter::Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCount
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: "SimpleDayCounter::Impl::dayCount(const Date& d1,\n                                                       const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp
    functionUses: 0
    functionsReached:
    - dayCount
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type SimpleDayCounter::Impl::dayCount(const Date& d1,\n
      \                                                      const Date& d2) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:36,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:37,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:41,1
    - Dst: QuantLib::Date::isEndOfMonth
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:43,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:45,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:45,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: Integer
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:46,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 51
    functionName: "SimpleDayCounter::Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/simpledaycounter.cpp
    functionUses: 0
    functionsReached:
    - yearFraction
    - dayOfMonth
    - Integer
    - month
    - QuantLib::Date::isEndOfMonth
    - year
    linkageType: ''
    returnType: Time
    signature: "Time SimpleDayCounter::Impl::yearFraction(const Date& d1,\n                                              const
      Date& d2,\n                                              const Date&,\n                                              const
      Date&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:26,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:26,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:27,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:27,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:28,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: "Thirty365::Impl::dayCount(const Date& d1,\n                                                const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty365::Impl::dayCount(const Date& d1,\n                                                const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:34,1
    - Dst: Thirty365::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::Thirty365::Thirty365
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Thirty365::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Thirty365::Thirty365()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:26,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:26,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:27,1
    - Dst: month
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:27,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:28,1
    - Dst: year
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: "Thirty365::Impl::dayCount(const Date& d1,\n                                                const
      Date& d2) const"
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    linkageType: ''
    returnType: Date::serial_type
    signature: "Date::serial_type Thirty365::Impl::dayCount(const Date& d1,\n                                                const
      Date& d2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:34,1
    - Dst: Thirty365::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/thirty365.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::Thirty365::Thirty365
    functionSourceFile: /src/quantlib/ql/time/daycounters/thirty365.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Thirty365::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Thirty365::Thirty365()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Actual364::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::Actual364::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:45,1
    - Dst: Actual364::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::Actual364::Actual364
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual364::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual364()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::Actual364::Impl::name
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - std::string
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: daysBetween
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::Actual364::Impl::yearFraction
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - daysBetween
    linkageType: ''
    returnType: Time
    signature: Time yearFraction(const Date& d1, const Date& d2, const Date&, const
      Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<DayCounter::Impl>
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:45,1
    - Dst: Actual364::Impl::Impl
      Src: /src/quantlib/ql/time/daycounters/actual364.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QuantLib::Actual364::Actual364
    functionSourceFile: /src/quantlib/ql/time/daycounters/actual364.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DayCounter::Impl>
    - Actual364::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Actual364()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Switzerland::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Switzerland::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::France::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/france.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::France::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/france.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::France::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/france.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::France::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/france.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Japan::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Japan::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Iceland::IcexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Iceland::IcexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::HongKong::HkexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::HongKong::HkexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::UnitedKingdom::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::UnitedKingdom::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::UnitedKingdom::MetalsImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::UnitedKingdom::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::UnitedKingdom::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::UnitedKingdom::MetalsImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Indonesia::BejImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::Indonesia::BejImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Iceland::IcexImpl::IcexImpl
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Iceland::Iceland
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.cpp
    functionUses: 0
    functionsReached:
    - Iceland::IcexImpl::IcexImpl
    linkageType: ''
    returnType: void
    signature: void Iceland::Iceland(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:36,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 63
    functionName: Iceland::IcexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Iceland::IcexImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Iceland::IcexImpl::IcexImpl
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Iceland::Iceland
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.cpp
    functionUses: 0
    functionsReached:
    - Iceland::IcexImpl::IcexImpl
    linkageType: ''
    returnType: void
    signature: void Iceland::Iceland(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/iceland.cpp:36,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 63
    functionName: Iceland::IcexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/iceland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Iceland::IcexImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::isAboriginalPeopleDay
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAboriginalPeopleDay(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::isAboriginalPeopleDay
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAboriginalPeopleDay(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Chile::SseImpl::SseImpl
      Src: /src/quantlib/ql/time/calendars/chile.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Chile::Chile
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached:
    - Chile::SseImpl::SseImpl
    linkageType: ''
    returnType: void
    signature: void Chile::Chile(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/chile.cpp:60,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/chile.cpp:61,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/chile.cpp:62,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/chile.cpp:63,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/chile.cpp:64,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/chile.cpp:65,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/chile.cpp:67,1
    - Dst: isAboriginalPeopleDay
      Src: /src/quantlib/ql/time/calendars/chile.cpp:84,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 118
    functionName: Chile::SseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isAboriginalPeopleDay
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Chile::SseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::isAboriginalPeopleDay
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAboriginalPeopleDay(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 3
    argNames:
    - d
    - m
    - y
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 49
    functionName: QuantLib::isAboriginalPeopleDay
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAboriginalPeopleDay(Day d, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Chile::SseImpl::SseImpl
      Src: /src/quantlib/ql/time/calendars/chile.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: QuantLib::Chile::Chile
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached:
    - Chile::SseImpl::SseImpl
    linkageType: ''
    returnType: void
    signature: void Chile::Chile(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/chile.cpp:60,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/chile.cpp:61,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/chile.cpp:62,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/chile.cpp:63,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/chile.cpp:64,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/chile.cpp:65,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/chile.cpp:67,1
    - Dst: isAboriginalPeopleDay
      Src: /src/quantlib/ql/time/calendars/chile.cpp:84,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 118
    functionName: Chile::SseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isAboriginalPeopleDay
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Chile::SseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SaudiArabia::TadawulImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::SaudiArabia::TadawulImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::Italy::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::Italy::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::Italy::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::Italy::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::SouthKorea::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::SouthKorea::KrxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::SouthKorea::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::SouthKorea::KrxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: India::NseImpl::NseImpl
      Src: /src/quantlib/ql/time/calendars/india.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::India::India
    functionSourceFile: /src/quantlib/ql/time/calendars/india.cpp
    functionUses: 0
    functionsReached:
    - India::NseImpl::NseImpl
    linkageType: ''
    returnType: void
    signature: void India::India(Market)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/india.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/india.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/india.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/india.cpp:35,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/india.cpp:36,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/india.cpp:37,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/india.cpp:39,1
    CyclomaticComplexity: 379
    EdgeCount: 379
    ICount: 72
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 489
    functionName: India::NseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/india.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool India::NseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: India::NseImpl::NseImpl
      Src: /src/quantlib/ql/time/calendars/india.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::India::India
    functionSourceFile: /src/quantlib/ql/time/calendars/india.cpp
    functionUses: 0
    functionsReached:
    - India::NseImpl::NseImpl
    linkageType: ''
    returnType: void
    signature: void India::India(Market)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/india.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/india.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/india.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/india.cpp:35,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/india.cpp:36,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/india.cpp:37,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/india.cpp:39,1
    CyclomaticComplexity: 379
    EdgeCount: 379
    ICount: 72
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 489
    functionName: India::NseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/india.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool India::NseImpl::isBusinessDay(const Date& date) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Indonesia::BejImpl::BejImpl
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 38
    functionName: QuantLib::Indonesia::Indonesia
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Indonesia::BejImpl::BejImpl
    linkageType: ''
    returnType: void
    signature: void Indonesia::Indonesia(Market market)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:41,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:43,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:44,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:45,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:46,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:48,1
    CyclomaticComplexity: 212
    EdgeCount: 212
    ICount: 44
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 280
    functionName: Indonesia::BejImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Indonesia::BejImpl::isBusinessDay(const Date& date) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Indonesia::BejImpl::BejImpl
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 38
    functionName: QuantLib::Indonesia::Indonesia
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Indonesia::BejImpl::BejImpl
    linkageType: ''
    returnType: void
    signature: void Indonesia::Indonesia(Market market)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:41,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:43,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:44,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:45,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:46,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/indonesia.cpp:48,1
    CyclomaticComplexity: 212
    EdgeCount: 212
    ICount: 44
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 280
    functionName: Indonesia::BejImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/indonesia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Indonesia::BejImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Singapore::SgxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Singapore::SgxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: France::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/france.cpp:29,1
    - Dst: France::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/france.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/france.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - France::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::France::France
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - France::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - France::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void France::France(France::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/france.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/france.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/france.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/france.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/france.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/france.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/france.cpp:51,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 77
    functionName: France::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool France::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/france.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/france.cpp:82,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/france.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/france.cpp:83,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/france.cpp:84,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/france.cpp:85,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/france.cpp:86,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 106
    functionName: France::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool France::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: France::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/france.cpp:29,1
    - Dst: France::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/france.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/france.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - France::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::France::France
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - France::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - France::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void France::France(France::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/france.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/france.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/france.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/france.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/france.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/france.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/france.cpp:51,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 77
    functionName: France::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool France::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/france.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/france.cpp:82,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/france.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/france.cpp:83,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/france.cpp:84,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/france.cpp:85,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/france.cpp:86,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 106
    functionName: France::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/france.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool France::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::Russia::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::Russia::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::Russia::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: QuantLib::Russia::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::China::SseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<China::SseImpl>
      Src: /src/quantlib/ql/time/calendars/china.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: QuantLib::China::IbImpl::IbImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<China::SseImpl>
    linkageType: ''
    returnType: void
    signature: void IbImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::China::IbImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::China::SseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<China::SseImpl>
      Src: /src/quantlib/ql/time/calendars/china.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: QuantLib::China::IbImpl::IbImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<China::SseImpl>
    linkageType: ''
    returnType: void
    signature: void IbImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::China::IbImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/china.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Ukraine::UseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Ukraine::UseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SouthKorea::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:34,1
    - Dst: SouthKorea::KrxImpl::KrxImpl
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:36,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 47
    functionName: QuantLib::SouthKorea::SouthKorea
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - SouthKorea::SettlementImpl::SettlementImpl
    - SouthKorea::KrxImpl::KrxImpl
    linkageType: ''
    returnType: void
    signature: void SouthKorea::SouthKorea(Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: SouthKorea::SettlementImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::SettlementImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:54,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:55,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:56,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:57,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:59,1
    CyclomaticComplexity: 704
    EdgeCount: 704
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 271
    functionName: SouthKorea::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:275,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:278,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:279,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:280,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:281,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 8
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 295
    functionName: SouthKorea::KrxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - year
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::KrxImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SouthKorea::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:34,1
    - Dst: SouthKorea::KrxImpl::KrxImpl
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:36,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 47
    functionName: QuantLib::SouthKorea::SouthKorea
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - SouthKorea::SettlementImpl::SettlementImpl
    - SouthKorea::KrxImpl::KrxImpl
    linkageType: ''
    returnType: void
    signature: void SouthKorea::SouthKorea(Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: SouthKorea::SettlementImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::SettlementImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:54,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:55,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:56,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:57,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:59,1
    CyclomaticComplexity: 704
    EdgeCount: 704
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 271
    functionName: SouthKorea::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:275,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:278,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:279,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:280,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southkorea.cpp:281,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 8
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 295
    functionName: SouthKorea::KrxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southkorea.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - year
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool SouthKorea::KrxImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::WeekendsOnly::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::WeekendsOnly::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Poland::SettlementImpl>
      Src: /src/quantlib/ql/time/calendars/poland.cpp:27,1
    - Dst: ext::make_shared<Poland::WseImpl>
      Src: /src/quantlib/ql/time/calendars/poland.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/poland.cpp:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Poland::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: QuantLib::Poland::Poland
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Poland::SettlementImpl>
    - ext::make_shared<Poland::WseImpl>
    linkageType: ''
    returnType: void
    signature: void Poland::Poland(Poland::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/poland.cpp:42,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/poland.cpp:43,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/poland.cpp:43,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/poland.cpp:44,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/poland.cpp:45,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/poland.cpp:46,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/poland.cpp:47,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 72
    functionName: Poland::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Poland::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/poland.cpp:78,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/poland.cpp:79,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/poland.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: Poland::WseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Poland::WseImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Poland::SettlementImpl>
      Src: /src/quantlib/ql/time/calendars/poland.cpp:27,1
    - Dst: ext::make_shared<Poland::WseImpl>
      Src: /src/quantlib/ql/time/calendars/poland.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/poland.cpp:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Poland::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: QuantLib::Poland::Poland
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Poland::SettlementImpl>
    - ext::make_shared<Poland::WseImpl>
    linkageType: ''
    returnType: void
    signature: void Poland::Poland(Poland::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/poland.cpp:42,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/poland.cpp:43,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/poland.cpp:43,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/poland.cpp:44,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/poland.cpp:45,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/poland.cpp:46,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/poland.cpp:47,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 72
    functionName: Poland::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Poland::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/poland.cpp:78,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/poland.cpp:79,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/poland.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: Poland::WseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Poland::WseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 83
    functionName: QuantLib::isPurim
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPurim(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 140
    functionName: QuantLib::isPassover1st
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPassover1st(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 197
    functionName: QuantLib::isIndependenceDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isIndependenceDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isIndependenceDay
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 258
    functionName: QuantLib::isShavuot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isShavuot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 315
    functionName: QuantLib::isFastDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isFastDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 372
    functionName: QuantLib::isNewYearsDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isNewYearsDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: QuantLib::isYomKippur
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isNewYearsDay
    linkageType: ''
    returnType: bool
    signature: bool isYomKippur(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::isSukkot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isYomKippur
    linkageType: ''
    returnType: bool
    signature: bool isSukkot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionName: QuantLib::isSimchatTorah
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isSukkot
    linkageType: ''
    returnType: bool
    signature: bool isSimchatTorah(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 83
    functionName: QuantLib::isPurim
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPurim(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 140
    functionName: QuantLib::isPassover1st
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPassover1st(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 197
    functionName: QuantLib::isIndependenceDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 1
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isIndependenceDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isIndependenceDay
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 258
    functionName: QuantLib::isShavuot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isShavuot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 315
    functionName: QuantLib::isFastDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isFastDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 372
    functionName: QuantLib::isNewYearsDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 1
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isNewYearsDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: QuantLib::isYomKippur
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::isNewYearsDay
    linkageType: ''
    returnType: bool
    signature: bool isYomKippur(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::isSukkot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::isYomKippur
    linkageType: ''
    returnType: bool
    signature: bool isSukkot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionName: QuantLib::isSimchatTorah
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isSukkot
    linkageType: ''
    returnType: bool
    signature: bool isSimchatTorah(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 391
    functionName: QuantLib::Israel::TelAvivImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 398
    functionName: QuantLib::Israel::ShirImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Israel::TelAvivImpl>
      Src: /src/quantlib/ql/time/calendars/israel.cpp:404,1
    - Dst: ext::make_shared<Israel::ShirImpl>
      Src: /src/quantlib/ql/time/calendars/israel.cpp:405,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/israel.cpp:415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - market
    argTypes:
    - Israel::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 417
    functionName: QuantLib::Israel::Israel
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Israel::TelAvivImpl>
    - ext::make_shared<Israel::ShirImpl>
    linkageType: ''
    returnType: void
    signature: void Israel::Israel(Israel::Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: Israel::TelAvivImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Israel::TelAvivImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:424,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/israel.cpp:425,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/israel.cpp:427,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:428,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:429,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:430,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:431,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:432,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:433,1
    - Dst: isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:434,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:435,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:436,1
    - Dst: isFastDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:437,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:438,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:439,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:440,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:441,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:442,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:443,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:444,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:445,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:446,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 450
    functionName: Israel::TelAvivImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - isYomKippur
    - isShavuot
    - isPassover1st
    - isSimchatTorah
    - isMemorialDay
    - isIndependenceDay
    - isNewYearsDay
    - weekday
    - isFastDay
    - isWeekend
    - year
    - isPurim
    - isSukkot
    linkageType: ''
    returnType: bool
    signature: bool Israel::TelAvivImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:453,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/israel.cpp:454,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/israel.cpp:455,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/israel.cpp:456,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/israel.cpp:457,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/israel.cpp:459,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:460,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:461,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:462,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:463,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:464,1
    - Dst: isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:465,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:466,1
    - Dst: isFastDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:467,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:468,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:469,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:470,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:471,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:472,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:473,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:474,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:479,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 492
    functionName: Israel::ShirImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - isYomKippur
    - isShavuot
    - isPassover1st
    - isSimchatTorah
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isIndependenceDay
    - isNewYearsDay
    - weekday
    - isFastDay
    - isWeekend
    - year
    - isPurim
    - isSukkot
    linkageType: ''
    returnType: bool
    signature: bool Israel::ShirImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 83
    functionName: QuantLib::isPurim
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPurim(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 140
    functionName: QuantLib::isPassover1st
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPassover1st(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 197
    functionName: QuantLib::isIndependenceDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 2
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isIndependenceDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isIndependenceDay
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 258
    functionName: QuantLib::isShavuot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isShavuot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 315
    functionName: QuantLib::isFastDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isFastDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 372
    functionName: QuantLib::isNewYearsDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 2
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isNewYearsDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: QuantLib::isYomKippur
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::isNewYearsDay
    linkageType: ''
    returnType: bool
    signature: bool isYomKippur(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::isSukkot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::isYomKippur
    linkageType: ''
    returnType: bool
    signature: bool isSukkot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionName: QuantLib::isSimchatTorah
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isSukkot
    linkageType: ''
    returnType: bool
    signature: bool isSimchatTorah(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 83
    functionName: QuantLib::isPurim
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPurim(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 140
    functionName: QuantLib::isPassover1st
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isPassover1st(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 197
    functionName: QuantLib::isIndependenceDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 3
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isIndependenceDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isIndependenceDay
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 258
    functionName: QuantLib::isShavuot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isShavuot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 315
    functionName: QuantLib::isFastDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isFastDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/israel.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 372
    functionName: QuantLib::isNewYearsDay
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 3
    functionsReached:
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool isNewYearsDay(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: QuantLib::isYomKippur
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::isNewYearsDay
    linkageType: ''
    returnType: bool
    signature: bool isYomKippur(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::isSukkot
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::isYomKippur
    linkageType: ''
    returnType: bool
    signature: bool isSukkot(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 382
    functionDepth: 3
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionName: QuantLib::isSimchatTorah
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::isSukkot
    linkageType: ''
    returnType: bool
    signature: bool isSimchatTorah(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 391
    functionName: QuantLib::Israel::TelAvivImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 398
    functionName: QuantLib::Israel::ShirImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Israel::TelAvivImpl>
      Src: /src/quantlib/ql/time/calendars/israel.cpp:404,1
    - Dst: ext::make_shared<Israel::ShirImpl>
      Src: /src/quantlib/ql/time/calendars/israel.cpp:405,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/israel.cpp:415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - market
    argTypes:
    - Israel::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 417
    functionName: QuantLib::Israel::Israel
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Israel::TelAvivImpl>
    - ext::make_shared<Israel::ShirImpl>
    linkageType: ''
    returnType: void
    signature: void Israel::Israel(Israel::Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: Israel::TelAvivImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Israel::TelAvivImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:424,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/israel.cpp:425,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/israel.cpp:427,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:428,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:429,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:430,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:431,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:432,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:433,1
    - Dst: isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:434,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:435,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:436,1
    - Dst: isFastDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:437,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:438,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:439,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:440,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:441,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:442,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:443,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:444,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:445,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:446,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 450
    functionName: Israel::TelAvivImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - isYomKippur
    - isShavuot
    - isPassover1st
    - isSimchatTorah
    - isMemorialDay
    - isIndependenceDay
    - isNewYearsDay
    - weekday
    - isFastDay
    - isWeekend
    - year
    - isPurim
    - isSukkot
    linkageType: ''
    returnType: bool
    signature: bool Israel::TelAvivImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:453,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/israel.cpp:454,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/israel.cpp:455,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/israel.cpp:456,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/israel.cpp:457,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/israel.cpp:459,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:460,1
    - Dst: isPurim
      Src: /src/quantlib/ql/time/calendars/israel.cpp:461,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:462,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:463,1
    - Dst: isPassover1st
      Src: /src/quantlib/ql/time/calendars/israel.cpp:464,1
    - Dst: isIndependenceDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:465,1
    - Dst: isShavuot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:466,1
    - Dst: isFastDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:467,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:468,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:469,1
    - Dst: isNewYearsDay
      Src: /src/quantlib/ql/time/calendars/israel.cpp:470,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:471,1
    - Dst: isYomKippur
      Src: /src/quantlib/ql/time/calendars/israel.cpp:472,1
    - Dst: isSukkot
      Src: /src/quantlib/ql/time/calendars/israel.cpp:473,1
    - Dst: isSimchatTorah
      Src: /src/quantlib/ql/time/calendars/israel.cpp:474,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/israel.cpp:479,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 492
    functionName: Israel::ShirImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/israel.cpp
    functionUses: 0
    functionsReached:
    - isYomKippur
    - isShavuot
    - isPassover1st
    - isSimchatTorah
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isIndependenceDay
    - isNewYearsDay
    - weekday
    - isFastDay
    - isWeekend
    - year
    - isPurim
    - isSukkot
    linkageType: ''
    returnType: bool
    signature: bool Israel::ShirImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Finland::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Finland::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: HongKong::HkexImpl::HkexImpl
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - m
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::HongKong::HongKong
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - HongKong::HkexImpl::HkexImpl
    linkageType: ''
    returnType: void
    signature: void HongKong::HongKong(Market m)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:40,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:40,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:41,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:42,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:43,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:45,1
    CyclomaticComplexity: 324
    EdgeCount: 324
    ICount: 92
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 417
    functionName: HongKong::HkexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool HongKong::HkexImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: HongKong::HkexImpl::HkexImpl
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:28,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - m
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::HongKong::HongKong
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - HongKong::HkexImpl::HkexImpl
    linkageType: ''
    returnType: void
    signature: void HongKong::HongKong(Market m)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:40,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:40,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:41,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:42,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:43,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/hongkong.cpp:45,1
    CyclomaticComplexity: 324
    EdgeCount: 324
    ICount: 92
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 417
    functionName: HongKong::HkexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/hongkong.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool HongKong::HkexImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Botswana::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Botswana::Botswana
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.cpp
    functionUses: 0
    functionsReached:
    - Botswana::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Botswana::Botswana()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:37,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: Botswana::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Botswana::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Botswana::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Botswana::Botswana
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.cpp
    functionUses: 0
    functionsReached:
    - Botswana::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Botswana::Botswana()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/botswana.cpp:37,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: Botswana::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Botswana::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Norway::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/norway.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Norway::Norway
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.cpp
    functionUses: 0
    functionsReached:
    - Norway::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Norway::Norway()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/norway.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/norway.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/norway.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/norway.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/norway.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/norway.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/norway.cpp:36,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Norway::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Norway::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Norway::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/norway.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Norway::Norway
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.cpp
    functionUses: 0
    functionsReached:
    - Norway::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Norway::Norway()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/norway.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/norway.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/norway.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/norway.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/norway.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/norway.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/norway.cpp:36,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Norway::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Norway::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::NullCalendar::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::NullCalendar::Impl::isWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWeekend(Weekday) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::NullCalendar::Impl::isBusinessDay
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBusinessDay(const Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/nullcalendar.hpp:48,1
    - Dst: NullCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/nullcalendar.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::NullCalendar::NullCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - NullCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NullCalendar()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::NullCalendar::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: QuantLib::NullCalendar::Impl::isWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWeekend(Weekday) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::NullCalendar::Impl::isBusinessDay
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBusinessDay(const Date&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/nullcalendar.hpp:48,1
    - Dst: NullCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/nullcalendar.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::NullCalendar::NullCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/nullcalendar.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - NullCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void NullCalendar()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Chile::SseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Chile::SseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/chile.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Australia::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Australia::AsxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::Australia::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Australia::AsxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::Germany::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::Germany::FrankfurtStockExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::Germany::XetraImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::Germany::EurexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::Germany::EuwaxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::Germany::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::Germany::FrankfurtStockExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::Germany::XetraImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: QuantLib::Germany::EurexImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::Germany::EuwaxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Mexico::BmvImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::Mexico::BmvImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::Austria::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::Austria::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::Austria::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: QuantLib::Austria::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Ukraine::UseImpl::UseImpl
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Ukraine::Ukraine
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.cpp
    functionUses: 0
    functionsReached:
    - Ukraine::UseImpl::UseImpl
    linkageType: ''
    returnType: void
    signature: void Ukraine::Ukraine(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:36,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 62
    functionName: Ukraine::UseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Ukraine::UseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Ukraine::UseImpl::UseImpl
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Ukraine::Ukraine
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.cpp
    functionUses: 0
    functionsReached:
    - Ukraine::UseImpl::UseImpl
    linkageType: ''
    returnType: void
    signature: void Ukraine::Ukraine(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/ukraine.cpp:36,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 62
    functionName: Ukraine::UseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/ukraine.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Ukraine::UseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CzechRepublic::PseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CzechRepublic::PseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Hungary::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Hungary::Hungary
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.cpp
    functionUses: 0
    functionsReached:
    - Hungary::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Hungary::Hungary()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:36,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Hungary::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Hungary::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Hungary::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Hungary::Hungary
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.cpp
    functionUses: 0
    functionsReached:
    - Hungary::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Hungary::Hungary()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/hungary.cpp:36,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Hungary::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Hungary::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WeekendsOnly::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::WeekendsOnly::WeekendsOnly
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.cpp
    functionUses: 0
    functionsReached:
    - WeekendsOnly::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void WeekendsOnly::WeekendsOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:31,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: WeekendsOnly::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.cpp
    functionUses: 0
    functionsReached:
    - weekday
    - isWeekend
    linkageType: ''
    returnType: bool
    signature: bool WeekendsOnly::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WeekendsOnly::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::WeekendsOnly::WeekendsOnly
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.cpp
    functionUses: 0
    functionsReached:
    - WeekendsOnly::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void WeekendsOnly::WeekendsOnly()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:31,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/weekendsonly.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: WeekendsOnly::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/weekendsonly.cpp
    functionUses: 0
    functionsReached:
    - weekday
    - isWeekend
    linkageType: ''
    returnType: bool
    signature: bool WeekendsOnly::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CzechRepublic::PseImpl::PseImpl
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::CzechRepublic::CzechRepublic
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.cpp
    functionUses: 0
    functionsReached:
    - CzechRepublic::PseImpl::PseImpl
    linkageType: ''
    returnType: void
    signature: void CzechRepublic::CzechRepublic(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:37,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: CzechRepublic::PseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool CzechRepublic::PseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CzechRepublic::PseImpl::PseImpl
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::CzechRepublic::CzechRepublic
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.cpp
    functionUses: 0
    functionsReached:
    - CzechRepublic::PseImpl::PseImpl
    linkageType: ''
    returnType: void
    signature: void CzechRepublic::CzechRepublic(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/czechrepublic.cpp:37,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: CzechRepublic::PseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/czechrepublic.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool CzechRepublic::PseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Taiwan::TsecImpl::TsecImpl
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Taiwan::Taiwan
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached:
    - Taiwan::TsecImpl::TsecImpl
    linkageType: ''
    returnType: void
    signature: void Taiwan::Taiwan(Market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: Taiwan::TsecImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Taiwan::TsecImpl::isWeekend(Weekday w) const
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:37,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:40,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:42,1
    CyclomaticComplexity: 350
    EdgeCount: 350
    ICount: 96
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 464
    functionName: Taiwan::TsecImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Taiwan::TsecImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Taiwan::TsecImpl::TsecImpl
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Taiwan::Taiwan
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached:
    - Taiwan::TsecImpl::TsecImpl
    linkageType: ''
    returnType: void
    signature: void Taiwan::Taiwan(Market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: Taiwan::TsecImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Taiwan::TsecImpl::isWeekend(Weekday w) const
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:37,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:40,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/taiwan.cpp:42,1
    CyclomaticComplexity: 350
    EdgeCount: 350
    ICount: 96
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 464
    functionName: Taiwan::TsecImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Taiwan::TsecImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::Brazil::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Brazil::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::Brazil::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::Brazil::ExchangeImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Sweden::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Sweden::Sweden
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.cpp
    functionUses: 0
    functionsReached:
    - Sweden::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Sweden::Sweden()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:36,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 66
    functionName: Sweden::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Sweden::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Sweden::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Sweden::Sweden
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.cpp
    functionUses: 0
    functionsReached:
    - Sweden::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Sweden::Sweden()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/sweden.cpp:36,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 66
    functionName: Sweden::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Sweden::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Denmark::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Denmark::Denmark
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.cpp
    functionUses: 0
    functionsReached:
    - Denmark::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Denmark::Denmark()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:37,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 66
    functionName: Denmark::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Denmark::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Denmark::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Denmark::Denmark
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.cpp
    functionUses: 0
    functionsReached:
    - Denmark::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Denmark::Denmark()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/denmark.cpp:37,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 66
    functionName: Denmark::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Denmark::Impl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Canada::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/canada.cpp:29,1
    - Dst: Canada::TsxImpl::TsxImpl
      Src: /src/quantlib/ql/time/calendars/canada.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/canada.cpp:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Canada::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::Canada::Canada
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Canada::SettlementImpl::SettlementImpl
    - Canada::TsxImpl::TsxImpl
    linkageType: ''
    returnType: void
    signature: void Canada::Canada(Canada::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:44,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/canada.cpp:45,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/canada.cpp:45,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/canada.cpp:46,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/canada.cpp:47,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:48,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/canada.cpp:49,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 82
    functionName: Canada::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Canada::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:85,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/canada.cpp:86,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/canada.cpp:86,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/canada.cpp:87,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/canada.cpp:88,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:89,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/canada.cpp:90,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 117
    functionName: Canada::TsxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Canada::TsxImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Canada::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/canada.cpp:29,1
    - Dst: Canada::TsxImpl::TsxImpl
      Src: /src/quantlib/ql/time/calendars/canada.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/canada.cpp:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Canada::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::Canada::Canada
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Canada::SettlementImpl::SettlementImpl
    - Canada::TsxImpl::TsxImpl
    linkageType: ''
    returnType: void
    signature: void Canada::Canada(Canada::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:44,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/canada.cpp:45,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/canada.cpp:45,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/canada.cpp:46,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/canada.cpp:47,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:48,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/canada.cpp:49,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 82
    functionName: Canada::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Canada::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:85,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/canada.cpp:86,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/canada.cpp:86,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/canada.cpp:87,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/canada.cpp:88,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/canada.cpp:89,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/canada.cpp:90,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 117
    functionName: Canada::TsxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Canada::TsxImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - name
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BespokeCalendar::Impl::Impl(std::string name)
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::Impl::Impl(std::string name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: BespokeCalendar::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string BespokeCalendar::Impl::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: BespokeCalendar::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool BespokeCalendar::Impl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:37,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: BespokeCalendar::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - weekday
    - isWeekend
    linkageType: ''
    returnType: bool
    signature: bool BespokeCalendar::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: BespokeCalendar::Impl::addWeekend(Weekday w)
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::Impl::addWeekend(Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BespokeCalendar::Impl>
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::BespokeCalendar::BespokeCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BespokeCalendar::Impl>
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::BespokeCalendar(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BespokeCalendar::addWeekend
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BespokeCalendar::addWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BespokeCalendar::addWeekend
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::addWeekend(Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - name
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BespokeCalendar::Impl::Impl(std::string name)
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::Impl::Impl(std::string name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: BespokeCalendar::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string BespokeCalendar::Impl::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: BespokeCalendar::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool BespokeCalendar::Impl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:37,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: BespokeCalendar::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - weekday
    - isWeekend
    linkageType: ''
    returnType: bool
    signature: bool BespokeCalendar::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: BespokeCalendar::Impl::addWeekend(Weekday w)
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::Impl::addWeekend(Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BespokeCalendar::Impl>
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionName: QuantLib::BespokeCalendar::BespokeCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BespokeCalendar::Impl>
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::BespokeCalendar(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BespokeCalendar::addWeekend
      Src: /src/quantlib/ql/time/calendars/bespokecalendar.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::BespokeCalendar::addWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/bespokecalendar.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BespokeCalendar::addWeekend
    linkageType: ''
    returnType: void
    signature: void BespokeCalendar::addWeekend(Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::TARGET::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/target.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::TARGET::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/target.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::Canada::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::Canada::TsxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: QuantLib::Canada::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: QuantLib::Canada::TsxImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/canada.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Austria::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/austria.cpp:29,1
    - Dst: Austria::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/austria.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/austria.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Austria::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::Austria::Austria
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - Austria::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - Austria::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void Austria::Austria(Austria::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/austria.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/austria.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/austria.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/austria.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/austria.cpp:51,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 82
    functionName: Austria::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Austria::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/austria.cpp:87,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/austria.cpp:87,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/austria.cpp:88,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/austria.cpp:89,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:90,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/austria.cpp:91,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 116
    functionName: Austria::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Austria::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Austria::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/austria.cpp:29,1
    - Dst: Austria::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/austria.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/austria.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Austria::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::Austria::Austria
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - Austria::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - Austria::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void Austria::Austria(Austria::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/austria.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/austria.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/austria.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/austria.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/austria.cpp:51,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 82
    functionName: Austria::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Austria::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/austria.cpp:87,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/austria.cpp:87,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/austria.cpp:88,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/austria.cpp:89,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/austria.cpp:90,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/austria.cpp:91,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 116
    functionName: Austria::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/austria.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Austria::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:25,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:26,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:26,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:27,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:28,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:29,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:30,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 81
    functionName: NewZealand::CommonImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::CommonImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:84,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:87,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:88,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 93
    functionName: NewZealand::WellingtonImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::WellingtonImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:96,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:98,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:99,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:100,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 106
    functionName: NewZealand::AucklandImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::AucklandImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<NewZealand::WellingtonImpl>
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:111,1
    - Dst: ext::make_shared<NewZealand::AucklandImpl>
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:112,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 124
    functionName: QuantLib::NewZealand::NewZealand
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<NewZealand::AucklandImpl>
    - QL_FAIL
    - ext::make_shared<NewZealand::WellingtonImpl>
    linkageType: ''
    returnType: void
    signature: void NewZealand::NewZealand(Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:25,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:26,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:26,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:27,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:28,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:29,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:30,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 81
    functionName: NewZealand::CommonImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::CommonImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:84,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:86,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:87,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:88,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 93
    functionName: NewZealand::WellingtonImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::WellingtonImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:96,1
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:98,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:99,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:100,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 106
    functionName: NewZealand::AucklandImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - QuantLib::Calendar::isBusinessDay
    - weekday
    linkageType: ''
    returnType: bool
    signature: bool NewZealand::AucklandImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<NewZealand::WellingtonImpl>
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:111,1
    - Dst: ext::make_shared<NewZealand::AucklandImpl>
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:112,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/newzealand.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 124
    functionName: QuantLib::NewZealand::NewZealand
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<NewZealand::AucklandImpl>
    - QL_FAIL
    - ext::make_shared<NewZealand::WellingtonImpl>
    linkageType: ''
    returnType: void
    signature: void NewZealand::NewZealand(Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::isWashingtonBirthday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWashingtonBirthday(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::isLaborDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLaborDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::isColumbusDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isColumbusDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::isVeteransDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::isVeteransDayNoSaturday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDayNoSaturday(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::isJuneteenth
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isJuneteenth(Day d, Month m, Year y, Weekday w, bool moveToFriday
      = true)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::isWashingtonBirthday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWashingtonBirthday(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::isLaborDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLaborDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::isColumbusDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isColumbusDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::isVeteransDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::isVeteransDayNoSaturday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDayNoSaturday(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::isJuneteenth
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isJuneteenth(Day d, Month m, Year y, Weekday w, bool moveToFriday
      = true)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<UnitedStates::SettlementImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:98,1
    - Dst: ext::make_shared<UnitedStates::LiborImpactImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:99,1
    - Dst: ext::make_shared<UnitedStates::NyseImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:100,1
    - Dst: ext::make_shared<UnitedStates::GovernmentBondImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:101,1
    - Dst: ext::make_shared<UnitedStates::NercImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:102,1
    - Dst: ext::make_shared<UnitedStates::FederalReserveImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:103,1
    - Dst: ext::make_shared<UnitedStates::SofrImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - market
    argTypes:
    - UnitedStates::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 131
    functionName: QuantLib::UnitedStates::UnitedStates
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<UnitedStates::FederalReserveImpl>
    - ext::make_shared<UnitedStates::SettlementImpl>
    - ext::make_shared<UnitedStates::SofrImpl>
    - ext::make_shared<UnitedStates::NercImpl>
    - ext::make_shared<UnitedStates::NyseImpl>
    - QL_FAIL
    - ext::make_shared<UnitedStates::LiborImpactImpl>
    - ext::make_shared<UnitedStates::GovernmentBondImpl>
    linkageType: ''
    returnType: void
    signature: void UnitedStates::UnitedStates(UnitedStates::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:135,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:136,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:137,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:138,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:139,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:148,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:150,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:152,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:157,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:159,1
    - Dst: isVeteransDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:161,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 169
    functionName: UnitedStates::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isJuneteenth
    - isVeteransDay
    - isWeekend
    - year
    - isColumbusDay
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::SettlementImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:174,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:175,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:176,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:177,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:181,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: UnitedStates::LiborImpactImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - year
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::LiborImpactImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:185,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:186,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:186,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:187,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:188,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:189,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:190,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:194,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:198,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:200,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:205,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 10
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 270
    functionName: UnitedStates::NyseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isMemorialDay
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::NyseImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:274,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:275,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:275,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:276,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:277,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:278,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:279,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:286,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:300,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:302,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:307,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:309,1
    - Dst: isVeteransDayNoSaturday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:311,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 329
    functionName: UnitedStates::GovernmentBondImpl::isBusinessDay(const Date& date)
      const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isMemorialDay
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    - isColumbusDay
    - isVeteransDayNoSaturday
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::GovernmentBondImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:336,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:337,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:340,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 344
    functionName: UnitedStates::SofrImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfYear
    - easterMonday
    - QuantLib::Calendar::isBusinessDay
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::SofrImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:348,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:349,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:350,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:351,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:352,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:356,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:360,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 367
    functionName: UnitedStates::NercImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::NercImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:372,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:373,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:374,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:375,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:376,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:383,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:385,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:387,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:391,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:393,1
    - Dst: isVeteransDayNoSaturday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:395,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 402
    functionName: UnitedStates::FederalReserveImpl::isBusinessDay(const Date& date)
      const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    - isColumbusDay
    - isVeteransDayNoSaturday
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::FederalReserveImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::isWashingtonBirthday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWashingtonBirthday(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::isLaborDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLaborDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::isColumbusDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isColumbusDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::isVeteransDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::isVeteransDayNoSaturday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDayNoSaturday(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::isJuneteenth
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isJuneteenth(Day d, Month m, Year y, Weekday w, bool moveToFriday
      = true)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::isWashingtonBirthday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWashingtonBirthday(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionName: QuantLib::isMemorialDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isMemorialDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::isLaborDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isLaborDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: QuantLib::isColumbusDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isColumbusDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionName: QuantLib::isVeteransDay
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDay(Day d, Month m, Year y, Weekday w)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 6
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: QuantLib::isVeteransDayNoSaturday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isVeteransDayNoSaturday(Day d, Month m, Year y, Weekday w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 2
    argCount: 4
    argNames:
    - d
    - m
    - y
    - w
    argTypes:
    - Day
    - Month
    - Year
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::isJuneteenth
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isJuneteenth(Day d, Month m, Year y, Weekday w, bool moveToFriday
      = true)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<UnitedStates::SettlementImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:98,1
    - Dst: ext::make_shared<UnitedStates::LiborImpactImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:99,1
    - Dst: ext::make_shared<UnitedStates::NyseImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:100,1
    - Dst: ext::make_shared<UnitedStates::GovernmentBondImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:101,1
    - Dst: ext::make_shared<UnitedStates::NercImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:102,1
    - Dst: ext::make_shared<UnitedStates::FederalReserveImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:103,1
    - Dst: ext::make_shared<UnitedStates::SofrImpl>
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:104,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - market
    argTypes:
    - UnitedStates::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 131
    functionName: QuantLib::UnitedStates::UnitedStates
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<UnitedStates::FederalReserveImpl>
    - ext::make_shared<UnitedStates::SettlementImpl>
    - ext::make_shared<UnitedStates::SofrImpl>
    - ext::make_shared<UnitedStates::NercImpl>
    - ext::make_shared<UnitedStates::NyseImpl>
    - QL_FAIL
    - ext::make_shared<UnitedStates::LiborImpactImpl>
    - ext::make_shared<UnitedStates::GovernmentBondImpl>
    linkageType: ''
    returnType: void
    signature: void UnitedStates::UnitedStates(UnitedStates::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:135,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:136,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:137,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:138,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:139,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:148,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:150,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:152,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:157,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:159,1
    - Dst: isVeteransDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:161,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 169
    functionName: UnitedStates::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isJuneteenth
    - isVeteransDay
    - isWeekend
    - year
    - isColumbusDay
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::SettlementImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:174,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:175,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:176,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:177,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:181,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionName: UnitedStates::LiborImpactImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - year
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::LiborImpactImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:185,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:186,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:186,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:187,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:188,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:189,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:190,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:194,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:198,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:200,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:205,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 10
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 270
    functionName: UnitedStates::NyseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isMemorialDay
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::NyseImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:274,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:275,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:275,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:276,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:277,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:278,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:279,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:286,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:300,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:302,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:307,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:309,1
    - Dst: isVeteransDayNoSaturday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:311,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 329
    functionName: UnitedStates::GovernmentBondImpl::isBusinessDay(const Date& date)
      const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isMemorialDay
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    - isColumbusDay
    - isVeteransDayNoSaturday
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::GovernmentBondImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:336,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:337,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:340,1
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 344
    functionName: UnitedStates::SofrImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfYear
    - easterMonday
    - QuantLib::Calendar::isBusinessDay
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::SofrImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:348,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:349,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:350,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:351,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:352,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:356,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:360,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 367
    functionName: UnitedStates::NercImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::NercImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:372,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:373,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:374,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:375,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:376,1
    - Dst: isWashingtonBirthday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:383,1
    - Dst: isMemorialDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:385,1
    - Dst: isJuneteenth
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:387,1
    - Dst: isLaborDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:391,1
    - Dst: isColumbusDay
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:393,1
    - Dst: isVeteransDayNoSaturday
      Src: /src/quantlib/ql/time/calendars/unitedstates.cpp:395,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 402
    functionName: UnitedStates::FederalReserveImpl::isBusinessDay(const Date& date)
      const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.cpp
    functionUses: 0
    functionsReached:
    - isWashingtonBirthday
    - dayOfMonth
    - isMemorialDay
    - month
    - weekday
    - isLaborDay
    - isJuneteenth
    - isWeekend
    - year
    - isColumbusDay
    - isVeteransDayNoSaturday
    linkageType: ''
    returnType: bool
    signature: bool UnitedStates::FederalReserveImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Argentina::MervalImpl::MervalImpl
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::Argentina::Argentina
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.cpp
    functionUses: 0
    functionsReached:
    - Argentina::MervalImpl::MervalImpl
    linkageType: ''
    returnType: void
    signature: void Argentina::Argentina(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:37,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 65
    functionName: Argentina::MervalImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Argentina::MervalImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Argentina::MervalImpl::MervalImpl
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionName: QuantLib::Argentina::Argentina
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.cpp
    functionUses: 0
    functionsReached:
    - Argentina::MervalImpl::MervalImpl
    linkageType: ''
    returnType: void
    signature: void Argentina::Argentina(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/argentina.cpp:37,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 65
    functionName: Argentina::MervalImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Argentina::MervalImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Denmark::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Denmark::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/denmark.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Switzerland::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Switzerland::Switzerland
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.cpp
    functionUses: 0
    functionsReached:
    - Switzerland::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Switzerland::Switzerland()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:36,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: Switzerland::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Switzerland::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Switzerland::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Switzerland::Switzerland
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.cpp
    functionUses: 0
    functionsReached:
    - Switzerland::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Switzerland::Switzerland()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/switzerland.cpp:36,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 59
    functionName: Switzerland::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/switzerland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Switzerland::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Finland::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/finland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Finland::Finland
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.cpp
    functionUses: 0
    functionsReached:
    - Finland::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Finland::Finland()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/finland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/finland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/finland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/finland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/finland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/finland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/finland.cpp:36,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Finland::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Finland::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Finland::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/finland.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Finland::Finland
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.cpp
    functionUses: 0
    functionsReached:
    - Finland::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Finland::Finland()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/finland.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/finland.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/finland.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/finland.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/finland.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/finland.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/finland.cpp:36,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Finland::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/finland.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Finland::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Sweden::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::Sweden::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/sweden.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::SouthAfrica::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::SouthAfrica::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Argentina::MervalImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::Argentina::MervalImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/argentina.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Germany::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:29,1
    - Dst: Germany::FrankfurtStockExchangeImpl::FrankfurtStockExchangeImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:31,1
    - Dst: Germany::XetraImpl::XetraImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:33,1
    - Dst: Germany::EurexImpl::EurexImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:35,1
    - Dst: Germany::EuwaxImpl::EuwaxImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:37,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/germany.cpp:56,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - market
    argTypes:
    - Germany::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 58
    functionName: QuantLib::Germany::Germany
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - Germany::EuwaxImpl::EuwaxImpl
    - Germany::XetraImpl::XetraImpl
    - Germany::SettlementImpl::SettlementImpl
    - QL_FAIL
    - Germany::FrankfurtStockExchangeImpl::FrankfurtStockExchangeImpl
    - Germany::EurexImpl::EurexImpl
    linkageType: ''
    returnType: void
    signature: void Germany::Germany(Germany::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:62,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:63,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:63,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:64,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:65,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:66,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:67,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 92
    functionName: Germany::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:96,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:97,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:97,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:98,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:99,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:100,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:101,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 118
    functionName: "Germany::FrankfurtStockExchangeImpl::isBusinessDay(\n      const
      Date& date) const"
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: "bool Germany::FrankfurtStockExchangeImpl::isBusinessDay(\n      const
      Date& date) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:121,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:122,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:122,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:123,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:124,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:125,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:126,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 143
    functionName: Germany::XetraImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::XetraImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:146,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:147,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:147,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:148,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:149,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:150,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:151,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 170
    functionName: Germany::EurexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::EurexImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:173,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:174,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:174,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:175,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:176,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:177,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 197
    functionName: Germany::EuwaxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::EuwaxImpl::isBusinessDay(const Date& date) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Germany::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:29,1
    - Dst: Germany::FrankfurtStockExchangeImpl::FrankfurtStockExchangeImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:31,1
    - Dst: Germany::XetraImpl::XetraImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:33,1
    - Dst: Germany::EurexImpl::EurexImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:35,1
    - Dst: Germany::EuwaxImpl::EuwaxImpl
      Src: /src/quantlib/ql/time/calendars/germany.cpp:37,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/germany.cpp:56,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - market
    argTypes:
    - Germany::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 58
    functionName: QuantLib::Germany::Germany
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - Germany::EuwaxImpl::EuwaxImpl
    - Germany::XetraImpl::XetraImpl
    - Germany::SettlementImpl::SettlementImpl
    - QL_FAIL
    - Germany::FrankfurtStockExchangeImpl::FrankfurtStockExchangeImpl
    - Germany::EurexImpl::EurexImpl
    linkageType: ''
    returnType: void
    signature: void Germany::Germany(Germany::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:62,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:63,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:63,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:64,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:65,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:66,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:67,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 92
    functionName: Germany::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:96,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:97,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:97,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:98,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:99,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:100,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:101,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 118
    functionName: "Germany::FrankfurtStockExchangeImpl::isBusinessDay(\n      const
      Date& date) const"
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: "bool Germany::FrankfurtStockExchangeImpl::isBusinessDay(\n      const
      Date& date) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:121,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:122,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:122,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:123,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:124,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:125,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:126,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 143
    functionName: Germany::XetraImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::XetraImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:146,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:147,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:147,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:148,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:149,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:150,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/germany.cpp:151,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 170
    functionName: Germany::EurexImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::EurexImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:173,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/germany.cpp:174,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/germany.cpp:174,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/germany.cpp:175,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/germany.cpp:176,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/germany.cpp:177,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 197
    functionName: Germany::EuwaxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/germany.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - year
    linkageType: ''
    returnType: bool
    signature: bool Germany::EuwaxImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Russia::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:29,1
    - Dst: Russia::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/russia.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Russia::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Russia::Russia
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Russia::SettlementImpl::SettlementImpl
    - Russia::ExchangeImpl::ExchangeImpl
    linkageType: ''
    returnType: void
    signature: void Russia::Russia(Russia::Market market)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 80
    functionName: QuantLib::isExtraHolidaySettlementImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidaySettlementImpl(Day d, Month month, Year year)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 80
    functionName: QuantLib::isExtraHolidaySettlementImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidaySettlementImpl(Day d, Month month, Year year)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/russia.cpp:85,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/russia.cpp:86,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/russia.cpp:87,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/russia.cpp:88,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:89,1
    - Dst: isExtraHolidaySettlementImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:118,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 122
    functionName: Russia::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - isExtraHolidaySettlementImpl
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Russia::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 152
    functionName: QuantLib::isWorkingWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWorkingWeekend(Day d, Month month, Year year)
  - BBCount: 41
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 218
    functionName: QuantLib::isExtraHolidayExchangeImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidayExchangeImpl(Day d, Month month, Year year)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 152
    functionName: QuantLib::isWorkingWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWorkingWeekend(Day d, Month month, Year year)
  - BBCount: 41
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 218
    functionName: QuantLib::isExtraHolidayExchangeImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidayExchangeImpl(Day d, Month month, Year year)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/russia.cpp:223,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/russia.cpp:224,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/russia.cpp:225,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/russia.cpp:226,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/russia.cpp:231,1
    - Dst: isWorkingWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:234,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:238,1
    - Dst: isExtraHolidayExchangeImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:256,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 10
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 260
    functionName: Russia::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - isWorkingWeekend
    - weekday
    - QL_FAIL
    - isWeekend
    - year
    - isExtraHolidayExchangeImpl
    linkageType: ''
    returnType: bool
    signature: bool Russia::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Russia::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:29,1
    - Dst: Russia::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/russia.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Russia::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Russia::Russia
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Russia::SettlementImpl::SettlementImpl
    - Russia::ExchangeImpl::ExchangeImpl
    linkageType: ''
    returnType: void
    signature: void Russia::Russia(Russia::Market market)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 80
    functionName: QuantLib::isExtraHolidaySettlementImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidaySettlementImpl(Day d, Month month, Year year)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 80
    functionName: QuantLib::isExtraHolidaySettlementImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidaySettlementImpl(Day d, Month month, Year year)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/russia.cpp:85,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/russia.cpp:86,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/russia.cpp:87,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/russia.cpp:88,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:89,1
    - Dst: isExtraHolidaySettlementImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:118,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 122
    functionName: Russia::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - isExtraHolidaySettlementImpl
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Russia::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 152
    functionName: QuantLib::isWorkingWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWorkingWeekend(Day d, Month month, Year year)
  - BBCount: 41
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 218
    functionName: QuantLib::isExtraHolidayExchangeImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidayExchangeImpl(Day d, Month month, Year year)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 152
    functionName: QuantLib::isWorkingWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isWorkingWeekend(Day d, Month month, Year year)
  - BBCount: 41
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 3
    argNames:
    - d
    - month
    - year
    argTypes:
    - Day
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 218
    functionName: QuantLib::isExtraHolidayExchangeImpl
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isExtraHolidayExchangeImpl(Day d, Month month, Year year)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/russia.cpp:223,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/russia.cpp:224,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/russia.cpp:225,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/russia.cpp:226,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/russia.cpp:231,1
    - Dst: isWorkingWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:234,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/russia.cpp:238,1
    - Dst: isExtraHolidayExchangeImpl
      Src: /src/quantlib/ql/time/calendars/russia.cpp:256,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 10
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 260
    functionName: Russia::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/russia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - isWorkingWeekend
    - weekday
    - QL_FAIL
    - isWeekend
    - year
    - isExtraHolidayExchangeImpl
    linkageType: ''
    returnType: bool
    signature: bool Russia::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::NewZealand::WellingtonImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::NewZealand::AucklandImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::NewZealand::WellingtonImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::NewZealand::AucklandImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/newzealand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Romania::PublicImpl>
      Src: /src/quantlib/ql/time/calendars/romania.cpp:30,1
    - Dst: ext::make_shared<Romania::BVBImpl>
      Src: /src/quantlib/ql/time/calendars/romania.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/romania.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Romania::Romania
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Romania::BVBImpl>
    - ext::make_shared<Romania::PublicImpl>
    linkageType: ''
    returnType: void
    signature: void Romania::Romania(Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/romania.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/romania.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/romania.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/romania.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/romania.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/romania.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/romania.cpp:51,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 78
    functionName: Romania::PublicImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Romania::PublicImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/romania.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/romania.cpp:83,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/romania.cpp:84,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/romania.cpp:85,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 92
    functionName: Romania::BVBImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Romania::BVBImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Romania::PublicImpl>
      Src: /src/quantlib/ql/time/calendars/romania.cpp:30,1
    - Dst: ext::make_shared<Romania::BVBImpl>
      Src: /src/quantlib/ql/time/calendars/romania.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/romania.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::Romania::Romania
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - ext::make_shared<Romania::BVBImpl>
    - ext::make_shared<Romania::PublicImpl>
    linkageType: ''
    returnType: void
    signature: void Romania::Romania(Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/romania.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/romania.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/romania.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/romania.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/romania.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/romania.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/romania.cpp:51,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 78
    functionName: Romania::PublicImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Romania::PublicImpl::isBusinessDay(const Date& date) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Calendar::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/romania.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/romania.cpp:83,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/romania.cpp:84,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/romania.cpp:85,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 92
    functionName: Romania::BVBImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - year
    - month
    - QuantLib::Calendar::isBusinessDay
    linkageType: ''
    returnType: bool
    signature: bool Romania::BVBImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Japan::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/japan.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Japan::Japan
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached:
    - Japan::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Japan::Japan()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: Japan::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Japan::Impl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/japan.cpp:37,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/japan.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/japan.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/japan.cpp:40,1
    - Dst: Day
      Src: /src/quantlib/ql/time/calendars/japan.cpp:48,1
    - Dst: Day
      Src: /src/quantlib/ql/time/calendars/japan.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/japan.cpp:54,1
    CyclomaticComplexity: 155
    EdgeCount: 155
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 152
    functionName: Japan::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached:
    - Day
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Japan::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Japan::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/japan.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Japan::Japan
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached:
    - Japan::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Japan::Japan()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: Japan::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Japan::Impl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/japan.cpp:37,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/japan.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/japan.cpp:39,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/japan.cpp:40,1
    - Dst: Day
      Src: /src/quantlib/ql/time/calendars/japan.cpp:48,1
    - Dst: Day
      Src: /src/quantlib/ql/time/calendars/japan.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/japan.cpp:54,1
    CyclomaticComplexity: 155
    EdgeCount: 155
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 152
    functionName: Japan::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/japan.cpp
    functionUses: 0
    functionsReached:
    - Day
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Japan::Impl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Italy::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/italy.cpp:29,1
    - Dst: Italy::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/italy.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/italy.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Italy::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::Italy::Italy
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - Italy::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - Italy::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void Italy::Italy(Italy::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/italy.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/italy.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/italy.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/italy.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/italy.cpp:51,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 78
    functionName: Italy::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Italy::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:82,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/italy.cpp:83,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/italy.cpp:83,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/italy.cpp:84,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/italy.cpp:85,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:86,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/italy.cpp:87,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 108
    functionName: Italy::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Italy::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Italy::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/italy.cpp:29,1
    - Dst: Italy::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/italy.cpp:31,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/italy.cpp:40,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Italy::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 42
    functionName: QuantLib::Italy::Italy
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - Italy::ExchangeImpl::ExchangeImpl
    - QL_FAIL
    - Italy::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void Italy::Italy(Italy::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/italy.cpp:47,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/italy.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/italy.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/italy.cpp:49,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:50,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/italy.cpp:51,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 78
    functionName: Italy::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Italy::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:82,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/italy.cpp:83,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/italy.cpp:83,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/italy.cpp:84,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/italy.cpp:85,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/italy.cpp:86,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/italy.cpp:87,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 108
    functionName: Italy::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/italy.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Italy::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Turkey::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::Turkey::Turkey
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached:
    - Turkey::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Turkey::Turkey()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: Turkey::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Turkey::Impl::isWeekend(Weekday w) const
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:38,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:40,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:41,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:43,1
    CyclomaticComplexity: 248
    EdgeCount: 248
    ICount: 128
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 260
    functionName: Turkey::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Turkey::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Turkey::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::Turkey::Turkey
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached:
    - Turkey::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void Turkey::Turkey()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: Turkey::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Turkey::Impl::isWeekend(Weekday w) const
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:38,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:39,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:40,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:41,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/turkey.cpp:43,1
    CyclomaticComplexity: 248
    EdgeCount: 248
    ICount: 128
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 260
    functionName: Turkey::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Turkey::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::India::NseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/india.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::India::NseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/india.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Norway::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Norway::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/norway.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::Romania::PublicImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::Romania::BVBImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::Romania::PublicImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::Romania::BVBImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/romania.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Thailand::SetImpl::SetImpl
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Thailand::Thailand
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.cpp
    functionUses: 0
    functionsReached:
    - Thailand::SetImpl::SetImpl
    linkageType: ''
    returnType: void
    signature: void Thailand::Thailand()
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:37,1
    CyclomaticComplexity: 395
    EdgeCount: 395
    ICount: 50
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 309
    functionName: Thailand::SetImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Thailand::SetImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Thailand::SetImpl::SetImpl
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Thailand::Thailand
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.cpp
    functionUses: 0
    functionsReached:
    - Thailand::SetImpl::SetImpl
    linkageType: ''
    returnType: void
    signature: void Thailand::Thailand()
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/thailand.cpp:37,1
    CyclomaticComplexity: 395
    EdgeCount: 395
    ICount: 50
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 309
    functionName: Thailand::SetImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Thailand::SetImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' c1'
    - ' c2'
    - r
    argTypes:
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              JointCalendarRule r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              JointCalendarRule
      r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              JointCalendarRule
      r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - ' c4'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              const
      Calendar& c4,\n                              JointCalendarRule r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              const
      Calendar& c4,\n                              JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - cv
    - r
    argTypes:
    - std::vector<Calendar>
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: JointCalendar::Impl::Impl(std::vector<Calendar> cv, JointCalendarRule
      r)
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void JointCalendar::Impl::Impl(std::vector<Calendar> cv, JointCalendarRule
      r)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:73,1
    - Dst: front
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:77,1
    - Dst: std::vector<Calendar>::const_iterator::name
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:78,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:80,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 81
    functionName: JointCalendar::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::vector<Calendar>::const_iterator::name
    - QL_FAIL
    - std::ostringstream::str
    - end
    - front
    linkageType: ''
    returnType: std::string
    signature: std::string JointCalendar::Impl::name() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:87,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:87,1
    - Dst: std::vector<Calendar>::const_iterator::isWeekend
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:88,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:93,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:93,1
    - Dst: std::vector<Calendar>::const_iterator::isWeekend
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:94,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 101
    functionName: JointCalendar::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - end
    - begin
    - std::vector<Calendar>::const_iterator::isWeekend
    linkageType: ''
    returnType: bool
    signature: bool JointCalendar::Impl::isWeekend(Weekday w) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:107,1
    - Dst: std::vector<Calendar>::const_iterator::isHoliday
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:113,1
    - Dst: std::vector<Calendar>::const_iterator::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:114,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 121
    functionName: JointCalendar::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Calendar>::const_iterator::isBusinessDay
    - begin
    - std::vector<Calendar>::const_iterator::isHoliday
    - QL_FAIL
    - end
    linkageType: ''
    returnType: bool
    signature: bool JointCalendar::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:127,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' c1'
    - ' c2'
    - r
    argTypes:
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:135,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 const Calendar& c3,\n                                 JointCalendarRule
      r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:144,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - ' c4'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 const Calendar& c3,\n                                 const
      Calendar& c4,\n                                 JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:150,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cv
    - r
    argTypes:
    - std::vector<Calendar>
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const std::vector<Calendar> &cv,\n
      \                                JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' c1'
    - ' c2'
    - r
    argTypes:
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              JointCalendarRule r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              JointCalendarRule
      r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              JointCalendarRule
      r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - ' c4'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: "JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              const
      Calendar& c4,\n                              JointCalendarRule r)"
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::Impl::Impl(const Calendar& c1,\n                              const
      Calendar& c2,\n                              const Calendar& c3,\n                              const
      Calendar& c4,\n                              JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - cv
    - r
    argTypes:
    - std::vector<Calendar>
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: JointCalendar::Impl::Impl(std::vector<Calendar> cv, JointCalendarRule
      r)
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void JointCalendar::Impl::Impl(std::vector<Calendar> cv, JointCalendarRule
      r)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:73,1
    - Dst: front
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:75,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:77,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:77,1
    - Dst: std::vector<Calendar>::const_iterator::name
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:78,1
    - Dst: std::ostringstream::str
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:80,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 81
    functionName: JointCalendar::Impl::name() const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - begin
    - std::vector<Calendar>::const_iterator::name
    - QL_FAIL
    - std::ostringstream::str
    - end
    - front
    linkageType: ''
    returnType: std::string
    signature: std::string JointCalendar::Impl::name() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:87,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:87,1
    - Dst: std::vector<Calendar>::const_iterator::isWeekend
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:88,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:93,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:93,1
    - Dst: std::vector<Calendar>::const_iterator::isWeekend
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:94,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 101
    functionName: JointCalendar::Impl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - end
    - begin
    - std::vector<Calendar>::const_iterator::isWeekend
    linkageType: ''
    returnType: bool
    signature: bool JointCalendar::Impl::isWeekend(Weekday w) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:107,1
    - Dst: std::vector<Calendar>::const_iterator::isHoliday
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:108,1
    - Dst: begin
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:113,1
    - Dst: std::vector<Calendar>::const_iterator::isBusinessDay
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:114,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 121
    functionName: JointCalendar::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - std::vector<Calendar>::const_iterator::isBusinessDay
    - begin
    - std::vector<Calendar>::const_iterator::isHoliday
    - QL_FAIL
    - end
    linkageType: ''
    returnType: bool
    signature: bool JointCalendar::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:127,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' c1'
    - ' c2'
    - r
    argTypes:
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:135,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 const Calendar& c3,\n                                 JointCalendarRule
      r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:144,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' c1'
    - ' c2'
    - ' c3'
    - ' c4'
    - r
    argTypes:
    - Calendar
    - Calendar
    - Calendar
    - Calendar
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const Calendar& c1,\n                                 const
      Calendar& c2,\n                                 const Calendar& c3,\n                                 const
      Calendar& c4,\n                                 JointCalendarRule r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Calendar::Impl>
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:150,1
    - Dst: JointCalendar::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/jointcalendar.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cv
    - r
    argTypes:
    - std::vector<Calendar>
    - JointCalendarRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: QuantLib::JointCalendar::JointCalendar
    functionSourceFile: /src/quantlib/ql/time/calendars/jointcalendar.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Calendar::Impl>
    - JointCalendar::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void JointCalendar::JointCalendar(const std::vector<Calendar> &cv,\n
      \                                JointCalendarRule r)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Brazil::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:30,1
    - Dst: Brazil::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Brazil::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Brazil::Brazil
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Brazil::SettlementImpl::SettlementImpl
    - Brazil::ExchangeImpl::ExchangeImpl
    linkageType: ''
    returnType: void
    signature: void Brazil::Brazil(Brazil::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:49,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:50,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:53,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 81
    functionName: Brazil::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Brazil::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:84,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:85,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:86,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:87,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:88,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:89,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:91,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 127
    functionName: Brazil::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Brazil::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Brazil::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:30,1
    - Dst: Brazil::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:32,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:41,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Brazil::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 43
    functionName: QuantLib::Brazil::Brazil
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Brazil::SettlementImpl::SettlementImpl
    - Brazil::ExchangeImpl::ExchangeImpl
    linkageType: ''
    returnType: void
    signature: void Brazil::Brazil(Brazil::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:46,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:47,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:48,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:49,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:50,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:53,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 81
    functionName: Brazil::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Brazil::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:84,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:85,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:86,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:87,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:88,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:89,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/brazil.cpp:91,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 127
    functionName: Brazil::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/brazil.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Brazil::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Mexico::BmvImpl::BmvImpl
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Mexico::Mexico
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.cpp
    functionUses: 0
    functionsReached:
    - Mexico::BmvImpl::BmvImpl
    linkageType: ''
    returnType: void
    signature: void Mexico::Mexico(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:37,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 67
    functionName: Mexico::BmvImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Mexico::BmvImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Mexico::BmvImpl::BmvImpl
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::Mexico::Mexico
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.cpp
    functionUses: 0
    functionsReached:
    - Mexico::BmvImpl::BmvImpl
    linkageType: ''
    returnType: void
    signature: void Mexico::Mexico(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/mexico.cpp:37,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 67
    functionName: Mexico::BmvImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/mexico.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Mexico::BmvImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: China::SseImpl::SseImpl
      Src: /src/quantlib/ql/time/calendars/china.cpp:29,1
    - Dst: China::IbImpl::IbImpl
      Src: /src/quantlib/ql/time/calendars/china.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/china.cpp:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - m
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::China::China
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - China::IbImpl::IbImpl
    - China::SseImpl::SseImpl
    linkageType: ''
    returnType: void
    signature: void China::China(Market m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: China::SseImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool China::SseImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/china.cpp:48,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/china.cpp:49,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/china.cpp:50,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/china.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/china.cpp:53,1
    CyclomaticComplexity: 501
    EdgeCount: 501
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 202
    functionName: China::SseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool China::SseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: China::IbImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool China::IbImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:211,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:212,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:213,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:214,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:215,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:216,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:217,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:219,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:220,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:221,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:222,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:223,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:224,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:226,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:227,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:228,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:229,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:230,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:231,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:232,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:234,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:235,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:236,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:237,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:238,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:240,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:241,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:242,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:243,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:244,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:245,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:247,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:248,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:249,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:250,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:251,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:252,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:253,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:254,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:256,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:257,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:258,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:259,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:260,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:261,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:263,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:264,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:265,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:266,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:267,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:268,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:270,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:271,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:272,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:273,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:274,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:275,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:276,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:277,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:278,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:279,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:280,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:281,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:283,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:285,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:286,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:287,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:289,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:290,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:292,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:293,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:295,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:296,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:297,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:298,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:299,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:300,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:302,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:303,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:304,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:305,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:306,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:308,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:309,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:310,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:311,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:313,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:314,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:316,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:317,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:318,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:319,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:320,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:321,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:323,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:324,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:325,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:326,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:327,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:328,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:330,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:331,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:332,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:333,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:334,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:335,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:336,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:338,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:339,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:340,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:341,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:342,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:343,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:344,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:346,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:347,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:348,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:349,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:350,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:351,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:352,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:354,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:355,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:356,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:357,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:358,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:359,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:360,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:361,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:362,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:364,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:365,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:366,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:367,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:368,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendars/china.cpp:372,1
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/china.cpp:373,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/china.cpp:373,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 374
    functionName: China::IbImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - Date
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool China::IbImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: China::SseImpl::SseImpl
      Src: /src/quantlib/ql/time/calendars/china.cpp:29,1
    - Dst: China::IbImpl::IbImpl
      Src: /src/quantlib/ql/time/calendars/china.cpp:30,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/china.cpp:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - m
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: QuantLib::China::China
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - China::IbImpl::IbImpl
    - China::SseImpl::SseImpl
    linkageType: ''
    returnType: void
    signature: void China::China(Market m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: China::SseImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool China::SseImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/china.cpp:48,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/china.cpp:49,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/china.cpp:50,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/china.cpp:51,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/china.cpp:53,1
    CyclomaticComplexity: 501
    EdgeCount: 501
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 202
    functionName: China::SseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool China::SseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionName: China::IbImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool China::IbImpl::isWeekend(Weekday w) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:211,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:212,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:213,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:214,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:215,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:216,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:217,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:219,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:220,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:221,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:222,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:223,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:224,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:226,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:227,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:228,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:229,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:230,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:231,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:232,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:234,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:235,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:236,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:237,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:238,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:240,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:241,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:242,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:243,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:244,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:245,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:247,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:248,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:249,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:250,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:251,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:252,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:253,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:254,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:256,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:257,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:258,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:259,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:260,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:261,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:263,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:264,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:265,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:266,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:267,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:268,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:270,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:271,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:272,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:273,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:274,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:275,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:276,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:277,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:278,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:279,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:280,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:281,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:283,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:284,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:285,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:286,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:287,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:289,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:290,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:291,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:292,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:293,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:295,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:296,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:297,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:298,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:299,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:300,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:302,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:303,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:304,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:305,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:306,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:308,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:309,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:310,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:311,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:312,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:313,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:314,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:316,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:317,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:318,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:319,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:320,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:321,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:323,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:324,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:325,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:326,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:327,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:328,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:330,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:331,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:332,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:333,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:334,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:335,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:336,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:338,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:339,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:340,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:341,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:342,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:343,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:344,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:346,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:347,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:348,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:349,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:350,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:351,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:352,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:354,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:355,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:356,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:357,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:358,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:359,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:360,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:361,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:362,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:364,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:365,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:366,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:367,1
    - Dst: Date
      Src: /src/quantlib/ql/time/calendars/china.cpp:368,1
    - Dst: isBusinessDay
      Src: /src/quantlib/ql/time/calendars/china.cpp:372,1
    - Dst: std::set::find
      Src: /src/quantlib/ql/time/calendars/china.cpp:373,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/time/calendars/china.cpp:373,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 374
    functionName: China::IbImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/china.cpp
    functionUses: 0
    functionsReached:
    - isBusinessDay
    - Date
    - std::set::find
    - std::set::end
    linkageType: ''
    returnType: bool
    signature: bool China::IbImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:31,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::isTrueWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - Date::weekday
    linkageType: ''
    returnType: bool
    signature: bool isTrueWeekend(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:56,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:57,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:58,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:59,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:60,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:61,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:62,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:63,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:64,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:65,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:66,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:67,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:68,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:69,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:70,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:71,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:72,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:73,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:74,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:75,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:76,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:77,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:78,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:79,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:80,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:81,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::isEidAlAdha
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlAdha(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:92,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:93,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:94,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:95,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:96,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:97,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:98,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:99,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:100,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:101,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:102,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:103,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:104,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:105,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:106,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:107,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:108,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:109,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:110,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:111,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:112,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:113,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:114,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:115,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:116,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:117,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:118,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:119,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:120,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 125
    functionName: QuantLib::isEidAlFitr
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlFitr(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:31,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::isTrueWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - Date::weekday
    linkageType: ''
    returnType: bool
    signature: bool isTrueWeekend(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:56,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:57,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:58,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:59,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:60,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:61,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:62,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:63,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:64,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:65,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:66,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:67,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:68,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:69,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:70,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:71,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:72,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:73,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:74,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:75,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:76,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:77,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:78,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:79,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:80,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:81,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::isEidAlAdha
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlAdha(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:92,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:93,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:94,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:95,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:96,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:97,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:98,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:99,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:100,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:101,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:102,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:103,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:104,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:105,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:106,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:107,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:108,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:109,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:110,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:111,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:112,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:113,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:114,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:115,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:116,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:117,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:118,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:119,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:120,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 125
    functionName: QuantLib::isEidAlFitr
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlFitr(Date d)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SaudiArabia::TadawulImpl::TadawulImpl
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 140
    functionName: QuantLib::SaudiArabia::SaudiArabia
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - SaudiArabia::TadawulImpl::TadawulImpl
    linkageType: ''
    returnType: void
    signature: void SaudiArabia::SaudiArabia(Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: SaudiArabia::TadawulImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SaudiArabia::TadawulImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:147,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:148,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:149,1
    - Dst: isTrueWeekend
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:151,1
    - Dst: isEidAlAdha
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:152,1
    - Dst: isEidAlFitr
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:153,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 162
    functionName: SaudiArabia::TadawulImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - isEidAlAdha
    - dayOfMonth
    - isTrueWeekend
    - month
    - isEidAlFitr
    - year
    linkageType: ''
    returnType: bool
    signature: bool SaudiArabia::TadawulImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:31,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::isTrueWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - Date::weekday
    linkageType: ''
    returnType: bool
    signature: bool isTrueWeekend(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:56,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:57,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:58,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:59,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:60,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:61,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:62,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:63,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:64,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:65,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:66,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:67,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:68,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:69,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:70,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:71,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:72,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:73,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:74,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:75,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:76,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:77,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:78,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:79,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:80,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:81,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::isEidAlAdha
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlAdha(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:92,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:93,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:94,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:95,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:96,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:97,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:98,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:99,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:100,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:101,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:102,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:103,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:104,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:105,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:106,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:107,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:108,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:109,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:110,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:111,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:112,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:113,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:114,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:115,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:116,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:117,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:118,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:119,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:120,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 125
    functionName: QuantLib::isEidAlFitr
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlFitr(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date::weekday
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:31,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::isTrueWeekend
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date
    - Date::weekday
    linkageType: ''
    returnType: bool
    signature: bool isTrueWeekend(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:56,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:57,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:58,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:59,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:60,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:61,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:62,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:63,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:64,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:65,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:66,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:67,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:68,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:69,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:70,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:71,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:72,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:73,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:74,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:75,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:76,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:77,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:78,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:79,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:80,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:81,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: QuantLib::isEidAlAdha
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlAdha(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:92,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:93,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:94,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:95,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:96,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:97,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:98,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:99,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:100,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:101,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:102,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:103,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:104,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:105,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:106,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:107,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:108,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:109,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:110,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:111,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:112,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:113,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:114,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:115,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:116,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:117,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:118,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:119,1
    - Dst: QuantLib::Date
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:120,1
    - Dst: std::any_of
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 125
    functionName: QuantLib::isEidAlFitr
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - std::any_of
    - std::vector::begin
    - QuantLib::Date
    - std::vector::end
    linkageType: ''
    returnType: bool
    signature: bool isEidAlFitr(Date d)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SaudiArabia::TadawulImpl::TadawulImpl
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - market
    argTypes:
    - Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 140
    functionName: QuantLib::SaudiArabia::SaudiArabia
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - SaudiArabia::TadawulImpl::TadawulImpl
    linkageType: ''
    returnType: void
    signature: void SaudiArabia::SaudiArabia(Market market)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - w
    argTypes:
    - Weekday
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: SaudiArabia::TadawulImpl::isWeekend(Weekday w) const
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SaudiArabia::TadawulImpl::isWeekend(Weekday w) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:147,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:148,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:149,1
    - Dst: isTrueWeekend
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:151,1
    - Dst: isEidAlAdha
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:152,1
    - Dst: isEidAlFitr
      Src: /src/quantlib/ql/time/calendars/saudiarabia.cpp:153,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 162
    functionName: SaudiArabia::TadawulImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/saudiarabia.cpp
    functionUses: 0
    functionsReached:
    - isEidAlAdha
    - dayOfMonth
    - isTrueWeekend
    - month
    - isEidAlFitr
    - year
    linkageType: ''
    returnType: bool
    signature: bool SaudiArabia::TadawulImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Slovakia::BsseImpl::BsseImpl
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Slovakia::Slovakia
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.cpp
    functionUses: 0
    functionsReached:
    - Slovakia::BsseImpl::BsseImpl
    linkageType: ''
    returnType: void
    signature: void Slovakia::Slovakia(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:36,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 72
    functionName: Slovakia::BsseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Slovakia::BsseImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Slovakia::BsseImpl::BsseImpl
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::Slovakia::Slovakia
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.cpp
    functionUses: 0
    functionsReached:
    - Slovakia::BsseImpl::BsseImpl
    linkageType: ''
    returnType: void
    signature: void Slovakia::Slovakia(Market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/slovakia.cpp:36,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 72
    functionName: Slovakia::BsseImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Slovakia::BsseImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Australia::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/australia.cpp:27,1
    - Dst: Australia::AsxImpl::AsxImpl
      Src: /src/quantlib/ql/time/calendars/australia.cpp:29,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/australia.cpp:38,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Australia::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 40
    functionName: QuantLib::Australia::Australia
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Australia::SettlementImpl::SettlementImpl
    - Australia::AsxImpl::AsxImpl
    linkageType: ''
    returnType: void
    signature: void Australia::Australia(Australia::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:43,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/australia.cpp:44,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/australia.cpp:44,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/australia.cpp:45,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/australia.cpp:46,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:47,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/australia.cpp:48,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 76
    functionName: Australia::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Australia::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:79,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/australia.cpp:80,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/australia.cpp:80,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/australia.cpp:81,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/australia.cpp:82,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:83,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/australia.cpp:84,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 108
    functionName: Australia::AsxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Australia::AsxImpl::isBusinessDay(const Date& date) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: Australia::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/australia.cpp:27,1
    - Dst: Australia::AsxImpl::AsxImpl
      Src: /src/quantlib/ql/time/calendars/australia.cpp:29,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/australia.cpp:38,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - market
    argTypes:
    - Australia::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 40
    functionName: QuantLib::Australia::Australia
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Australia::SettlementImpl::SettlementImpl
    - Australia::AsxImpl::AsxImpl
    linkageType: ''
    returnType: void
    signature: void Australia::Australia(Australia::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:43,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/australia.cpp:44,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/australia.cpp:44,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/australia.cpp:45,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/australia.cpp:46,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:47,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/australia.cpp:48,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 76
    functionName: Australia::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Australia::SettlementImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:79,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/australia.cpp:80,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/australia.cpp:80,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/australia.cpp:81,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/australia.cpp:82,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/australia.cpp:83,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/australia.cpp:84,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 108
    functionName: Australia::AsxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/australia.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Australia::AsxImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::UnitedStates::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::UnitedStates::LiborImpactImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::UnitedStates::NyseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::UnitedStates::GovernmentBondImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::UnitedStates::SofrImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: QuantLib::UnitedStates::NercImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::UnitedStates::FederalReserveImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 160
    functionName: QuantLib::UnitedStates::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 165
    functionName: QuantLib::UnitedStates::LiborImpactImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::UnitedStates::NyseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::UnitedStates::GovernmentBondImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: QuantLib::UnitedStates::SofrImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: QuantLib::UnitedStates::NercImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: QuantLib::UnitedStates::FederalReserveImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedstates.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Botswana::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::Botswana::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/botswana.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Turkey::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::Turkey::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/turkey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SouthAfrica::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::SouthAfrica::SouthAfrica
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.cpp
    functionUses: 0
    functionsReached:
    - SouthAfrica::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void SouthAfrica::SouthAfrica()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:37,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 88
    functionName: SouthAfrica::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool SouthAfrica::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SouthAfrica::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::SouthAfrica::SouthAfrica
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.cpp
    functionUses: 0
    functionsReached:
    - SouthAfrica::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void SouthAfrica::SouthAfrica()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:32,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:33,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:33,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:35,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:36,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/southafrica.cpp:37,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 88
    functionName: SouthAfrica::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/southafrica.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool SouthAfrica::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 2
    argCount: 4
    argNames:
    - d
    - w
    - m
    - y
    argTypes:
    - Day
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::isBankHoliday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBankHoliday(Day d, Weekday w, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 2
    argCount: 4
    argNames:
    - d
    - w
    - m
    - y
    argTypes:
    - Day
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::isBankHoliday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBankHoliday(Day d, Weekday w, Month m, Year y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: UnitedKingdom::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:60,1
    - Dst: UnitedKingdom::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:62,1
    - Dst: UnitedKingdom::MetalsImpl::MetalsImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:76,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - market
    argTypes:
    - UnitedKingdom::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 78
    functionName: QuantLib::UnitedKingdom::UnitedKingdom
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - UnitedKingdom::MetalsImpl::MetalsImpl
    - QL_FAIL
    - UnitedKingdom::ExchangeImpl::ExchangeImpl
    - UnitedKingdom::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void UnitedKingdom::UnitedKingdom(UnitedKingdom::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:82,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:83,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:84,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:85,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:86,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:94,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 105
    functionName: UnitedKingdom::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::SettlementImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:109,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:110,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:111,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:112,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:113,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:114,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:122,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 133
    functionName: UnitedKingdom::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:137,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:138,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:138,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:139,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:140,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:141,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:142,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:150,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 161
    functionName: UnitedKingdom::MetalsImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::MetalsImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 2
    argCount: 4
    argNames:
    - d
    - w
    - m
    - y
    argTypes:
    - Day
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::isBankHoliday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBankHoliday(Day d, Weekday w, Month m, Year y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 2
    argCount: 4
    argNames:
    - d
    - w
    - m
    - y
    argTypes:
    - Day
    - Weekday
    - Month
    - Year
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 52
    functionName: QuantLib::isBankHoliday
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isBankHoliday(Day d, Weekday w, Month m, Year y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: UnitedKingdom::SettlementImpl::SettlementImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:60,1
    - Dst: UnitedKingdom::ExchangeImpl::ExchangeImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:62,1
    - Dst: UnitedKingdom::MetalsImpl::MetalsImpl
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:64,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:76,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - market
    argTypes:
    - UnitedKingdom::Market
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 78
    functionName: QuantLib::UnitedKingdom::UnitedKingdom
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - UnitedKingdom::MetalsImpl::MetalsImpl
    - QL_FAIL
    - UnitedKingdom::ExchangeImpl::ExchangeImpl
    - UnitedKingdom::SettlementImpl::SettlementImpl
    linkageType: ''
    returnType: void
    signature: void UnitedKingdom::UnitedKingdom(UnitedKingdom::Market market)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:81,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:82,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:82,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:83,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:84,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:85,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:86,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:94,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 105
    functionName: UnitedKingdom::SettlementImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::SettlementImpl::isBusinessDay(const Date& date)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:109,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:110,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:110,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:111,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:112,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:113,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:114,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:122,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 133
    functionName: UnitedKingdom::ExchangeImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::ExchangeImpl::isBusinessDay(const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:137,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:138,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:138,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:139,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:140,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:141,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:142,1
    - Dst: isBankHoliday
      Src: /src/quantlib/ql/time/calendars/unitedkingdom.cpp:150,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 161
    functionName: UnitedKingdom::MetalsImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/unitedkingdom.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - isBankHoliday
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool UnitedKingdom::MetalsImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Hungary::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Hungary::Impl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/hungary.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Singapore::SgxImpl::SgxImpl
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Singapore::Singapore
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.cpp
    functionUses: 0
    functionsReached:
    - Singapore::SgxImpl::SgxImpl
    linkageType: ''
    returnType: void
    signature: void Singapore::Singapore(Market)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:33,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:34,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:36,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:37,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:39,1
    CyclomaticComplexity: 253
    EdgeCount: 253
    ICount: 28
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 221
    functionName: Singapore::SgxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Singapore::SgxImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Singapore::SgxImpl::SgxImpl
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::Singapore::Singapore
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.cpp
    functionUses: 0
    functionsReached:
    - Singapore::SgxImpl::SgxImpl
    linkageType: ''
    returnType: void
    signature: void Singapore::Singapore(Market)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:33,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:34,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:34,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:35,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:36,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:37,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/singapore.cpp:39,1
    CyclomaticComplexity: 253
    EdgeCount: 253
    ICount: 28
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 221
    functionName: Singapore::SgxImpl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/singapore.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool Singapore::SgxImpl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Poland::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Poland::WseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::Poland::SettlementImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Poland::WseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/poland.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Taiwan::TsecImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Taiwan::TsecImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/taiwan.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/target.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::TARGET::TARGET
    functionSourceFile: /src/quantlib/ql/time/calendars/target.cpp
    functionUses: 0
    functionsReached:
    - TARGET::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void TARGET::TARGET()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/target.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/target.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/target.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/target.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/target.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/target.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/target.cpp:36,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: TARGET::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/target.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool TARGET::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET::Impl::Impl
      Src: /src/quantlib/ql/time/calendars/target.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::TARGET::TARGET
    functionSourceFile: /src/quantlib/ql/time/calendars/target.cpp
    functionUses: 0
    functionsReached:
    - TARGET::Impl::Impl
    linkageType: ''
    returnType: void
    signature: void TARGET::TARGET()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: weekday
      Src: /src/quantlib/ql/time/calendars/target.cpp:31,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/time/calendars/target.cpp:32,1
    - Dst: dayOfYear
      Src: /src/quantlib/ql/time/calendars/target.cpp:32,1
    - Dst: month
      Src: /src/quantlib/ql/time/calendars/target.cpp:33,1
    - Dst: year
      Src: /src/quantlib/ql/time/calendars/target.cpp:34,1
    - Dst: easterMonday
      Src: /src/quantlib/ql/time/calendars/target.cpp:35,1
    - Dst: isWeekend
      Src: /src/quantlib/ql/time/calendars/target.cpp:36,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 54
    functionName: TARGET::Impl::isBusinessDay(const Date& date) const
    functionSourceFile: /src/quantlib/ql/time/calendars/target.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - dayOfYear
    - easterMonday
    - month
    - weekday
    - isWeekend
    - year
    linkageType: ''
    returnType: bool
    signature: bool TARGET::Impl::isBusinessDay(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Slovakia::BsseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::Slovakia::BsseImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/slovakia.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Thailand::SetImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::Thailand::SetImpl::name
    functionSourceFile: /src/quantlib/ql/time/calendars/thailand.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:40,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:42,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' baseVTS'
    - baseIndex
    - targIndex
    - correlation
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<CorrelationStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletVTS
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - tenor
    - dayCounter
    - std::move
    - calendar
    - businessDayConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TenorOptionletVTS::TenorOptionletVTS(const Handle<OptionletVolatilityStructure>&
      baseVTS,\n                                         ext::shared_ptr<IborIndex>
      baseIndex,\n                                         ext::shared_ptr<IborIndex>
      targIndex,\n                                         ext::shared_ptr<CorrelationStructure>
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseVTS_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:60,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:60,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:61,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:62,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:63,1
    - Dst: targIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:64,1
    - Dst: baseIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:66,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:67,1
    - Dst: targIndex_::fixing
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:70,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:71,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:72,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:73,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:74,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:75,1
    - Dst: baseIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:76,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:77,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:79,1
    - Dst: baseVTS_::smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:80,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:82,1
    - Dst: baseIndex_::fixing
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' volTS'
    - optionTime
    argTypes:
    - TenorOptionletVTS
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 86
    functionName: "TenorOptionletVTS::TenorOptionletSmileSection::TenorOptionletSmileSection(\n
      \       const TenorOptionletVTS& volTS, const Time optionTime)"
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - baseIndex_::fixingCalendar
    - targIndex_::dayCounter
    - ClosestRounding
    - referenceDate
    - targIndex_::tenor
    - dayCounter
    - targIndex_::fixing
    - baseIndex_::dayCounter
    - baseVTS_::smileSection
    - push_back
    - Schedule::dates
    - baseIndex_::fixingDays
    - baseIndex_::tenor
    - baseIndex_::fixing
    - baseVTS_::dayCounter
    linkageType: ''
    returnType: void
    signature: "void TenorOptionletVTS::TenorOptionletSmileSection::TenorOptionletSmileSection(\n
      \       const TenorOptionletVTS& volTS, const Time optionTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:93,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:95,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:100,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 107
    functionName: TenorOptionletVTS::TenorOptionletSmileSection::volatilityImpl(Rate
      strike) const
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - size
    - volatility
    - std::vector::size
    - sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility TenorOptionletVTS::TenorOptionletSmileSection::volatilityImpl(Rate
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:40,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:41,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:42,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    - Dst: tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' baseVTS'
    - baseIndex
    - targIndex
    - correlation
    argTypes:
    - Handle<OptionletVolatilityStructure>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<CorrelationStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletVTS
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - tenor
    - dayCounter
    - std::move
    - calendar
    - businessDayConvention
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TenorOptionletVTS::TenorOptionletVTS(const Handle<OptionletVolatilityStructure>&
      baseVTS,\n                                         ext::shared_ptr<IborIndex>
      baseIndex,\n                                         ext::shared_ptr<IborIndex>
      targIndex,\n                                         ext::shared_ptr<CorrelationStructure>
      correlation)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseVTS_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:53,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:58,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:60,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:60,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:61,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:62,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:63,1
    - Dst: targIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:64,1
    - Dst: baseIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:66,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:67,1
    - Dst: targIndex_::fixing
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:70,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:71,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:72,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:73,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:74,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:75,1
    - Dst: baseIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:76,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:77,1
    - Dst: Schedule::dates
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:79,1
    - Dst: baseVTS_::smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:80,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:82,1
    - Dst: baseIndex_::fixing
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' volTS'
    - optionTime
    argTypes:
    - TenorOptionletVTS
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 86
    functionName: "TenorOptionletVTS::TenorOptionletSmileSection::TenorOptionletSmileSection(\n
      \       const TenorOptionletVTS& volTS, const Time optionTime)"
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - baseIndex_::fixingCalendar
    - targIndex_::dayCounter
    - ClosestRounding
    - referenceDate
    - targIndex_::tenor
    - dayCounter
    - targIndex_::fixing
    - baseIndex_::dayCounter
    - baseVTS_::smileSection
    - push_back
    - Schedule::dates
    - baseIndex_::fixingDays
    - baseIndex_::tenor
    - baseIndex_::fixing
    - baseVTS_::dayCounter
    linkageType: ''
    returnType: void
    signature: "void TenorOptionletVTS::TenorOptionletSmileSection::TenorOptionletSmileSection(\n
      \       const TenorOptionletVTS& volTS, const Time optionTime)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:92,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:93,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:95,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:98,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:100,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp:105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 107
    functionName: TenorOptionletVTS::TenorOptionletSmileSection::volatilityImpl(Rate
      strike) const
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.cpp
    functionUses: 0
    functionsReached:
    - size
    - volatility
    - std::vector::size
    - sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility TenorOptionletVTS::TenorOptionletSmileSection::volatilityImpl(Rate
      strike) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:42,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:44,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:47,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:49,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:49,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:52,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:54,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:55,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:56,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:57,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:59,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:60,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:66,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:67,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:69,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:77,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:77,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:81,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:83,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:83,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: Size::date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:91,1
    - Dst: Size::amount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:91,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - ' iborLeg'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - Leg
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 92
    functionName: QuantLib::IborLegCashFlows::IborLegCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - FixedRateCoupon::FixedRateCoupon
    - Size::amount
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - ext::shared_ptr::accrualEndDate
    - referenceDate
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - size
    - Actual365Fixed::yearFraction
    - push_back
    - QL_FAIL
    - Size::date
    - SimpleCashFlow::SimpleCashFlow
    - accrualStartDate
    - discount
    linkageType: ''
    returnType: void
    signature: "void IborLegCashFlows::IborLegCashFlows(const Leg& iborLeg,\n                                       const
      Handle<YieldTermStructure>& discountCurve,\n                                       bool
      contTenorSpread)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:97,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:99,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:102,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:109,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:109,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 3
    argNames:
    - ' swap'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - ext::shared_ptr<FixedVsFloatingSwap>
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 115
    functionName: QuantLib::SwapCashFlows::SwapCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - fixedLeg
    - floatingLeg
    - date
    - Actual365Fixed::yearFraction
    - push_back
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    linkageType: ''
    returnType: void
    signature: "void SwapCashFlows::SwapCashFlows(const ext::shared_ptr<FixedVsFloatingSwap>&
      swap,\n                                 const Handle<YieldTermStructure>& discountCurve,\n
      \                                bool contTenorSpread)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: underlying
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:122,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:127,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:128,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:129,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:130,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - ext::shared_ptr<Swaption>
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 131
    functionName: QuantLib::SwaptionCashFlows::SwaptionCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - underlying
    - Actual365Fixed::yearFraction
    - push_back
    linkageType: ''
    returnType: void
    signature: "void SwaptionCashFlows::SwaptionCashFlows(const ext::shared_ptr<Swaption>&
      swaption,\n                                         const Handle<YieldTermStructure>&
      discountCurve,\n                                         bool contTenorSpread)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:37,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:41,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:42,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:42,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:44,1
    - Dst: accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:44,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:47,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:49,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:49,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:52,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:54,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:55,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:56,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:57,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:59,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:59,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:60,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:66,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:67,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:69,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:77,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:77,1
    - Dst: FixedRateCoupon::FixedRateCoupon
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:76,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:81,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:81,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: ext::shared_ptr<CashFlow>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:83,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:83,1
    - Dst: SimpleCashFlow::SimpleCashFlow
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: Size::date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:89,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:91,1
    - Dst: Size::amount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:91,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - ' iborLeg'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - Leg
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 92
    functionName: QuantLib::IborLegCashFlows::IborLegCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::accrualPeriod
    - FixedRateCoupon::FixedRateCoupon
    - Size::amount
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - back
    - ext::shared_ptr::accrualEndDate
    - referenceDate
    - ext::shared_ptr<CashFlow>
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - size
    - Actual365Fixed::yearFraction
    - push_back
    - QL_FAIL
    - Size::date
    - SimpleCashFlow::SimpleCashFlow
    - accrualStartDate
    - discount
    linkageType: ''
    returnType: void
    signature: "void IborLegCashFlows::IborLegCashFlows(const Leg& iborLeg,\n                                       const
      Handle<YieldTermStructure>& discountCurve,\n                                       bool
      contTenorSpread)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:97,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:99,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:101,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:102,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:107,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:109,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:109,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:113,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 3
    argNames:
    - ' swap'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - ext::shared_ptr<FixedVsFloatingSwap>
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 115
    functionName: QuantLib::SwapCashFlows::SwapCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - fixedLeg
    - floatingLeg
    - date
    - Actual365Fixed::yearFraction
    - push_back
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::dynamic_pointer_cast<Coupon>
    - amount
    linkageType: ''
    returnType: void
    signature: "void SwapCashFlows::SwapCashFlows(const ext::shared_ptr<FixedVsFloatingSwap>&
      swap,\n                                 const Handle<YieldTermStructure>& discountCurve,\n
      \                                bool contTenorSpread)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: underlying
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:122,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:127,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:128,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:129,1
    - Dst: Actual365Fixed::yearFraction
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:130,1
    - Dst: exercise
      Src: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - ' discountCurve'
    - contTenorSpread
    argTypes:
    - ext::shared_ptr<Swaption>
    - Handle<YieldTermStructure>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 131
    functionName: QuantLib::SwaptionCashFlows::SwaptionCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.cpp
    functionUses: 0
    functionsReached:
    - exercise
    - underlying
    - Actual365Fixed::yearFraction
    - push_back
    linkageType: ''
    returnType: void
    signature: "void SwaptionCashFlows::SwaptionCashFlows(const ext::shared_ptr<Swaption>&
      swaption,\n                                         const Handle<YieldTermStructure>&
      discountCurve,\n                                         bool contTenorSpread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& floatLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& floatTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & floatTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& floatWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & floatWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::IborLegCashFlows::IborLegCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborLegCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::SwapCashFlows::SwapCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: '& fixedTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & fixedTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: '& fixedWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & fixedWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& annuityWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & annuityWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::SwaptionCashFlows::SwaptionCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::SwaptionCashFlows::swaption
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Swaption>
    signature: ext::shared_ptr<Swaption> swaption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& exerciseTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& floatLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & floatLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& floatTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & floatTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& floatWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & floatWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::IborLegCashFlows::IborLegCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IborLegCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::SwapCashFlows::SwapCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwapCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: '& fixedTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & fixedTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: '& fixedWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & fixedWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: '& annuityWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & annuityWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::SwaptionCashFlows::SwaptionCashFlows
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwaptionCashFlows()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::SwaptionCashFlows::swaption
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Swaption>
    signature: ext::shared_ptr<Swaption> swaption() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: '& exerciseTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/swaptioncfs.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & exerciseTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:86,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:87,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:88,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' baseVTS'
    - discountCurve
    - baseIndex
    - targIndex
    - ' baseFixedFreq'
    - ' targFixedFreq'
    - baseFixedDC
    - targFixedDC
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<YieldTermStructure>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<IborIndex>
    - Period
    - Period
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 93
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionVTS
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - dayCounter
    - std::move
    - calendar
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void TenorSwaptionVTS(const Handle<SwaptionVolatilityStructure>& baseVTS,\n
      \                        Handle<YieldTermStructure> discountCurve,\n                         ext::shared_ptr<IborIndex>
      baseIndex,\n                         ext::shared_ptr<IborIndex> targIndex,\n
      \                        const Period& baseFixedFreq,\n                         const
      Period& targFixedFreq,\n                         DayCounter baseFixedDC,\n                         DayCounter
      targFixedDC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::maxDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::TenorSwaptionVTS::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorSwaptionVTS::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::TenorSwaptionVTS::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorSwaptionVTS::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::TenorSwaptionVTS::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorSwaptionVTS::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:115,1
    - Dst: TenorSwaptionSmileSection::TenorSwaptionSmileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::TenorSwaptionVTS::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - TenorSwaptionSmileSection::TenorSwaptionSmileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> smileSectionImpl(Time optionTime,\n
      \                                                      Time swapLength) const
      override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::smileSectionImpl
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TenorSwaptionVTS::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TenorSwaptionVTS::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Time optionTime, Time swapLength, Rate strike)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::TenorSwaptionVTS::volatilityType
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:86,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:87,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:88,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - ' baseVTS'
    - discountCurve
    - baseIndex
    - targIndex
    - ' baseFixedFreq'
    - ' targFixedFreq'
    - baseFixedDC
    - targFixedDC
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<YieldTermStructure>
    - ext::shared_ptr<IborIndex>
    - ext::shared_ptr<IborIndex>
    - Period
    - Period
    - DayCounter
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 93
    functionName: QuantLib::TenorSwaptionVTS::TenorSwaptionVTS
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - dayCounter
    - std::move
    - calendar
    - businessDayConvention
    linkageType: ''
    returnType: void
    signature: "void TenorSwaptionVTS(const Handle<SwaptionVolatilityStructure>& baseVTS,\n
      \                        Handle<YieldTermStructure> discountCurve,\n                         ext::shared_ptr<IborIndex>
      baseIndex,\n                         ext::shared_ptr<IborIndex> targIndex,\n
      \                        const Period& baseFixedFreq,\n                         const
      Period& targFixedFreq,\n                         DayCounter baseFixedDC,\n                         DayCounter
      targFixedDC)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::maxDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: QuantLib::TenorSwaptionVTS::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorSwaptionVTS::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::TenorSwaptionVTS::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorSwaptionVTS::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::TenorSwaptionVTS::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorSwaptionVTS::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxSwapTenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: '& maxSwapTenor() const override'
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - maxSwapTenor
    linkageType: ''
    returnType: Period
    signature: Period & maxSwapTenor() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:115,1
    - Dst: TenorSwaptionSmileSection::TenorSwaptionSmileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - swapLength
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionName: QuantLib::TenorSwaptionVTS::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - TenorSwaptionSmileSection::TenorSwaptionSmileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> smileSectionImpl(Time optionTime,\n
      \                                                      Time swapLength) const
      override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorSwaptionVTS::smileSectionImpl
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - optionTime
    - swapLength
    - strike
    argTypes:
    - Time
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TenorSwaptionVTS::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TenorSwaptionVTS::smileSectionImpl
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Time optionTime, Time swapLength, Rate strike)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::TenorSwaptionVTS::volatilityType
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseVTS_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:39,1
    - Dst: baseVTS_::smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:40,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:45,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:45,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:46,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:47,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:48,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:52,1
    - Dst: targIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:55,1
    - Dst: baseIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:57,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:58,1
    - Dst: targIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:60,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:61,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:64,1
    - Dst: baseIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:66,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:67,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:69,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:70,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:72,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:74,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:75,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:75,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:76,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:77,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:77,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:78,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:79,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:79,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:81,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:82,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:83,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:85,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:86,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:86,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:89,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:90,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:90,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:95,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:99,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:104,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:108,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:116,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:120,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:121,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:121,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:122,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:123,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:123,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:126,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:126,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - ' volTS'
    - optionTime
    - swapLength
    argTypes:
    - TenorSwaptionVTS
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 127
    functionName: "TenorSwaptionVTS::TenorSwaptionSmileSection::TenorSwaptionSmileSection(\n
      \       const TenorSwaptionVTS& volTS, Time optionTime, Time swapLength)"
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp
    functionUses: 0
    functionsReached:
    - SwaptionCashFlows::floatWeights
    - ext::make_shared<VanillaSwap>
    - dayCounter
    - auto::fairRate
    - baseIndex_::fixingDays
    - ClosestRounding
    - referenceDate
    - ext::shared_ptr<Exercise>
    - baseVTS_::smileSection
    - SwaptionCashFlows::annuityWeights
    - auto::setPricingEngine
    - baseIndex_::tenor
    - baseVTS_::dayCounter
    - ext::make_shared<Swaption>
    - targIndex_::fixingCalendar
    - DiscountingSwapEngine::DiscountingSwapEngine
    - SwaptionCashFlows::floatTimes
    - auto::fixedLegBPS
    - baseIndex_::fixingCalendar
    - targIndex_::tenor
    - EuropeanExercise::EuropeanExercise
    - baseIndex_::dayCounter
    - ext::shared_ptr<PricingEngine>
    - SwaptionCashFlows::fixedTimes
    - targIndex_::dayCounter
    linkageType: ''
    returnType: void
    signature: "void TenorSwaptionVTS::TenorSwaptionSmileSection::TenorSwaptionSmileSection(\n
      \       const TenorSwaptionVTS& volTS, Time optionTime, Time swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: TenorSwaptionVTS::TenorSwaptionSmileSection::volatilityImpl(Rate
      strike) const
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp
    functionUses: 0
    functionsReached:
    - volatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility TenorSwaptionVTS::TenorSwaptionSmileSection::volatilityImpl(Rate
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: baseVTS_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:39,1
    - Dst: baseVTS_::smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:40,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:43,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:45,1
    - Dst: ClosestRounding
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:45,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:46,1
    - Dst: baseIndex_::fixingDays
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:47,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:48,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:52,1
    - Dst: targIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:55,1
    - Dst: baseIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:57,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:58,1
    - Dst: targIndex_::tenor
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:60,1
    - Dst: baseIndex_::fixingCalendar
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:61,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:64,1
    - Dst: baseIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:66,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:67,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:69,1
    - Dst: ext::make_shared<VanillaSwap>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:70,1
    - Dst: targIndex_::dayCounter
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:72,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:74,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:75,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:75,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:76,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:77,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:77,1
    - Dst: auto::setPricingEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:78,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:79,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:79,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:81,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:82,1
    - Dst: auto::fairRate
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:83,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:85,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:86,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:86,1
    - Dst: ext::make_shared<Swaption>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:89,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:90,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:90,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:95,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:99,1
    - Dst: SwaptionCashFlows::annuityWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:101,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:104,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:108,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:109,1
    - Dst: SwaptionCashFlows::fixedTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:116,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:120,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:121,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:121,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:122,1
    - Dst: SwaptionCashFlows::floatWeights
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:123,1
    - Dst: SwaptionCashFlows::floatTimes
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:123,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:126,1
    - Dst: auto::fixedLegBPS
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:126,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - ' volTS'
    - optionTime
    - swapLength
    argTypes:
    - TenorSwaptionVTS
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 127
    functionName: "TenorSwaptionVTS::TenorSwaptionSmileSection::TenorSwaptionSmileSection(\n
      \       const TenorSwaptionVTS& volTS, Time optionTime, Time swapLength)"
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp
    functionUses: 0
    functionsReached:
    - SwaptionCashFlows::floatWeights
    - ext::make_shared<VanillaSwap>
    - dayCounter
    - auto::fairRate
    - baseIndex_::fixingDays
    - ClosestRounding
    - referenceDate
    - ext::shared_ptr<Exercise>
    - baseVTS_::smileSection
    - SwaptionCashFlows::annuityWeights
    - auto::setPricingEngine
    - baseIndex_::tenor
    - baseVTS_::dayCounter
    - ext::make_shared<Swaption>
    - targIndex_::fixingCalendar
    - DiscountingSwapEngine::DiscountingSwapEngine
    - SwaptionCashFlows::floatTimes
    - auto::fixedLegBPS
    - baseIndex_::fixingCalendar
    - targIndex_::tenor
    - EuropeanExercise::EuropeanExercise
    - baseIndex_::dayCounter
    - ext::shared_ptr<PricingEngine>
    - SwaptionCashFlows::fixedTimes
    - targIndex_::dayCounter
    linkageType: ''
    returnType: void
    signature: "void TenorSwaptionVTS::TenorSwaptionSmileSection::TenorSwaptionSmileSection(\n
      \       const TenorSwaptionVTS& volTS, Time optionTime, Time swapLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionName: TenorSwaptionVTS::TenorSwaptionSmileSection::volatilityImpl(Rate
      strike) const
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenorswaptionvts.cpp
    functionUses: 0
    functionsReached:
    - volatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility TenorSwaptionVTS::TenorSwaptionSmileSection::volatilityImpl(Rate
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~CorrelationStructure()
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CorrelationStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rhoInf
    - beta
    argTypes:
    - ext::shared_ptr<Interpolation>
    - ext::shared_ptr<Interpolation>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::TenorOptionletVTS::TwoParameterCorrelation::TwoParameterCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TwoParameterCorrelation(ext::shared_ptr<Interpolation> rhoInf,\n
      \                                   ext::shared_ptr<Interpolation> beta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:96,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start1'
    - ' start2'
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: operator()(const Time& start1, const Time& start2) const override
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - fabs
    - exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Time& start1, const Time& start2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::maxDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::TenorOptionletVTS::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorOptionletVTS::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:116,1
    - Dst: TenorOptionletSmileSection::TenorOptionletSmileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::TenorOptionletVTS::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - TenorOptionletSmileSection::TenorOptionletSmileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> smileSectionImpl(Time optionTime) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TenorOptionletVTS::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - smileSection
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Time optionTime, Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::TenorOptionletVTS::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorOptionletVTS::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: QuantLib::TenorOptionletVTS::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::TenorOptionletVTS::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::TenorOptionletVTS::volatilityType
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::minStrike
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::maxStrike
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::TenorOptionletVTS::TenorOptionletSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~CorrelationStructure()
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CorrelationStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:92,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rhoInf
    - beta
    argTypes:
    - ext::shared_ptr<Interpolation>
    - ext::shared_ptr<Interpolation>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::TenorOptionletVTS::TwoParameterCorrelation::TwoParameterCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void TwoParameterCorrelation(ext::shared_ptr<Interpolation> rhoInf,\n
      \                                   ext::shared_ptr<Interpolation> beta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:96,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start1'
    - ' start2'
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: operator()(const Time& start1, const Time& start2) const override
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - fabs
    - exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Time& start1, const Time& start2) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::maxDate
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::TenorOptionletVTS::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorOptionletVTS::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<SmileSection>
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:116,1
    - Dst: TenorOptionletSmileSection::TenorOptionletSmileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - optionTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::TenorOptionletVTS::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<SmileSection>
    - TenorOptionletSmileSection::TenorOptionletSmileSection
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> smileSectionImpl(Time optionTime) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSection
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - optionTime
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::TenorOptionletVTS::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached:
    - smileSection
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Time optionTime, Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::minStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::TenorOptionletVTS::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorOptionletVTS::minStrike
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TenorOptionletVTS::maxStrike
      Src: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: QuantLib::TenorOptionletVTS::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::TenorOptionletVTS::maxStrike
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: QuantLib::TenorOptionletVTS::volatilityType
    functionSourceFile: /src/quantlib/ql/experimental/basismodels/tenoroptionletvts.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: VolatilityType
    signature: VolatilityType volatilityType() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:114,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:115,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:118,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:119,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 12
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' lag'
    - ' capFloorPrices'
    - pricer
    - yoyOptionletStripper
    - slope
    - ' interpolator'
    - volType
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - ext::shared_ptr<YoYOptionletStripper>
    - Real
    - Interpolator1D
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 122
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::KInterpolatedYoYOptionletVolatilitySurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - yoyIndex
    - std::move
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \       KInterpolatedYoYOptionletVolatilitySurface(\n            const Natural
      settlementDays,\n            const Calendar& cal,\n            const BusinessDayConvention
      bdc,\n            const DayCounter& dc,\n            const Period& lag,\n            const
      ext::shared_ptr<YoYCapFloorTermPriceSurface>& capFloorPrices,\n            ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer,\n            ext::shared_ptr<YoYOptionletStripper> yoyOptionletStripper,\n
      \           const Real slope,\n            const Interpolator1D& interpolator,\n
      \           VolatilityType volType,\n            Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:128,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:129,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - maturities
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   maxDate() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - strikes
    linkageType: ''
    returnType: Real
    signature: "Real KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   minStrike() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - strikes
    linkageType: ''
    returnType: Real
    signature: "Real KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   maxStrike() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 1
    functionsReached:
    - initialize
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   performCalculations() const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:161,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::allowsExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:162,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::tempKinterpolation_::enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:163,1
    - Dst: tempKinterpolation_
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - d
    - strike
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 166
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::tempKinterpolation_::enableExtrapolation
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::allowsExtrapolation
    - tempKinterpolation_
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    linkageType: ''
    returnType: Volatility
    signature: "Volatility KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   volatilityImpl(const Date &d, Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::Dslice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    linkageType: ''
    returnType: std::pair<std::vector<Rate>, std::vector<Volatility> >
    signature: "std::pair<std::vector<Rate>, std::vector<Volatility> > KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   Dslice(const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:182,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:183,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - length
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 187
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    - Period
    - referenceDate
    - floor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   volatilityImpl(Time length,  Rate strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: slice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:194,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:197,1
    - Dst: first::begin
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:197,1
    - Dst: first::end
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:198,1
    - Dst: second::begin
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 203
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 2
    functionsReached:
    - second::begin
    - first::begin
    - interpolate
    - slice
    - first::end
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   updateSlice(const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:114,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:115,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:118,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:119,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 12
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' lag'
    - ' capFloorPrices'
    - pricer
    - yoyOptionletStripper
    - slope
    - ' interpolator'
    - volType
    - displacement
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - ext::shared_ptr<YoYOptionletStripper>
    - Real
    - Interpolator1D
    - VolatilityType
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 122
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::KInterpolatedYoYOptionletVolatilitySurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - yoyIndex
    - std::move
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \       KInterpolatedYoYOptionletVolatilitySurface(\n            const Natural
      settlementDays,\n            const Calendar& cal,\n            const BusinessDayConvention
      bdc,\n            const DayCounter& dc,\n            const Period& lag,\n            const
      ext::shared_ptr<YoYCapFloorTermPriceSurface>& capFloorPrices,\n            ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer,\n            ext::shared_ptr<YoYOptionletStripper> yoyOptionletStripper,\n
      \           const Real slope,\n            const Interpolator1D& interpolator,\n
      \           VolatilityType volType,\n            Real displacement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:128,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:129,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - maturities
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: "Date KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   maxDate() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - strikes
    linkageType: ''
    returnType: Real
    signature: "Real KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   minStrike() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - strikes
    linkageType: ''
    returnType: Real
    signature: "Real KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   maxStrike() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initialize
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 2
    functionsReached:
    - initialize
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   performCalculations() const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:161,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::allowsExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:162,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::tempKinterpolation_::enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:163,1
    - Dst: tempKinterpolation_
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - d
    - strike
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 166
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::tempKinterpolation_::enableExtrapolation
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::allowsExtrapolation
    - tempKinterpolation_
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    linkageType: ''
    returnType: Volatility
    signature: "Volatility KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   volatilityImpl(const Date &d, Rate strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::Dslice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    linkageType: ''
    returnType: std::pair<std::vector<Rate>, std::vector<Volatility> >
    signature: "std::pair<std::vector<Rate>, std::vector<Volatility> > KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   Dslice(const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:182,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:183,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:184,1
    - Dst: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - length
    - strike
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 187
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::volatilityImpl
    - Period
    - referenceDate
    - floor
    linkageType: ''
    returnType: Volatility
    signature: "Volatility KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   volatilityImpl(Time length,  Rate strike) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: slice
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:194,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:197,1
    - Dst: first::begin
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:197,1
    - Dst: first::end
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:198,1
    - Dst: second::begin
      Src: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 203
    functionName: QuantLib::KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::updateSlice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp
    functionUses: 4
    functionsReached:
    - second::begin
    - first::begin
    - interpolate
    - slice
    - first::end
    linkageType: ''
    returnType: void
    signature: "void KInterpolatedYoYOptionletVolatilitySurface<Interpolator1D>::\n
      \   updateSlice(const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::InterpolatingCPICapFloorEngine::name
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~InterpolatingCPICapFloorEngine() override
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatingCPICapFloorEngine() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::InterpolatingCPICapFloorEngine::name
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: ~InterpolatingCPICapFloorEngine() override
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatingCPICapFloorEngine() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYOptionletVolatilitySurface*::baseDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::YoYInflationVolatilityTraits::initialDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - YoYOptionletVolatilitySurface*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YoYOptionletVolatilitySurface *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYOptionletVolatilitySurface*::baseLevel
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::YoYInflationVolatilityTraits::initialValue
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - YoYOptionletVolatilitySurface*::baseLevel
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YoYOptionletVolatilitySurface *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::YoYInflationVolatilityTraits::guess
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:77,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - c
    argTypes:
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYInflationVolatilityTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - c
    argTypes:
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::YoYInflationVolatilityTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - vols
    - level
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::YoYInflationVolatilityTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real> &vols,\n                                Real
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::YoYInflationVolatilityTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:146,1
    - Dst: setup
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' lag'
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - baseYoYVolatility
    - instruments
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - Volatility
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 148
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve::PiecewiseYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYOptionletVolatilityCurve(\n            Natural settlementDays,\n
      \           const Calendar& cal,\n            BusinessDayConvention bdc,\n            const
      DayCounter& dc,\n            const Period& lag,\n            Frequency frequency,\n
      \           bool indexIsInterpolated,\n            Rate minStrike,\n            Rate
      maxStrike,\n            Volatility baseYoYVolatility,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            Real accuracy = 1.0e-12,\n            const
      Interpolator& interpolator = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:183,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
    - QuantLib::InflationTermStructure::baseDate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYOptionletVolatilityCurve<I,B,T>::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:189,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYOptionletVolatilityCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:196,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::times() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:203,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 3
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::dates() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:210,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::data() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:217,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYoYOptionletVolatilityCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYOptionletVolatilityCurve<I,B,T>::performCalculations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:229,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYOptionletVolatilityCurve<I,B,T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYOptionletVolatilitySurface*::baseDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::YoYInflationVolatilityTraits::initialDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - YoYOptionletVolatilitySurface*::baseDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const YoYOptionletVolatilitySurface *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: YoYOptionletVolatilitySurface*::baseLevel
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: QuantLib::YoYInflationVolatilityTraits::initialValue
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - YoYOptionletVolatilitySurface*::baseLevel
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const YoYOptionletVolatilitySurface *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::YoYInflationVolatilityTraits::guess
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:77,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - c
    argTypes:
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: QuantLib::YoYInflationVolatilityTraits::minValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - c
    argTypes:
    - Size
    - C*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: QuantLib::YoYInflationVolatilityTraits::maxValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool,\n                                  Size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - vols
    - level
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::YoYInflationVolatilityTraits::updateGuess
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real> &vols,\n                                Real
      level,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::YoYInflationVolatilityTraits::maxIterations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:134,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:146,1
    - Dst: setup
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    - ' lag'
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - baseYoYVolatility
    - instruments
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - Volatility
    - std::vector<ext::shared_ptr<typename Traits::helper> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 148
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve::PiecewiseYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - setup
    - std::move
    - Interpolator
    linkageType: ''
    returnType: void
    signature: "void PiecewiseYoYOptionletVolatilityCurve(\n            Natural settlementDays,\n
      \           const Calendar& cal,\n            BusinessDayConvention bdc,\n            const
      DayCounter& dc,\n            const Period& lag,\n            Frequency frequency,\n
      \           bool indexIsInterpolated,\n            Rate minStrike,\n            Rate
      maxStrike,\n            Volatility baseYoYVolatility,\n            std::vector<ext::shared_ptr<typename
      Traits::helper> > instruments,\n            Real accuracy = 1.0e-12,\n            const
      Interpolator& interpolator = Interpolator())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:183,1
    - Dst: QuantLib::InflationTermStructure::baseDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
    - QuantLib::InflationTermStructure::baseDate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYOptionletVolatilityCurve<I,B,T>::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:189,1
    - Dst: QuantLib::FdmAffineModelTermStructure::maxDate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmAffineModelTermStructure::maxDate
    - QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::calculate
    linkageType: ''
    returnType: Date
    signature: Date PiecewiseYoYOptionletVolatilityCurve<I,B,T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:196,1
    - Dst: base_curve::times
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::times() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - base_curve::times
    - calculate
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:203,1
    - Dst: QuantLib::TimeSeries<T,C>::dates
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 3
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::dates() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TimeSeries<T,C>::dates
    - calculate
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:210,1
    - Dst: base_curve::data
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionName: "&\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::data() const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - base_curve::data
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    PiecewiseYoYOptionletVolatilityCurve<I,B,T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:217,1
    - Dst: QuantLib::ChebyshevInterpolation::nodes
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::nodes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ChebyshevInterpolation::nodes
    - calculate
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > PiecewiseYoYOptionletVolatilityCurve<I,B,T>::nodes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYOptionletVolatilityCurve<I,B,T>::performCalculations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:229,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: QuantLib::PiecewiseYoYOptionletVolatilityCurve<I,B,T>::update
    functionSourceFile: /src/quantlib/ql/experimental/inflation/piecewiseyoyoptionletvolatility.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void PiecewiseYoYOptionletVolatilityCurve<I,B,T>::update()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:40,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:59,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:61,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:68,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:76,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:87,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:88,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:91,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:99,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 13
    argNames:
    - fixingDays
    - ' lag'
    - ' yii'
    - interpolation
    - nominal
    - ' dc'
    - ' cal'
    - ' bdc'
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 101
    functionName: QuantLib::YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - rows
    - std::move
    - push_back
    - Period
    - columns
    - detail::CPI::isInterpolated
    - size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface(\n        Natural
      fixingDays,\n        const Period& lag,\n        const ext::shared_ptr<YoYInflationIndex>&
      yii,\n        CPI::InterpolationType interpolation,\n        Handle<YieldTermStructure>
      nominal,\n        const DayCounter& dc,\n        const Calendar& cal,\n        const
      BusinessDayConvention& bdc,\n        const std::vector<Rate>& cStrikes,\n        const
      std::vector<Rate>& fStrikes,\n        const std::vector<Period>& cfMaturities,\n
      \       const Matrix& cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - fixingDays
    - ' yyLag'
    - ' yii'
    - baseRate
    - nominal
    - ' dc'
    - ' cal'
    - ' bdc'
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 118
    functionName: QuantLib::YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface(\n        Natural
      fixingDays,\n        const Period& yyLag,\n        const ext::shared_ptr<YoYInflationIndex>&
      yii,\n        Rate baseRate,\n        Handle<YieldTermStructure> nominal,\n
      \       const DayCounter& dc,\n        const Calendar& cal,\n        const BusinessDayConvention&
      bdc,\n        const std::vector<Rate>& cStrikes,\n        const std::vector<Rate>&
      fStrikes,\n        const std::vector<Period>& cfMaturities,\n        const Matrix&
      cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::price
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:126,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::YoYCapFloorTermPriceSurface::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::price
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::price(const Period &d, const Rate
      k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::capPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:130,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::YoYCapFloorTermPriceSurface::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::capPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::capPrice(const Period &d, const Rate
      k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:134,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::YoYCapFloorTermPriceSurface::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::floorPrice
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::floorPrice(const Period &d, const
      Rate k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:139,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYCapFloorTermPriceSurface::atmYoYSwapRate(const Period &d,\n
      \                       bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:145,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - ' obsLag'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYCapFloorTermPriceSurface::atmYoYRate(const Period &d,\n                                                 const
      Period& obsLag,\n                    bool extrapolate) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:40,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:59,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:61,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:64,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:68,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:76,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:87,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:88,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:91,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:98,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:99,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 13
    argNames:
    - fixingDays
    - ' lag'
    - ' yii'
    - interpolation
    - nominal
    - ' dc'
    - ' cal'
    - ' bdc'
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 101
    functionName: QuantLib::YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - rows
    - std::move
    - push_back
    - Period
    - columns
    - detail::CPI::isInterpolated
    - size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface(\n        Natural
      fixingDays,\n        const Period& lag,\n        const ext::shared_ptr<YoYInflationIndex>&
      yii,\n        CPI::InterpolationType interpolation,\n        Handle<YieldTermStructure>
      nominal,\n        const DayCounter& dc,\n        const Calendar& cal,\n        const
      BusinessDayConvention& bdc,\n        const std::vector<Rate>& cStrikes,\n        const
      std::vector<Rate>& fStrikes,\n        const std::vector<Period>& cfMaturities,\n
      \       const Matrix& cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 13
    argNames:
    - fixingDays
    - ' yyLag'
    - ' yii'
    - baseRate
    - nominal
    - ' dc'
    - ' cal'
    - ' bdc'
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 118
    functionName: QuantLib::YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYCapFloorTermPriceSurface::YoYCapFloorTermPriceSurface(\n        Natural
      fixingDays,\n        const Period& yyLag,\n        const ext::shared_ptr<YoYInflationIndex>&
      yii,\n        Rate baseRate,\n        Handle<YieldTermStructure> nominal,\n
      \       const DayCounter& dc,\n        const Calendar& cal,\n        const BusinessDayConvention&
      bdc,\n        const std::vector<Rate>& cStrikes,\n        const std::vector<Rate>&
      fStrikes,\n        const std::vector<Period>& cfMaturities,\n        const Matrix&
      cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 5
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::price
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:126,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: QuantLib::YoYCapFloorTermPriceSurface::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::price
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::price(const Period &d, const Rate
      k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::capPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:130,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: QuantLib::YoYCapFloorTermPriceSurface::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::capPrice
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::capPrice(const Period &d, const Rate
      k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:134,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: QuantLib::YoYCapFloorTermPriceSurface::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::floorPrice
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real YoYCapFloorTermPriceSurface::floorPrice(const Period &d, const
      Rate k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:139,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::atmYoYSwapRate
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYCapFloorTermPriceSurface::atmYoYSwapRate(const Period &d,\n
      \                       bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:145,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - d
    - ' obsLag'
    - extrapolate
    argTypes:
    - Period
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::yoyOptionDateFromTenor
    - QuantLib::YoYCapFloorTermPriceSurface::atmYoYRate
    linkageType: ''
    returnType: Rate
    signature: "Rate YoYCapFloorTermPriceSurface::atmYoYRate(const Period &d,\n                                                 const
      Period& obsLag,\n                    bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Data::Data
      Src: /src/quantlib/ql/experimental/inflation/genericindexes.hpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: GenericRegion::GenericRegion
    functionSourceFile: /src/quantlib/ql/experimental/inflation/genericindexes.hpp
    functionUses: 0
    functionsReached:
    - Data::Data
    linkageType: ''
    returnType: void
    signature: void GenericRegion()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GenericRegion
      Src: /src/quantlib/ql/experimental/inflation/genericindexes.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - frequency
    - revised
    - ' lag'
    - ' ccy'
    argTypes:
    - Frequency
    - bool
    - Period
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: GenericCPI::GenericCPI
    functionSourceFile: /src/quantlib/ql/experimental/inflation/genericindexes.hpp
    functionUses: 0
    functionsReached:
    - GenericRegion
    linkageType: ''
    returnType: void
    signature: "void GenericCPI(\n            Frequency frequency,\n            bool
      revised,\n            const Period& lag,\n            const Currency& ccy,\n
      \           const Handle<ZeroInflationTermStructure>& ts = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GenericRegion
      Src: /src/quantlib/ql/experimental/inflation/genericindexes.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - frequency
    - revised
    - lag
    - ccy
    argTypes:
    - Frequency
    - bool
    - Period
    - Currency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionName: YYGenericCPI::YYGenericCPI
    functionSourceFile: /src/quantlib/ql/experimental/inflation/genericindexes.hpp
    functionUses: 0
    functionsReached:
    - GenericRegion
    linkageType: ''
    returnType: void
    signature: "void YYGenericCPI(Frequency frequency,\n                     bool
      revised,\n                     const Period &lag,\n                     const
      Currency &ccy,\n                     const Handle<YoYInflationTermStructure>&
      ts = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::InterpolatedYoYOptionletStripper::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::InterpolatedYoYOptionletStripper::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::InterpolatedYoYOptionletStripper::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: frequency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:107,1
    - Dst: interpolated
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:108,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:108,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:109,1
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:110,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:112,1
    - Dst: MakeYoYInflationCapFloor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:114,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:116,1
    - Dst: baseDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:121,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:122,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:123,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:124,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:126,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:130,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 9
    argNames:
    - type
    - slope
    - K
    - ' lag'
    - fixingDays
    - ' anIndex'
    - ' surf'
    - p
    - priceToMatch
    argTypes:
    - YoYInflationCapFloor::Type
    - Real
    - Rate
    - Period
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 136
    functionName: "InterpolatedYoYOptionletStripper<Interpolator1D>::ObjectiveFunction::ObjectiveFunction(\n
      \       YoYInflationCapFloor::Type type,\n        Real slope,\n        Rate
      K,\n        Period& lag,\n        Natural fixingDays,\n        const ext::shared_ptr<YoYInflationIndex>&
      anIndex,\n        const ext::shared_ptr<YoYCapFloorTermPriceSurface>& surf,\n
      \       ext::shared_ptr<YoYInflationCapFloorEngine> p,\n        Real priceToMatch)"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - MakeYoYInflationCapFloor
    - std::floor
    - dayCounter
    - std::move
    - std::vector<Date>
    - std::vector<Volatility>
    - minMaturity
    - Period
    - setPricingEngine
    - frequency
    - std::vector<Time>
    - calendar
    - interpolated
    - baseDate
    - observationLag
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletStripper<Interpolator1D>::ObjectiveFunction::ObjectiveFunction(\n
      \       YoYInflationCapFloor::Type type,\n        Real slope,\n        Rate
      K,\n        Period& lag,\n        Natural fixingDays,\n        const ext::shared_ptr<YoYInflationIndex>&
      anIndex,\n        const ext::shared_ptr<YoYCapFloorTermPriceSurface>& surf,\n
      \       ext::shared_ptr<YoYInflationCapFloorEngine> p,\n        Real priceToMatch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:149,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:150,1
    - Dst: InterpolatedYoYOptionletVolatilityCurve<Linear>::InterpolatedYoYOptionletVolatilityCurve<Linear>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:148,1
    - Dst: setVolatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:155,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 158
    functionName: "InterpolatedYoYOptionletStripper<Interpolator1D>::\n    ObjectiveFunction::operator()(Volatility
      guess) const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - InterpolatedYoYOptionletVolatilityCurve<Linear>::InterpolatedYoYOptionletVolatilityCurve<Linear>
    - Actual365Fixed
    - NPV
    - setVolatility
    - TARGET
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedYoYOptionletStripper<Interpolator1D>::\n    ObjectiveFunction::operator()(Volatility
      guess) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:168,1
    - Dst: frequency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:169,1
    - Dst: indexIsInterpolated
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:170,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:171,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:173,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:175,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:176,1
    - Dst: floorStrikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:179,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:181,1
    - Dst: YoYTS
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:185,1
    - Dst: Currency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:189,1
    - Dst: YYGenericCPI::YYGenericCPI
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:187,1
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:192,1
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:193,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:205,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:206,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:209,1
    - Dst: ObjectiveFunction
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:210,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:215,1
    - Dst: what
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:215,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:222,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:223,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:227,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:228,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:235,1
    - Dst: ext::shared_ptr<YoYOptionletHelper>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:235,1
    - Dst: YoYOptionletHelper::YoYOptionletHelper
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:236,1
    - Dst: ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:244,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:251,1
    - Dst: const_cast<ConstantYoYOptionletVolatility*>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:253,1
    - Dst: ext::shared_ptr::get
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:254,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:255,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:259,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:259,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:261,1
    - Dst: PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>::PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:266,1
    - Dst: ext::shared_ptr::recalculate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:272,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - s
    - p
    - slope
    argTypes:
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedYoYOptionletStripper<Interpolator1D>::initialize
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - indexIsInterpolated
    - dayCounter
    - YoYTS
    - YoYOptionletHelper::YoYOptionletHelper
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
    - frequency
    - calendar
    - std::vector::push_back
    - ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    - ext::shared_ptr<YoYOptionletHelper>
    - maturities
    - YYGenericCPI::YYGenericCPI
    - setTermStructure
    - Currency
    - ObjectiveFunction
    - capPrice
    - floor
    - ext::shared_ptr::recalculate
    - fixingDays
    - push_back
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
    - floorStrikes
    - QL_FAIL
    - std::max
    - strikes
    - Brent::solve
    - ext::shared_ptr::get
    - PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>::PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>
    - observationLag
    - what
    - const_cast<ConstantYoYOptionletVolatility*>
    - businessDayConvention
    - floorPrice
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletStripper<Interpolator1D>::\n    initialize(const
      ext::shared_ptr<YoYCapFloorTermPriceSurface> &s,\n               const ext::shared_ptr<YoYInflationCapFloorEngine>
      &p,\n               const Real slope) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:285,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 298
    functionName: QuantLib::InterpolatedYoYOptionletStripper<Interpolator1D>::slice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::vector<Volatility>
    - volatility
    - strikes
    - size
    - std::vector<Rate>
    linkageType: ''
    returnType: std::pair<std::vector<Rate>, std::vector<Volatility> >
    signature: "std::pair<std::vector<Rate>, std::vector<Volatility> > InterpolatedYoYOptionletStripper<Interpolator1D>::slice(\n
      \                                                       const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::InterpolatedYoYOptionletStripper::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::InterpolatedYoYOptionletStripper::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletStripper::strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::InterpolatedYoYOptionletStripper::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletStripper::strikes
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: frequency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:107,1
    - Dst: interpolated
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:108,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:108,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:109,1
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:109,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:110,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:112,1
    - Dst: MakeYoYInflationCapFloor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:114,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:115,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:116,1
    - Dst: baseDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:121,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:122,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:123,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:124,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:126,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: minMaturity
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:130,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 9
    argNames:
    - type
    - slope
    - K
    - ' lag'
    - fixingDays
    - ' anIndex'
    - ' surf'
    - p
    - priceToMatch
    argTypes:
    - YoYInflationCapFloor::Type
    - Real
    - Rate
    - Period
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 136
    functionName: "InterpolatedYoYOptionletStripper<Interpolator1D>::ObjectiveFunction::ObjectiveFunction(\n
      \       YoYInflationCapFloor::Type type,\n        Real slope,\n        Rate
      K,\n        Period& lag,\n        Natural fixingDays,\n        const ext::shared_ptr<YoYInflationIndex>&
      anIndex,\n        const ext::shared_ptr<YoYCapFloorTermPriceSurface>& surf,\n
      \       ext::shared_ptr<YoYInflationCapFloorEngine> p,\n        Real priceToMatch)"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - timeFromReference
    - MakeYoYInflationCapFloor
    - std::floor
    - dayCounter
    - std::move
    - std::vector<Date>
    - std::vector<Volatility>
    - minMaturity
    - Period
    - setPricingEngine
    - frequency
    - std::vector<Time>
    - calendar
    - interpolated
    - baseDate
    - observationLag
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletStripper<Interpolator1D>::ObjectiveFunction::ObjectiveFunction(\n
      \       YoYInflationCapFloor::Type type,\n        Real slope,\n        Rate
      K,\n        Period& lag,\n        Natural fixingDays,\n        const ext::shared_ptr<YoYInflationIndex>&
      anIndex,\n        const ext::shared_ptr<YoYCapFloorTermPriceSurface>& surf,\n
      \       ext::shared_ptr<YoYInflationCapFloorEngine> p,\n        Real priceToMatch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TARGET
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:149,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:150,1
    - Dst: InterpolatedYoYOptionletVolatilityCurve<Linear>::InterpolatedYoYOptionletVolatilityCurve<Linear>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:148,1
    - Dst: setVolatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:155,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 158
    functionName: "InterpolatedYoYOptionletStripper<Interpolator1D>::\n    ObjectiveFunction::operator()(Volatility
      guess) const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - InterpolatedYoYOptionletVolatilityCurve<Linear>::InterpolatedYoYOptionletVolatilityCurve<Linear>
    - Actual365Fixed
    - NPV
    - setVolatility
    - TARGET
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedYoYOptionletStripper<Interpolator1D>::\n    ObjectiveFunction::operator()(Volatility
      guess) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:168,1
    - Dst: frequency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:169,1
    - Dst: indexIsInterpolated
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:170,1
    - Dst: fixingDays
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:171,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:173,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:175,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:176,1
    - Dst: floorStrikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:179,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:181,1
    - Dst: YoYTS
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:185,1
    - Dst: Currency
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:189,1
    - Dst: YYGenericCPI::YYGenericCPI
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:187,1
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:192,1
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:193,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:205,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:206,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:209,1
    - Dst: ObjectiveFunction
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:210,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:215,1
    - Dst: what
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:215,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:222,1
    - Dst: maturities
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:223,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:227,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:228,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:234,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:235,1
    - Dst: ext::shared_ptr<YoYOptionletHelper>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:235,1
    - Dst: YoYOptionletHelper::YoYOptionletHelper
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:236,1
    - Dst: ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:244,1
    - Dst: setTermStructure
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:251,1
    - Dst: const_cast<ConstantYoYOptionletVolatility*>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:253,1
    - Dst: ext::shared_ptr::get
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:254,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:255,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:259,1
    - Dst: ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:259,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:261,1
    - Dst: PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>::PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:266,1
    - Dst: ext::shared_ptr::recalculate
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:272,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - s
    - p
    - slope
    argTypes:
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedYoYOptionletStripper<Interpolator1D>::initialize
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - indexIsInterpolated
    - dayCounter
    - YoYTS
    - YoYOptionletHelper::YoYOptionletHelper
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>::yoyOptionDateFromTenor
    - frequency
    - calendar
    - std::vector::push_back
    - ConstantYoYOptionletVolatility::ConstantYoYOptionletVolatility
    - ext::shared_ptr<YoYOptionletHelper>
    - maturities
    - YYGenericCPI::YYGenericCPI
    - setTermStructure
    - Currency
    - ObjectiveFunction
    - capPrice
    - floor
    - ext::shared_ptr::recalculate
    - fixingDays
    - push_back
    - ext::shared_ptr<YoYCapFloorTermPriceSurface>::timeFromReference
    - floorStrikes
    - QL_FAIL
    - std::max
    - strikes
    - Brent::solve
    - ext::shared_ptr::get
    - PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>::PiecewiseYoYOptionletVolatilityCurve<Interpolator1D>
    - observationLag
    - what
    - const_cast<ConstantYoYOptionletVolatility*>
    - businessDayConvention
    - floorPrice
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletStripper<Interpolator1D>::\n    initialize(const
      ext::shared_ptr<YoYCapFloorTermPriceSurface> &s,\n               const ext::shared_ptr<YoYInflationCapFloorEngine>
      &p,\n               const Real slope) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strikes
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:283,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:285,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: std::vector<Volatility>
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:288,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 298
    functionName: QuantLib::InterpolatedYoYOptionletStripper<Interpolator1D>::slice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/interpolatedyoyoptionletstripper.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::vector<Volatility>
    - volatility
    - strikes
    - size
    - std::vector<Rate>
    linkageType: ''
    returnType: std::pair<std::vector<Rate>, std::vector<Volatility> >
    signature: "std::pair<std::vector<Rate>, std::vector<Volatility> > InterpolatedYoYOptionletStripper<Interpolator1D>::slice(\n
      \                                                       const Date &d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - priceSurf
    argTypes:
    - Handle<CPICapFloorTermPriceSurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::InterpolatingCPICapFloorEngine::InterpolatingCPICapFloorEngine
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterpolatingCPICapFloorEngine::InterpolatingCPICapFloorEngine(\n
      \       Handle<CPICapFloorTermPriceSurface> priceSurf)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:47,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:47,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:61,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:63,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:68,1
    - Dst: index::frequency
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:68,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:72,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:74,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:86,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:86,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:88,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:88,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:92,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 97
    functionName: QuantLib::InterpolatingCPICapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - observationLag
    - index::frequency
    - Period
    - capPrice
    - inflationPeriod
    - floorPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatingCPICapFloorEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:33,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - priceSurf
    argTypes:
    - Handle<CPICapFloorTermPriceSurface>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::InterpolatingCPICapFloorEngine::InterpolatingCPICapFloorEngine
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterpolatingCPICapFloorEngine::InterpolatingCPICapFloorEngine(\n
      \       Handle<CPICapFloorTermPriceSurface> priceSurf)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:47,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:47,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:61,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:63,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:68,1
    - Dst: index::frequency
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:68,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:72,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:74,1
    - Dst: capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:86,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:86,1
    - Dst: floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:88,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:88,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp:92,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 97
    functionName: QuantLib::InterpolatingCPICapFloorEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloorengines.cpp
    functionUses: 0
    functionsReached:
    - observationLag
    - index::frequency
    - Period
    - capPrice
    - inflationPeriod
    - floorPrice
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatingCPICapFloorEngine::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:49,1
    - Dst: zeroInflationTermStructure
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:50,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:67,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:69,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:76,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:84,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:96,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:100,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:108,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 14
    argNames:
    - nominal
    - baseRate
    - ' observationLag'
    - ' cal'
    - ' bdc'
    - ' dc'
    - zii
    - interpolationType
    - yts
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Real
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 110
    functionName: QuantLib::CPICapFloorTermPriceSurface::CPICapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - empty
    - back
    - rows
    - std::move
    - push_back
    - Period
    - columns
    - zeroInflationTermStructure
    - size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICapFloorTermPriceSurface::CPICapFloorTermPriceSurface(\n        Real
      nominal,\n        Real baseRate, // avoids an uncontrolled crash if index has
      no TS\n        const Period& observationLag,\n        const Calendar& cal, //
      calendar in index may not be useful\n        const BusinessDayConvention& bdc,\n
      \       const DayCounter& dc,\n        ext::shared_ptr<ZeroInflationIndex>  zii,\n
      \       CPI::InterpolationType interpolationType,\n        Handle<YieldTermStructure>
      yts,\n        const std::vector<Rate>& cStrikes,\n        const std::vector<Rate>&
      fStrikes,\n        const std::vector<Period>& cfMaturities,\n        const Matrix&
      cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:113,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:113,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:114,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:116,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::frequency
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:117,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:118,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:118,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:119,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:121,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::baseRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 112
    functionDepth: 3
    functionLinenumber: 112
    functionLinenumberEnd: 122
    functionName: QuantLib::CPICapFloorTermPriceSurface::atmRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - inflationYearFraction
    - detail::CPI::isInterpolated
    - dayCounter
    - QuantLib::CPI::laggedFixing
    - std::pow
    - QuantLib::CPICapFloorTermPriceSurface::baseRate
    - QuantLib::CPICapFloorTermPriceSurface::frequency
    linkageType: ''
    returnType: Rate
    signature: Rate CPICapFloorTermPriceSurface::atmRate(Date maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - calendar
    - QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloorTermPriceSurface::cpiOptionDateFromTenor(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::price
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:131,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::CPICapFloorTermPriceSurface::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::price
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::price(const Period &d, Rate k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:136,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::CPICapFloorTermPriceSurface::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::capPrice
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::capPrice(const Period &d, Rate k)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:141,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::CPICapFloorTermPriceSurface::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    - QuantLib::CPICapFloorTermPriceSurface::floorPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::floorPrice(const Period &d, Rate
      k) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:49,1
    - Dst: zeroInflationTermStructure
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:50,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:55,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:58,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:62,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:67,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:67,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:69,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:76,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:84,1
    - Dst: std::vector<Rate>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:96,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:99,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:100,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:102,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:108,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 14
    argNames:
    - nominal
    - baseRate
    - ' observationLag'
    - ' cal'
    - ' bdc'
    - ' dc'
    - zii
    - interpolationType
    - yts
    - ' cStrikes'
    - ' fStrikes'
    - ' cfMaturities'
    - ' cPrice'
    - ' fPrice'
    argTypes:
    - Real
    - Real
    - Period
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 110
    functionName: QuantLib::CPICapFloorTermPriceSurface::CPICapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - empty
    - back
    - rows
    - std::move
    - push_back
    - Period
    - columns
    - zeroInflationTermStructure
    - size
    - std::vector<Rate>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CPICapFloorTermPriceSurface::CPICapFloorTermPriceSurface(\n        Real
      nominal,\n        Real baseRate, // avoids an uncontrolled crash if index has
      no TS\n        const Period& observationLag,\n        const Calendar& cal, //
      calendar in index may not be useful\n        const BusinessDayConvention& bdc,\n
      \       const DayCounter& dc,\n        ext::shared_ptr<ZeroInflationIndex>  zii,\n
      \       CPI::InterpolationType interpolationType,\n        Handle<YieldTermStructure>
      yts,\n        const std::vector<Rate>& cStrikes,\n        const std::vector<Rate>&
      fStrikes,\n        const std::vector<Period>& cfMaturities,\n        const Matrix&
      cPrice,\n        const Matrix& fPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:113,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:113,1
    - Dst: QuantLib::CPI::laggedFixing
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:114,1
    - Dst: inflationYearFraction
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:116,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::frequency
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:117,1
    - Dst: detail::CPI::isInterpolated
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:118,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:118,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:119,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:121,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::baseRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - maturity
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 112
    functionDepth: 3
    functionLinenumber: 112
    functionLinenumberEnd: 122
    functionName: QuantLib::CPICapFloorTermPriceSurface::atmRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - inflationYearFraction
    - detail::CPI::isInterpolated
    - dayCounter
    - QuantLib::CPI::laggedFixing
    - std::pow
    - QuantLib::CPICapFloorTermPriceSurface::baseRate
    - QuantLib::CPICapFloorTermPriceSurface::frequency
    linkageType: ''
    returnType: Rate
    signature: Rate CPICapFloorTermPriceSurface::atmRate(Date maturity) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 3
    functionsReached:
    - calendar
    - QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloorTermPriceSurface::cpiOptionDateFromTenor(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::price
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:131,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::CPICapFloorTermPriceSurface::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::price
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::price(const Period &d, Rate k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:136,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: QuantLib::CPICapFloorTermPriceSurface::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::capPrice
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::capPrice(const Period &d, Rate k)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:141,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Period
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::CPICapFloorTermPriceSurface::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::cpiOptionDateFromTenor
    - QuantLib::CPICapFloorTermPriceSurface::floorPrice
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::floorPrice(const Period &d, Rate
      k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~InterpolatedYoYOptionletVolatilityCurve() override
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatedYoYOptionletVolatilityCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: ceil
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve::interpolation_::xMax
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - optionDateFromTenor
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve::interpolation_::xMax
    - ceil
    - Period
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& times() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& data() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::nodes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > nodes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:138,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:139,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:139,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:140,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:142,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::times_::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:143,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:143,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::data_::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:144,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:145,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:145,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::setupInterpolation
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:148,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:151,1
    - Dst: baseDate
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:151,1
    - Dst: setBaseLevel
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:152,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 12
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - lag
    - frequency
    - indexIsInterpolated
    - d
    - v
    - minStrike
    - maxStrike
    - i
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - std::vector<Date>
    - std::vector<Volatility>
    - Rate
    - Rate
    - Interpolator1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::InterpolatedYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::times_::push_back
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
    - std::make_pair
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::setupInterpolation
    - push_back
    - std::vector<Volatility>::size
    - std::vector<Date>::size
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
    - setBaseLevel
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::data_::push_back
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n    InterpolatedYoYOptionletVolatilityCurve(Natural
      settlementDays,\n                                            const Calendar
      &cal,\n                                            BusinessDayConvention bdc,\n
      \                                           const DayCounter& dc,\n                                            const
      Period &lag,\n                                            Frequency frequency,\n
      \                                           bool indexIsInterpolated,\n                                            const
      std::vector<Date> &d,\n                                            const std::vector<Volatility>
      &v,\n                                            Rate minStrike,\n                                            Rate
      maxStrike,\n                                            const Interpolator1D
      &i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setBaseLevel
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - lag
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - baseYoYVolatility
    - i
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - Volatility
    - Interpolator1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::InterpolatedYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - setBaseLevel
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n    InterpolatedYoYOptionletVolatilityCurve(Natural
      settlementDays,\n                                            const Calendar
      &cal,\n                                            BusinessDayConvention bdc,\n
      \                                           const DayCounter& dc,\n                                            const
      Period &lag,\n                                            Frequency frequency,\n
      \                                           bool indexIsInterpolated,\n                                            Rate
      minStrike,\n                                            Rate maxStrike,\n                                            Volatility
      baseYoYVolatility,\n                                            const Interpolator1D
      &i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n
      \   volatilityImpl(const Time t,\n                   Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~InterpolatedYoYOptionletVolatilityCurve() override
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InterpolatedYoYOptionletVolatilityCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: ceil
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve::interpolation_::xMax
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - optionDateFromTenor
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve::interpolation_::xMax
    - ceil
    - Period
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& times() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & times() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& dates() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & dates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: '& data() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve::nodes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > nodes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:136,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:138,1
    - Dst: std::vector<Volatility>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:139,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:139,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:140,1
    - Dst: std::vector<Date>::size
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:142,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::times_::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:143,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:143,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::data_::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:144,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:145,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:145,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::setupInterpolation
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:148,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:151,1
    - Dst: baseDate
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:151,1
    - Dst: setBaseLevel
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:152,1
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 12
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - lag
    - frequency
    - indexIsInterpolated
    - d
    - v
    - minStrike
    - maxStrike
    - i
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - std::vector<Date>
    - std::vector<Volatility>
    - Rate
    - Rate
    - Interpolator1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 153
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::InterpolatedYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::times_::push_back
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
    - std::make_pair
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::setupInterpolation
    - push_back
    - std::vector<Volatility>::size
    - std::vector<Date>::size
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::timeFromReference
    - setBaseLevel
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::data_::push_back
    - baseDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n    InterpolatedYoYOptionletVolatilityCurve(Natural
      settlementDays,\n                                            const Calendar
      &cal,\n                                            BusinessDayConvention bdc,\n
      \                                           const DayCounter& dc,\n                                            const
      Period &lag,\n                                            Frequency frequency,\n
      \                                           bool indexIsInterpolated,\n                                            const
      std::vector<Date> &d,\n                                            const std::vector<Volatility>
      &v,\n                                            Rate minStrike,\n                                            Rate
      maxStrike,\n                                            const Interpolator1D
      &i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setBaseLevel
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - settlementDays
    - cal
    - bdc
    - ' dc'
    - lag
    - frequency
    - indexIsInterpolated
    - minStrike
    - maxStrike
    - baseYoYVolatility
    - i
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - Period
    - Frequency
    - bool
    - Rate
    - Rate
    - Volatility
    - Interpolator1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 176
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::InterpolatedYoYOptionletVolatilityCurve
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - setBaseLevel
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n    InterpolatedYoYOptionletVolatilityCurve(Natural
      settlementDays,\n                                            const Calendar
      &cal,\n                                            BusinessDayConvention bdc,\n
      \                                           const DayCounter& dc,\n                                            const
      Period &lag,\n                                            Frequency frequency,\n
      \                                           bool indexIsInterpolated,\n                                            Rate
      minStrike,\n                                            Rate maxStrike,\n                                            Volatility
      baseYoYVolatility,\n                                            const Interpolator1D
      &i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
      Src: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::interpolation_
    linkageType: ''
    returnType: Volatility
    signature: "Volatility InterpolatedYoYOptionletVolatilityCurve<Interpolator1D>::\n
      \   volatilityImpl(const Time t,\n                   Rate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::YoYCapFloorTermPriceSurface::yoyIndex
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> yoyIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::YoYCapFloorTermPriceSurface::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::YoYCapFloorTermPriceSurface::fixingDays
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::YoYCapFloorTermPriceSurface::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::YoYCapFloorTermPriceSurface::capStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> capStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYCapFloorTermPriceSurface::floorStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> floorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maturities
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> maturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::YoYCapFloorTermPriceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:127,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: QuantLib::YoYCapFloorTermPriceSurface::minMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - front
    linkageType: ''
    returnType: Date
    signature: Date minMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:128,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date maxMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::minStrike
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:135,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::maxStrike
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - K
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYCapFloorTermPriceSurface::checkStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::maxStrike
    - QuantLib::YoYCapFloorTermPriceSurface::minStrike
    linkageType: ''
    returnType: bool
    signature: bool checkStrike(Rate K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::minMaturity
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:138,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::YoYCapFloorTermPriceSurface::checkMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::minMaturity
    - QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
    linkageType: ''
    returnType: bool
    signature: bool checkMaturity(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 211
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
    linkageType: ''
    returnType: Date
    signature: Date baseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 213
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::fixingDays
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapTimeRates
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<std::vector<Time>, std::vector<Rate> >
    signature: std::pair<std::vector<Time>, std::vector<Rate> > atmYoYSwapTimeRates()
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapDateRates
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Rate> >
    signature: std::pair<std::vector<Date>, std::vector<Rate> > atmYoYSwapDateRates()
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::YoYTS
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationTermStructure>
    signature: ext::shared_ptr<YoYInflationTermStructure> YoYTS() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmYoYSwapRateCurve_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:228,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - atmYoYSwapRateCurve_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: Rate atmYoYSwapRate(const Date& d, bool extrapolate = true) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:231,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:235,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:235,1
    - Dst: yoyRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - yoyRate
    - observationLag
    - Period
    linkageType: ''
    returnType: Rate
    signature: "Rate atmYoYRate(const Date& d,\n                        const Period&
      obsLag = Period(-1, Days),\n                        bool extrapolate = true)
      const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionName: QuantLib::YoYCapFloorTermPriceSurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYCapFloorTermPriceSurface::indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionName: QuantLib::YoYCapFloorTermPriceSurface::observationLag
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period YoYCapFloorTermPriceSurface::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::frequency
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionName: QuantLib::YoYCapFloorTermPriceSurface::frequency
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::frequency
    linkageType: ''
    returnType: Frequency
    signature: Frequency YoYCapFloorTermPriceSurface::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - fixingDays
    - yyLag
    - ' yii'
    - interpolation
    - nominal
    - dc
    - cal
    - bdc
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    - interpolator1d
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - I2D
    - I1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 317
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::InterpolatedYoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    InterpolatedYoYCapFloorTermPriceSurface(\n
      \                                   Natural fixingDays,\n                                    const
      Period &yyLag,\n                                    const ext::shared_ptr<YoYInflationIndex>&
      yii,\n                                    CPI::InterpolationType interpolation,\n
      \                                   const Handle<YieldTermStructure> &nominal,\n
      \                                   const DayCounter &dc,\n                                    const
      Calendar &cal,\n                                    const BusinessDayConvention
      &bdc,\n                                    const std::vector<Rate> &cStrikes,\n
      \                                   const std::vector<Rate> &fStrikes,\n                                    const
      std::vector<Period> &cfMaturities,\n                                    const
      Matrix &cPrice,\n                                    const Matrix &fPrice,\n
      \                                   const I2D &interpolator2d,\n                                    const
      I1D &interpolator1d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - fixingDays
    - yyLag
    - ' yii'
    - baseRate
    - nominal
    - dc
    - cal
    - bdc
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    - interpolator1d
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - I2D
    - I1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 341
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::InterpolatedYoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    InterpolatedYoYCapFloorTermPriceSurface(\n
      \                                   Natural fixingDays,\n                                    const
      Period &yyLag,\n                                    const ext::shared_ptr<YoYInflationIndex>&
      yii,\n                                    Rate baseRate,\n                                    const
      Handle<YieldTermStructure> &nominal,\n                                    const
      DayCounter &dc,\n                                    const Calendar &cal,\n
      \                                   const BusinessDayConvention &bdc,\n                                    const
      std::vector<Rate> &cStrikes,\n                                    const std::vector<Rate>
      &fStrikes,\n                                    const std::vector<Period> &cfMaturities,\n
      \                                   const Matrix &cPrice,\n                                    const
      Matrix &fPrice,\n                                    const I2D &interpolator2d,\n
      \                                   const I1D &interpolator1d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::update
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    update()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:357,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 362
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    performCalculations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - t
    - a
    - b
    argTypes:
    - Time
    - Interpolation2D
    - Interpolation2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 372
    functionName: "InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   ObjectiveFunction(const Time t,\n                      const Interpolation2D
      &a,\n                      const Interpolation2D &b)"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   ObjectiveFunction(const Time t,\n                      const Interpolation2D
      &a,\n                      const Interpolation2D &b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:378,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:379,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 380
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - atmYoYSwapRate
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    price(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:386,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 388
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - capPrice_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    capPrice(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:394,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 396
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - floorPrice_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    floorPrice(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:404,1
    - Dst: b_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 405
    functionName: "InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   operator()(Rate guess) const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - b_
    - a_
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   operator()(Rate guess) const"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:419,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:421,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:422,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:423,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:423,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:424,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:427,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:428,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:428,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:429,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:429,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:432,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:435,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:435,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:436,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:436,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:439,1
    - Dst: first::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:441,1
    - Dst: second::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:442,1
    - Dst: first::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:443,1
    - Dst: second::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:444,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:448,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:449,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:452,1
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:455,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:462,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:463,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:468,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:469,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:485,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:486,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:486,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:503,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:504,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:504,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:523,1
    - Dst: ObjectiveFunction
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:523,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:525,1
    - Dst: what
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:525,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:530,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:536,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:537,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:555,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:557,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:557,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:565,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:566,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:568,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:569,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:570,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:571,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:571,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:572,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:579,1
    - Dst: first::begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:579,1
    - Dst: first::end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:580,1
    - Dst: second::begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:581,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 94
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 582
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - interpolate
    - second::clear
    - back
    - clear
    - std::vector::push_back
    - second::begin
    - referenceDate
    - begin
    - ObjectiveFunction
    - second::push_back
    - size
    - capPrice_
    - yoyOptionDateFromTenor
    - first::begin
    - push_back
    - QL_FAIL
    - Brent::solve
    - std::lround
    - enableExtrapolation
    - end
    - floorPrice_
    - first::clear
    - timeFromReference
    - at
    - discount
    - what
    - first::end
    - first::push_back
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    intersect()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:595,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:595,1
    - Dst: ext::make_shared<YearOnYearInflationSwapHelper>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:599,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:600,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:601,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:601,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:602,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::indexIsInterpolated
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:603,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:605,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:610,1
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:614,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:614,1
    - Dst: ext::make_shared<PiecewiseYoYInflationCurve<Linear>>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:618,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:619,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:620,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:620,1
    - Dst: auto::recalculate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:621,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:626,1
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 634
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<PiecewiseYoYInflationCurve<Linear>>
    - dayCounter
    - ext::make_shared<YearOnYearInflationSwapHelper>
    - inflationPeriod
    - calendar
    - back
    - std::vector::push_back
    - yoyIndex
    - referenceDate
    - fabs
    - atmYoYSwapRate
    - yoyOptionDateFromTenor
    - Period
    - impliedQuote
    - std::lround
    - std::vector::size
    - QL_REQUIRE
    - auto::recalculate
    - timeFromReference
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::indexIsInterpolated
    - observationLag
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    calculateYoYTermStructure()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::YoYCapFloorTermPriceSurface::yoyIndex
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationIndex>
    signature: ext::shared_ptr<YoYInflationIndex> yoyIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: QuantLib::YoYCapFloorTermPriceSurface::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention businessDayConvention() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: QuantLib::YoYCapFloorTermPriceSurface::fixingDays
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: QuantLib::YoYCapFloorTermPriceSurface::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::YoYCapFloorTermPriceSurface::capStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> capStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: QuantLib::YoYCapFloorTermPriceSurface::floorStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> floorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maturities
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> maturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: QuantLib::YoYCapFloorTermPriceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - front
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - back
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:127,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: QuantLib::YoYCapFloorTermPriceSurface::minMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - referenceDate
    - front
    linkageType: ''
    returnType: Date
    signature: Date minMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:128,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 128
    functionName: QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - back
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date maxMaturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::minStrike
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:135,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::maxStrike
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - K
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::YoYCapFloorTermPriceSurface::checkStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::maxStrike
    - QuantLib::YoYCapFloorTermPriceSurface::minStrike
    linkageType: ''
    returnType: bool
    signature: bool checkStrike(Rate K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::minMaturity
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:138,1
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: QuantLib::YoYCapFloorTermPriceSurface::checkMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::minMaturity
    - QuantLib::YoYCapFloorTermPriceSurface::maxMaturity
    linkageType: ''
    returnType: bool
    signature: bool checkMaturity(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 210
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 211
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface::baseDate
    linkageType: ''
    returnType: Date
    signature: Date baseDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 213
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::fixingDays
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Natural
    signature: Natural fixingDays() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapTimeRates
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<std::vector<Time>, std::vector<Rate> >
    signature: std::pair<std::vector<Time>, std::vector<Rate> > atmYoYSwapTimeRates()
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapDateRates
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::pair<std::vector<Date>, std::vector<Rate> >
    signature: std::pair<std::vector<Date>, std::vector<Rate> > atmYoYSwapDateRates()
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::YoYTS
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<YoYInflationTermStructure>
    signature: ext::shared_ptr<YoYInflationTermStructure> YoYTS() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmYoYSwapRateCurve_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:228,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYSwapRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - atmYoYSwapRateCurve_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: Rate atmYoYSwapRate(const Date& d, bool extrapolate = true) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:231,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:235,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:235,1
    - Dst: yoyRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface::atmYoYRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - yoyRate
    - observationLag
    - Period
    linkageType: ''
    returnType: Rate
    signature: "Rate atmYoYRate(const Date& d,\n                        const Period&
      obsLag = Period(-1, Days),\n                        bool extrapolate = true)
      const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionName: QuantLib::YoYCapFloorTermPriceSurface::indexIsInterpolated
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool YoYCapFloorTermPriceSurface::indexIsInterpolated() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionName: QuantLib::YoYCapFloorTermPriceSurface::observationLag
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period YoYCapFloorTermPriceSurface::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::YoYCapFloorTermPriceSurface::frequency
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionName: QuantLib::YoYCapFloorTermPriceSurface::frequency
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::YoYCapFloorTermPriceSurface::frequency
    linkageType: ''
    returnType: Frequency
    signature: Frequency YoYCapFloorTermPriceSurface::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - fixingDays
    - yyLag
    - ' yii'
    - interpolation
    - nominal
    - dc
    - cal
    - bdc
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    - interpolator1d
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - I2D
    - I1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 317
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::InterpolatedYoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    InterpolatedYoYCapFloorTermPriceSurface(\n
      \                                   Natural fixingDays,\n                                    const
      Period &yyLag,\n                                    const ext::shared_ptr<YoYInflationIndex>&
      yii,\n                                    CPI::InterpolationType interpolation,\n
      \                                   const Handle<YieldTermStructure> &nominal,\n
      \                                   const DayCounter &dc,\n                                    const
      Calendar &cal,\n                                    const BusinessDayConvention
      &bdc,\n                                    const std::vector<Rate> &cStrikes,\n
      \                                   const std::vector<Rate> &fStrikes,\n                                    const
      std::vector<Period> &cfMaturities,\n                                    const
      Matrix &cPrice,\n                                    const Matrix &fPrice,\n
      \                                   const I2D &interpolator2d,\n                                    const
      I1D &interpolator1d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 15
    argNames:
    - fixingDays
    - yyLag
    - ' yii'
    - baseRate
    - nominal
    - dc
    - cal
    - bdc
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    - interpolator1d
    argTypes:
    - Natural
    - Period
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Handle<YieldTermStructure>
    - DayCounter
    - Calendar
    - BusinessDayConvention
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - I2D
    - I1D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 341
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::InterpolatedYoYCapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    InterpolatedYoYCapFloorTermPriceSurface(\n
      \                                   Natural fixingDays,\n                                    const
      Period &yyLag,\n                                    const ext::shared_ptr<YoYInflationIndex>&
      yii,\n                                    Rate baseRate,\n                                    const
      Handle<YieldTermStructure> &nominal,\n                                    const
      DayCounter &dc,\n                                    const Calendar &cal,\n
      \                                   const BusinessDayConvention &bdc,\n                                    const
      std::vector<Rate> &cStrikes,\n                                    const std::vector<Rate>
      &fStrikes,\n                                    const std::vector<Period> &cfMaturities,\n
      \                                   const Matrix &cPrice,\n                                    const
      Matrix &fPrice,\n                                    const I2D &interpolator2d,\n
      \                                   const I1D &interpolator1d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::update
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    update()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:357,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 353
    functionDepth: 3
    functionLinenumber: 353
    functionLinenumberEnd: 362
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    performCalculations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - t
    - a
    - b
    argTypes:
    - Time
    - Interpolation2D
    - Interpolation2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 372
    functionName: "InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   ObjectiveFunction(const Time t,\n                      const Interpolation2D
      &a,\n                      const Interpolation2D &b)"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   ObjectiveFunction(const Time t,\n                      const Interpolation2D
      &a,\n                      const Interpolation2D &b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:378,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:379,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 380
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - atmYoYSwapRate
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    price(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:386,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 388
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - capPrice_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    capPrice(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:394,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 396
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - floorPrice_
    - timeFromReference
    linkageType: ''
    returnType: Rate
    signature: "Rate InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    floorPrice(const
      Date &d, const Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:404,1
    - Dst: b_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 405
    functionName: "InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   operator()(Rate guess) const"
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - b_
    - a_
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::ObjectiveFunction::\n
      \   operator()(Rate guess) const"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:419,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:421,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:422,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:423,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:423,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:424,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:427,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:428,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:428,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:429,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:429,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:432,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:434,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:435,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:435,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:436,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:436,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:439,1
    - Dst: first::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:441,1
    - Dst: second::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:442,1
    - Dst: first::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:443,1
    - Dst: second::clear
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:444,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:448,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:449,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:452,1
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:455,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:458,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:462,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:463,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:468,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:469,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:480,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:485,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:486,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:486,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:503,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:504,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:504,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:523,1
    - Dst: ObjectiveFunction
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:523,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:525,1
    - Dst: what
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:525,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:530,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:536,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:537,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:545,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:555,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:557,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:557,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:558,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:565,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:566,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:568,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:569,1
    - Dst: first::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:570,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:571,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:571,1
    - Dst: second::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:572,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:579,1
    - Dst: first::begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:579,1
    - Dst: first::end
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:580,1
    - Dst: second::begin
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:581,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 94
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 582
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::intersect
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - interpolate
    - second::clear
    - back
    - clear
    - std::vector::push_back
    - second::begin
    - referenceDate
    - begin
    - ObjectiveFunction
    - second::push_back
    - size
    - capPrice_
    - yoyOptionDateFromTenor
    - first::begin
    - push_back
    - QL_FAIL
    - Brent::solve
    - std::lround
    - enableExtrapolation
    - end
    - floorPrice_
    - first::clear
    - timeFromReference
    - at
    - discount
    - what
    - first::end
    - first::push_back
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    intersect()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:591,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:595,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:595,1
    - Dst: ext::make_shared<YearOnYearInflationSwapHelper>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:599,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:600,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:601,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:601,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:602,1
    - Dst: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::indexIsInterpolated
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:603,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:605,1
    - Dst: inflationPeriod
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: observationLag
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:609,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:610,1
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:614,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:614,1
    - Dst: ext::make_shared<PiecewiseYoYInflationCurve<Linear>>
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:618,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:619,1
    - Dst: yoyIndex
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:620,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:620,1
    - Dst: auto::recalculate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:621,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:626,1
    - Dst: atmYoYSwapRate
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: yoyOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:627,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:628,1
    - Dst: impliedQuote
      Src: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 634
    functionName: QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::calculateYoYTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoycapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - ext::make_shared<PiecewiseYoYInflationCurve<Linear>>
    - dayCounter
    - ext::make_shared<YearOnYearInflationSwapHelper>
    - inflationPeriod
    - calendar
    - back
    - std::vector::push_back
    - yoyIndex
    - referenceDate
    - fabs
    - atmYoYSwapRate
    - yoyOptionDateFromTenor
    - Period
    - impliedQuote
    - std::lround
    - std::vector::size
    - QL_REQUIRE
    - auto::recalculate
    - timeFromReference
    - QuantLib::InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::indexIsInterpolated
    - observationLag
    linkageType: ''
    returnType: void
    signature: "void InterpolatedYoYCapFloorTermPriceSurface<I2D,I1D>::\n    calculateYoYTermStructure()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:42,1
    - Dst: MakeYoYInflationCapFloor
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:56,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:58,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:59,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 12
    argNames:
    - ' price'
    - notional
    - capFloorType
    - ' lag'
    - yoyDayCounter
    - paymentCalendar
    - fixingDays
    - index
    - interpolation
    - strike
    - n
    - pricer
    argTypes:
    - Handle<Quote>
    - Real
    - YoYInflationCapFloor::Type
    - Period
    - DayCounter
    - Calendar
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Rate
    - Size
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 65
    functionName: QuantLib::YoYOptionletHelper::YoYOptionletHelper
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - yoyLeg
    - MakeYoYInflationCapFloor
    - std::move
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - setPricingEngine
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::YoYOptionletHelper(const Handle<Quote>& price,\n
      \                                          Real notional,\n                                           YoYInflationCapFloor::Type
      capFloorType,\n                                           Period& lag,\n                                           DayCounter
      yoyDayCounter,\n                                           Calendar paymentCalendar,\n
      \                                          Natural fixingDays,\n                                           ext::shared_ptr<YoYInflationIndex>
      index,\n                                           CPI::InterpolationType interpolation,\n
      \                                          Rate strike,\n                                           Size
      n,\n                                           ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' price'
    - notional
    - capFloorType
    - ' lag'
    - yoyDayCounter
    - paymentCalendar
    - fixingDays
    - index
    - strike
    - n
    - pricer
    argTypes:
    - Handle<Quote>
    - Real
    - YoYInflationCapFloor::Type
    - Period
    - DayCounter
    - Calendar
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Size
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 79
    functionName: QuantLib::YoYOptionletHelper::YoYOptionletHelper
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::YoYOptionletHelper(const Handle<Quote>& price,\n
      \                                          Real notional,\n                                           YoYInflationCapFloor::Type
      capFloorType,\n                                           Period& lag,\n                                           DayCounter
      yoyDayCounter,\n                                           Calendar paymentCalendar,\n
      \                                          Natural fixingDays,\n                                           ext::shared_ptr<YoYInflationIndex>
      index,\n                                           Rate strike,\n                                           Size
      n,\n                                           ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:83,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::YoYOptionletHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - deepUpdate
    linkageType: ''
    returnType: Real
    signature: Real YoYOptionletHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:91,1
    - Dst: setVolatility
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYOptionletHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - setVolatility
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::setTermStructure(\n                                           YoYOptionletVolatilitySurface*
      v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:42,1
    - Dst: MakeYoYInflationCapFloor
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:46,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:56,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<YoYInflationCoupon>
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:58,1
    - Dst: yoyLeg
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:59,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 12
    argNames:
    - ' price'
    - notional
    - capFloorType
    - ' lag'
    - yoyDayCounter
    - paymentCalendar
    - fixingDays
    - index
    - interpolation
    - strike
    - n
    - pricer
    argTypes:
    - Handle<Quote>
    - Real
    - YoYInflationCapFloor::Type
    - Period
    - DayCounter
    - Calendar
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - CPI::InterpolationType
    - Rate
    - Size
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 65
    functionName: QuantLib::YoYOptionletHelper::YoYOptionletHelper
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - yoyLeg
    - MakeYoYInflationCapFloor
    - std::move
    - ext::dynamic_pointer_cast<YoYInflationCoupon>
    - setPricingEngine
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::YoYOptionletHelper(const Handle<Quote>& price,\n
      \                                          Real notional,\n                                           YoYInflationCapFloor::Type
      capFloorType,\n                                           Period& lag,\n                                           DayCounter
      yoyDayCounter,\n                                           Calendar paymentCalendar,\n
      \                                          Natural fixingDays,\n                                           ext::shared_ptr<YoYInflationIndex>
      index,\n                                           CPI::InterpolationType interpolation,\n
      \                                          Rate strike,\n                                           Size
      n,\n                                           ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:78,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 11
    argNames:
    - ' price'
    - notional
    - capFloorType
    - ' lag'
    - yoyDayCounter
    - paymentCalendar
    - fixingDays
    - index
    - strike
    - n
    - pricer
    argTypes:
    - Handle<Quote>
    - Real
    - YoYInflationCapFloor::Type
    - Period
    - DayCounter
    - Calendar
    - Natural
    - ext::shared_ptr<YoYInflationIndex>
    - Rate
    - Size
    - ext::shared_ptr<YoYInflationCapFloorEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 79
    functionName: QuantLib::YoYOptionletHelper::YoYOptionletHelper
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::YoYOptionletHelper(const Handle<Quote>& price,\n
      \                                          Real notional,\n                                           YoYInflationCapFloor::Type
      capFloorType,\n                                           Period& lag,\n                                           DayCounter
      yoyDayCounter,\n                                           Calendar paymentCalendar,\n
      \                                          Natural fixingDays,\n                                           ext::shared_ptr<YoYInflationIndex>
      index,\n                                           Rate strike,\n                                           Size
      n,\n                                           ext::shared_ptr<YoYInflationCapFloorEngine>
      pricer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: deepUpdate
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:83,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::YoYOptionletHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - NPV
    - deepUpdate
    linkageType: ''
    returnType: Real
    signature: Real YoYOptionletHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:91,1
    - Dst: setVolatility
      Src: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - YoYOptionletVolatilitySurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 103
    functionName: QuantLib::YoYOptionletHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionlethelpers.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - setVolatility
    linkageType: ''
    returnType: void
    signature: "void YoYOptionletHelper::setTermStructure(\n                                           YoYOptionletVolatilitySurface*
      v)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> zeroInflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::CPICapFloorTermPriceSurface::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::CPICapFloorTermPriceSurface::capStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> capStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::CPICapFloorTermPriceSurface::floorStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> floorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::CPICapFloorTermPriceSurface::maturities
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> maturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: '&capPrices() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix &capPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: '&floorPrices() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix &floorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::CPICapFloorTermPriceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::CPICapFloorTermPriceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:114,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::CPICapFloorTermPriceSurface::minDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - front
    linkageType: ''
    returnType: Date
    signature: Date minDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:115,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::CPICapFloorTermPriceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::minStrike
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:122,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::maxStrike
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - K
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::CPICapFloorTermPriceSurface::checkStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::minStrike
    - QuantLib::CPICapFloorTermPriceSurface::maxStrike
    linkageType: ''
    returnType: bool
    signature: bool checkStrike(Rate K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::minDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:125,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::maxDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::CPICapFloorTermPriceSurface::checkMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::minDate
    - QuantLib::CPICapFloorTermPriceSurface::maxDate
    linkageType: ''
    returnType: bool
    signature: bool checkMaturity(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - nominal
    - startRate
    - observationLag
    - cal
    - bdc
    - dc
    - ' zii'
    - interpolationType
    - ' yts'
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    argTypes:
    - Real
    - Rate
    - Period
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - Interpolator2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 224
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<Interpolator2D>::InterpolatedCPICapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCPICapFloorTermPriceSurface<Interpolator2D>::\n    InterpolatedCPICapFloorTermPriceSurface(Real
      nominal,\n                                            Rate startRate,\n                                            const
      Period &observationLag,\n                                            const Calendar
      &cal,\n                                            const BusinessDayConvention
      &bdc,\n                                            const DayCounter &dc,\n                                            const
      ext::shared_ptr<ZeroInflationIndex>& zii,\n                                            CPI::InterpolationType
      interpolationType,\n                                            const Handle<YieldTermStructure>&
      yts,\n                                            const std::vector<Rate> &cStrikes,\n
      \                                           const std::vector<Rate> &fStrikes,\n
      \                                           const std::vector<Period> &cfMaturities,\n
      \                                           const Matrix &cPrice,\n                                            const
      Matrix &fPrice,\n                                            const Interpolator2D
      &interpolator2d)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:242,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:244,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:246,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:246,1
    - Dst: atmRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:247,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:248,1
    - Dst: Period::length
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:250,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:252,1
    - Dst: Period::length
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:252,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:253,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:257,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:274,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:275,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:276,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:280,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:280,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:287,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:288,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:293,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:293,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:296,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:299,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:299,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:302,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 303
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - Period::length
    - Handle::discount
    - interpolate
    - clear
    - begin
    - std::pow
    - size
    - std::find_if
    - close_enough
    - cpiOptionDateFromTenor
    - Null<Real>
    - rows
    - push_back
    - atmRate
    - Matrix
    - Handle::empty
    - enableExtrapolation
    - end
    - QL_REQUIRE
    - timeFromReference
    - columns
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    performCalculations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:310,1
    - Dst: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:311,1
    - Dst: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 312
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
    - QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
    - atmRate
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    price(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:318,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 320
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - capPrice_
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    capPrice(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:326,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 328
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - floorPrice_
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    floorPrice(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionName: QuantLib::CPICapFloorTermPriceSurface::observationLag
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period CPICapFloorTermPriceSurface::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionName: QuantLib::CPICapFloorTermPriceSurface::frequency
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    linkageType: ''
    returnType: Frequency
    signature: Frequency CPICapFloorTermPriceSurface::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 342
    functionName: QuantLib::CPICapFloorTermPriceSurface::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloorTermPriceSurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 346
    functionName: QuantLib::CPICapFloorTermPriceSurface::baseRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPICapFloorTermPriceSurface::baseRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 350
    functionName: QuantLib::CPICapFloorTermPriceSurface::nominal
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionName: QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention CPICapFloorTermPriceSurface::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZeroInflationIndex>
    signature: ext::shared_ptr<ZeroInflationIndex> zeroInflationIndex() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::CPICapFloorTermPriceSurface::strikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> strikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::CPICapFloorTermPriceSurface::capStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> capStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::CPICapFloorTermPriceSurface::floorStrikes
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: std::vector<Rate> floorStrikes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::CPICapFloorTermPriceSurface::maturities
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> maturities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 109
    functionName: '&capPrices() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix &capPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: '&floorPrices() const'
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Matrix
    signature: Matrix &floorPrices() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::CPICapFloorTermPriceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - front
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::CPICapFloorTermPriceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - back
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:114,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::CPICapFloorTermPriceSurface::minDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - referenceDate
    - front
    linkageType: ''
    returnType: Date
    signature: Date minDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:115,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::CPICapFloorTermPriceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 1
    functionsReached:
    - back
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::minStrike
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:122,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::maxStrike
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - K
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::CPICapFloorTermPriceSurface::checkStrike
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::minStrike
    - QuantLib::CPICapFloorTermPriceSurface::maxStrike
    linkageType: ''
    returnType: bool
    signature: bool checkStrike(Rate K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::minDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:125,1
    - Dst: QuantLib::CPICapFloorTermPriceSurface::maxDate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: QuantLib::CPICapFloorTermPriceSurface::checkMaturity
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::minDate
    - QuantLib::CPICapFloorTermPriceSurface::maxDate
    linkageType: ''
    returnType: bool
    signature: bool checkMaturity(const Date& d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: performCalculations
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - nominal
    - startRate
    - observationLag
    - cal
    - bdc
    - dc
    - ' zii'
    - interpolationType
    - ' yts'
    - cStrikes
    - fStrikes
    - cfMaturities
    - cPrice
    - fPrice
    - interpolator2d
    argTypes:
    - Real
    - Rate
    - Period
    - Calendar
    - BusinessDayConvention
    - DayCounter
    - ext::shared_ptr<ZeroInflationIndex>
    - CPI::InterpolationType
    - Handle<YieldTermStructure>
    - std::vector<Rate>
    - std::vector<Rate>
    - std::vector<Period>
    - Matrix
    - Matrix
    - Interpolator2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 224
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<Interpolator2D>::InterpolatedCPICapFloorTermPriceSurface
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - performCalculations
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCPICapFloorTermPriceSurface<Interpolator2D>::\n    InterpolatedCPICapFloorTermPriceSurface(Real
      nominal,\n                                            Rate startRate,\n                                            const
      Period &observationLag,\n                                            const Calendar
      &cal,\n                                            const BusinessDayConvention
      &bdc,\n                                            const DayCounter &dc,\n                                            const
      ext::shared_ptr<ZeroInflationIndex>& zii,\n                                            CPI::InterpolationType
      interpolationType,\n                                            const Handle<YieldTermStructure>&
      yts,\n                                            const std::vector<Rate> &cStrikes,\n
      \                                           const std::vector<Rate> &fStrikes,\n
      \                                           const std::vector<Period> &cfMaturities,\n
      \                                           const Matrix &cPrice,\n                                            const
      Matrix &fPrice,\n                                            const Interpolator2D
      &interpolator2d)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:237,1
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:239,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:242,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:242,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:244,1
    - Dst: Handle::discount
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:246,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:246,1
    - Dst: atmRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:247,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:247,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:248,1
    - Dst: Period::length
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:250,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:252,1
    - Dst: Period::length
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:252,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:253,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:254,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:255,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:256,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:257,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:274,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:275,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:276,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:276,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:280,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:280,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:287,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:288,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: cpiOptionDateFromTenor
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:289,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:292,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:293,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:293,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:296,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:298,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:299,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:299,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:302,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 303
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - Period::length
    - Handle::discount
    - interpolate
    - clear
    - begin
    - std::pow
    - size
    - std::find_if
    - close_enough
    - cpiOptionDateFromTenor
    - Null<Real>
    - rows
    - push_back
    - atmRate
    - Matrix
    - Handle::empty
    - enableExtrapolation
    - end
    - QL_REQUIRE
    - timeFromReference
    - columns
    linkageType: ''
    returnType: void
    signature: "void InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    performCalculations()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atmRate
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:310,1
    - Dst: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:311,1
    - Dst: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 312
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::price
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
    - QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
    - atmRate
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    price(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:318,1
    - Dst: capPrice_
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 320
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::capPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - capPrice_
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    capPrice(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:326,1
    - Dst: floorPrice_
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - d
    - k
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 328
    functionName: QuantLib::InterpolatedCPICapFloorTermPriceSurface<I2D>::floorPrice
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - floorPrice_
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real InterpolatedCPICapFloorTermPriceSurface<I2D>::\n    floorPrice(const
      Date &d, Rate k) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionName: QuantLib::CPICapFloorTermPriceSurface::observationLag
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period CPICapFloorTermPriceSurface::observationLag() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionName: QuantLib::CPICapFloorTermPriceSurface::frequency
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    linkageType: ''
    returnType: Frequency
    signature: Frequency CPICapFloorTermPriceSurface::frequency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
      Src: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 342
    functionName: QuantLib::CPICapFloorTermPriceSurface::baseDate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::CPICapFloorTermPriceSurface::zeroInflationIndex
    linkageType: ''
    returnType: Date
    signature: Date CPICapFloorTermPriceSurface::baseDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 346
    functionName: QuantLib::CPICapFloorTermPriceSurface::baseRate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate CPICapFloorTermPriceSurface::baseRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 350
    functionName: QuantLib::CPICapFloorTermPriceSurface::nominal
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real CPICapFloorTermPriceSurface::nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionName: QuantLib::CPICapFloorTermPriceSurface::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/inflation/cpicapfloortermpricesurface.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention CPICapFloorTermPriceSurface::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~YoYOptionletStripper()
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionletstripper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YoYOptionletStripper()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~YoYOptionletStripper()
    functionSourceFile: /src/quantlib/ql/experimental/inflation/yoyoptionletstripper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~YoYOptionletStripper()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::calculate
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Polynomial2DSplineImpl::Polynomial2DSplineImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSplineImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, const I2& yEnd, const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:52,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: Parabolic
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::Polynomial2DSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
    - Parabolic
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
    - push_back
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:68,1
    - Dst: spline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::Polynomial2DSplineImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - spline
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real value(Real x,\n                       Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::calculate
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Polynomial2DSplineImpl::Polynomial2DSplineImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSplineImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, const I2& yEnd, const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:52,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: Parabolic
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::Polynomial2DSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
    - Parabolic
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
    - push_back
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:68,1
    - Dst: spline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::Polynomial2DSplineImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - spline
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real value(Real x,\n                       Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:88,1
    - Dst: detail::Polynomial2DSplineImpl<I1,I2,M>::Polynomial2DSplineImpl<I1,I2,M>
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::Polynomial2DSpline::Polynomial2DSpline
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - detail::Polynomial2DSplineImpl<I1,I2,M>::Polynomial2DSplineImpl<I1,I2,M>
    - ext::shared_ptr<Interpolation2D::Impl>
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSpline(const I1& xBegin, const I1& xEnd,\n                           const
      I2& yBegin, const I2& yEnd,\n                           const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Polynomial2DSpline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: QuantLib::Polynomial::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - Polynomial2DSpline
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::calculate
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Polynomial2DSplineImpl::Polynomial2DSplineImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSplineImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, const I2& yEnd, const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:52,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: Parabolic
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::Polynomial2DSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
    - Parabolic
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
    - push_back
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:68,1
    - Dst: spline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::Polynomial2DSplineImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - spline
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real value(Real x,\n                       Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::calculate
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::detail::Polynomial2DSplineImpl::Polynomial2DSplineImpl
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::calculate
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSplineImpl(const I1& xBegin, const I1& xEnd,\n                                   const
      I2& yBegin, const I2& yEnd, const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:48,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:51,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:52,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: Parabolic
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:53,1
    - Dst: QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: QuantLib::detail::Polynomial2DSplineImpl::calculate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::columns
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::column_begin
    - Parabolic
    - QuantLib::detail::Polynomial2DSplineImpl::zData_::rows
    - push_back
    - reserve
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void calculate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:59,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:63,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:68,1
    - Dst: spline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::Polynomial2DSplineImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - spline
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real value(Real x,\n                       Real y) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation2D::Impl>
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:88,1
    - Dst: detail::Polynomial2DSplineImpl<I1,I2,M>::Polynomial2DSplineImpl<I1,I2,M>
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' zData'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: QuantLib::Polynomial2DSpline::Polynomial2DSpline
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - detail::Polynomial2DSplineImpl<I1,I2,M>::Polynomial2DSplineImpl<I1,I2,M>
    - ext::shared_ptr<Interpolation2D::Impl>
    linkageType: ''
    returnType: void
    signature: "void Polynomial2DSpline(const I1& xBegin, const I1& xEnd,\n                           const
      I2& yBegin, const I2& yEnd,\n                           const M& zData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Polynomial2DSpline
      Src: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    - ' yEnd'
    - ' z'
    argTypes:
    - I1
    - I1
    - I2
    - I2
    - M
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: QuantLib::Polynomial::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/inflation/polynomial2Dspline.hpp
    functionUses: 0
    functionsReached:
    - Polynomial2DSpline
    linkageType: ''
    returnType: Interpolation2D
    signature: "Interpolation2D interpolate(const I1& xBegin, const I1& xEnd,\n                                    const
      I2& yBegin, const I2& yEnd,\n                                    const M& z)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: MakeArithmeticAverageOIS::operator ArithmeticAverageOIS() const
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeArithmeticAverageOIS::operator ArithmeticAverageOIS() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:52,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:55,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:56,1
    - Dst: length
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:59,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:60,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:62,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:67,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:70,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:72,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:97,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:109,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:109,1
    - Dst: name
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:111,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:113,1
    - Dst: ArithmeticAverageOIS::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:115,1
    - Dst: ArithmeticAverageOIS::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:117,1
    - Dst: ArithmeticAverageOIS::fairRate
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:119,1
    - Dst: ArithmeticAverageOIS::ArithmeticAverageOIS
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:122,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:133,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:135,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:137,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:139,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 142
    functionName: MakeArithmeticAverageOIS::operator ext::shared_ptr<ArithmeticAverageOIS>()
      const
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - name
    - Null<Rate>
    - ext::shared_ptr::setPricingEngine
    - isEndOfMonth
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ArithmeticAverageOIS::ArithmeticAverageOIS
    - length
    - QuantLib::detail::instance
    - Date
    - Handle::empty
    - ArithmeticAverageOIS::setPricingEngine
    - forwardingTermStructure
    - adjust
    - advance
    - ArithmeticAverageOIS::fairRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeArithmeticAverageOIS::operator ext::shared_ptr<ArithmeticAverageOIS>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: '& MakeArithmeticAverageOIS::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::receiveFixed(bool
      flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: '& MakeArithmeticAverageOIS::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withType(Swap::Type
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: '& MakeArithmeticAverageOIS::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withNominal(Real
      n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: '& MakeArithmeticAverageOIS::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withSettlementDays(Natural
      settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: '& MakeArithmeticAverageOIS::withEffectiveDate(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withEffectiveDate(const
      Date& effectiveDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: '& MakeArithmeticAverageOIS::withTerminationDate(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withTerminationDate(const
      Date& terminationDate)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: '& MakeArithmeticAverageOIS::withFixedLegPaymentFrequency(Frequency
      f)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withFixedLegPaymentFrequency(Frequency
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 188
    functionName: '& MakeArithmeticAverageOIS::withOvernightLegPaymentFrequency(Frequency
      f)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withOvernightLegPaymentFrequency(Frequency
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 197
    functionName: '& MakeArithmeticAverageOIS::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:202,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: "& MakeArithmeticAverageOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withDiscountingTermStructure(\n
      \                                       const Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "& MakeArithmeticAverageOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withPricingEngine(\n
      \                            const ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& MakeArithmeticAverageOIS::withFixedLegDayCount(const DayCounter&
      dc)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withFixedLegDayCount(const
      DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: '& MakeArithmeticAverageOIS::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withEndOfMonth(bool
      flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& MakeArithmeticAverageOIS::withOvernightLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withOvernightLegSpread(Spread
      sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - meanReversionSpeed
    - volatility
    - byApprox
    argTypes:
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 237
    functionName: "& MakeArithmeticAverageOIS::withArithmeticAverage(\n                                            Real
      meanReversionSpeed,\n                                            Real volatility,\n
      \                                           bool byApprox)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withArithmeticAverage(\n
      \                                           Real meanReversionSpeed,\n                                            Real
      volatility,\n                                            bool byApprox)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: MakeArithmeticAverageOIS::operator ArithmeticAverageOIS() const
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MakeArithmeticAverageOIS::operator ArithmeticAverageOIS() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:49,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:52,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:55,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:56,1
    - Dst: length
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:59,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:60,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:62,1
    - Dst: isEndOfMonth
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:67,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:70,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:72,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:97,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:109,1
    - Dst: Handle::empty
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:109,1
    - Dst: name
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:111,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:113,1
    - Dst: ArithmeticAverageOIS::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:115,1
    - Dst: ArithmeticAverageOIS::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:117,1
    - Dst: ArithmeticAverageOIS::fairRate
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:119,1
    - Dst: ArithmeticAverageOIS::ArithmeticAverageOIS
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:122,1
    - Dst: forwardingTermStructure
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:133,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:135,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:137,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:139,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 142
    functionName: MakeArithmeticAverageOIS::operator ext::shared_ptr<ArithmeticAverageOIS>()
      const
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - name
    - Null<Rate>
    - ext::shared_ptr::setPricingEngine
    - isEndOfMonth
    - DiscountingSwapEngine::DiscountingSwapEngine
    - ArithmeticAverageOIS::ArithmeticAverageOIS
    - length
    - QuantLib::detail::instance
    - Date
    - Handle::empty
    - ArithmeticAverageOIS::setPricingEngine
    - forwardingTermStructure
    - adjust
    - advance
    - ArithmeticAverageOIS::fairRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MakeArithmeticAverageOIS::operator ext::shared_ptr<ArithmeticAverageOIS>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: '& MakeArithmeticAverageOIS::receiveFixed(bool flag)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::receiveFixed(bool
      flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - Swap::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: '& MakeArithmeticAverageOIS::withType(Swap::Type type)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withType(Swap::Type
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: '& MakeArithmeticAverageOIS::withNominal(Real n)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withNominal(Real
      n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - settlementDays
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: '& MakeArithmeticAverageOIS::withSettlementDays(Natural settlementDays)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Date
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withSettlementDays(Natural
      settlementDays)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' effectiveDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: '& MakeArithmeticAverageOIS::withEffectiveDate(const Date& effectiveDate)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withEffectiveDate(const
      Date& effectiveDate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Period
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' terminationDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: '& MakeArithmeticAverageOIS::withTerminationDate(const Date& terminationDate)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Period
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withTerminationDate(const
      Date& terminationDate)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: '& MakeArithmeticAverageOIS::withFixedLegPaymentFrequency(Frequency
      f)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withFixedLegPaymentFrequency(Frequency
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - Frequency
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 188
    functionName: '& MakeArithmeticAverageOIS::withOvernightLegPaymentFrequency(Frequency
      f)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withOvernightLegPaymentFrequency(Frequency
      f)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - r
    argTypes:
    - DateGeneration::Rule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 197
    functionName: '& MakeArithmeticAverageOIS::withRule(DateGeneration::Rule r)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withRule(DateGeneration::Rule
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:202,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: "& MakeArithmeticAverageOIS::withDiscountingTermStructure(\n                                        const
      Handle<YieldTermStructure>& d)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - DiscountingSwapEngine::DiscountingSwapEngine
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withDiscountingTermStructure(\n
      \                                       const Handle<YieldTermStructure>& d)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' engine'
    argTypes:
    - ext::shared_ptr<PricingEngine>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: "& MakeArithmeticAverageOIS::withPricingEngine(\n                             const
      ext::shared_ptr<PricingEngine>& engine)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withPricingEngine(\n
      \                            const ext::shared_ptr<PricingEngine>& engine)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' dc'
    argTypes:
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: '& MakeArithmeticAverageOIS::withFixedLegDayCount(const DayCounter&
      dc)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withFixedLegDayCount(const
      DayCounter& dc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - flag
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: '& MakeArithmeticAverageOIS::withEndOfMonth(bool flag)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withEndOfMonth(bool
      flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sp
    argTypes:
    - Spread
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: '& MakeArithmeticAverageOIS::withOvernightLegSpread(Spread sp)'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withOvernightLegSpread(Spread
      sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - meanReversionSpeed
    - volatility
    - byApprox
    argTypes:
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 237
    functionName: "& MakeArithmeticAverageOIS::withArithmeticAverage(\n                                            Real
      meanReversionSpeed,\n                                            Real volatility,\n
      \                                           bool byApprox)"
    functionSourceFile: /src/quantlib/ql/experimental/averageois/makearithmeticaverageois.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeArithmeticAverageOIS
    signature: "MakeArithmeticAverageOIS & MakeArithmeticAverageOIS::withArithmeticAverage(\n
      \                                           Real meanReversionSpeed,\n                                            Real
      volatility,\n                                            bool byApprox)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:57,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndex>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:59,1
    - Dst: MakeArithmeticAverageOIS
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:61,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:68,1
    - Dst: maturityDate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 70
    functionName: ArithmeticOISRateHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp
    functionUses: 0
    functionsReached:
    - clone
    - ext::dynamic_pointer_cast<OvernightIndex>
    - startDate
    - maturityDate
    - MakeArithmeticAverageOIS
    linkageType: ''
    returnType: void
    signature: void ArithmeticOISRateHelper::initializeDates()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:78,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:80,1
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:81,1
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:83,1
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - YieldTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 86
    functionName: ArithmeticOISRateHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - empty
    - linkTo
    linkageType: ''
    returnType: void
    signature: void ArithmeticOISRateHelper::setTermStructure(YieldTermStructure*
      t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:89,1
    - Dst: recalculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:91,1
    - Dst: overnightLegNPV
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:95,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:96,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:96,1
    - Dst: overnightLegBPS
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:97,1
    - Dst: fixedLegBPS
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: ArithmeticOISRateHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - empty
    - value
    - fixedLegBPS
    - overnightLegNPV
    - overnightLegBPS
    - recalculate
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticOISRateHelper::impliedQuote() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ArithmeticOISRateHelper>*>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:104,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:106,1
    - Dst: QuantLib::OISRateHelper::accept
      Src: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: ArithmeticOISRateHelper::accept
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OISRateHelper::accept
    - dynamic_cast<Visitor<ArithmeticOISRateHelper>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void ArithmeticOISRateHelper::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::ArithmeticAverageOIS::type
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::ArithmeticAverageOIS::nominal
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ArithmeticAverageOIS::nominals
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> nominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::ArithmeticAverageOIS::fixedLegPaymentFrequency
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency fixedLegPaymentFrequency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::ArithmeticAverageOIS::overnightLegPaymentFrequency
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency overnightLegPaymentFrequency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ArithmeticAverageOIS::fixedRate
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '& fixedDayCount()'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & fixedDayCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& overnightIndex()'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::ArithmeticAverageOIS::spread
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& overnightLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & overnightLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::ArithmeticAverageOIS::type
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Type
    signature: Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp:66,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: QuantLib::ArithmeticAverageOIS::nominal
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ArithmeticAverageOIS::nominals
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> nominals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::ArithmeticAverageOIS::fixedLegPaymentFrequency
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency fixedLegPaymentFrequency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::ArithmeticAverageOIS::overnightLegPaymentFrequency
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Frequency
    signature: Frequency overnightLegPaymentFrequency()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::ArithmeticAverageOIS::fixedRate
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate fixedRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: '& fixedDayCount()'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter & fixedDayCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: '& overnightIndex()'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<OvernightIndex>
    signature: ext::shared_ptr<OvernightIndex> & overnightIndex()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: QuantLib::ArithmeticAverageOIS::spread
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Spread
    signature: Spread spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& overnightLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & overnightLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:62,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:63,1
    - Dst: Schedule::tenor
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:66,1
    - Dst: ArithmeticAverageOIS::initialize
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:69,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:69,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - type
    - nominals
    - fixedLegSchedule
    - fixedRate
    - fixedDC
    - overnightIndex
    - overnightLegSchedule
    - spread
    - meanReversionSpeed
    - volatility
    - byApprox
    argTypes:
    - Type
    - std::vector<Real>
    - Schedule
    - Rate
    - DayCounter
    - ext::shared_ptr<OvernightIndex>
    - Schedule
    - Spread
    - Real
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 70
    functionName: ArithmeticAverageOIS::ArithmeticAverageOIS
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 2
    functionsReached:
    - Schedule::tenor
    - std::move
    - ArithmeticAverageOIS::initialize
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAverageOIS::ArithmeticAverageOIS(Type type,\n                                               std::vector<Real>
      nominals,\n                                               Schedule fixedLegSchedule,\n
      \                                              Rate fixedRate,\n                                               DayCounter
      fixedDC,\n                                               ext::shared_ptr<OvernightIndex>
      overnightIndex,\n                                               Schedule overnightLegSchedule,\n
      \                                              Spread spread,\n                                               Real
      meanReversionSpeed,\n                                               Real volatility,\n
      \                                              bool byApprox)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:74,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:75,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:76,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:76,1
    - Dst: OvernightLeg
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:80,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:80,1
    - Dst: ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:85,1
    - Dst: ext::dynamic_pointer_cast<OvernightIndexedCoupon>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:89,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:90,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:95,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - fixedLegSchedule
    - overnightLegSchedule
    argTypes:
    - Schedule
    - Schedule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 110
    functionName: ArithmeticAverageOIS::initialize
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 1
    functionsReached:
    - ext::shared_ptr::setPricer
    - dayCounter
    - std::move
    - OvernightLeg
    - registerWith
    - QL_FAIL
    - DayCounter
    - FixedRateLeg
    - ext::dynamic_pointer_cast<OvernightIndexedCoupon>
    - ArithmeticAveragedOvernightIndexedCouponPricer::ArithmeticAveragedOvernightIndexedCouponPricer
    linkageType: ''
    returnType: void
    signature: "void ArithmeticAverageOIS::initialize(Schedule fixedLegSchedule,\n
      \                                         Schedule overnightLegSchedule)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:114,1
    - Dst: ArithmeticAverageOIS::fixedLegBPS
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 116
    functionName: ArithmeticAverageOIS::fairRate
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 2
    functionsReached:
    - ArithmeticAverageOIS::fixedLegBPS
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAverageOIS::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:120,1
    - Dst: ArithmeticAverageOIS::overnightLegBPS
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: ArithmeticAverageOIS::fairSpread
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - ArithmeticAverageOIS::overnightLegBPS
    - calculate
    linkageType: ''
    returnType: Spread
    signature: Spread ArithmeticAverageOIS::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:126,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: ArithmeticAverageOIS::fixedLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAverageOIS::fixedLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:132,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionName: ArithmeticAverageOIS::overnightLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAverageOIS::overnightLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:137,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:138,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: ArithmeticAverageOIS::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAverageOIS::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:143,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: ArithmeticAverageOIS::overnightLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticaverageois.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real ArithmeticAverageOIS::overnightLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ArithmeticOISRateHelper::swap
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ArithmeticAverageOIS>
    signature: ext::shared_ptr<ArithmeticAverageOIS> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ArithmeticOISRateHelper::swap
    functionSourceFile: /src/quantlib/ql/experimental/averageois/arithmeticoisratehelper.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ArithmeticAverageOIS>
    signature: ext::shared_ptr<ArithmeticAverageOIS> swap() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - a
    - t
    - T
    argTypes:
    - Interpolation
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::integrateMeanReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrator
    linkageType: ''
    returnType: Real
    signature: Real integrateMeanReversion(const Interpolation &a,Real t,Real T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - a
    - t
    - T
    argTypes:
    - Interpolation
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::integrateMeanReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrator
    linkageType: ''
    returnType: Real
    signature: Real integrateMeanReversion(const Interpolation &a,Real t,Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:58,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:58,1
    - Dst: statePrices
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - i
    - xMin
    - dx
    - discountBondPrice
    - ' tree'
    - fInv
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - ext::shared_ptr<ShortRateTree>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::GeneralizedHullWhite::Helper::Helper
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - size
    - timeGrid
    - std::move
    - statePrices
    linkageType: ''
    returnType: void
    signature: "void Helper(const Size i,\n               const Real xMin,\n               const
      Real dx,\n               const Real discountBondPrice,\n               const
      ext::shared_ptr<ShortRateTree>& tree,\n               std::function<Real(Real)>
      fInv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:66,1
    - Dst: fInverse_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 71
    functionName: operator()(const Real theta) const
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - fInverse_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - ' f'
    - ' fInverse'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::initialize
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite::GeneralizedHullWhite(\n        const Handle<YieldTermStructure>&
      yieldtermStructure,\n        const std::vector<Date>& speedstructure,\n        const
      std::vector<Date>& volstructure,\n        const std::vector<Real>& speed,\n
      \       const std::vector<Real>& vol,\n        const std::function<Real(Real)>&
      f,\n        const std::function<Real(Real)>& fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:114,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:116,1
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' yieldtermStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 120
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - QuantLib::GeneralizedHullWhite::initialize
    - referenceDate
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite::GeneralizedHullWhite(\n        const Handle<YieldTermStructure>&
      yieldtermStructure,\n        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:123,1
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:124,1
    - Dst: FittingParameter
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: QuantLib::GeneralizedHullWhite::a
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: QuantLib::GeneralizedHullWhite::sigma
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::GeneralizedHullWhite::generateArguments
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::a
    - QuantLib::GeneralizedHullWhite::sigma
    - update
    - FittingParameter
    - termStructure
    linkageType: ''
    returnType: void
    signature: void GeneralizedHullWhite::generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrateMeanReversion
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:130,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:131,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:133,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:133,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:138,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:142,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:143,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 150
    functionName: QuantLib::GeneralizedHullWhite::B
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrateMeanReversion
    - Size
    - std::min<Size>
    - speed_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::B(Time t, Time T) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrateMeanReversion
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:154,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:156,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:156,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:161,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:162,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:167,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:168,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:169,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:171,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:172,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 179
    functionName: QuantLib::GeneralizedHullWhite::V
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrateMeanReversion
    - Size
    - std::min<Size>
    - speed_
    - vol_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::V(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::B
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:190,1
    - Dst: QuantLib::GeneralizedHullWhite::V
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:191,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:193,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:194,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:195,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 197
    functionName: QuantLib::GeneralizedHullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - blackFormula
    - QuantLib::GeneralizedHullWhite::B
    - QuantLib::GeneralizedHullWhite::V
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedHullWhite::discountBondOption(Option::Type type, Real
      strike,\n                                                  Time maturity,\n
      \                                                 Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:201,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:202,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:203,1
    - Dst: QuantLib::GeneralizedHullWhite::B
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:204,1
    - Dst: QuantLib::GeneralizedHullWhite::V
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:205,1
    - Dst: log
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:206,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 208
    functionName: QuantLib::GeneralizedHullWhite::A
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - log
    - QuantLib::GeneralizedHullWhite::B
    - QuantLib::GeneralizedHullWhite::V
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::speed
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: QuantLib::GeneralizedHullWhite::vol
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:218,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:218,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:220,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:223,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:223,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:225,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:230,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:231,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:232,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:233,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:236,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:237,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 242
    functionName: QuantLib::GeneralizedHullWhite::tree
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::process
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - QuantLib::GeneralizedHullWhite::speed
    - TermStructureFittingParameter::implementation
    - termStructure
    - ext::shared_ptr::underlying
    - Brent::setMaxEvaluations
    - ext::shared_ptr::set
    - Brent::solve
    - size
    - TrinomialTree::TrinomialTree
    - QuantLib::GeneralizedHullWhite::vol
    - ext::shared_ptr::dx
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: "ext::shared_ptr<Lattice> GeneralizedHullWhite::tree(\n                                                  const
      TimeGrid& grid) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: QuantLib::GeneralizedHullWhite::speed
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::function<Real (Time)>
    signature: std::function<Real (Time)> GeneralizedHullWhite::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionName: QuantLib::GeneralizedHullWhite::vol
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::function<Real (Time)>
    signature: std::function<Real (Time)> GeneralizedHullWhite::vol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:254,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:255,1
    - Dst: std::fill
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: QuantLib::GeneralizedHullWhite::fixedReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::vector::begin
    - params
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> GeneralizedHullWhite::fixedReversion() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - a
    - t
    - T
    argTypes:
    - Interpolation
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::integrateMeanReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrator
    linkageType: ''
    returnType: Real
    signature: Real integrateMeanReversion(const Interpolation &a,Real t,Real T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - a
    - t
    - T
    argTypes:
    - Interpolation
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: QuantLib::integrateMeanReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - integrator
    linkageType: ''
    returnType: Real
    signature: Real integrateMeanReversion(const Interpolation &a,Real t,Real T)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:58,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:58,1
    - Dst: statePrices
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - i
    - xMin
    - dx
    - discountBondPrice
    - ' tree'
    - fInv
    argTypes:
    - Size
    - Real
    - Real
    - Real
    - ext::shared_ptr<ShortRateTree>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::GeneralizedHullWhite::Helper::Helper
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - size
    - timeGrid
    - std::move
    - statePrices
    linkageType: ''
    returnType: void
    signature: "void Helper(const Size i,\n               const Real xMin,\n               const
      Real dx,\n               const Real discountBondPrice,\n               const
      ext::shared_ptr<ShortRateTree>& tree,\n               std::function<Real(Real)>
      fInv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:66,1
    - Dst: fInverse_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - theta
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 71
    functionName: operator()(const Real theta) const
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - fInverse_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real theta) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - ' f'
    - ' fInverse'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::initialize
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite::GeneralizedHullWhite(\n        const Handle<YieldTermStructure>&
      yieldtermStructure,\n        const std::vector<Date>& speedstructure,\n        const
      std::vector<Date>& volstructure,\n        const std::vector<Real>& speed,\n
      \       const std::vector<Real>& vol,\n        const std::function<Real(Real)>&
      f,\n        const std::function<Real(Real)>& fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:110,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:114,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:115,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:116,1
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' yieldtermStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 120
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - QuantLib::GeneralizedHullWhite::initialize
    - referenceDate
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite::GeneralizedHullWhite(\n        const Handle<YieldTermStructure>&
      yieldtermStructure,\n        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:123,1
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:124,1
    - Dst: FittingParameter
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: QuantLib::GeneralizedHullWhite::a
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    - Dst: QuantLib::GeneralizedHullWhite::sigma
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::GeneralizedHullWhite::generateArguments
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::a
    - QuantLib::GeneralizedHullWhite::sigma
    - update
    - FittingParameter
    - termStructure
    linkageType: ''
    returnType: void
    signature: void GeneralizedHullWhite::generateArguments()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrateMeanReversion
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:130,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:131,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:133,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:133,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:138,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:142,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:143,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 150
    functionName: QuantLib::GeneralizedHullWhite::B
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 2
    functionsReached:
    - integrateMeanReversion
    - Size
    - std::min<Size>
    - speed_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::B(Time t, Time T) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: integrateMeanReversion
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:154,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:156,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:156,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:161,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:162,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:167,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:168,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:169,1
    - Dst: vol_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:171,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:172,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 179
    functionName: QuantLib::GeneralizedHullWhite::V
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 2
    functionsReached:
    - integrateMeanReversion
    - Size
    - std::min<Size>
    - speed_
    - vol_
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::V(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::B
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:190,1
    - Dst: QuantLib::GeneralizedHullWhite::V
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:191,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:193,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:194,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:195,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - strike
    - maturity
    - bondMaturity
    argTypes:
    - Option::Type
    - Real
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 197
    functionName: QuantLib::GeneralizedHullWhite::discountBondOption
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - blackFormula
    - QuantLib::GeneralizedHullWhite::B
    - QuantLib::GeneralizedHullWhite::V
    - sqrt
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedHullWhite::discountBondOption(Option::Type type, Real
      strike,\n                                                  Time maturity,\n
      \                                                 Time bondMaturity) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:201,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:202,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:203,1
    - Dst: QuantLib::GeneralizedHullWhite::B
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:204,1
    - Dst: QuantLib::GeneralizedHullWhite::V
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:205,1
    - Dst: log
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:206,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - T
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 208
    functionName: QuantLib::GeneralizedHullWhite::A
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - termStructure
    - log
    - QuantLib::GeneralizedHullWhite::B
    - QuantLib::GeneralizedHullWhite::V
    - exp
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedHullWhite::A(Time t, Time T) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::speed
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: QuantLib::GeneralizedHullWhite::vol
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:216,1
    - Dst: ext::shared_ptr::process
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:218,1
    - Dst: TrinomialTree::TrinomialTree
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:218,1
    - Dst: ShortRateTree::ShortRateTree
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:220,1
    - Dst: ext::dynamic_pointer_cast<NumericalImpl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:223,1
    - Dst: TermStructureFittingParameter::implementation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:223,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:225,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:230,1
    - Dst: termStructure
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:231,1
    - Dst: ext::shared_ptr::underlying
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:232,1
    - Dst: ext::shared_ptr::dx
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:233,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:236,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:237,1
    - Dst: ext::shared_ptr::set
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' grid'
    argTypes:
    - TimeGrid
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 242
    functionName: QuantLib::GeneralizedHullWhite::tree
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<NumericalImpl>
    - ext::shared_ptr::process
    - Dynamics::Dynamics
    - ext::shared_ptr::reset
    - QuantLib::GeneralizedHullWhite::speed
    - TermStructureFittingParameter::implementation
    - termStructure
    - ext::shared_ptr::underlying
    - Brent::setMaxEvaluations
    - ext::shared_ptr::set
    - Brent::solve
    - size
    - TrinomialTree::TrinomialTree
    - QuantLib::GeneralizedHullWhite::vol
    - ext::shared_ptr::dx
    - ShortRateTree::ShortRateTree
    linkageType: ''
    returnType: ext::shared_ptr<Lattice>
    signature: "ext::shared_ptr<Lattice> GeneralizedHullWhite::tree(\n                                                  const
      TimeGrid& grid) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: QuantLib::GeneralizedHullWhite::speed
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::function<Real (Time)>
    signature: std::function<Real (Time)> GeneralizedHullWhite::speed() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionName: QuantLib::GeneralizedHullWhite::vol
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::function<Real (Time)>
    signature: std::function<Real (Time)> GeneralizedHullWhite::vol() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:254,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:255,1
    - Dst: std::fill
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: QuantLib::GeneralizedHullWhite::fixedReversion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.cpp
    functionUses: 0
    functionsReached:
    - std::fill
    - std::vector::begin
    - params
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> GeneralizedHullWhite::fixedReversion() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolator_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::InterpolationParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - interpolator_
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' interp'
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::InterpolationParameter::Impl::reset
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reset(const Interpolation& interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:49,1
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:51,1
    - Dst: InterpolationParameter::Impl::Impl
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - count
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::InterpolationParameter::InterpolationParameter
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - InterpolationParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void InterpolationParameter(\n            Size count,\n            const
      Constraint& constraint = NoConstraint())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<InterpolationParameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:57,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - interp
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::InterpolationParameter::reset
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::reset
    - ext::dynamic_pointer_cast<InterpolationParameter::Impl>
    linkageType: ''
    returnType: void
    signature: void reset(const Interpolation &interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - speedtraits
    - voltraits
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - SpeedInterpolationTraits
    - VolInterpolationTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::initialize
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite(\n            const Handle<YieldTermStructure>&
      yieldtermStructure,\n            const std::vector<Date>& speedstructure,\n
      \           const std::vector<Date>& volstructure,\n            const std::vector<Real>&
      speed,\n            const std::vector<Real>& vol,\n            const SpeedInterpolationTraits
      &speedtraits,\n            const VolInterpolationTraits &voltraits,\n            const
      std::function<Real(Real)>& f = {},\n            const std::function<Real(Real)>&
      fInverse = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::GeneralizedHullWhite::dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: ext::shared_ptr<ShortRateDynamics>
    signature: ext::shared_ptr<ShortRateDynamics> dynamics() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::GeneralizedHullWhite::a
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 2
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::GeneralizedHullWhite::sigma
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 2
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::GeneralizedHullWhite::identity
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real identity(Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:186,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:187,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:189,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:189,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:191,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:195,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:197,1
    - Dst: setParam
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:198,1
    - Dst: SpeedInterpolationTraits::interpolate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:200,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:200,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:201,1
    - Dst: InterpolationParameter::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:204,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:206,1
    - Dst: setParam
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:207,1
    - Dst: VolInterpolationTraits::interpolate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:209,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:209,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:210,1
    - Dst: InterpolationParameter::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:211,1
    - Dst: QuantLib::GeneralizedHullWhite::generateArguments
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:213,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 9
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - speedtraits
    - voltraits
    - ' f'
    - ' fInverse'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - SpeedInterpolationTraits
    - VolInterpolationTraits
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 215
    functionName: QuantLib::GeneralizedHullWhite::initialize
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 5
    functionsReached:
    - SpeedInterpolationTraits::interpolate
    - referenceDate
    - DayCounter::yearFraction
    - InterpolationParameter::reset
    - PositiveConstraint
    - setParam
    - dayCounter
    - QuantLib::GeneralizedHullWhite::generateArguments
    - begin
    - push_back
    - NoConstraint
    - registerWith
    - size
    - VolInterpolationTraits::interpolate
    - enableExtrapolation
    - end
    - params
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void initialize(const Handle<YieldTermStructure>& yieldtermStructure,\n
      \           const std::vector<Date>& speedstructure,\n            const std::vector<Date>&
      volstructure,\n            const std::vector<Real>& speed,\n            const
      std::vector<Real>& vol,\n            const SpeedInterpolationTraits &speedtraits,\n
      \           const VolInterpolationTraits &voltraits,\n            const std::function<Real(Real)>&
      f,\n            const std::function<Real(Real)>& fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:240,1
    - Dst: GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:241,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fitting
    - ' alpha'
    - ' sigma'
    - f
    - fInverse
    argTypes:
    - Parameter
    - std::function<Real(Time)>
    - std::function<Real(Time)>
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 242
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Parameter fitting,\n                 const std::function<Real(Time)>&
      alpha,\n                 const std::function<Real(Time)>& sigma,\n                 std::function<Real(Real)>
      f,\n                 std::function<Real(Real)> fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:247,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:247,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    - Dst: identity
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    - Dst: identity
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - a
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - identity
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _f_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:250,1
    - Dst: fitting_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 250
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - _f_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _fInverse_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:252,1
    - Dst: fitting_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 252
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - _fInverse_
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 259
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - termStructure
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:280,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:281,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:282,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:283,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 285
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:294,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:301,1
    - Dst: QuantLib::GeneralizedHullWhite::a
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    - Dst: QuantLib::GeneralizedHullWhite::sigma
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 303
    functionName: QuantLib::GeneralizedHullWhite::HWdynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - QuantLib::GeneralizedHullWhite::a
    - QuantLib::GeneralizedHullWhite::sigma
    - ext::shared_ptr<ShortRateDynamics>
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> GeneralizedHullWhite::HWdynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:318,1
    - Dst: detail::LinearFlatInterpolationImpl<I1,I2>::LinearFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:318,1
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 322
    functionName: QuantLib::LinearFlatInterpolation::LinearFlatInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - detail::LinearFlatInterpolationImpl<I1,I2>::LinearFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LinearFlatInterpolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::LinearFlat::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - LinearFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::LinearFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 356
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:358,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMax
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:360,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 364
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::xMax
    - QuantLib::detail::LinearFlatInterpolationImpl::xMin
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 370
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::isInRange
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:372,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    - QuantLib::detail::LinearFlatInterpolationImpl::isInRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 377
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::LinearFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 356
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:358,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMax
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:360,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 364
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::xMax
    - QuantLib::detail::LinearFlatInterpolationImpl::xMin
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 370
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::isInRange
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:372,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    - QuantLib::detail::LinearFlatInterpolationImpl::isInRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 377
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolator_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::InterpolationParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - interpolator_
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' interp'
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: QuantLib::InterpolationParameter::Impl::reset
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reset(const Interpolation& interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:49,1
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:51,1
    - Dst: InterpolationParameter::Impl::Impl
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - count
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: QuantLib::InterpolationParameter::InterpolationParameter
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - InterpolationParameter::Impl::Impl
    - NoConstraint
    linkageType: ''
    returnType: void
    signature: "void InterpolationParameter(\n            Size count,\n            const
      Constraint& constraint = NoConstraint())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<InterpolationParameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:57,1
    - Dst: ext::shared_ptr::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - interp
    argTypes:
    - Interpolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::InterpolationParameter::reset
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::reset
    - ext::dynamic_pointer_cast<InterpolationParameter::Impl>
    linkageType: ''
    returnType: void
    signature: void reset(const Interpolation &interp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedHullWhite::initialize
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - speedtraits
    - voltraits
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - SpeedInterpolationTraits
    - VolInterpolationTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 3
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: QuantLib::GeneralizedHullWhite::GeneralizedHullWhite
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedHullWhite::initialize
    linkageType: ''
    returnType: void
    signature: "void GeneralizedHullWhite(\n            const Handle<YieldTermStructure>&
      yieldtermStructure,\n            const std::vector<Date>& speedstructure,\n
      \           const std::vector<Date>& volstructure,\n            const std::vector<Real>&
      speed,\n            const std::vector<Real>& vol,\n            const SpeedInterpolationTraits
      &speedtraits,\n            const VolInterpolationTraits &voltraits,\n            const
      std::function<Real(Real)>& f = {},\n            const std::function<Real(Real)>&
      fInverse = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::GeneralizedHullWhite::dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: ext::shared_ptr<ShortRateDynamics>
    signature: ext::shared_ptr<ShortRateDynamics> dynamics() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: a_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: QuantLib::GeneralizedHullWhite::a
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 3
    functionsReached:
    - a_
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigma_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: QuantLib::GeneralizedHullWhite::sigma
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 3
    functionsReached:
    - sigma_
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::GeneralizedHullWhite::identity
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real identity(Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:177,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:179,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:186,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:187,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:189,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:189,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:191,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:191,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:195,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:195,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:197,1
    - Dst: setParam
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:198,1
    - Dst: SpeedInterpolationTraits::interpolate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:199,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:199,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:200,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:200,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:201,1
    - Dst: InterpolationParameter::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:204,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:204,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:206,1
    - Dst: setParam
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:207,1
    - Dst: VolInterpolationTraits::interpolate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:209,1
    - Dst: params
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:209,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:210,1
    - Dst: InterpolationParameter::reset
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:211,1
    - Dst: QuantLib::GeneralizedHullWhite::generateArguments
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:213,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 9
    argNames:
    - ' yieldtermStructure'
    - ' speedstructure'
    - ' volstructure'
    - ' speed'
    - ' vol'
    - speedtraits
    - voltraits
    - ' f'
    - ' fInverse'
    argTypes:
    - Handle<YieldTermStructure>
    - std::vector<Date>
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Real>
    - SpeedInterpolationTraits
    - VolInterpolationTraits
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 215
    functionName: QuantLib::GeneralizedHullWhite::initialize
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 6
    functionsReached:
    - SpeedInterpolationTraits::interpolate
    - referenceDate
    - DayCounter::yearFraction
    - InterpolationParameter::reset
    - PositiveConstraint
    - setParam
    - dayCounter
    - QuantLib::GeneralizedHullWhite::generateArguments
    - begin
    - push_back
    - NoConstraint
    - registerWith
    - size
    - VolInterpolationTraits::interpolate
    - enableExtrapolation
    - end
    - params
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void initialize(const Handle<YieldTermStructure>& yieldtermStructure,\n
      \           const std::vector<Date>& speedstructure,\n            const std::vector<Date>&
      volstructure,\n            const std::vector<Real>& speed,\n            const
      std::vector<Real>& vol,\n            const SpeedInterpolationTraits &speedtraits,\n
      \           const VolInterpolationTraits &voltraits,\n            const std::function<Real(Real)>&
      f,\n            const std::function<Real(Real)>& fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:240,1
    - Dst: GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:241,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - fitting
    - ' alpha'
    - ' sigma'
    - f
    - fInverse
    argTypes:
    - Parameter
    - std::function<Real(Time)>
    - std::function<Real(Time)>
    - std::function<Real(Real)>
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 242
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Dynamics(Parameter fitting,\n                 const std::function<Real(Time)>&
      alpha,\n                 const std::function<Real(Time)>& sigma,\n                 std::function<Real(Real)>
      f,\n                 std::function<Real(Real)> fInverse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<StochasticProcess1D>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:247,1
    - Dst: OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:247,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    - Dst: identity
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    - Dst: identity
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - fitting
    - a
    - sigma
    argTypes:
    - Parameter
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::Dynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - identity
    - OrnsteinUhlenbeckProcess::OrnsteinUhlenbeckProcess
    - ext::shared_ptr<StochasticProcess1D>
    - std::move
    linkageType: ''
    returnType: void
    signature: void Dynamics(Parameter fitting, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _f_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:250,1
    - Dst: fitting_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - r
    argTypes:
    - Time
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 250
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::variable
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - fitting_
    - _f_
    linkageType: ''
    returnType: Real
    signature: Real variable(Time t, Rate r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _fInverse_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:252,1
    - Dst: fitting_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 252
    functionName: QuantLib::GeneralizedHullWhite::Dynamics::shortRate
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - _fInverse_
    - fitting_
    linkageType: ''
    returnType: Real
    signature: Real shortRate(Time t, Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 259
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - termStructure
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::Impl::Impl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Impl(Handle<YieldTermStructure> termStructure, Real a, Real sigma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:280,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:281,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:282,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:283,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 285
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::Impl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - forwardRate
    - std::sqrt
    - Real
    linkageType: ''
    returnType: Real
    signature: Real value(const Array&, Time t) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Parameter::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:294,1
    - Dst: FittingParameter::Impl::Impl
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' termStructure'
    - a
    - sigma
    argTypes:
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionName: QuantLib::GeneralizedHullWhite::FittingParameter::FittingParameter
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Parameter::Impl>
    - FittingParameter::Impl::Impl
    linkageType: ''
    returnType: void
    signature: "void FittingParameter(const Handle<YieldTermStructure>& termStructure,\n
      \                        Real a, Real sigma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<ShortRateDynamics>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:301,1
    - Dst: QuantLib::GeneralizedHullWhite::a
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    - Dst: QuantLib::GeneralizedHullWhite::sigma
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    - Dst: Dynamics::Dynamics
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 303
    functionName: QuantLib::GeneralizedHullWhite::HWdynamics
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Dynamics::Dynamics
    - QuantLib::GeneralizedHullWhite::a
    - QuantLib::GeneralizedHullWhite::sigma
    - ext::shared_ptr<ShortRateDynamics>
    linkageType: ''
    returnType: ext::shared_ptr<OneFactorModel::ShortRateDynamics>
    signature: ext::shared_ptr<OneFactorModel::ShortRateDynamics> GeneralizedHullWhite::HWdynamics()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:318,1
    - Dst: detail::LinearFlatInterpolationImpl<I1,I2>::LinearFlatInterpolationImpl<I1,I2>
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:318,1
    - Dst: update
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 322
    functionName: QuantLib::LinearFlatInterpolation::LinearFlatInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - detail::LinearFlatInterpolationImpl<I1,I2>::LinearFlatInterpolationImpl<I1,I2>
    - update
    - ext::shared_ptr<Interpolation::Impl>
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolation(const I1& xBegin, const I1& xEnd,\n                            const
      I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LinearFlatInterpolation
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::LinearFlat::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - LinearFlatInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1& xBegin, const I1& xEnd,\n                                  const
      I2& yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::LinearFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 356
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:358,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMax
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:360,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 364
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::xMax
    - QuantLib::detail::LinearFlatInterpolationImpl::xMin
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 370
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::isInRange
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:372,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    - QuantLib::detail::LinearFlatInterpolationImpl::isInRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 377
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' xBegin'
    - ' xEnd'
    - ' yBegin'
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::LinearFlatInterpolationImpl
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LinearFlatInterpolationImpl(const I1& xBegin, const I1& xEnd,\n
      \                                   const I2& yBegin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 356
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::update
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - Size
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMin
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:358,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::xMax
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:360,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 364
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::value
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::xMax
    - QuantLib::detail::LinearFlatInterpolationImpl::xMin
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real value(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 370
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::primitive
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    linkageType: ''
    returnType: Real
    signature: Real primitive(Real x) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::isInRange
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:372,1
    - Dst: QuantLib::detail::LinearFlatInterpolationImpl::locate
      Src: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 376
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::derivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::LinearFlatInterpolationImpl::locate
    - QuantLib::detail::LinearFlatInterpolationImpl::isInRange
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 377
    functionName: QuantLib::detail::LinearFlatInterpolationImpl::secondDerivative
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedhullwhite.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real secondDerivative(Real) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - std::function<Real(Time)>
    - std::function<Real(Time)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess(\n
      \       std::function<Real(Time)> speed, std::function<Real(Time)> vol, Real
      x0, Real level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - volatility_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:48,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::expectation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::expectation(\n                                             Time
      t, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:53,1
    - Dst: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::stdDeviation(\n                                             Time
      t, Real x0, Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:58,1
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::sqrt
    - speed_
    - volatility_
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::variance(\n                                              Time
      t, Real, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::speed
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::speed(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::volatility
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - volatility_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::volatility(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::level
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::level() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:28,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:30,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - speed
    - vol
    - x0
    - level
    argTypes:
    - std::function<Real(Time)>
    - std::function<Real(Time)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GeneralizedOrnsteinUhlenbeckProcess::GeneralizedOrnsteinUhlenbeckProcess(\n
      \       std::function<Real(Time)> speed, std::function<Real(Time)> vol, Real
      x0, Real level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - volatility_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::diffusion(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:48,1
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::expectation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::expectation(\n                                             Time
      t, Real x0, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:53,1
    - Dst: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - x0
    - dt
    argTypes:
    - Time
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::stdDeviation(\n                                             Time
      t, Real x0, Time dt) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:58,1
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:59,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:61,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - t
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 67
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::variance
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::sqrt
    - speed_
    - volatility_
    linkageType: ''
    returnType: Real
    signature: "Real GeneralizedOrnsteinUhlenbeckProcess::variance(\n                                              Time
      t, Real, Time dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: speed_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::speed
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - speed_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::speed(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: volatility_
      Src: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::volatility
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached:
    - volatility_
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::volatility(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::GeneralizedOrnsteinUhlenbeckProcess::level
    functionSourceFile: /src/quantlib/ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GeneralizedOrnsteinUhlenbeckProcess::level() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:57,1
    - Dst: QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:60,1
    - Dst: QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:64,1
    - Dst: endDiscount
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 70
    functionName: QuantLib::MCEverestEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - endDiscount
    - QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:78,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:80,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:82,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:82,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:84,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::MCEverestEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - processes
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 170
    functionName: QuantLib::MCEverestEngine<RNG, S>::MCEverestEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCEverestEngine<RNG, S>::MCEverestEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:174,1
    - Dst: QuantLib::MCEverestEngine<RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:175,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:176,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:177,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:178,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:179,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:180,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:180,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:182,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 184
    functionName: QuantLib::MCEverestEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - QuantLib::MCEverestEngine<RNG,S>::arguments_::exercise::lastDate
    - time
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCEverestEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:189,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:191,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:193,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 195
    functionName: QuantLib::MCEverestEngine<RNG,S>::endDiscount
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor MCEverestEngine<RNG,S>::endDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::shared_ptr<\n                         typename MCEverestEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:201,1
    - Dst: QuantLib::MCEverestEngine<RNG,S>::endDiscount
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:205,1
    - Dst: EverestMultiPathPricer::EverestMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: QuantLib::MCEverestEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - EverestMultiPathPricer::EverestMultiPathPricer
    - QuantLib::MCEverestEngine<RNG,S>::endDiscount
    - "ext::shared_ptr<\n                         typename MCEverestEngine<RNG,S>::path_pricer_type>"
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEverestEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEverestEngine<RNG,S>::path_pricer_type>
      MCEverestEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: QuantLib::MakeMCEverestEngine<RNG, S>::MakeMCEverestEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEverestEngine<RNG, S>::MakeMCEverestEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:246,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 250
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:255,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:255,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 262
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:286,1
    - Dst: MCEverestEngine<RNG,S>::MCEverestEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEverestEngine<RNG,S>::MCEverestEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>::operator
    signature: MakeMCEverestEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:57,1
    - Dst: QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:60,1
    - Dst: QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:64,1
    - Dst: endDiscount
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 70
    functionName: QuantLib::MCEverestEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - endDiscount
    - QuantLib::MCEverestEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:78,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:80,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:82,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:82,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:84,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: QuantLib::MCEverestEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:157,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:160,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:161,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:163,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:166,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 9
    argNames:
    - processes
    - timeSteps
    - timeStepsPerYear
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - Size
    - Size
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 170
    functionName: QuantLib::MCEverestEngine<RNG, S>::MCEverestEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MCEverestEngine<RNG, S>::MCEverestEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        Size timeSteps,\n        Size timeStepsPerYear,\n        bool
      brownianBridge,\n        bool antitheticVariate,\n        Size requiredSamples,\n
      \       Real requiredTolerance,\n        Size maxSamples,\n        BigNatural
      seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:174,1
    - Dst: QuantLib::MCEverestEngine<RNG,S>::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:175,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:176,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:177,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:178,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:179,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:180,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:180,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:182,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 184
    functionName: QuantLib::MCEverestEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - Null<Size>
    - QuantLib::MCEverestEngine<RNG,S>::arguments_::exercise::lastDate
    - time
    - TimeGrid
    - QL_FAIL
    - std::max<Size>
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCEverestEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:189,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:190,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:191,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:193,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 195
    functionName: QuantLib::MCEverestEngine<RNG,S>::endDiscount
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 1
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: DiscountFactor
    signature: DiscountFactor MCEverestEngine<RNG,S>::endDiscount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: "ext::shared_ptr<\n                         typename MCEverestEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:201,1
    - Dst: QuantLib::MCEverestEngine<RNG,S>::endDiscount
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:205,1
    - Dst: EverestMultiPathPricer::EverestMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: QuantLib::MCEverestEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - EverestMultiPathPricer::EverestMultiPathPricer
    - QuantLib::MCEverestEngine<RNG,S>::endDiscount
    - "ext::shared_ptr<\n                         typename MCEverestEngine<RNG,S>::path_pricer_type>"
    linkageType: ''
    returnType: ext::shared_ptr<typename MCEverestEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCEverestEngine<RNG,S>::path_pricer_type>
      MCEverestEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:212,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: QuantLib::MakeMCEverestEngine<RNG, S>::MakeMCEverestEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCEverestEngine<RNG, S>::MakeMCEverestEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSteps(Size steps)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSteps(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - steps
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withStepsPerYear(Size steps)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withStepsPerYear(Size
      steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:246,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 250
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:255,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:255,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 262
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 276
    functionName: "&\n    MakeMCEverestEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>
    signature: "MakeMCEverestEngine<RNG,S> &\n    MakeMCEverestEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:282,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:284,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:286,1
    - Dst: MCEverestEngine<RNG,S>::MCEverestEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp:286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCEverestEngine<RNG,S>::MCEverestEngine<RNG,S>
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCEverestEngine<RNG,S>::operator
    signature: MakeMCEverestEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:28,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - notional
    - guarantee
    - ' exercise'
    argTypes:
    - Real
    - Rate
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::EverestOption::EverestOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void EverestOption::EverestOption(Real notional,\n                                 Rate
      guarantee,\n                                 const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:33,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::EverestOption::yield
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate EverestOption::yield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:38,1
    - Dst: dynamic_cast<EverestOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::EverestOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<EverestOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EverestOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::fetchResults
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:48,1
    - Dst: dynamic_cast<const EverestOption::results*>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:49,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 3
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: QuantLib::EverestOption::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const EverestOption::results*>
    - QL_ENSURE
    - QuantLib::MultiAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: void EverestOption::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:56,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: EverestOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void EverestOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:60,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:62,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: EverestOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EverestOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::results::reset
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: EverestOption::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::MultiAssetOption::results::reset
    linkageType: ''
    returnType: void
    signature: void EverestOption::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:28,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - notional
    - guarantee
    - ' exercise'
    argTypes:
    - Real
    - Rate
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::EverestOption::EverestOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - NullPayoff::NullPayoff
    - ext::shared_ptr<Payoff>
    linkageType: ''
    returnType: void
    signature: "void EverestOption::EverestOption(Real notional,\n                                 Rate
      guarantee,\n                                 const ext::shared_ptr<Exercise>&
      exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:33,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: QuantLib::EverestOption::yield
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate EverestOption::yield() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:38,1
    - Dst: dynamic_cast<EverestOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 45
    functionName: QuantLib::EverestOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<EverestOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EverestOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::fetchResults
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:48,1
    - Dst: dynamic_cast<const EverestOption::results*>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:49,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 3
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: QuantLib::EverestOption::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<const EverestOption::results*>
    - QL_ENSURE
    - QuantLib::MultiAssetOption::fetchResults
    linkageType: ''
    returnType: void
    signature: void EverestOption::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:56,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: EverestOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void EverestOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:60,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:62,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: EverestOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void EverestOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::results::reset
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:67,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: EverestOption::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/everestoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::MultiAssetOption::results::reset
    linkageType: ''
    returnType: void
    signature: void EverestOption::results::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:56,1
    - Dst: QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:59,1
    - Dst: QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: QuantLib::MCPagodaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:70,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:72,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:74,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:74,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:76,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::MCPagodaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:138,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - processes
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 141
    functionName: QuantLib::MCPagodaEngine<RNG, S>::MCPagodaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCPagodaEngine<RNG, S>::MCPagodaEngine(ext::shared_ptr<StochasticProcessArray>
      processes,\n                                                  bool brownianBridge,\n
      \                                                 bool antitheticVariate,\n
      \                                                 Size requiredSamples,\n                                                  Real
      requiredTolerance,\n                                                  Size maxSamples,\n
      \                                                 BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:147,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:151,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:151,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:153,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 157
    functionName: QuantLib::MCPagodaEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCPagodaEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:166,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:168,1
    - Dst: "ext::shared_ptr<\n                         typename MCPagodaEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:170,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:173,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:174,1
    - Dst: PagodaMultiPathPricer::PagodaMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 175
    functionName: QuantLib::MCPagodaEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - PagodaMultiPathPricer::PagodaMultiPathPricer
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - "ext::shared_ptr<\n                         typename MCPagodaEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCPagodaEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCPagodaEngine<RNG,S>::path_pricer_type> MCPagodaEngine<RNG,S>::pathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::MakeMCPagodaEngine<RNG, S>::MakeMCPagodaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCPagodaEngine<RNG, S>::MakeMCPagodaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:201,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:210,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 217
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:237,1
    - Dst: MCPagodaEngine<RNG,S>::MCPagodaEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 244
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCPagodaEngine<RNG,S>::MCPagodaEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>::operator
    signature: MakeMCPagodaEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:56,1
    - Dst: QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:59,1
    - Dst: QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: QuantLib::MCPagodaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCPagodaEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:70,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:72,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:74,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:74,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:76,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::MCPagodaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:138,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - processes
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 141
    functionName: QuantLib::MCPagodaEngine<RNG, S>::MCPagodaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCPagodaEngine<RNG, S>::MCPagodaEngine(ext::shared_ptr<StochasticProcessArray>
      processes,\n                                                  bool brownianBridge,\n
      \                                                 bool antitheticVariate,\n
      \                                                 Size requiredSamples,\n                                                  Real
      requiredTolerance,\n                                                  Size maxSamples,\n
      \                                                 BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:147,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:149,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:151,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:151,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:153,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 157
    functionName: QuantLib::MCPagodaEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCPagodaEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:166,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:167,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:168,1
    - Dst: "ext::shared_ptr<\n                         typename MCPagodaEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:170,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:173,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:174,1
    - Dst: PagodaMultiPathPricer::PagodaMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 175
    functionName: QuantLib::MCPagodaEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - PagodaMultiPathPricer::PagodaMultiPathPricer
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - "ext::shared_ptr<\n                         typename MCPagodaEngine<RNG,S>::path_pricer_type>"
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCPagodaEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCPagodaEngine<RNG,S>::path_pricer_type> MCPagodaEngine<RNG,S>::pathPricer()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:181,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: QuantLib::MakeMCPagodaEngine<RNG, S>::MakeMCPagodaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCPagodaEngine<RNG, S>::MakeMCPagodaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withAntitheticVariate(bool b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:201,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 205
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:210,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 217
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withAbsoluteTolerance(Real tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: "&\n    MakeMCPagodaEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>
    signature: "MakeMCPagodaEngine<RNG,S> &\n    MakeMCPagodaEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:237,1
    - Dst: MCPagodaEngine<RNG,S>::MCPagodaEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 244
    functionName: ext::shared_ptr<PricingEngine>() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCPagodaEngine<RNG,S>::MCPagodaEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCPagodaEngine<RNG,S>::operator
    signature: MakeMCPagodaEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:28,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:29,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:30,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:31,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' fixingDates'
    - strike
    argTypes:
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::HimalayaOption::HimalayaOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::shared_ptr<Exercise>
    - EuropeanExercise::EuropeanExercise
    - ext::shared_ptr<Payoff>
    - back
    linkageType: ''
    returnType: void
    signature: "void HimalayaOption::HimalayaOption(const std::vector<Date>& fixingDates,\n
      \                                  Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:35,1
    - Dst: dynamic_cast<HimalayaOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::HimalayaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiAssetOption::setupArguments
    - dynamic_cast<HimalayaOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HimalayaOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: HimalayaOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HimalayaOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:28,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:29,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:30,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:31,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' fixingDates'
    - strike
    argTypes:
    - std::vector<Date>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::HimalayaOption::HimalayaOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ext::shared_ptr<Exercise>
    - EuropeanExercise::EuropeanExercise
    - ext::shared_ptr<Payoff>
    - back
    linkageType: ''
    returnType: void
    signature: "void HimalayaOption::HimalayaOption(const std::vector<Date>& fixingDates,\n
      \                                  Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:35,1
    - Dst: dynamic_cast<HimalayaOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionName: QuantLib::HimalayaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultiAssetOption::setupArguments
    - dynamic_cast<HimalayaOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HimalayaOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:45,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: HimalayaOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/himalayaoption.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void HimalayaOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:29,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:29,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:30,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:31,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' fixingDates'
    - roof
    - fraction
    argTypes:
    - std::vector<Date>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::PagodaOption::PagodaOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Exercise>
    - back
    - EuropeanExercise::EuropeanExercise
    - ext::shared_ptr<Payoff>
    - NullPayoff::NullPayoff
    linkageType: ''
    returnType: void
    signature: "void PagodaOption::PagodaOption(const std::vector<Date>& fixingDates,\n
      \                              Real roof,\n                               Real
      fraction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:36,1
    - Dst: dynamic_cast<PagodaOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::PagodaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<PagodaOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PagodaOption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: PagodaOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void PagodaOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: PagodaOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - empty
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PagodaOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:29,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:29,1
    - Dst: ext::shared_ptr<Exercise>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:30,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:31,1
    - Dst: EuropeanExercise::EuropeanExercise
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' fixingDates'
    - roof
    - fraction
    argTypes:
    - std::vector<Date>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: QuantLib::PagodaOption::PagodaOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Exercise>
    - back
    - EuropeanExercise::EuropeanExercise
    - ext::shared_ptr<Payoff>
    - NullPayoff::NullPayoff
    linkageType: ''
    returnType: void
    signature: "void PagodaOption::PagodaOption(const std::vector<Date>& fixingDates,\n
      \                              Real roof,\n                               Real
      fraction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:36,1
    - Dst: dynamic_cast<PagodaOption::arguments*>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::PagodaOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<PagodaOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PagodaOption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:48,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: PagodaOption::arguments::arguments()
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void PagodaOption::arguments::arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:53,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:54,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: PagodaOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/pagodaoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - empty
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PagodaOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - roof
    - fraction
    - discount
    argTypes:
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::PagodaMultiPathPricer::PagodaMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PagodaMultiPathPricer::PagodaMultiPathPricer(Real roof, Real
      fraction,\n                                                 DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:30,1
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:31,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:37,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:44,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 45
    functionName: PagodaMultiPathPricer::operator()(const MultiPath& multiPath) const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - std::min
    - pathSize
    - std::max<Real>
    - front
    linkageType: ''
    returnType: Real
    signature: Real PagodaMultiPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - roof
    - fraction
    - discount
    argTypes:
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::PagodaMultiPathPricer::PagodaMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PagodaMultiPathPricer::PagodaMultiPathPricer(Real roof, Real
      fraction,\n                                                 DiscountFactor discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:30,1
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:31,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:37,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:44,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 45
    functionName: PagodaMultiPathPricer::operator()(const MultiPath& multiPath) const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mcpagodaengine.cpp
    functionUses: 0
    functionsReached:
    - assetNumber
    - std::min
    - pathSize
    - std::max<Real>
    - front
    linkageType: ''
    returnType: Real
    signature: Real PagodaMultiPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:43,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:43,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:48,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:51,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:52,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:54,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:58,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:60,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:63,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:65,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:72,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:72,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:73,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:74,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:77,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:78,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:78,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:79,1
    - Dst: log
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:82,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:82,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:82,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:83,1
    - Dst: cum
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:87,1
    - Dst: cum
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:88,1
    - Dst: cum
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:89,1
    - Dst: cum
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:90,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:92,1
    - Dst: log
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:101,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:102,1
    - Dst: pdf
      Src: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 103
    functionName: KirkSpreadOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/kirkspreadoptionengine.cpp
    functionUses: 0
    functionsReached:
    - blackVolatility
    - QL_REQUIRE
    - exercise::type
    - DayCounter::yearFraction
    - value
    - pdf
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - log
    - pow
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - cum
    - exercise::lastDate
    - sqrt
    - stateVariable
    linkageType: ''
    returnType: void
    signature: void KirkSpreadOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - notional
    - guarantee
    - discount
    argTypes:
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::EverestMultiPathPricer::EverestMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EverestMultiPathPricer::EverestMultiPathPricer(Real notional,\n
      \                                                  Real guarantee,\n                                                   DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:32,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:38,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 44
    functionName: EverestMultiPathPricer::operator()(const MultiPath& multiPath) const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - assetNumber
    - std::min
    - pathSize
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real EverestMultiPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - notional
    - guarantee
    - discount
    argTypes:
    - Real
    - Real
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: QuantLib::EverestMultiPathPricer::EverestMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EverestMultiPathPricer::EverestMultiPathPricer(Real notional,\n
      \                                                  Real guarantee,\n                                                   DiscountFactor
      discount)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:32,1
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:38,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:38,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:40,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:40,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 44
    functionName: EverestMultiPathPricer::operator()(const MultiPath& multiPath) const
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mceverestengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - assetNumber
    - std::min
    - pathSize
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real EverestMultiPathPricer::operator()(const MultiPath& multiPath)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - discount
    argTypes:
    - ext::shared_ptr<Payoff>
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::HimalayaMultiPathPricer::HimalayaMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HimalayaMultiPathPricer::HimalayaMultiPathPricer(ext::shared_ptr<Payoff>
      payoff,\n                                                     DiscountFactor
      discount)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:32,1
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:34,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:47,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:58,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 62
    functionName: "HimalayaMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - assetNumber
    - std::min
    - pathSize
    - front
    linkageType: ''
    returnType: Real
    signature: "Real HimalayaMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - discount
    argTypes:
    - ext::shared_ptr<Payoff>
    - DiscountFactor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::HimalayaMultiPathPricer::HimalayaMultiPathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HimalayaMultiPathPricer::HimalayaMultiPathPricer(ext::shared_ptr<Payoff>
      payoff,\n                                                     DiscountFactor
      discount)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assetNumber
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:32,1
    - Dst: pathSize
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:33,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:34,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:47,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp:58,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - ' multiPath'
    argTypes:
    - MultiPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 62
    functionName: "HimalayaMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - assetNumber
    - std::min
    - pathSize
    - front
    linkageType: ''
    returnType: Real
    signature: "Real HimalayaMultiPathPricer::operator()(const MultiPath& multiPath)\n
      \                                                                     const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:55,1
    - Dst: QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:58,1
    - Dst: QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::MCHimalayaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:70,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:72,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:74,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:74,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:76,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::MCHimalayaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:137,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - processes
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 140
    functionName: QuantLib::MCHimalayaEngine<RNG, S>::MCHimalayaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCHimalayaEngine<RNG, S>::MCHimalayaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        bool brownianBridge,\n        bool antitheticVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:146,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:150,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:150,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:152,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 156
    functionName: QuantLib::MCHimalayaEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCHimalayaEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:164,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:166,1
    - Dst: "ext::shared_ptr<\n                         typename MCHimalayaEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:168,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:171,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:172,1
    - Dst: HimalayaMultiPathPricer::HimalayaMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 173
    functionName: QuantLib::MCHimalayaEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - HimalayaMultiPathPricer::HimalayaMultiPathPricer
    - "ext::shared_ptr<\n                         typename MCHimalayaEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCHimalayaEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCHimalayaEngine<RNG,S>::path_pricer_type>
      MCHimalayaEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::MakeMCHimalayaEngine<RNG, S>::MakeMCHimalayaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHimalayaEngine<RNG, S>::MakeMCHimalayaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:199,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:235,1
    - Dst: MCHimalayaEngine<RNG,S>::MCHimalayaEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 243
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHimalayaEngine<RNG,S>::MCHimalayaEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>::operator
    signature: "MakeMCHimalayaEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::calculate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:55,1
    - Dst: QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:58,1
    - Dst: QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionName: QuantLib::MCHimalayaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MCHimalayaEngine::mcModel_::sampleAccumulator
    - QuantLib::Instrument::calculate
    linkageType: ''
    returnType: void
    signature: void calculate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:70,1
    - Dst: timeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:72,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:74,1
    - Dst: TimeGrid::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:74,1
    - Dst: ext::shared_ptr<path_generator_type>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:76,1
    - Dst: path_generator_type::path_generator_type
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: QuantLib::MCHimalayaEngine::pathGenerator
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - TimeGrid::size
    - path_generator_type::path_generator_type
    - size
    - timeGrid
    - QuantLib::make_sequence_generator
    - ext::shared_ptr<path_generator_type>
    linkageType: ''
    returnType: ext::shared_ptr<path_generator_type>
    signature: ext::shared_ptr<path_generator_type> pathGenerator() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:137,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - processes
    - brownianBridge
    - antitheticVariate
    - requiredSamples
    - requiredTolerance
    - maxSamples
    - seed
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    - bool
    - bool
    - Size
    - Real
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 140
    functionName: QuantLib::MCHimalayaEngine<RNG, S>::MCHimalayaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MCHimalayaEngine<RNG, S>::MCHimalayaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      processes,\n        bool brownianBridge,\n        bool antitheticVariate,\n
      \       Size requiredSamples,\n        Real requiredTolerance,\n        Size
      maxSamples,\n        BigNatural seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixingDates::size
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:146,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:148,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:150,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:150,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:152,1
    - Dst: TimeGrid
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 156
    functionName: QuantLib::MCHimalayaEngine<RNG,S>::timeGrid
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - std::vector::begin
    - std::vector::end
    - time
    - fixingDates::size
    - TimeGrid
    - std::vector::back
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: TimeGrid
    signature: TimeGrid MCHimalayaEngine<RNG,S>::timeGrid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:164,1
    - Dst: process
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:166,1
    - Dst: "ext::shared_ptr<\n                         typename MCHimalayaEngine<RNG,S>::path_pricer_type>"
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:168,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:171,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:172,1
    - Dst: HimalayaMultiPathPricer::HimalayaMultiPathPricer
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 173
    functionName: QuantLib::MCHimalayaEngine<RNG,S>::pathPricer
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - process
    - HimalayaMultiPathPricer::HimalayaMultiPathPricer
    - "ext::shared_ptr<\n                         typename MCHimalayaEngine<RNG,S>::path_pricer_type>"
    - ext::shared_ptr::riskFreeRate
    - exercise::lastDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<typename MCHimalayaEngine<RNG,S>::path_pricer_type>
    signature: ext::shared_ptr<typename MCHimalayaEngine<RNG,S>::path_pricer_type>
      MCHimalayaEngine<RNG,S>::pathPricer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:179,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<StochasticProcessArray>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: QuantLib::MakeMCHimalayaEngine<RNG, S>::MakeMCHimalayaEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - std::move
    - Null<Size>
    linkageType: ''
    returnType: void
    signature: "void MakeMCHimalayaEngine<RNG, S>::MakeMCHimalayaEngine(\n        ext::shared_ptr<StochasticProcessArray>
      process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - brownianBridge
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withBrownianBridge(bool brownianBridge)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withBrownianBridge(bool
      brownianBridge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withAntitheticVariate(bool
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:199,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:208,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 215
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withAbsoluteTolerance(Real
      tolerance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samples
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withMaxSamples(Size samples)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withMaxSamples(Size
      samples)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: "&\n    MakeMCHimalayaEngine<RNG,S>::withSeed(BigNatural seed)"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>
    signature: "MakeMCHimalayaEngine<RNG,S> &\n    MakeMCHimalayaEngine<RNG,S>::withSeed(BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:235,1
    - Dst: MCHimalayaEngine<RNG,S>::MCHimalayaEngine<RNG,S>
      Src: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 243
    functionName: "ext::shared_ptr<PricingEngine>()\n                                                                      const"
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/mchimalayaengine.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<PricingEngine>
    - MCHimalayaEngine<RNG,S>::MCHimalayaEngine<RNG,S>
    linkageType: ''
    returnType: MakeMCHimalayaEngine<RNG,S>::operator
    signature: "MakeMCHimalayaEngine<RNG,S>::operator ext::shared_ptr<PricingEngine>()\n
      \                                                                     const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - currentAverage
    - startDate
    - timeSteps
    - assetSteps
    - z_min
    - z_max
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    - Date
    - Size
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::ContinuousArithmeticAsianVecerEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ContinuousArithmeticAsianVecerEngine::ContinuousArithmeticAsianVecerEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Handle<Quote>
      currentAverage,\n        Date startDate,\n        Size timeSteps,\n        Size
      assetSteps,\n        Real z_min,\n        Real z_max)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:55,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:58,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:59,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:60,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:61,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:66,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:69,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:72,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:76,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:78,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:80,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:85,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:90,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:91,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:98,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:99,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:100,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:104,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:106,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:117,1
    - Dst: DPlusDMinus
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:122,1
    - Dst: TridiagonalOperator::upperDiagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:124,1
    - Dst: TridiagonalOperator::lowerDiagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:125,1
    - Dst: TridiagonalOperator::diagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:126,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:129,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:132,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:133,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:143,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:144,1
    - Dst: TridiagonalOperator::setMidRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:145,1
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:150,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:150,1
    - Dst: TridiagonalOperator::setFirstRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:152,1
    - Dst: TridiagonalOperator::setLastRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:153,1
    - Dst: TridiagonalOperator::applyTo
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:155,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:164,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:165,1
    - Dst: TridiagonalOperator::setMidRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:166,1
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:172,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:172,1
    - Dst: TridiagonalOperator::setFirstRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:176,1
    - Dst: TridiagonalOperator::setLastRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:177,1
    - Dst: TridiagonalOperator::solveFor
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:181,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:186,1
    - Dst: Rounding
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:186,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:200,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:203,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 207
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 0
    functionsReached:
    - VanillaOption::setPricingEngine
    - TridiagonalOperator::diagonal
    - QuantLib::TridiagonalOperator::identity
    - std::max<Real>
    - TridiagonalOperator::solveFor
    - TridiagonalOperator::setFirstRow
    - stateVariable
    - exercise::type
    - dividendYield
    - TridiagonalOperator::size
    - Rounding
    - TridiagonalOperator::lowerDiagonal
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<AnalyticEuropeanEngine>
    - TridiagonalOperator::setMidRow
    - exercise::lastDate
    - ext::shared_ptr::strike
    - QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
    - DayCounter::yearFraction
    - std::exp
    - ext::shared_ptr::optionType
    - TridiagonalOperator::setLastRow
    - DPlusDMinus
    - TridiagonalOperator::upperDiagonal
    - QL_REQUIRE
    - blackVolatility
    - TridiagonalOperator::applyTo
    - Integer
    - riskFreeRate
    - QuantLib::detail::instance
    - Array::size
    linkageType: ''
    returnType: void
    signature: void ContinuousArithmeticAsianVecerEngine::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:217,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:218,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:223,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:227,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:230,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:231,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:232,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:235,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - t
    - T1
    - T2
    - v
    - r
    argTypes:
    - Time
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 239
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 1
    functionsReached:
    - std::fabs
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ContinuousArithmeticAsianVecerEngine::cont_strategy(Time t,\n
      \                                                            Time T1,\n                                                             Time
      T2,\n                                                             Real v,\n
      \                                                            Real r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - currentAverage
    - startDate
    - timeSteps
    - assetSteps
    - z_min
    - z_max
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Handle<Quote>
    - Date
    - Size
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::ContinuousArithmeticAsianVecerEngine
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ContinuousArithmeticAsianVecerEngine::ContinuousArithmeticAsianVecerEngine(\n
      \       ext::shared_ptr<GeneralizedBlackScholesProcess> process,\n        Handle<Quote>
      currentAverage,\n        Date startDate,\n        Size timeSteps,\n        Size
      assetSteps,\n        Real z_min,\n        Real z_max)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:55,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:55,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:58,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:59,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:60,1
    - Dst: stateVariable
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:61,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:66,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:69,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:72,1
    - Dst: blackVolatility
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:76,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:78,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:80,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:83,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:85,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:89,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:90,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:91,1
    - Dst: VanillaOption::setPricingEngine
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:98,1
    - Dst: ext::make_shared<AnalyticEuropeanEngine>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:99,1
    - Dst: VanillaOption::NPV
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:100,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:104,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:106,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:117,1
    - Dst: DPlusDMinus
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:122,1
    - Dst: TridiagonalOperator::upperDiagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:124,1
    - Dst: TridiagonalOperator::lowerDiagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:125,1
    - Dst: TridiagonalOperator::diagonal
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:126,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:129,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:132,1
    - Dst: std::max<Real>
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:133,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:142,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:143,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:144,1
    - Dst: TridiagonalOperator::setMidRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:145,1
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:150,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:150,1
    - Dst: TridiagonalOperator::setFirstRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:152,1
    - Dst: TridiagonalOperator::setLastRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:153,1
    - Dst: TridiagonalOperator::applyTo
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:155,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:163,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:164,1
    - Dst: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:165,1
    - Dst: TridiagonalOperator::setMidRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:166,1
    - Dst: QuantLib::TridiagonalOperator::identity
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:172,1
    - Dst: TridiagonalOperator::size
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:172,1
    - Dst: TridiagonalOperator::setFirstRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:176,1
    - Dst: TridiagonalOperator::setLastRow
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:177,1
    - Dst: TridiagonalOperator::solveFor
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:181,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:186,1
    - Dst: Rounding
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:186,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:193,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:199,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:200,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:203,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 207
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 0
    functionsReached:
    - VanillaOption::setPricingEngine
    - TridiagonalOperator::diagonal
    - QuantLib::TridiagonalOperator::identity
    - std::max<Real>
    - TridiagonalOperator::solveFor
    - TridiagonalOperator::setFirstRow
    - stateVariable
    - exercise::type
    - dividendYield
    - TridiagonalOperator::size
    - Rounding
    - TridiagonalOperator::lowerDiagonal
    - VanillaOption::NPV
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - ext::make_shared<AnalyticEuropeanEngine>
    - TridiagonalOperator::setMidRow
    - exercise::lastDate
    - ext::shared_ptr::strike
    - QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
    - DayCounter::yearFraction
    - std::exp
    - ext::shared_ptr::optionType
    - TridiagonalOperator::setLastRow
    - DPlusDMinus
    - TridiagonalOperator::upperDiagonal
    - QL_REQUIRE
    - blackVolatility
    - TridiagonalOperator::applyTo
    - Integer
    - riskFreeRate
    - QuantLib::detail::instance
    - Array::size
    linkageType: ''
    returnType: void
    signature: void ContinuousArithmeticAsianVecerEngine::calculate() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:217,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:218,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:223,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:224,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:227,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:230,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:231,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:232,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp:235,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - t
    - T1
    - T2
    - v
    - r
    argTypes:
    - Time
    - Time
    - Time
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 239
    functionName: QuantLib::ContinuousArithmeticAsianVecerEngine::cont_strategy
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/continuousarithmeticasianvecerengine.cpp
    functionUses: 2
    functionsReached:
    - std::fabs
    - std::exp
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real ContinuousArithmeticAsianVecerEngine::cont_strategy(Time t,\n
      \                                                            Time T1,\n                                                             Time
      T2,\n                                                             Real v,\n
      \                                                            Real r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::SpreadOption::SpreadOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/spreadoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SpreadOption(const ext::shared_ptr<PlainVanillaPayoff>& payoff,\n
      \                    const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<PlainVanillaPayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::SpreadOption::SpreadOption
    functionSourceFile: /src/quantlib/ql/experimental/exoticoptions/spreadoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SpreadOption(const ext::shared_ptr<PlainVanillaPayoff>& payoff,\n
      \                    const ext::shared_ptr<Exercise>& exercise)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:44,1
    - Dst: ext::make_shared<GBSMRNDCalculator>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' bsProcess'
    - sqrtProcess
    - maturityDates
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SquareRootProcess>
    - std::vector<Date>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionName: QuantLib::SquareRootCLVModel::SquareRootCLVModel
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GBSMRNDCalculator>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SquareRootCLVModel::SquareRootCLVModel(\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      bsProcess,\n        ext::shared_ptr<SquareRootProcess> sqrtProcess,\n        std::vector<Date>
      maturityDates,\n        Size lagrangeOrder,\n        Real pMax,\n        Real
      pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::cdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:48,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - k
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::SquareRootCLVModel::cdf
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 1
    functionsReached:
    - time
    - QuantLib::SquareRootCLVModel::cdf
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::cdf(const Date& d, Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: invcdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:53,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - q
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::SquareRootCLVModel::invCDF
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - time
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::invCDF(const Date& d, Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:59,1
    - Dst: a
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:61,1
    - Dst: b
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:62,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:67,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:67,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionName: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - b
    - sigma
    - std::exp
    - a
    - std::make_pair
    - time
    - x0
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> SquareRootCLVModel::nonCentralChiSquaredParams(\n
      \       const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:75,1
    - Dst: GaussianQuadrature
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:77,1
    - Dst: GaussNonCentralChiSquaredPolynomial
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:78,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:86,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:86,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:87,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:88,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:90,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:91,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:92,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:94,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:95,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 102
    functionName: QuantLib::SquareRootCLVModel::collocationPointsX
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - Array::front
    - std::sort
    - QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    - Array::begin
    - Array::end
    - Null<Real>
    - GaussianQuadrature
    - std::max
    - QuantLib::quantile
    - GaussNonCentralChiSquaredPolynomial
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array SquareRootCLVModel::collocationPointsX(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::collocationPointsX
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:106,1
    - Dst: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:107,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:112,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:113,1
    - Dst: QuantLib::SquareRootCLVModel::invCDF
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 119
    functionName: QuantLib::SquareRootCLVModel::collocationPointsY
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    - QuantLib::BSMRNDCalculator::cdf
    - QuantLib::SquareRootCLVModel::collocationPointsX
    - Array::size
    - QuantLib::SquareRootCLVModel::invCDF
    linkageType: ''
    returnType: Array
    signature: Array SquareRootCLVModel::collocationPointsY(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::SquareRootCLVModel::g
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::function<Real(Time, Real)>
    signature: std::function<Real(Time, Real)> SquareRootCLVModel::g() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::function<Real(Time, Real)>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:127,1
    - Dst: MappingFunction
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::SquareRootCLVModel::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - std::function<Real(Time, Real)>
    - MappingFunction
    linkageType: ''
    returnType: void
    signature: void SquareRootCLVModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:132,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:133,1
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:134,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:135,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:143,1
    - Dst: collocationPointsX
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:146,1
    - Dst: collocationPointsY
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:152,1
    - Dst: insert
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:154,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:155,1
    - Dst: ext::make_shared<LagrangeInterpolation>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:156,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:157,1
    - Dst: row_end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:157,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - SquareRootCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 160
    functionName: "SquareRootCLVModel::MappingFunction::MappingFunction(\n        const
      SquareRootCLVModel& model)"
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - collocationPointsY
    - std::make_pair
    - std::copy
    - std::sort
    - std::vector::begin
    - collocationPointsX
    - Array::begin
    - std::vector::end
    - Array::end
    - time
    - ext::make_shared<Matrix>
    - maturityDates_::size
    - ext::make_shared<LagrangeInterpolation>
    - row_begin
    - row_end
    - std::vector::size
    - insert
    linkageType: ''
    returnType: void
    signature: "void SquareRootCLVModel::MappingFunction::MappingFunction(\n        const
      SquareRootCLVModel& model)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lower_bound
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:163,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: std::advance
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 182
    functionName: SquareRootCLVModel::MappingFunction::operator()(Time t,Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    - begin
    - lower_bound
    - std::advance
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::MappingFunction::operator()(Time t,Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:44,1
    - Dst: ext::make_shared<GBSMRNDCalculator>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' bsProcess'
    - sqrtProcess
    - maturityDates
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<SquareRootProcess>
    - std::vector<Date>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionName: QuantLib::SquareRootCLVModel::SquareRootCLVModel
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GBSMRNDCalculator>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SquareRootCLVModel::SquareRootCLVModel(\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      bsProcess,\n        ext::shared_ptr<SquareRootProcess> sqrtProcess,\n        std::vector<Date>
      maturityDates,\n        Size lagrangeOrder,\n        Real pMax,\n        Real
      pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::cdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:48,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - k
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::SquareRootCLVModel::cdf
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 2
    functionsReached:
    - time
    - QuantLib::SquareRootCLVModel::cdf
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::cdf(const Date& d, Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: invcdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:53,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - q
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::SquareRootCLVModel::invCDF
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 1
    functionsReached:
    - invcdf
    - time
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::invCDF(const Date& d, Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:59,1
    - Dst: a
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:61,1
    - Dst: b
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:62,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:63,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:66,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:67,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:67,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionName: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 2
    functionsReached:
    - b
    - sigma
    - std::exp
    - a
    - std::make_pair
    - time
    - x0
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> SquareRootCLVModel::nonCentralChiSquaredParams(\n
      \       const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:75,1
    - Dst: GaussianQuadrature
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:77,1
    - Dst: GaussNonCentralChiSquaredPolynomial
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:78,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:81,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:86,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:86,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:87,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:88,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:90,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:90,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:91,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:92,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:94,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:95,1
    - Dst: Array::front
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 102
    functionName: QuantLib::SquareRootCLVModel::collocationPointsX
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 1
    functionsReached:
    - Array::back
    - Array::front
    - std::sort
    - QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    - Array::begin
    - Array::end
    - Null<Real>
    - GaussianQuadrature
    - std::max
    - QuantLib::quantile
    - GaussNonCentralChiSquaredPolynomial
    - std::min
    linkageType: ''
    returnType: Array
    signature: Array SquareRootCLVModel::collocationPointsX(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SquareRootCLVModel::collocationPointsX
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:106,1
    - Dst: QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:107,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:111,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:112,1
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:113,1
    - Dst: QuantLib::SquareRootCLVModel::invCDF
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 119
    functionName: QuantLib::SquareRootCLVModel::collocationPointsY
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SquareRootCLVModel::nonCentralChiSquaredParams
    - QuantLib::BSMRNDCalculator::cdf
    - QuantLib::SquareRootCLVModel::collocationPointsX
    - Array::size
    - QuantLib::SquareRootCLVModel::invCDF
    linkageType: ''
    returnType: Array
    signature: Array SquareRootCLVModel::collocationPointsY(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::SquareRootCLVModel::g
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::function<Real(Time, Real)>
    signature: std::function<Real(Time, Real)> SquareRootCLVModel::g() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::function<Real(Time, Real)>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:127,1
    - Dst: MappingFunction
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::SquareRootCLVModel::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - std::function<Real(Time, Real)>
    - MappingFunction
    linkageType: ''
    returnType: void
    signature: void SquareRootCLVModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:132,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:133,1
    - Dst: ext::make_shared<Matrix>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:134,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:135,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:138,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:143,1
    - Dst: collocationPointsX
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:146,1
    - Dst: collocationPointsY
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:147,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:149,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:150,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:152,1
    - Dst: insert
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:154,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:155,1
    - Dst: ext::make_shared<LagrangeInterpolation>
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:156,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:157,1
    - Dst: row_end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:157,1
    - Dst: row_begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - SquareRootCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 160
    functionName: "SquareRootCLVModel::MappingFunction::MappingFunction(\n        const
      SquareRootCLVModel& model)"
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - collocationPointsY
    - std::make_pair
    - std::copy
    - std::sort
    - std::vector::begin
    - collocationPointsX
    - Array::begin
    - std::vector::end
    - Array::end
    - time
    - ext::make_shared<Matrix>
    - maturityDates_::size
    - ext::make_shared<LagrangeInterpolation>
    - row_begin
    - row_end
    - std::vector::size
    - insert
    linkageType: ''
    returnType: void
    signature: "void SquareRootCLVModel::MappingFunction::MappingFunction(\n        const
      SquareRootCLVModel& model)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lower_bound
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:163,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:169,1
    - Dst: std::advance
      Src: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 182
    functionName: SquareRootCLVModel::MappingFunction::operator()(Time t,Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/models/squarerootclvmodel.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    - begin
    - lower_bound
    - std::advance
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real SquareRootCLVModel::MappingFunction::operator()(Time t,Real x)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:89,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - NormalCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::NormalCLVModel::MappingFunction::InterpolationData
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.hpp
    functionUses: 0
    functionsReached:
    - maturityDates_::size
    - end
    - begin
    - x_::size
    linkageType: ''
    returnType: void
    signature: void InterpolationData(const NormalCLVModel& model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:89,1
    - Dst: maturityDates_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:89,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - NormalCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: QuantLib::NormalCLVModel::MappingFunction::InterpolationData
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.hpp
    functionUses: 0
    functionsReached:
    - maturityDates_::size
    - end
    - begin
    - x_::size
    linkageType: ''
    returnType: void
    signature: void InterpolationData(const NormalCLVModel& model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermiteIntegration
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:46,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:47,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:49,1
    - Dst: ext::make_shared<GBSMRNDCalculator>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:56,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - ' bsProcess'
    - ouProcess
    - ' maturityDates'
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - std::vector<Date>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 61
    functionName: QuantLib::NormalCLVModel::NormalCLVModel
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - GaussHermiteIntegration
    - Null<Real>
    - std::move
    - time
    - Real
    - registerWith
    - ext::make_shared<GBSMRNDCalculator>
    - size
    - back
    - InverseCumulativeNormal
    - front
    linkageType: ''
    returnType: void
    signature: "void NormalCLVModel::NormalCLVModel(const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      bsProcess,\n                                   ext::shared_ptr<OrnsteinUhlenbeckProcess>
      ouProcess,\n                                   const std::vector<Date>& maturityDates,\n
      \                                  Size lagrangeOrder,\n                                   Real
      pMax,\n                                   Real pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NormalCLVModel::cdf
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:64,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - k
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::NormalCLVModel::cdf
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 1
    functionsReached:
    - time
    - QuantLib::NormalCLVModel::cdf
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::cdf(const Date& d, Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: invcdf
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - q
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NormalCLVModel::invCDF
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - invcdf
    - time
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::invCDF(const Date& d, Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:73,1
    - Dst: expectation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:76,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:76,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:78,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::NormalCLVModel::collocationPointsX
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - x0
    - stdDeviation
    - time
    - expectation
    linkageType: ''
    returnType: Array
    signature: Array NormalCLVModel::collocationPointsX(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:84,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:87,1
    - Dst: QuantLib::NormalCLVModel::invCDF
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:88,1
    - Dst: N
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: QuantLib::NormalCLVModel::collocationPointsY
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - N
    - Array::size
    - QuantLib::NormalCLVModel::invCDF
    linkageType: ''
    returnType: Array
    signature: Array NormalCLVModel::collocationPointsY(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::NormalCLVModel::g
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::function<Real(Time, Real)>
    signature: std::function<Real(Time, Real)> NormalCLVModel::g() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:102,1
    - Dst: ext::make_shared<InterpolationData>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:105,1
    - Dst: s_::columns
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:107,1
    - Dst: collocationPointsY
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: s_::column_begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: s_::rows
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:112,1
    - Dst: interpl_::emplace_back
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: t_::begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: t_::end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: s_::row_begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - NormalCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 116
    functionName: "NormalCLVModel::MappingFunction::MappingFunction(\n        const
      NormalCLVModel& model)"
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - s_::rows
    - s_::columns
    - interpl_::emplace_back
    - std::copy
    - t_::begin
    - Array::begin
    - Array::end
    - s_::row_begin
    - ext::make_shared<InterpolationData>
    - t_::end
    - s_::column_begin
    - collocationPointsY
    - x_::size
    linkageType: ''
    returnType: void
    signature: "void NormalCLVModel::MappingFunction::MappingFunction(\n        const
      NormalCLVModel& model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:120,1
    - Dst: expectation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:125,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:125,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:127,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:127,1
    - Dst: lagrangeInterpl_::value
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 132
    functionName: NormalCLVModel::MappingFunction::operator()(Time t, Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - expectation
    - stdDeviation
    - lagrangeInterpl_::value
    - size
    - x0
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::MappingFunction::operator()(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::function<Real(Time, Real)>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:135,1
    - Dst: MappingFunction
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::NormalCLVModel::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - std::function<Real(Time, Real)>
    - MappingFunction
    linkageType: ''
    returnType: void
    signature: void NormalCLVModel::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussHermiteIntegration
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:46,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:47,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:49,1
    - Dst: ext::make_shared<GBSMRNDCalculator>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:53,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:56,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 6
    argNames:
    - ' bsProcess'
    - ouProcess
    - ' maturityDates'
    - lagrangeOrder
    - pMax
    - pMin
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - std::vector<Date>
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 61
    functionName: QuantLib::NormalCLVModel::NormalCLVModel
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - GaussHermiteIntegration
    - Null<Real>
    - std::move
    - time
    - Real
    - registerWith
    - ext::make_shared<GBSMRNDCalculator>
    - size
    - back
    - InverseCumulativeNormal
    - front
    linkageType: ''
    returnType: void
    signature: "void NormalCLVModel::NormalCLVModel(const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      bsProcess,\n                                   ext::shared_ptr<OrnsteinUhlenbeckProcess>
      ouProcess,\n                                   const std::vector<Date>& maturityDates,\n
      \                                  Size lagrangeOrder,\n                                   Real
      pMax,\n                                   Real pMin)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NormalCLVModel::cdf
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:64,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - k
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::NormalCLVModel::cdf
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 2
    functionsReached:
    - time
    - QuantLib::NormalCLVModel::cdf
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::cdf(const Date& d, Real k) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: invcdf
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:69,1
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - q
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NormalCLVModel::invCDF
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 1
    functionsReached:
    - invcdf
    - time
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::invCDF(const Date& d, Real q) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:73,1
    - Dst: expectation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:76,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:76,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:78,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::NormalCLVModel::collocationPointsX
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - x0
    - stdDeviation
    - time
    - expectation
    linkageType: ''
    returnType: Array
    signature: Array NormalCLVModel::collocationPointsX(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:84,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:87,1
    - Dst: QuantLib::NormalCLVModel::invCDF
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:88,1
    - Dst: N
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: QuantLib::NormalCLVModel::collocationPointsY
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - N
    - Array::size
    - QuantLib::NormalCLVModel::invCDF
    linkageType: ''
    returnType: Array
    signature: Array NormalCLVModel::collocationPointsY(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::NormalCLVModel::g
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::function<Real(Time, Real)>
    signature: std::function<Real(Time, Real)> NormalCLVModel::g() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x_::size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:102,1
    - Dst: ext::make_shared<InterpolationData>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:105,1
    - Dst: s_::columns
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:107,1
    - Dst: collocationPointsY
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:108,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: s_::column_begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:109,1
    - Dst: s_::rows
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:112,1
    - Dst: interpl_::emplace_back
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: t_::begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: t_::end
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:113,1
    - Dst: s_::row_begin
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - NormalCLVModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 116
    functionName: "NormalCLVModel::MappingFunction::MappingFunction(\n        const
      NormalCLVModel& model)"
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - s_::rows
    - s_::columns
    - interpl_::emplace_back
    - std::copy
    - t_::begin
    - Array::begin
    - Array::end
    - s_::row_begin
    - ext::make_shared<InterpolationData>
    - t_::end
    - s_::column_begin
    - collocationPointsY
    - x_::size
    linkageType: ''
    returnType: void
    signature: "void NormalCLVModel::MappingFunction::MappingFunction(\n        const
      NormalCLVModel& model)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:120,1
    - Dst: expectation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:125,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:125,1
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:127,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:127,1
    - Dst: lagrangeInterpl_::value
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 132
    functionName: NormalCLVModel::MappingFunction::operator()(Time t, Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - expectation
    - stdDeviation
    - lagrangeInterpl_::value
    - size
    - x0
    linkageType: ''
    returnType: Real
    signature: Real NormalCLVModel::MappingFunction::operator()(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::function<Real(Time, Real)>
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:135,1
    - Dst: MappingFunction
      Src: /src/quantlib/ql/experimental/models/normalclvmodel.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::NormalCLVModel::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/models/normalclvmodel.cpp
    functionUses: 0
    functionsReached:
    - std::function<Real(Time, Real)>
    - MappingFunction
    linkageType: ''
    returnType: void
    signature: void NormalCLVModel::performCalculations() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:61,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:68,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:151,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:164,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:170,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 60
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - eprice
    - tau
    - rtax
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 197
    functionName: QuantLib::IvopOneDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_ENSURE
    - QL_FAIL
    - std::real
    - std::pow
    - std::sqrt
    - Complex
    - std::imag
    linkageType: ''
    returnType: Real
    signature: "Real IvopOneDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                      Real
      v0, Real eprice, Time tau, Real rtax)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:206,1
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:207,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:220,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:225,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:252,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:302,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:312,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:316,1
    - Dst: payoff
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:331,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:332,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:334,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:336,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - tau
    - rtax
    - ' payoff'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 347
    functionName: QuantLib::IvopTwoDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_FAIL
    - std::pow
    - std::real
    - std::sqrt
    - Complex
    linkageType: ''
    returnType: Real
    signature: "Real IvopTwoDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                    Real
      v0, Time tau, Real rtax,\n                    const std::function<Real(Real)>&
      payoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - ext::shared_ptr<QuantLib::Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: QuantLib::payoff_adapter
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void payoff_adapter(ext::shared_ptr<QuantLib::Payoff> payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:61,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:68,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:151,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:164,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:170,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 60
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - eprice
    - tau
    - rtax
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 197
    functionName: QuantLib::IvopOneDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_ENSURE
    - QL_FAIL
    - std::real
    - std::pow
    - std::sqrt
    - Complex
    - std::imag
    linkageType: ''
    returnType: Real
    signature: "Real IvopOneDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                      Real
      v0, Real eprice, Time tau, Real rtax)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:206,1
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:207,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:220,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:225,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:252,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:302,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:312,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:316,1
    - Dst: payoff
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:331,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:332,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:334,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:336,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - tau
    - rtax
    - ' payoff'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 347
    functionName: QuantLib::IvopTwoDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_FAIL
    - std::pow
    - std::real
    - std::sqrt
    - Complex
    linkageType: ''
    returnType: Real
    signature: "Real IvopTwoDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                    Real
      v0, Time tau, Real rtax,\n                    const std::function<Real(Real)>&
      payoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - ext::shared_ptr<QuantLib::Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: QuantLib::payoff_adapter
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void payoff_adapter(ext::shared_ptr<QuantLib::Payoff> payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:362,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 364
    functionName: QuantLib::IntegralHestonVarianceOptionEngine::IntegralHestonVarianceOptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralHestonVarianceOptionEngine::IntegralHestonVarianceOptionEngine(\n
      \       ext::shared_ptr<HestonProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:368,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:368,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:371,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:373,1
    - Dst: kappa
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:374,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:375,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:376,1
    - Dst: v0
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:377,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:379,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:380,1
    - Dst: Handle::zeroRate
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:382,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:383,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:387,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:388,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:390,1
    - Dst: IvopOneDim
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:391,1
    - Dst: IvopTwoDim
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:395,1
    - Dst: payoff_adapter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:396,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 399
    functionName: QuantLib::IntegralHestonVarianceOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - dividendYield
    - IvopOneDim
    - IvopTwoDim
    - Handle::dayCounter
    - payoff_adapter
    - v0
    - theta
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - QuantLib::detail::instance
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - rho
    - Handle::zeroRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IntegralHestonVarianceOptionEngine::calculate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:61,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:68,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:151,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:164,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:170,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 60
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - eprice
    - tau
    - rtax
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 197
    functionName: QuantLib::IvopOneDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_ENSURE
    - QL_FAIL
    - std::real
    - std::pow
    - std::sqrt
    - Complex
    - std::imag
    linkageType: ''
    returnType: Real
    signature: "Real IvopOneDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                      Real
      v0, Real eprice, Time tau, Real rtax)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:206,1
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:207,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:220,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:225,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:252,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:302,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:312,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:316,1
    - Dst: payoff
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:331,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:332,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:334,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:336,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - tau
    - rtax
    - ' payoff'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 347
    functionName: QuantLib::IvopTwoDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_FAIL
    - std::pow
    - std::real
    - std::sqrt
    - Complex
    linkageType: ''
    returnType: Real
    signature: "Real IvopTwoDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                    Real
      v0, Time tau, Real rtax,\n                    const std::function<Real(Real)>&
      payoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - ext::shared_ptr<QuantLib::Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: QuantLib::payoff_adapter
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void payoff_adapter(ext::shared_ptr<QuantLib::Payoff> payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:61,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:68,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:73,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:102,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:127,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:149,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:151,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:159,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:164,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:165,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:170,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:184,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:189,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:190,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:192,1
    - Dst: std::imag
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:193,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 60
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - eprice
    - tau
    - rtax
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 197
    functionName: QuantLib::IvopOneDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_ENSURE
    - QL_FAIL
    - std::real
    - std::pow
    - std::sqrt
    - Complex
    - std::imag
    linkageType: ''
    returnType: Real
    signature: "Real IvopOneDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                      Real
      v0, Real eprice, Time tau, Real rtax)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:206,1
    - Dst: double::double
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:207,1
    - Dst: Complex::Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:220,1
    - Dst: Complex
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:225,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:252,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:277,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:302,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:303,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:312,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:316,1
    - Dst: payoff
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:324,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:331,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:332,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:334,1
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:336,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 7
    argNames:
    - eps
    - chi
    - theta
    - v0
    - tau
    - rtax
    - ' payoff'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Time
    - Real
    - std::function<Real(Real)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 347
    functionName: QuantLib::IvopTwoDim
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - payoff
    - double::double
    - std::exp
    - Complex::Complex
    - std::log
    - QL_FAIL
    - std::pow
    - std::real
    - std::sqrt
    - Complex
    linkageType: ''
    returnType: Real
    signature: "Real IvopTwoDim(Real eps, Real chi, Real theta, Real /*rho*/,\n                    Real
      v0, Time tau, Real rtax,\n                    const std::function<Real(Real)>&
      payoff)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - payoff
    argTypes:
    - ext::shared_ptr<QuantLib::Payoff>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: QuantLib::payoff_adapter
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void payoff_adapter(ext::shared_ptr<QuantLib::Payoff> payoff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - S
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: operator()(Real S) const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real S) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:362,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - process
    argTypes:
    - ext::shared_ptr<HestonProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 364
    functionName: QuantLib::IntegralHestonVarianceOptionEngine::IntegralHestonVarianceOptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralHestonVarianceOptionEngine::IntegralHestonVarianceOptionEngine(\n
      \       ext::shared_ptr<HestonProcess> process)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:368,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:368,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:371,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:373,1
    - Dst: kappa
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:374,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:375,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:376,1
    - Dst: v0
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:377,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:379,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:380,1
    - Dst: Handle::zeroRate
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:382,1
    - Dst: Handle::dayCounter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:383,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:387,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:388,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:390,1
    - Dst: IvopOneDim
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:391,1
    - Dst: IvopTwoDim
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:395,1
    - Dst: payoff_adapter
      Src: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp:396,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 399
    functionName: QuantLib::IntegralHestonVarianceOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/integralhestonvarianceoptionengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - dividendYield
    - IvopOneDim
    - IvopTwoDim
    - Handle::dayCounter
    - payoff_adapter
    - v0
    - theta
    - ext::shared_ptr::strike
    - ext::shared_ptr::optionType
    - riskFreeRate
    - QuantLib::detail::instance
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - rho
    - Handle::zeroRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IntegralHestonVarianceOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::VarianceOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::VarianceOption::startDate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceOption::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::VarianceOption::maturityDate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceOption::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::VarianceOption::notional
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceOption::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::VarianceOption::payoff
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> VarianceOption::payoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::VarianceOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::VarianceOption::startDate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceOption::startDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::VarianceOption::maturityDate
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date VarianceOption::maturityDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::VarianceOption::notional
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VarianceOption::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::VarianceOption::payoff
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Payoff>
    signature: ext::shared_ptr<Payoff> VarianceOption::payoff() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - notional
    - ' startDate'
    - ' maturityDate'
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::VarianceOption::VarianceOption
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VarianceOption::VarianceOption(ext::shared_ptr<Payoff> payoff,\n
      \                                  Real notional,\n                                   const
      Date& startDate,\n                                   const Date& maturityDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VarianceOption::arguments*>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::VarianceOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VarianceOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:47,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:48,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: VarianceOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::VarianceOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VarianceOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - payoff
    - notional
    - ' startDate'
    - ' maturityDate'
    argTypes:
    - ext::shared_ptr<Payoff>
    - Real
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: QuantLib::VarianceOption::VarianceOption
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VarianceOption::VarianceOption(ext::shared_ptr<Payoff> payoff,\n
      \                                  Real notional,\n                                   const
      Date& startDate,\n                                   const Date& maturityDate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<VarianceOption::arguments*>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 41
    functionName: QuantLib::VarianceOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VarianceOption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceOption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:45,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:47,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:48,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: VarianceOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - Date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VarianceOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::VarianceOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/varianceoption/varianceoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VarianceOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:59,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:62,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:60,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:63,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:64,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:64,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:66,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:67,1
    - Dst: x
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:69,1
    - Dst: weights
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:70,1
    - Dst: SparseMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:73,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:76,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:77,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:77,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:80,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:81,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:82,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:84,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:85,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:88,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:91,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:91,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:92,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:92,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:93,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:96,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:96,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:98,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ' mesher'
    - ' process'
    - ' rTS'
    - ' bcSet'
    - integroIntegrationOrder
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmExtOUJumpOp::FdmExtOUJumpOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - getExtendedOrnsteinUhlenbeckProcess
    - SparseMatrix
    - weights
    - location
    - integroPart_
    - beta
    - jumpIntensity
    - Array::begin
    - x
    - FirstDerivativeOp
    - coordinates
    - std::upper_bound
    - layout
    - std::exp
    - Array::end
    - locations
    - index
    - eta
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - Array::size
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpOp::FdmExtOUJumpOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<ExtOUWithJumpsProcess>& process,\n        const
      ext::shared_ptr<YieldTermStructure>& rTS,\n        const FdmBoundaryConditionSet&
      bcSet,\n        Size integroIntegrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmExtOUJumpOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmExtOUJumpOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmExtOUJumpOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmExtOUJumpOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    - Dst: QuantLib::FdmExtOUJumpOp::integro
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmExtOUJumpOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::apply
    - QuantLib::FdmExtOUJumpOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::integro
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmExtOUJumpOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:123,1
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:125,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:127,1
    - Dst: QuantLib::FdmExtOUJumpOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 129
    functionName: QuantLib::FdmExtOUJumpOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::apply
    - Array
    - QuantLib::FdmExtOUJumpOp::size
    - QuantLib::FdmExtOUJumpOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtOUJumpOp::apply_direction(Size direction,\n                                          const
      Array& r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:134,1
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 142
    functionName: QuantLib::FdmExtOUJumpOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtOUJumpOp::solve_splitting(Size direction,\n                                          const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmExtOUJumpOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prod
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::FdmExtOUJumpOp::integro
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 2
    functionsReached:
    - prod
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::integro(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:153,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:153,1
    - Dst: QuantLib::FdmExtOUJumpOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:155,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:156,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:156,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 160
    functionName: QuantLib::FdmExtOUJumpOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - toMatrix
    - empty
    - QuantLib::FdmExtOUJumpOp::toMatrixDecomp
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmExtOUJumpOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:59,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:62,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:60,1
    - Dst: FirstDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:63,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:64,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:64,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:66,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:67,1
    - Dst: x
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:69,1
    - Dst: weights
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:70,1
    - Dst: SparseMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:72,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:73,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:75,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:76,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:77,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:77,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:80,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:81,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:82,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:84,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:85,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:87,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:88,1
    - Dst: Array::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:91,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:91,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:92,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:92,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:93,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:93,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:96,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:96,1
    - Dst: integroPart_
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:98,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ' mesher'
    - ' process'
    - ' rTS'
    - ' bcSet'
    - integroIntegrationOrder
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmExtOUJumpOp::FdmExtOUJumpOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - Array::back
    - getExtendedOrnsteinUhlenbeckProcess
    - SparseMatrix
    - weights
    - location
    - integroPart_
    - beta
    - jumpIntensity
    - Array::begin
    - x
    - FirstDerivativeOp
    - coordinates
    - std::upper_bound
    - layout
    - std::exp
    - Array::end
    - locations
    - index
    - eta
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - Array::size
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpOp::FdmExtOUJumpOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<ExtOUWithJumpsProcess>& process,\n        const
      ext::shared_ptr<YieldTermStructure>& rTS,\n        const FdmBoundaryConditionSet&
      bcSet,\n        Size integroIntegrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::FdmExtOUJumpOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 1
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmExtOUJumpOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::FdmExtOUJumpOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmExtOUJumpOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    - Dst: QuantLib::FdmExtOUJumpOp::integro
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: QuantLib::FdmExtOUJumpOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::apply
    - QuantLib::FdmExtOUJumpOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::integro
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmExtOUJumpOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::integro
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::apply_mixed(const Array& r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:123,1
    - Dst: QuantLib::FdmExtOUJumpOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:125,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:127,1
    - Dst: QuantLib::FdmExtOUJumpOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 129
    functionName: QuantLib::FdmExtOUJumpOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::apply
    - Array
    - QuantLib::FdmExtOUJumpOp::size
    - QuantLib::FdmExtOUJumpOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtOUJumpOp::apply_direction(Size direction,\n                                          const
      Array& r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:134,1
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 142
    functionName: QuantLib::FdmExtOUJumpOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtOUJumpOp::solve_splitting(Size direction,\n                                          const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: QuantLib::FdmExtOUJumpOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prod
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::FdmExtOUJumpOp::integro
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 4
    functionsReached:
    - prod
    linkageType: ''
    returnType: Array
    signature: Array FdmExtOUJumpOp::integro(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:153,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:153,1
    - Dst: QuantLib::FdmExtOUJumpOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:155,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:156,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:156,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 160
    functionName: QuantLib::FdmExtOUJumpOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpop.cpp
    functionUses: 2
    functionsReached:
    - toMatrix
    - empty
    - QuantLib::FdmExtOUJumpOp::toMatrixDecomp
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmExtOUJumpOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - rTS
    - solverDesc
    argTypes:
    - Handle<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple2dExtOUSolver(const Handle<ExtendedOrnsteinUhlenbeckProcess>&
      process,\n                               ext::shared_ptr<YieldTermStructure>
      rTS,\n                               FdmSolverDesc solverDesc,\n                               const
      FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:52,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmSimple2dExtOUSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:60,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:59,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmSimple2dExtOUSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - rTS
    - solverDesc
    argTypes:
    - Handle<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple2dExtOUSolver(const Handle<ExtendedOrnsteinUhlenbeckProcess>&
      process,\n                               ext::shared_ptr<YieldTermStructure>
      rTS,\n                               FdmSolverDesc solverDesc,\n                               const
      FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:52,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmSimple2dExtOUSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:60,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:59,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmSimple2dExtOUSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple2dextousolver.hpp
    functionUses: 0
    functionsReached:
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Shape>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Shape>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpModelInnerValue(ext::shared_ptr<Payoff> payoff,\n
      \                                   ext::shared_ptr<FdmMesher> mesher,\n                                    ext::shared_ptr<Shape>
      shape = ext::shared_ptr<Shape>())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:46,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:47,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: std::pair<Time, Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - std::exp
    - std::pair<Time, Real>
    - begin
    - location
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpModelInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpModelInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Shape>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Shape>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpModelInnerValue(ext::shared_ptr<Payoff> payoff,\n
      \                                   ext::shared_ptr<FdmMesher> mesher,\n                                    ext::shared_ptr<Shape>
      shape = ext::shared_ptr<Shape>())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:46,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:47,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:51,1
    - Dst: std::pair<Time, Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 1
    functionsReached:
    - std::lower_bound
    - std::exp
    - std::pair<Time, Real>
    - begin
    - location
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtOUJumpModelInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmExtOUJumpModelInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpmodelinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtOUJumpModelInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:32,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:32,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:33,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:36,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:37,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - VanillaVPPOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmVPPStepConditionFactory::FdmVPPStepConditionFactory
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FdmVPPStepConditionFactory::FdmVPPStepConditionFactory(VanillaVPPOption::arguments
      args)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmVPPStartLimitStepCondition::nStates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:60,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:63,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmVPPStepConditionFactory::stateMesher
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Uniform1dMesher::Uniform1dMesher
    - ext::shared_ptr<Fdm1dMesher>
    - QuantLib::FdmVPPStartLimitStepCondition::nStates
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: ext::shared_ptr<Fdm1dMesher> FdmVPPStepConditionFactory::stateMesher()
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmVPPStepCondition>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:83,1
    - Dst: FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:84,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ' mesh'
    - fuelCostAddon
    - ' fuel'
    - ' spark'
    argTypes:
    - FdmVPPStepConditionMesher
    - Real
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmVPPStepConditionFactory::build
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
    - ext::shared_ptr<FdmVPPStepCondition>
    linkageType: ''
    returnType: ext::shared_ptr<FdmVPPStepCondition>
    signature: "ext::shared_ptr<FdmVPPStepCondition> FdmVPPStepConditionFactory::build(\n
      \       const FdmVPPStepConditionMesher& mesh,\n        Real fuelCostAddon,\n
      \       const ext::shared_ptr<FdmInnerValueCalculator>& fuel,\n        const
      ext::shared_ptr<FdmInnerValueCalculator>& spark) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:31,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:32,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:32,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:33,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:36,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:37,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - VanillaVPPOption::arguments
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmVPPStepConditionFactory::FdmVPPStepConditionFactory
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FdmVPPStepConditionFactory::FdmVPPStepConditionFactory(VanillaVPPOption::arguments
      args)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmVPPStartLimitStepCondition::nStates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:56,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:60,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:63,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmVPPStepConditionFactory::stateMesher
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Uniform1dMesher::Uniform1dMesher
    - ext::shared_ptr<Fdm1dMesher>
    - QuantLib::FdmVPPStartLimitStepCondition::nStates
    linkageType: ''
    returnType: ext::shared_ptr<Fdm1dMesher>
    signature: ext::shared_ptr<Fdm1dMesher> FdmVPPStepConditionFactory::stateMesher()
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmVPPStepCondition>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:83,1
    - Dst: FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:84,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ' mesh'
    - fuelCostAddon
    - ' fuel'
    - ' spark'
    argTypes:
    - FdmVPPStepConditionMesher
    - Real
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmVPPStepConditionFactory::build
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepconditionfactory.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
    - ext::shared_ptr<FdmVPPStepCondition>
    linkageType: ''
    returnType: ext::shared_ptr<FdmVPPStepCondition>
    signature: "ext::shared_ptr<FdmVPPStepCondition> FdmVPPStepConditionFactory::build(\n
      \       const FdmVPPStepConditionMesher& mesh,\n        Real fuelCostAddon,\n
      \       const ext::shared_ptr<FdmInnerValueCalculator>& fuel,\n        const
      ext::shared_ptr<FdmInnerValueCalculator>& spark) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmOUInnerValue::FdmOUInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmOUInnerValue(ext::shared_ptr<Payoff> payoff,\n                            ext::shared_ptr<FdmMesher>
      mesher,\n                            Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmOUInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOUInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmOUInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOUInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmOUInnerValue::FdmOUInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmOUInnerValue(ext::shared_ptr<Payoff> payoff,\n                            ext::shared_ptr<FdmMesher>
      mesher,\n                            Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmOUInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 1
    functionsReached:
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOUInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmOUInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOUInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - ' rTS'
    - tGrid
    - xGrid
    - dampingSteps
    - epsilon
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine(\n
      \       ext::shared_ptr<OrnsteinUhlenbeckProcess> process,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       Real epsilon,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - process
    - ' rTS'
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - epsilon
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine(\n
      \       ext::shared_ptr<OrnsteinUhlenbeckProcess> process,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        Real epsilon,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:96,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:97,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:100,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:103,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:107,1
    - Dst: FdmOUInnerValue::FdmOUInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:111,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:115,1
    - Dst: FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:128,1
    - Dst: Fdm1DimSolver::Fdm1DimSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:131,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:135,1
    - Dst: ext::shared_ptr::derivativeX
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:136,1
    - Dst: ext::shared_ptr::derivativeXX
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:137,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 139
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::shared_ptr::derivativeXX
    - FdmMesherComposite::FdmMesherComposite
    - referenceDate
    - DayCounter::yearFraction
    - ext::shared_ptr::interpolateAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dayCounter
    - FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
    - FdmOUInnerValue::FdmOUInnerValue
    - Fdm1DimSolver::Fdm1DimSolver
    - ext::shared_ptr::derivativeX
    - ext::shared_ptr::thetaAt
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - x0
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void FdOrnsteinUhlenbeckVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmOUInnerValue::FdmOUInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmOUInnerValue(ext::shared_ptr<Payoff> payoff,\n                            ext::shared_ptr<FdmMesher>
      mesher,\n                            Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmOUInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 2
    functionsReached:
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOUInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmOUInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOUInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - mesher
    - direction
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::FdmOUInnerValue::FdmOUInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmOUInnerValue(ext::shared_ptr<Payoff> payoff,\n                            ext::shared_ptr<FdmMesher>
      mesher,\n                            Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: QuantLib::FdmOUInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 3
    functionsReached:
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmOUInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmOUInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmOUInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:70,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - process
    - ' rTS'
    - tGrid
    - xGrid
    - dampingSteps
    - epsilon
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine(\n
      \       ext::shared_ptr<OrnsteinUhlenbeckProcess> process,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        Size tGrid,\n        Size xGrid,\n        Size dampingSteps,\n
      \       Real epsilon,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:84,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:86,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - process
    - ' rTS'
    - dividends
    - tGrid
    - xGrid
    - dampingSteps
    - epsilon
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<OrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - DividendSchedule
    - Size
    - Size
    - Size
    - Real
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdOrnsteinUhlenbeckVanillaEngine::FdOrnsteinUhlenbeckVanillaEngine(\n
      \       ext::shared_ptr<OrnsteinUhlenbeckProcess> process,\n        const ext::shared_ptr<YieldTermStructure>&
      rTS,\n        DividendSchedule dividends,\n        Size tGrid,\n        Size
      xGrid,\n        Size dampingSteps,\n        Real epsilon,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:94,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:96,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:97,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:100,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:103,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:107,1
    - Dst: FdmOUInnerValue::FdmOUInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:111,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:115,1
    - Dst: FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:128,1
    - Dst: Fdm1DimSolver::Fdm1DimSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:131,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:133,1
    - Dst: ext::shared_ptr::interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:135,1
    - Dst: ext::shared_ptr::derivativeX
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:136,1
    - Dst: ext::shared_ptr::derivativeXX
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:137,1
    - Dst: ext::shared_ptr::thetaAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 139
    functionName: QuantLib::FdOrnsteinUhlenbeckVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdornsteinuhlenbeckvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - ext::shared_ptr::derivativeXX
    - FdmMesherComposite::FdmMesherComposite
    - referenceDate
    - DayCounter::yearFraction
    - ext::shared_ptr::interpolateAt
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - dayCounter
    - FdmOrnsteinUhlenbeckOp::FdmOrnsteinUhlenbeckOp
    - FdmOUInnerValue::FdmOUInnerValue
    - Fdm1DimSolver::Fdm1DimSolver
    - ext::shared_ptr::derivativeX
    - ext::shared_ptr::thetaAt
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - x0
    - exercise::lastDate
    linkageType: ''
    returnType: void
    signature: void FdOrnsteinUhlenbeckVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmVPPStartLimitStepCondition::nStates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' params'
    - nStarts
    - ' mesh'
    - ' gasPrice'
    - ' sparkSpreadPrice'
    argTypes:
    - FdmVPPStepConditionParams
    - Size
    - FdmVPPStepConditionMesher
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::FdmVPPStartLimitStepCondition::nStates
    linkageType: ''
    returnType: void
    signature: "void FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition(\n
      \       const FdmVPPStepConditionParams& params,\n        Size nStarts,\n        const
      FdmVPPStepConditionMesher& mesh,\n        const ext::shared_ptr<FdmInnerValueCalculator>&
      gasPrice,\n        const ext::shared_ptr<FdmInnerValueCalculator>& sparkSpreadPrice)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:54,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:74,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:74,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:78,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:79,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - gasPrice
    - ' state'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmVPPStartLimitStepCondition::changeState
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - front
    - Null<Size>
    - std::max
    linkageType: ''
    returnType: Array
    signature: "Array FdmVPPStartLimitStepCondition::changeState(\n        const Real
      gasPrice, const Array& state, Time) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tMinUp
    - tMinDown
    - nStarts
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::FdmVPPStartLimitStepCondition::nStates
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 3
    functionsReached:
    - Null<Size>
    linkageType: ''
    returnType: Size
    signature: "Size FdmVPPStartLimitStepCondition::nStates(Size tMinUp, Size tMinDown,\n
      \                                               Size nStarts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' states'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::FdmVPPStartLimitStepCondition::maxValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStartLimitStepCondition::maxValue(const Array& states) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmVPPStartLimitStepCondition::nStates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:41,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ' params'
    - nStarts
    - ' mesh'
    - ' gasPrice'
    - ' sparkSpreadPrice'
    argTypes:
    - FdmVPPStepConditionParams
    - Size
    - FdmVPPStepConditionMesher
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::FdmVPPStartLimitStepCondition::nStates
    linkageType: ''
    returnType: void
    signature: "void FdmVPPStartLimitStepCondition::FdmVPPStartLimitStepCondition(\n
      \       const FdmVPPStepConditionParams& params,\n        Size nStarts,\n        const
      FdmVPPStepConditionMesher& mesh,\n        const ext::shared_ptr<FdmInnerValueCalculator>&
      gasPrice,\n        const ext::shared_ptr<FdmInnerValueCalculator>& sparkSpreadPrice)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:54,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:61,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:72,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:73,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:74,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:74,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:78,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:79,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - gasPrice
    - ' state'
    argTypes:
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmVPPStartLimitStepCondition::changeState
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - size
    - front
    - Null<Size>
    - std::max
    linkageType: ''
    returnType: Array
    signature: "Array FdmVPPStartLimitStepCondition::changeState(\n        const Real
      gasPrice, const Array& state, Time) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tMinUp
    - tMinDown
    - nStarts
    argTypes:
    - Size
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: QuantLib::FdmVPPStartLimitStepCondition::nStates
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 4
    functionsReached:
    - Null<Size>
    linkageType: ''
    returnType: Size
    signature: "Size FdmVPPStartLimitStepCondition::nStates(Size tMinUp, Size tMinDown,\n
      \                                               Size nStarts)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' states'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: QuantLib::FdmVPPStartLimitStepCondition::maxValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStartLimitStepCondition::maxValue(const Array& states) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 53
    functionName: QuantLib::FdSimpleExtOUJumpSwingEngine::FdSimpleExtOUJumpSwingEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleExtOUJumpSwingEngine::FdSimpleExtOUJumpSwingEngine(\n
      \       ext::shared_ptr<ExtOUWithJumpsProcess> process,\n        ext::shared_ptr<YieldTermStructure>
      rTS,\n        Size tGrid,\n        Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape>
      shape,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:61,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:65,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:66,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:68,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:70,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:72,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:76,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:77,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:78,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:75,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:81,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:80,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:85,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:89,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:95,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:98,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:100,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:100,1
    - Dst: FdmSimpleSwingCondition::FdmSimpleSwingCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:101,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:106,1
    - Dst: Handle<ExtOUWithJumpsProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:118,1
    - Dst: FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:117,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:121,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:122,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 125
    functionName: QuantLib::FdSimpleExtOUJumpSwingEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - FdmMesherComposite::FdmMesherComposite
    - getExtendedOrnsteinUhlenbeckProcess
    - dayCounter
    - static_cast<Real>
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - Handle<ExtOUWithJumpsProcess>
    - beta
    - jumpIntensity
    - referenceDate
    - std::list::push_back
    - ext::shared_ptr::valueAt
    - FdmSimpleSwingCondition::FdmSimpleSwingCondition
    - initialValues
    - ext::shared_ptr<StepCondition<Array> >
    - QL_REQUIRE
    - eta
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - Uniform1dMesher::Uniform1dMesher
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - FdmZeroInnerValue::FdmZeroInnerValue
    - FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
    - ext::shared_ptr::exerciseTimes
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void FdSimpleExtOUJumpSwingEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 53
    functionName: QuantLib::FdSimpleExtOUJumpSwingEngine::FdSimpleExtOUJumpSwingEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleExtOUJumpSwingEngine::FdSimpleExtOUJumpSwingEngine(\n
      \       ext::shared_ptr<ExtOUWithJumpsProcess> process,\n        ext::shared_ptr<YieldTermStructure>
      rTS,\n        Size tGrid,\n        Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape>
      shape,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:61,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:65,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:66,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:68,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:70,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:72,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:76,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:77,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:78,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:75,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:81,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:80,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:85,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:89,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:95,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:98,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:100,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:100,1
    - Dst: FdmSimpleSwingCondition::FdmSimpleSwingCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:101,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:106,1
    - Dst: Handle<ExtOUWithJumpsProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:118,1
    - Dst: FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:117,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:121,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:122,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 125
    functionName: QuantLib::FdSimpleExtOUJumpSwingEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoujumpswingengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - FdmMesherComposite::FdmMesherComposite
    - getExtendedOrnsteinUhlenbeckProcess
    - dayCounter
    - static_cast<Real>
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - Handle<ExtOUWithJumpsProcess>
    - beta
    - jumpIntensity
    - referenceDate
    - std::list::push_back
    - ext::shared_ptr::valueAt
    - FdmSimpleSwingCondition::FdmSimpleSwingCondition
    - initialValues
    - ext::shared_ptr<StepCondition<Array> >
    - QL_REQUIRE
    - eta
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - Uniform1dMesher::Uniform1dMesher
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - FdmZeroInnerValue::FdmZeroInnerValue
    - FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
    - ext::shared_ptr::exerciseTimes
    - std::vector::back
    linkageType: ''
    returnType: void
    signature: void FdSimpleExtOUJumpSwingEngine::calculate() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:45,1
    - Dst: QuantLib::FdmVPPStepCondition::evolveAtPMin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:52,1
    - Dst: QuantLib::FdmVPPStepCondition::evolveAtPMax
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - ' params'
    - nStates
    - ' mesh'
    - gasPrice
    - sparkSpreadPrice
    argTypes:
    - FdmVPPStepConditionParams
    - Size
    - FdmVPPStepConditionMesher
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmVPPStepCondition::FdmVPPStepCondition
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::move
    - QuantLib::FdmVPPStepCondition::evolveAtPMin
    - QuantLib::FdmVPPStepCondition::evolveAtPMax
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmVPPStepCondition::FdmVPPStepCondition(\n        const FdmVPPStepConditionParams&
      params,\n        Size nStates,\n        const FdmVPPStepConditionMesher& mesh,\n
      \       ext::shared_ptr<FdmInnerValueCalculator> gasPrice,\n        ext::shared_ptr<FdmInnerValueCalculator>
      sparkSpreadPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmVPPStepCondition::nStates
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmVPPStepCondition::nStates() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:67,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:69,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:70,1
    - Dst: QuantLib::FdmVPPStepCondition::evolve
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:70,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:73,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:74,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:78,1
    - Dst: innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:81,1
    - Dst: changeState
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:82,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:84,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmVPPStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmVPPStepCondition::evolve
    - layout
    - changeState
    - index
    - coordinates
    - innerValue
    linkageType: ''
    returnType: void
    signature: void FdmVPPStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:93,1
    - Dst: innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmVPPStepCondition::evolve
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 1
    functionsReached:
    - coordinates
    - innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmVPPStepCondition::evolve(\n        const FdmLinearOpIterator&
      iter, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sparkSpread
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmVPPStepCondition::evolveAtPMin
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStepCondition::evolveAtPMin(Real sparkSpread) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sparkSpread
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmVPPStepCondition::evolveAtPMax
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStepCondition::evolveAtPMax(Real sparkSpread) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:42,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:45,1
    - Dst: QuantLib::FdmVPPStepCondition::evolveAtPMin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:52,1
    - Dst: QuantLib::FdmVPPStepCondition::evolveAtPMax
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - ' params'
    - nStates
    - ' mesh'
    - gasPrice
    - sparkSpreadPrice
    argTypes:
    - FdmVPPStepConditionParams
    - Size
    - FdmVPPStepConditionMesher
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 58
    functionName: QuantLib::FdmVPPStepCondition::FdmVPPStepCondition
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::move
    - QuantLib::FdmVPPStepCondition::evolveAtPMin
    - QuantLib::FdmVPPStepCondition::evolveAtPMax
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmVPPStepCondition::FdmVPPStepCondition(\n        const FdmVPPStepConditionParams&
      params,\n        Size nStates,\n        const FdmVPPStepConditionMesher& mesh,\n
      \       ext::shared_ptr<FdmInnerValueCalculator> gasPrice,\n        ext::shared_ptr<FdmInnerValueCalculator>
      sparkSpreadPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::FdmVPPStepCondition::nStates
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmVPPStepCondition::nStates() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:67,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:69,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:70,1
    - Dst: QuantLib::FdmVPPStepCondition::evolve
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:70,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:73,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:74,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:78,1
    - Dst: innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:81,1
    - Dst: changeState
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:82,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:84,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' a'
    - t
    argTypes:
    - Array
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmVPPStepCondition::applyTo
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmVPPStepCondition::evolve
    - layout
    - changeState
    - index
    - coordinates
    - innerValue
    linkageType: ''
    returnType: void
    signature: void FdmVPPStepCondition::applyTo(Array& a, Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:93,1
    - Dst: innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: QuantLib::FdmVPPStepCondition::evolve
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 2
    functionsReached:
    - coordinates
    - innerValue
    linkageType: ''
    returnType: Real
    signature: "Real FdmVPPStepCondition::evolve(\n        const FdmLinearOpIterator&
      iter, Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sparkSpread
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmVPPStepCondition::evolveAtPMin
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStepCondition::evolveAtPMin(Real sparkSpread) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sparkSpread
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: QuantLib::FdmVPPStepCondition::evolveAtPMax
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmvppstepcondition.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real FdmVPPStepCondition::evolveAtPMax(Real sparkSpread) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:34,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:34,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:36,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:43,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:45,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:48,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:49,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:49,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:53,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' leftMesher'
    - ' rightMesher'
    argTypes:
    - Fdm1dMesher
    - Fdm1dMesher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 57
    functionName: QuantLib::Glued1dMesher::Glued1dMesher
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp
    functionUses: 0
    functionsReached:
    - close
    - std::copy
    - Null<Real>
    - locations
    - begin
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Glued1dMesher::Glued1dMesher(\n        const Fdm1dMesher& leftMesher,\n
      \       const Fdm1dMesher& rightMesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:34,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:34,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:35,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:36,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:37,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:40,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:43,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:45,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:48,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:49,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:49,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:50,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:51,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:53,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' leftMesher'
    - ' rightMesher'
    argTypes:
    - Fdm1dMesher
    - Fdm1dMesher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 57
    functionName: QuantLib::Glued1dMesher::Glued1dMesher
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/glued1dmesher.cpp
    functionUses: 0
    functionsReached:
    - close
    - std::copy
    - Null<Real>
    - locations
    - begin
    - size
    - front
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Glued1dMesher::Glued1dMesher(\n        const Fdm1dMesher& leftMesher,\n
      \       const Fdm1dMesher& rightMesher)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::IdenticalPayoff::name
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IdenticalPayoff::name
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::IdenticalPayoff::description
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IdenticalPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::IdenticalPayoff::name
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IdenticalPayoff::name
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::IdenticalPayoff::description
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IdenticalPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:47,1
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:58,1
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:59,1
    - Dst: IdenticalPayoff::IdenticalPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:59,1
    - Dst: AverageBasketPayoff::AverageBasketPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 10
    argNames:
    - heatRate
    - pMin
    - pMax
    - tMinUp
    - tMinDown
    - startUpFuel
    - startUpFixCost
    - ' exercise'
    - nStarts
    - nRunningHours
    argTypes:
    - Real
    - Real
    - Real
    - Size
    - Size
    - Real
    - Real
    - ext::shared_ptr<SwingExercise>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 60
    functionName: QuantLib::VanillaVPPOption::VanillaVPPOption
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - AverageBasketPayoff::AverageBasketPayoff
    - ext::shared_ptr<Payoff>
    - IdenticalPayoff::IdenticalPayoff
    linkageType: ''
    returnType: void
    signature: "void VanillaVPPOption::VanillaVPPOption(\n        Real heatRate,\n
      \       Real pMin, Real pMax,\n        Size tMinUp, Size tMinDown,\n        Real
      startUpFuel, Real startUpFixCost,\n        const ext::shared_ptr<SwingExercise>&
      exercise,\n        Size nStarts, Size nRunningHours)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: VanillaVPPOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VanillaVPPOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:71,1
    - Dst: dynamic_cast<VanillaVPPOption::arguments*>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 85
    functionName: QuantLib::VanillaVPPOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VanillaVPPOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaVPPOption::setupArguments(\n                                PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:88,1
    - Dst: lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::VanillaVPPOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaVPPOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::IdenticalPayoff::name
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IdenticalPayoff::name
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::IdenticalPayoff::description
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IdenticalPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::IdenticalPayoff::name
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IdenticalPayoff::name
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::IdenticalPayoff::description
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::IdenticalPayoff::name
    linkageType: ''
    returnType: std::string
    signature: std::string description() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - price
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: operator()(Real price) const override
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real price) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:47,1
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:58,1
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:59,1
    - Dst: IdenticalPayoff::IdenticalPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:59,1
    - Dst: AverageBasketPayoff::AverageBasketPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 10
    argNames:
    - heatRate
    - pMin
    - pMax
    - tMinUp
    - tMinDown
    - startUpFuel
    - startUpFixCost
    - ' exercise'
    - nStarts
    - nRunningHours
    argTypes:
    - Real
    - Real
    - Real
    - Size
    - Size
    - Real
    - Real
    - ext::shared_ptr<SwingExercise>
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 60
    functionName: QuantLib::VanillaVPPOption::VanillaVPPOption
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - AverageBasketPayoff::AverageBasketPayoff
    - ext::shared_ptr<Payoff>
    - IdenticalPayoff::IdenticalPayoff
    linkageType: ''
    returnType: void
    signature: "void VanillaVPPOption::VanillaVPPOption(\n        Real heatRate,\n
      \       Real pMin, Real pMax,\n        Size tMinUp, Size tMinDown,\n        Real
      startUpFuel, Real startUpFixCost,\n        const ext::shared_ptr<SwingExercise>&
      exercise,\n        Size nStarts, Size nRunningHours)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: VanillaVPPOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void VanillaVPPOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultiAssetOption::setupArguments
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:71,1
    - Dst: dynamic_cast<VanillaVPPOption::arguments*>
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 85
    functionName: QuantLib::VanillaVPPOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<VanillaVPPOption::arguments*>
    - QuantLib::MultiAssetOption::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VanillaVPPOption::setupArguments(\n                                PricingEngine::arguments*
      args) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:88,1
    - Dst: lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::VanillaVPPOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.cpp
    functionUses: 0
    functionsReached:
    - lastDate
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool VanillaVPPOption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - klugeOUProcess
    - rTS
    - solverDesc
    argTypes:
    - Handle<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmKlugeExtOUSolver::FdmKlugeExtOUSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmKlugeExtOUSolver(Handle<KlugeExtOUProcess> klugeOUProcess,\n
      \                           ext::shared_ptr<YieldTermStructure> rTS,\n                            FdmSolverDesc
      solverDesc,\n                            const FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:54,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmKlugeExtOUSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:62,1
    - Dst: FdmKlugeExtOUOp::FdmKlugeExtOUOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:61,1
    - Dst: ext::shared_ptr<FdmNdimSolver<N> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:65,1
    - Dst: FdmNdimSolver<N>::FdmNdimSolver<N>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmKlugeExtOUSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - FdmNdimSolver<N>::FdmNdimSolver<N>
    - ext::shared_ptr<FdmNdimSolver<N> >
    - currentLink
    - FdmKlugeExtOUOp::FdmKlugeExtOUOp
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:47,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - klugeOUProcess
    - rTS
    - solverDesc
    argTypes:
    - Handle<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmKlugeExtOUSolver::FdmKlugeExtOUSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmKlugeExtOUSolver(Handle<KlugeExtOUProcess> klugeOUProcess,\n
      \                           ext::shared_ptr<YieldTermStructure> rTS,\n                            FdmSolverDesc
      solverDesc,\n                            const FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:54,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmKlugeExtOUSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(const std::vector<Real>& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:62,1
    - Dst: FdmKlugeExtOUOp::FdmKlugeExtOUOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:61,1
    - Dst: ext::shared_ptr<FdmNdimSolver<N> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:65,1
    - Dst: FdmNdimSolver<N>::FdmNdimSolver<N>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmKlugeExtOUSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextousolver.hpp
    functionUses: 0
    functionsReached:
    - FdmNdimSolver<N>::FdmNdimSolver<N>
    - ext::shared_ptr<FdmNdimSolver<N> >
    - currentLink
    - FdmKlugeExtOUOp::FdmKlugeExtOUOp
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:42,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:43,1
    - Dst: squared
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:44,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - process
    - rTS
    - bcSet
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - squared
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - volatility
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        FdmBoundaryConditionSet
      bcSet,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmExtendedOrnsteinUhlenbeckOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:55,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:56,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:57,1
    - Dst: drift
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:58,1
    - Dst: axpyb
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:60,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - Array
    - index
    - drift
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmExtendedOrnsteinUhlenbeckOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmExtendedOrnsteinUhlenbeckOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:68,1
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmExtendedOrnsteinUhlenbeckOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:74,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:77,1
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    - Array
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::apply_direction(\n                                    Size
      direction, const Array& r) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::solve_splitting(\n                            Size
      direction, const Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::preconditioner(\n                                            const
      Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:97,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmExtendedOrnsteinUhlenbeckOp::toMatrixDecomp()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:41,1
    - Dst: locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:42,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:43,1
    - Dst: squared
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:44,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:44,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:45,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - process
    - rTS
    - bcSet
    - direction
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - squared
    - SecondDerivativeOp
    - Array
    - locations
    - std::move
    - volatility
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp(\n
      \       const ext::shared_ptr<FdmMesher>& mesher,\n        ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        FdmBoundaryConditionSet
      bcSet,\n        Size direction)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 2
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmExtendedOrnsteinUhlenbeckOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardRate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:53,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:55,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:56,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:57,1
    - Dst: drift
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:58,1
    - Dst: axpyb
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:60,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - forwardRate
    - axpyb
    - Array
    - index
    - drift
    - layout
    linkageType: ''
    returnType: void
    signature: void FdmExtendedOrnsteinUhlenbeckOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmExtendedOrnsteinUhlenbeckOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:68,1
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    - Array
    linkageType: ''
    returnType: Array
    signature: Array FdmExtendedOrnsteinUhlenbeckOp::apply_mixed(const Array& r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:74,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:77,1
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::size
    - Array
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::apply
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::apply_direction(\n                                    Size
      direction, const Array& r) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::solve_splitting(\n                            Size
      direction, const Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExtendedOrnsteinUhlenbeckOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmExtendedOrnsteinUhlenbeckOp::preconditioner(\n                                            const
      Array& r, Real dt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:97,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: QuantLib::FdmExtendedOrnsteinUhlenbeckOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextendedornsteinuhlenbeckop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmExtendedOrnsteinUhlenbeckOp::toMatrixDecomp()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - process
    - rTS
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmExtOUJumpSolver::FdmExtOUJumpSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpSolver::FdmExtOUJumpSolver(Handle<ExtOUWithJumpsProcess>
      process,\n                                           ext::shared_ptr<YieldTermStructure>
      rTS,\n                                           FdmSolverDesc solverDesc,\n
      \                                          const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:43,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:43,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmExtOUJumpSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmExtOUJumpSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:51,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmExtOUJumpSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmExtOUJumpSolver::valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - process
    - rTS
    - solverDesc
    - ' schemeDesc'
    argTypes:
    - Handle<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: QuantLib::FdmExtOUJumpSolver::FdmExtOUJumpSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExtOUJumpSolver::FdmExtOUJumpSolver(Handle<ExtOUWithJumpsProcess>
      process,\n                                           ext::shared_ptr<YieldTermStructure>
      rTS,\n                                           FdmSolverDesc solverDesc,\n
      \                                          const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:43,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:43,1
    - Dst: ext::make_shared<Fdm2DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmExtOUJumpSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - ext::make_shared<Fdm2DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void FdmExtOUJumpSolver::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:51,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: QuantLib::FdmExtOUJumpSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmextoujumpsolver.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real FdmExtOUJumpSolver::valueAt(Real x, Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - calc1
    - calc2
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSpreadPayoffInnerValue(ext::shared_ptr<BasketPayoff> payoff,\n
      \                                 ext::shared_ptr<FdmInnerValueCalculator> calc1,\n
      \                                 ext::shared_ptr<FdmInnerValueCalculator> calc2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:42,1
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSpreadPayoffInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSpreadPayoffInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSpreadPayoffInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSpreadPayoffInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - payoff
    - calc1
    - calc2
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSpreadPayoffInnerValue(ext::shared_ptr<BasketPayoff> payoff,\n
      \                                 ext::shared_ptr<FdmInnerValueCalculator> calc1,\n
      \                                 ext::shared_ptr<FdmInnerValueCalculator> calc2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:42,1
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: QuantLib::FdmSpreadPayoffInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSpreadPayoffInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSpreadPayoffInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSpreadPayoffInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmspreadpayoffinnervalue.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSpreadPayoffInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mesher
    - localVolatility
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::FdmDupire1dOp::FdmDupire1dOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmDupire1dOp::FdmDupire1dOp(const ext::shared_ptr<FdmMesher>
      &mesher,\n                             const Array &localVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::FdmDupire1dOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDupire1dOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmDupire1dOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmDupire1dOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmDupire1dOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmDupire1dOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply(const Array &u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:42,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - direction
    - r
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmDupire1dOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmDupire1dOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply_direction(Size direction, const Array &r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmDupire1dOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply_mixed(const Array &r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:52,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - r
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmDupire1dOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmDupire1dOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::solve_splitting(Size direction, const Array &r,
      Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmDupire1dOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmDupire1dOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::preconditioner(const Array &r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:63,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmDupire1dOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmDupire1dOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - mesher
    - localVolatility
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: QuantLib::FdmDupire1dOp::FdmDupire1dOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    linkageType: ''
    returnType: void
    signature: "void FdmDupire1dOp::FdmDupire1dOp(const ext::shared_ptr<FdmMesher>
      &mesher,\n                             const Array &localVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: QuantLib::FdmDupire1dOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmDupire1dOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmDupire1dOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmDupire1dOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::FdmDupire1dOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmDupire1dOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply(const Array &u) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:42,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - direction
    - r
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmDupire1dOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmDupire1dOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply_direction(Size direction, const Array &r)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::FdmDupire1dOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::apply_mixed(const Array &r) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:52,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - direction
    - r
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: QuantLib::FdmDupire1dOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 3
    functionsReached:
    - QL_FAIL
    - QuantLib::FdmDupire1dOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::solve_splitting(Size direction, const Array &r,
      Real a) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmDupire1dOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: QuantLib::FdmDupire1dOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmDupire1dOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmDupire1dOp::preconditioner(const Array &r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<SparseMatrix>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:63,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmDupire1dOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmdupire1dop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - std::vector<SparseMatrix>
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmDupire1dOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:29,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:30,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:31,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmZabrUnderlyingPart::FdmZabrUnderlyingPart
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - ext::shared_ptr<FdmMesher>::locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrUnderlyingPart::FdmZabrUnderlyingPart(\n    const ext::shared_ptr<FdmMesher>
      &mesher, const Real beta, const Real nu,\n    const Real rho, const Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::FdmZabrUnderlyingPart::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmZabrUnderlyingPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: '&FdmZabrUnderlyingPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp &FdmZabrUnderlyingPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:45,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:47,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmZabrVolatilityPart::FdmZabrVolatilityPart
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - ext::shared_ptr<FdmMesher>::locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrVolatilityPart::FdmZabrVolatilityPart(\n    const ext::shared_ptr<FdmMesher>
      &mesher, const Real beta, const Real nu,\n    const Real rho, const Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmZabrVolatilityPart::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmZabrVolatilityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '&FdmZabrVolatilityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp &FdmZabrVolatilityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:60,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:61,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:62,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:63,1
    - Dst: Abs
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:63,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:64,1
    - Dst: FdmZabrUnderlyingPart
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:65,1
    - Dst: FdmZabrVolatilityPart
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmZabrOp::FdmZabrOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - FdmZabrVolatilityPart
    - ext::shared_ptr<FdmMesher>::locations
    - SecondOrderMixedDerivativeOp
    - Abs
    - FdmZabrUnderlyingPart
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrOp::FdmZabrOp(const ext::shared_ptr<FdmMesher> &mesher,\n
      \                    const Real beta, const Real nu, const Real rho,\n                     const
      Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:69,1
    - Dst: QuantLib::FdmZabrOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmZabrOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmZabrOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmZabrOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmZabrOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmZabrOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:76,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:76,1
    - Dst: QuantLib::FdmZabrOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmZabrOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmZabrOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::apply(const Array &u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:83,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - r
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmZabrOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmZabrOp::apply_direction(Size direction,\n                                 const
      Array &r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmZabrOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmZabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::apply_mixed(const Array &r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:98,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - r
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmZabrOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmZabrOp::solve_splitting(Size direction, const Array &r,\n
      \                                Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmZabrOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmZabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::preconditioner(const Array &r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:111,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:112,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::FdmZabrOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmZabrOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:29,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:30,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:31,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 34
    functionName: QuantLib::FdmZabrUnderlyingPart::FdmZabrUnderlyingPart
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - ext::shared_ptr<FdmMesher>::locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrUnderlyingPart::FdmZabrUnderlyingPart(\n    const ext::shared_ptr<FdmMesher>
      &mesher, const Real beta, const Real nu,\n    const Real rho, const Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::FdmZabrUnderlyingPart::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmZabrUnderlyingPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: '&FdmZabrUnderlyingPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp &FdmZabrUnderlyingPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:45,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:46,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:47,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmZabrVolatilityPart::FdmZabrVolatilityPart
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - ext::shared_ptr<FdmMesher>::locations
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrVolatilityPart::FdmZabrVolatilityPart(\n    const ext::shared_ptr<FdmMesher>
      &mesher, const Real beta, const Real nu,\n    const Real rho, const Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::FdmZabrVolatilityPart::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FdmZabrVolatilityPart::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: '&FdmZabrVolatilityPart::getMap() const'
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TripleBandLinearOp
    signature: TripleBandLinearOp &FdmZabrVolatilityPart::getMap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:60,1
    - Dst: ext::shared_ptr<FdmMesher>::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:61,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:62,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:63,1
    - Dst: Abs
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:63,1
    - Dst: Pow
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:64,1
    - Dst: FdmZabrUnderlyingPart
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:65,1
    - Dst: FdmZabrVolatilityPart
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - mesher
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmZabrOp::FdmZabrOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - FdmZabrVolatilityPart
    - ext::shared_ptr<FdmMesher>::locations
    - SecondOrderMixedDerivativeOp
    - Abs
    - FdmZabrUnderlyingPart
    - Pow
    linkageType: ''
    returnType: void
    signature: "void FdmZabrOp::FdmZabrOp(const ext::shared_ptr<FdmMesher> &mesher,\n
      \                    const Real beta, const Real nu, const Real rho,\n                     const
      Real gamma)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:69,1
    - Dst: QuantLib::FdmZabrOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::FdmZabrOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmZabrOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmZabrOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: QuantLib::FdmZabrOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size FdmZabrOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:76,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:76,1
    - Dst: QuantLib::FdmZabrOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - u
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: QuantLib::FdmZabrOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmZabrOp::apply
    - getMap
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::apply(const Array &u) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:83,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - direction
    - r
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: QuantLib::FdmZabrOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmZabrOp::apply_direction(Size direction,\n                                 const
      Array &r) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::FdmZabrOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmZabrOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::apply_mixed(const Array &r) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:98,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:100,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - direction
    - r
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmZabrOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - getMap
    linkageType: ''
    returnType: Array
    signature: "Array FdmZabrOp::solve_splitting(Size direction, const Array &r,\n
      \                                Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmZabrOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - r
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmZabrOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmZabrOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmZabrOp::preconditioner(const Array &r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:111,1
    - Dst: getMap
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:112,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: QuantLib::FdmZabrOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmzabrop.cpp
    functionUses: 0
    functionsReached:
    - toMatrix
    - getMap
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmZabrOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - basketPayoff
    - fuelPrice
    - powerPrice
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSparkSpreadInnerValue(ext::shared_ptr<BasketPayoff> basketPayoff,\n
      \                                    ext::shared_ptr<FdmInnerValueCalculator>
      fuelPrice,\n                                     ext::shared_ptr<FdmInnerValueCalculator>
      powerPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:60,1
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSparkSpreadInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmSparkSpreadInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - basketPayoff
    - fuelPrice
    - powerPrice
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSparkSpreadInnerValue(ext::shared_ptr<BasketPayoff> basketPayoff,\n
      \                                    ext::shared_ptr<FdmInnerValueCalculator>
      fuelPrice,\n                                     ext::shared_ptr<FdmInnerValueCalculator>
      powerPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:60,1
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSparkSpreadInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmSparkSpreadInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:88,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:88,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - process
    - rTS
    - fuelShape
    - powerShape
    - fuelCostAddon
    - tGrid
    - xGrid
    - yGrid
    - gGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<Shape>
    - ext::shared_ptr<Shape>
    - Real
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::FdSimpleKlugeExtOUVPPEngine::FdSimpleKlugeExtOUVPPEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleKlugeExtOUVPPEngine::FdSimpleKlugeExtOUVPPEngine(\n        ext::shared_ptr<KlugeExtOUProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        ext::shared_ptr<Shape>
      fuelShape,\n        ext::shared_ptr<Shape> powerShape,\n        Real fuelCostAddon,\n
      \       Size tGrid,\n        Size xGrid,\n        Size yGrid,\n        Size
      gGrid,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:97,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:103,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:103,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:104,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:107,1
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:109,1
    - Dst: ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:112,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:115,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:119,1
    - Dst: ext::shared_ptr::jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:120,1
    - Dst: ext::shared_ptr::eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:121,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:118,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:125,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:124,1
    - Dst: FdmVPPStepConditionFactory::stateMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:128,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:131,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:135,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:138,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:141,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:145,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:149,1
    - Dst: FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:148,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:157,1
    - Dst: FdmVPPStepConditionFactory::build
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:161,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:164,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:167,1
    - Dst: Handle<KlugeExtOUProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:177,1
    - Dst: FdmKlugeExtOUSolver<4>::FdmKlugeExtOUSolver<4>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:177,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:181,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:182,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:183,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:186,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:187,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:190,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:192,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:193,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:193,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:195,1
    - Dst: ext::shared_ptr::maxValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 198
    functionName: QuantLib::FdSimpleKlugeExtOUVPPEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - FdmMesherComposite::FdmMesherComposite
    - dayCounter
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmStepConditionComposite::FdmStepConditionComposite
    - Handle<KlugeExtOUProcess>
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - std::list::push_back
    - ext::shared_ptr::beta
    - ext::shared_ptr::valueAt
    - initialValues
    - getKlugeProcess
    - ext::shared_ptr::maxValue
    - ext::shared_ptr::size
    - FdmVPPStepConditionFactory::build
    - std::min
    - std::vector::back
    - getExtOUProcess
    - FdmVPPStepConditionFactory::stateMesher
    - std::max
    - ext::shared_ptr::locations
    - ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
    - FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    - ext::shared_ptr::jumpIntensity
    - QL_REQUIRE
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - PlainVanillaPayoff::PlainVanillaPayoff
    - FdmKlugeExtOUSolver<4>::FdmKlugeExtOUSolver<4>
    - ext::shared_ptr::location
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - FdmZeroInnerValue::FdmZeroInnerValue
    - Array::size
    - ext::shared_ptr::exerciseTimes
    - ext::shared_ptr::eta
    linkageType: ''
    returnType: void
    signature: void FdSimpleKlugeExtOUVPPEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - basketPayoff
    - fuelPrice
    - powerPrice
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSparkSpreadInnerValue(ext::shared_ptr<BasketPayoff> basketPayoff,\n
      \                                    ext::shared_ptr<FdmInnerValueCalculator>
      fuelPrice,\n                                     ext::shared_ptr<FdmInnerValueCalculator>
      powerPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:60,1
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSparkSpreadInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 5
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmSparkSpreadInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:55,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - basketPayoff
    - fuelPrice
    - powerPrice
    argTypes:
    - ext::shared_ptr<BasketPayoff>
    - ext::shared_ptr<FdmInnerValueCalculator>
    - ext::shared_ptr<FdmInnerValueCalculator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSparkSpreadInnerValue(ext::shared_ptr<BasketPayoff> basketPayoff,\n
      \                                    ext::shared_ptr<FdmInnerValueCalculator>
      fuelPrice,\n                                     ext::shared_ptr<FdmInnerValueCalculator>
      powerPrice)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:60,1
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: QuantLib::FdmSparkSpreadInnerValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 7
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSparkSpreadInnerValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::FdmSparkSpreadInnerValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSparkSpreadInnerValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:88,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:88,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:89,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - process
    - rTS
    - fuelShape
    - powerShape
    - fuelCostAddon
    - tGrid
    - xGrid
    - yGrid
    - gGrid
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<Shape>
    - ext::shared_ptr<Shape>
    - Real
    - Size
    - Size
    - Size
    - Size
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 90
    functionName: QuantLib::FdSimpleKlugeExtOUVPPEngine::FdSimpleKlugeExtOUVPPEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleKlugeExtOUVPPEngine::FdSimpleKlugeExtOUVPPEngine(\n        ext::shared_ptr<KlugeExtOUProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        ext::shared_ptr<Shape>
      fuelShape,\n        ext::shared_ptr<Shape> powerShape,\n        Real fuelCostAddon,\n
      \       Size tGrid,\n        Size xGrid,\n        Size yGrid,\n        Size
      gGrid,\n        const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<SwingExercise>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:97,1
    - Dst: ext::shared_ptr::exerciseTimes
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:103,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:103,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:104,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:107,1
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:109,1
    - Dst: ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:112,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:115,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:119,1
    - Dst: ext::shared_ptr::jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:120,1
    - Dst: ext::shared_ptr::eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:121,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:118,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:125,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:124,1
    - Dst: FdmVPPStepConditionFactory::stateMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:128,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:131,1
    - Dst: FdmZeroInnerValue::FdmZeroInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:135,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:138,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:141,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:145,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:149,1
    - Dst: FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:148,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:157,1
    - Dst: FdmVPPStepConditionFactory::build
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:161,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:164,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:167,1
    - Dst: Handle<KlugeExtOUProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:177,1
    - Dst: FdmKlugeExtOUSolver<4>::FdmKlugeExtOUSolver<4>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:177,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:181,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:182,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:183,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:186,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:187,1
    - Dst: ext::shared_ptr::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:190,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:192,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:193,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:193,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:195,1
    - Dst: ext::shared_ptr::maxValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 198
    functionName: QuantLib::FdSimpleKlugeExtOUVPPEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleklugeextouvppengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<SwingExercise>
    - FdmMesherComposite::FdmMesherComposite
    - dayCounter
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmStepConditionComposite::FdmStepConditionComposite
    - Handle<KlugeExtOUProcess>
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - std::list::push_back
    - ext::shared_ptr::beta
    - ext::shared_ptr::valueAt
    - initialValues
    - getKlugeProcess
    - ext::shared_ptr::maxValue
    - ext::shared_ptr::size
    - FdmVPPStepConditionFactory::build
    - std::min
    - std::vector::back
    - getExtOUProcess
    - FdmVPPStepConditionFactory::stateMesher
    - std::max
    - ext::shared_ptr::locations
    - ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
    - FdmSparkSpreadInnerValue::FdmSparkSpreadInnerValue
    - ext::shared_ptr::jumpIntensity
    - QL_REQUIRE
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - PlainVanillaPayoff::PlainVanillaPayoff
    - FdmKlugeExtOUSolver<4>::FdmKlugeExtOUSolver<4>
    - ext::shared_ptr::location
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - FdmZeroInnerValue::FdmZeroInnerValue
    - Array::size
    - ext::shared_ptr::exerciseTimes
    - ext::shared_ptr::eta
    linkageType: ''
    returnType: void
    signature: void FdSimpleKlugeExtOUVPPEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - klugeOUProcess
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - uGrid
    - gasShape
    - powerShape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - Size
    - ext::shared_ptr<GasShape>
    - ext::shared_ptr<PowerShape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::FdKlugeExtOUSpreadEngine::FdKlugeExtOUSpreadEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdKlugeExtOUSpreadEngine::FdKlugeExtOUSpreadEngine(\n        ext::shared_ptr<KlugeExtOUProcess>
      klugeOUProcess,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size
      tGrid,\n        Size xGrid,\n        Size yGrid,\n        Size uGrid,\n        ext::shared_ptr<GasShape>
      gasShape,\n        ext::shared_ptr<PowerShape> powerShape,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:57,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:58,1
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:60,1
    - Dst: ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:62,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:64,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:68,1
    - Dst: ext::shared_ptr::jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:69,1
    - Dst: ext::shared_ptr::eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:70,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:67,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:74,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:73,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:78,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:83,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:86,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:89,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:93,1
    - Dst: FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:96,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:100,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:101,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:103,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:103,1
    - Dst: Handle<KlugeExtOUProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:114,1
    - Dst: FdmKlugeExtOUSolver<3>::FdmKlugeExtOUSolver<3>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:113,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:118,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:119,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:120,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 123
    functionName: QuantLib::FdKlugeExtOUSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmKlugeExtOUSolver<3>::FdmKlugeExtOUSolver<3>
    - dayCounter
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
    - Handle<KlugeExtOUProcess>
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - ext::shared_ptr::beta
    - ext::shared_ptr::valueAt
    - initialValues
    - getKlugeProcess
    - exercise::lastDate
    - getExtOUProcess
    - DividendSchedule
    - ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
    - ext::shared_ptr::jumpIntensity
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - ext::shared_ptr::eta
    linkageType: ''
    returnType: void
    signature: void FdKlugeExtOUSpreadEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 9
    argNames:
    - klugeOUProcess
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - uGrid
    - gasShape
    - powerShape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - Size
    - ext::shared_ptr<GasShape>
    - ext::shared_ptr<PowerShape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 52
    functionName: QuantLib::FdKlugeExtOUSpreadEngine::FdKlugeExtOUSpreadEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdKlugeExtOUSpreadEngine::FdKlugeExtOUSpreadEngine(\n        ext::shared_ptr<KlugeExtOUProcess>
      klugeOUProcess,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size
      tGrid,\n        Size xGrid,\n        Size yGrid,\n        Size uGrid,\n        ext::shared_ptr<GasShape>
      gasShape,\n        ext::shared_ptr<PowerShape> powerShape,\n        const FdmSchemeDesc&
      schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:57,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:58,1
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:60,1
    - Dst: ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:62,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:64,1
    - Dst: ext::shared_ptr::beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:68,1
    - Dst: ext::shared_ptr::jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:69,1
    - Dst: ext::shared_ptr::eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:70,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:67,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:74,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:73,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:78,1
    - Dst: ext::dynamic_pointer_cast<BasketPayoff>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:82,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:83,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:86,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:89,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:93,1
    - Dst: FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:96,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:100,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:101,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:103,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:103,1
    - Dst: Handle<KlugeExtOUProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:114,1
    - Dst: FdmKlugeExtOUSolver<3>::FdmKlugeExtOUSolver<3>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:113,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:118,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:119,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:120,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 123
    functionName: QuantLib::FdKlugeExtOUSpreadEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdklugeextouspreadengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - FdmKlugeExtOUSolver<3>::FdmKlugeExtOUSolver<3>
    - dayCounter
    - ext::dynamic_pointer_cast<BasketPayoff>
    - FdmSpreadPayoffInnerValue::FdmSpreadPayoffInnerValue
    - Handle<KlugeExtOUProcess>
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - ext::shared_ptr::beta
    - ext::shared_ptr::valueAt
    - initialValues
    - getKlugeProcess
    - exercise::lastDate
    - getExtOUProcess
    - DividendSchedule
    - ext::shared_ptr::getExtendedOrnsteinUhlenbeckProcess
    - ext::shared_ptr::jumpIntensity
    - QL_REQUIRE
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - PlainVanillaPayoff::PlainVanillaPayoff
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - ext::shared_ptr::eta
    linkageType: ''
    returnType: void
    signature: void FdKlugeExtOUSpreadEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mesher
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmStorageValue::FdmStorageValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmStorageValue(ext::shared_ptr<FdmMesher> mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmStorageValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStorageValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmStorageValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStorageValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: operator()(Real a, Real b) const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mesher
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmStorageValue::FdmStorageValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmStorageValue(ext::shared_ptr<FdmMesher> mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmStorageValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStorageValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmStorageValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStorageValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::close_enough
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: operator()(Real a, Real b) const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: QuantLib::FdSimpleExtOUStorageEngine::FdSimpleExtOUStorageEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleExtOUStorageEngine::FdSimpleExtOUStorageEngine(\n        ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size tGrid,\n
      \       Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape> shape,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:88,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:88,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:93,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:93,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:94,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:97,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:101,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:104,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:105,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:109,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:114,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:114,1
    - Dst: std::vector::assign
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:117,1
    - Dst: Predefined1dMesher::Predefined1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:118,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:122,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:123,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:127,1
    - Dst: FdmStorageValue::FdmStorageValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:131,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:139,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:140,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:142,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:143,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:145,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:148,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:151,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:153,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:153,1
    - Dst: FdmSimpleStorageCondition::FdmSimpleStorageCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:154,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:159,1
    - Dst: Handle<ExtendedOrnsteinUhlenbeckProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:170,1
    - Dst: FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:169,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:173,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 177
    functionName: QuantLib::FdSimpleExtOUStorageEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - std::vector::reserve
    - dayCounter
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - std::vector::push_back
    - exercise::type
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - std::list::push_back
    - Handle<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr::valueAt
    - FdmStorageValue::FdmStorageValue
    - std::vector::assign
    - x0
    - exercise::lastDate
    - ext::shared_ptr<Fdm1dMesher>
    - Size
    - ext::shared_ptr<StepCondition<Array> >
    - Null<Size>
    - std::set::begin
    - Predefined1dMesher::Predefined1dMesher
    - QL_REQUIRE
    - PlainVanillaPayoff::PlainVanillaPayoff
    - std::vector::begin
    - Uniform1dMesher::Uniform1dMesher
    - std::vector::end
    - FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
    - FdmSimpleStorageCondition::FdmSimpleStorageCondition
    - std::set::end
    linkageType: ''
    returnType: void
    signature: void FdSimpleExtOUStorageEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mesher
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmStorageValue::FdmStorageValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmStorageValue(ext::shared_ptr<FdmMesher> mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmStorageValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStorageValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmStorageValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStorageValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: operator()(Real a, Real b) const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mesher
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: QuantLib::FdmStorageValue::FdmStorageValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void FdmStorageValue(ext::shared_ptr<FdmMesher> mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:53,1
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' iter'
    argTypes:
    - FdmLinearOpIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmStorageValue::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 3
    functionsReached:
    - std::exp
    - location
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmStorageValue::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmStorageValue::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStorageValue::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: operator()(Real a, Real b) const
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real a, Real b) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:82,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: QuantLib::FdSimpleExtOUStorageEngine::FdSimpleExtOUStorageEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdSimpleExtOUStorageEngine::FdSimpleExtOUStorageEngine(\n        ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size tGrid,\n
      \       Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape> shape,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:88,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:88,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:93,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:93,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:94,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:97,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:101,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:104,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:105,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:109,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:114,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:114,1
    - Dst: std::vector::assign
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: std::set::begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: std::set::end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:115,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:117,1
    - Dst: Predefined1dMesher::Predefined1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:118,1
    - Dst: ext::shared_ptr<Fdm1dMesher>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:122,1
    - Dst: Uniform1dMesher::Uniform1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:123,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:127,1
    - Dst: FdmStorageValue::FdmStorageValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:131,1
    - Dst: exercise::dates
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:139,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:140,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:142,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:143,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:145,1
    - Dst: PlainVanillaPayoff::PlainVanillaPayoff
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:148,1
    - Dst: FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:151,1
    - Dst: std::list::push_back
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:153,1
    - Dst: ext::shared_ptr<StepCondition<Array> >
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:153,1
    - Dst: FdmSimpleStorageCondition::FdmSimpleStorageCondition
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:154,1
    - Dst: FdmStepConditionComposite::FdmStepConditionComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:159,1
    - Dst: Handle<ExtendedOrnsteinUhlenbeckProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:170,1
    - Dst: FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:169,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:173,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp:176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 177
    functionName: QuantLib::FdSimpleExtOUStorageEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdsimpleextoustorageengine.cpp
    functionUses: 0
    functionsReached:
    - exercise::dates
    - FdmMesherComposite::FdmMesherComposite
    - std::vector::reserve
    - dayCounter
    - FdmStepConditionComposite::FdmStepConditionComposite
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - std::vector::push_back
    - exercise::type
    - referenceDate
    - FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    - std::list::push_back
    - Handle<ExtendedOrnsteinUhlenbeckProcess>
    - ext::shared_ptr::valueAt
    - FdmStorageValue::FdmStorageValue
    - std::vector::assign
    - x0
    - exercise::lastDate
    - ext::shared_ptr<Fdm1dMesher>
    - Size
    - ext::shared_ptr<StepCondition<Array> >
    - Null<Size>
    - std::set::begin
    - Predefined1dMesher::Predefined1dMesher
    - QL_REQUIRE
    - PlainVanillaPayoff::PlainVanillaPayoff
    - std::vector::begin
    - Uniform1dMesher::Uniform1dMesher
    - std::vector::end
    - FdmSimple2dExtOUSolver::FdmSimple2dExtOUSolver
    - FdmSimpleStorageCondition::FdmSimpleStorageCondition
    - std::set::end
    linkageType: ''
    returnType: void
    signature: void FdSimpleExtOUStorageEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::FdExtOUJumpVanillaEngine::FdExtOUJumpVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdExtOUJumpVanillaEngine::FdExtOUJumpVanillaEngine(\n        ext::shared_ptr<ExtOUWithJumpsProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size tGrid,\n
      \       Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape> shape,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:57,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:58,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:60,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:62,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:66,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:67,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:68,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:65,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:71,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:75,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:79,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:80,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:82,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:82,1
    - Dst: Handle<ExtOUWithJumpsProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:92,1
    - Dst: FdmExtOUJumpSolver::FdmExtOUJumpSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:92,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:95,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:96,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 98
    functionName: QuantLib::FdExtOUJumpVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - beta
    - eta
    - jumpIntensity
    - referenceDate
    - FdmMesherComposite::FdmMesherComposite
    - getExtendedOrnsteinUhlenbeckProcess
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - dayCounter
    - ext::shared_ptr::valueAt
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - DividendSchedule
    - initialValues
    - FdmExtOUJumpSolver::FdmExtOUJumpSolver
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - exercise::lastDate
    - Handle<ExtOUWithJumpsProcess>
    linkageType: ''
    returnType: void
    signature: void FdExtOUJumpVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - process
    - rTS
    - tGrid
    - xGrid
    - yGrid
    - shape
    - ' schemeDesc'
    argTypes:
    - ext::shared_ptr<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - Size
    - Size
    - Size
    - ext::shared_ptr<Shape>
    - FdmSchemeDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionName: QuantLib::FdExtOUJumpVanillaEngine::FdExtOUJumpVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdExtOUJumpVanillaEngine::FdExtOUJumpVanillaEngine(\n        ext::shared_ptr<ExtOUWithJumpsProcess>
      process,\n        ext::shared_ptr<YieldTermStructure> rTS,\n        Size tGrid,\n
      \       Size xGrid,\n        Size yGrid,\n        ext::shared_ptr<Shape> shape,\n
      \       const FdmSchemeDesc& schemeDesc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:57,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:57,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:58,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:60,1
    - Dst: FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:62,1
    - Dst: beta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:66,1
    - Dst: jumpIntensity
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:67,1
    - Dst: eta
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:68,1
    - Dst: ExponentialJump1dMesher::ExponentialJump1dMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:65,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:71,1
    - Dst: FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:75,1
    - Dst: QuantLib::FdmStepConditionComposite::vanillaComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:79,1
    - Dst: DividendSchedule
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:80,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:82,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:82,1
    - Dst: Handle<ExtOUWithJumpsProcess>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:92,1
    - Dst: FdmExtOUJumpSolver::FdmExtOUJumpSolver
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:92,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:95,1
    - Dst: initialValues
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:96,1
    - Dst: ext::shared_ptr::valueAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 98
    functionName: QuantLib::FdExtOUJumpVanillaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdextoujumpvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmStepConditionComposite::vanillaComposite
    - beta
    - eta
    - jumpIntensity
    - referenceDate
    - FdmMesherComposite::FdmMesherComposite
    - getExtendedOrnsteinUhlenbeckProcess
    - FdmExtOUJumpModelInnerValue::FdmExtOUJumpModelInnerValue
    - dayCounter
    - ext::shared_ptr::valueAt
    - ExponentialJump1dMesher::ExponentialJump1dMesher
    - DividendSchedule
    - initialValues
    - FdmExtOUJumpSolver::FdmExtOUJumpSolver
    - FdmSimpleProcess1dMesher::FdmSimpleProcess1dMesher
    - exercise::lastDate
    - Handle<ExtOUWithJumpsProcess>
    linkageType: ''
    returnType: void
    signature: void FdExtOUJumpVanillaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - heatRate
    - ' fuelPrices'
    - ' powerPrices'
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::SparkSpreadPrice::SparkSpreadPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SparkSpreadPrice(Real heatRate,\n                             const
      std::vector<Real>& fuelPrices,\n                             const std::vector<Real>&
      powerPrices)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::SparkSpreadPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparkSpreadPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::SparkSpreadPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparkSpreadPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fuelPrices'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::FuelPrice::FuelPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FuelPrice(const std::vector<Real>& fuelPrices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FuelPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FuelPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FuelPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FuelPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - heatRate
    - ' fuelPrices'
    - ' powerPrices'
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::SparkSpreadPrice::SparkSpreadPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SparkSpreadPrice(Real heatRate,\n                             const
      std::vector<Real>& fuelPrices,\n                             const std::vector<Real>&
      powerPrices)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::SparkSpreadPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 1
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparkSpreadPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::SparkSpreadPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparkSpreadPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fuelPrices'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::FuelPrice::FuelPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FuelPrice(const std::vector<Real>& fuelPrices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FuelPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 1
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FuelPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FuelPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FuelPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - fuelPrices
    - powerPrices
    - fuelCostAddon
    - rTS
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::DynProgVPPIntrinsicValueEngine::DynProgVPPIntrinsicValueEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DynProgVPPIntrinsicValueEngine::DynProgVPPIntrinsicValueEngine(\n
      \       std::vector<Real> fuelPrices,\n        std::vector<Real> powerPrices,\n
      \       Real fuelCostAddon,\n        ext::shared_ptr<YieldTermStructure> rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FuelPrice::FuelPrice
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:89,1
    - Dst: SparkSpreadPrice::SparkSpreadPrice
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:91,1
    - Dst: FdmVPPStepConditionFactory::stateMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:96,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:96,1
    - Dst: FdmVPPStepConditionFactory::build
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:101,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:105,1
    - Dst: ext::shared_ptr::applyTo
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:106,1
    - Dst: ext::shared_ptr::maxValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 110
    functionName: QuantLib::DynProgVPPIntrinsicValueEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::applyTo
    - FuelPrice::FuelPrice
    - ext::shared_ptr::layout
    - SparkSpreadPrice::SparkSpreadPrice
    - FdmVPPStepConditionFactory::stateMesher
    - ext::shared_ptr::maxValue
    - size
    - FdmVPPStepConditionFactory::build
    linkageType: ''
    returnType: void
    signature: void DynProgVPPIntrinsicValueEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - heatRate
    - ' fuelPrices'
    - ' powerPrices'
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::SparkSpreadPrice::SparkSpreadPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SparkSpreadPrice(Real heatRate,\n                             const
      std::vector<Real>& fuelPrices,\n                             const std::vector<Real>&
      powerPrices)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::SparkSpreadPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 2
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparkSpreadPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::SparkSpreadPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparkSpreadPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fuelPrices'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::FuelPrice::FuelPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FuelPrice(const std::vector<Real>& fuelPrices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FuelPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 2
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FuelPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FuelPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FuelPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - heatRate
    - ' fuelPrices'
    - ' powerPrices'
    argTypes:
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::SparkSpreadPrice::SparkSpreadPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SparkSpreadPrice(Real heatRate,\n                             const
      std::vector<Real>& fuelPrices,\n                             const std::vector<Real>&
      powerPrices)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::SparkSpreadPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 3
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SparkSpreadPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::SparkSpreadPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SparkSpreadPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fuelPrices'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: QuantLib::FuelPrice::FuelPrice
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FuelPrice(const std::vector<Real>& fuelPrices)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: QuantLib::FuelPrice::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 3
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator&, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FuelPrice::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FuelPrice::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FuelPrice::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:84,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - fuelPrices
    - powerPrices
    - fuelCostAddon
    - rTS
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - ext::shared_ptr<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionName: QuantLib::DynProgVPPIntrinsicValueEngine::DynProgVPPIntrinsicValueEngine
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void DynProgVPPIntrinsicValueEngine::DynProgVPPIntrinsicValueEngine(\n
      \       std::vector<Real> fuelPrices,\n        std::vector<Real> powerPrices,\n
      \       Real fuelCostAddon,\n        ext::shared_ptr<YieldTermStructure> rTS)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FuelPrice::FuelPrice
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:89,1
    - Dst: SparkSpreadPrice::SparkSpreadPrice
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:91,1
    - Dst: FdmVPPStepConditionFactory::stateMesher
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:96,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:96,1
    - Dst: FdmVPPStepConditionFactory::build
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:101,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:105,1
    - Dst: ext::shared_ptr::applyTo
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:106,1
    - Dst: ext::shared_ptr::maxValue
      Src: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 110
    functionName: QuantLib::DynProgVPPIntrinsicValueEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/dynprogvppintrinsicvalueengine.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::applyTo
    - FuelPrice::FuelPrice
    - ext::shared_ptr::layout
    - SparkSpreadPrice::SparkSpreadPrice
    - FdmVPPStepConditionFactory::stateMesher
    - ext::shared_ptr::maxValue
    - size
    - FdmVPPStepConditionFactory::build
    linkageType: ''
    returnType: void
    signature: void DynProgVPPIntrinsicValueEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Shape>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Shape>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExpExtOUInnerValueCalculator(ext::shared_ptr<Payoff> payoff,\n
      \                                       ext::shared_ptr<FdmMesher> mesher,\n
      \                                       ext::shared_ptr<Shape> shape = ext::shared_ptr<Shape>(),\n
      \                                       Size direction = 0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:47,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: std::pair<Time, Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - std::exp
    - std::pair<Time, Real>
    - begin
    - location
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Shape>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - payoff
    - mesher
    argTypes:
    - ext::shared_ptr<Payoff>
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::FdmExpExtOUInnerValueCalculator
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Shape>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmExpExtOUInnerValueCalculator(ext::shared_ptr<Payoff> payoff,\n
      \                                       ext::shared_ptr<FdmMesher> mesher,\n
      \                                       ext::shared_ptr<Shape> shape = ext::shared_ptr<Shape>(),\n
      \                                       Size direction = 0)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: location
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:47,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:51,1
    - Dst: std::pair<Time, Real>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 1
    functionsReached:
    - std::lower_bound
    - std::exp
    - std::pair<Time, Real>
    - begin
    - location
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: Real innerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' iter'
    - t
    argTypes:
    - FdmLinearOpIterator
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::FdmExpExtOUInnerValueCalculator::avgInnerValue
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmexpextouinnervaluecalculator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmExpExtOUInnerValueCalculator::innerValue
    linkageType: ''
    returnType: Real
    signature: Real avgInnerValue(const FdmLinearOpIterator& iter, Time t) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::VanillaVPPOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::VanillaVPPOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/vanillavppoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - rTS
    - solverDesc
    argTypes:
    - Handle<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple3dExtOUJumpSolver(const Handle<ExtOUWithJumpsProcess>&
      process,\n                                   ext::shared_ptr<YieldTermStructure>
      rTS,\n                                   FdmSolverDesc solverDesc,\n                                   const
      FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:52,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(Real x, Real y, Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:60,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:59,1
    - Dst: ext::make_shared<Fdm3DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - ext::make_shared<Fdm3DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmSchemeDesc::Hundsdorfer
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - rTS
    - solverDesc
    argTypes:
    - Handle<ExtOUWithJumpsProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmSolverDesc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::FdmSimple3dExtOUJumpSolver
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmSchemeDesc::Hundsdorfer
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FdmSimple3dExtOUJumpSolver(const Handle<ExtOUWithJumpsProcess>&
      process,\n                                   ext::shared_ptr<YieldTermStructure>
      rTS,\n                                   FdmSolverDesc solverDesc,\n                                   const
      FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:52,1
    - Dst: interpolateAt
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - x
    - y
    - z
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::valueAt
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - interpolateAt
    linkageType: ''
    returnType: Real
    signature: Real valueAt(Real x, Real y, Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:60,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:59,1
    - Dst: ext::make_shared<Fdm3DimSolver>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: QuantLib::FdmSimple3dExtOUJumpSolver::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmsimple3dextoujumpsolver.hpp
    functionUses: 0
    functionsReached:
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - ext::make_shared<Fdm3DimSolver>
    - currentLink
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:47,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:48,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:51,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:55,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:56,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:57,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:57,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:58,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:59,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:56,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:53,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:61,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:62,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:63,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:63,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' klugeOUProcess'
    - ' rTS'
    - ' bcSet'
    - integroIntegrationOrder
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmKlugeExtOUOp::FdmKlugeExtOUOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - getExtOUProcess
    - FlatForward::FlatForward
    - getExtendedOrnsteinUhlenbeckProcess
    - dayCounter
    - Array
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<Quote>
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - SimpleQuote::SimpleQuote
    - getKlugeProcess
    - SecondOrderMixedDerivativeOp
    - volatility
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - Handle<Quote>
    - rho
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmKlugeExtOUOp::FdmKlugeExtOUOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<KlugeExtOUProcess>& klugeOUProcess,\n
      \       const ext::shared_ptr<YieldTermStructure>& rTS,\n        const FdmBoundaryConditionSet&
      bcSet,\n        Size integroIntegrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmKlugeExtOUOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmKlugeExtOUOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:73,1
    - Dst: QuantLib::FdmKlugeExtOUOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmKlugeExtOUOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmKlugeExtOUOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmKlugeExtOUOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:82,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_mixed
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::FdmKlugeExtOUOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply_mixed
    - QuantLib::FdmKlugeExtOUOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::apply_mixed(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:87,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmKlugeExtOUOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmKlugeExtOUOp::apply_direction(Size direction,\n                                           const
      Array& r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:94,1
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmKlugeExtOUOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmKlugeExtOUOp::solve_splitting(Size direction,\n                                           const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmKlugeExtOUOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:110,1
    - Dst: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:115,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmKlugeExtOUOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getKlugeProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:47,1
    - Dst: getExtOUProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:48,1
    - Dst: FdmExtOUJumpOp::FdmExtOUJumpOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:51,1
    - Dst: ext::shared_ptr<YieldTermStructure>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:55,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:56,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:57,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:57,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:58,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:59,1
    - Dst: FlatForward::FlatForward
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:56,1
    - Dst: FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:53,1
    - Dst: SecondOrderMixedDerivativeOp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:61,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:62,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:62,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:63,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:63,1
    - Dst: getExtendedOrnsteinUhlenbeckProcess
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' mesher'
    - ' klugeOUProcess'
    - ' rTS'
    - ' bcSet'
    - integroIntegrationOrder
    argTypes:
    - ext::shared_ptr<FdmMesher>
    - ext::shared_ptr<KlugeExtOUProcess>
    - ext::shared_ptr<YieldTermStructure>
    - FdmBoundaryConditionSet
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 66
    functionName: QuantLib::FdmKlugeExtOUOp::FdmKlugeExtOUOp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - getExtOUProcess
    - FlatForward::FlatForward
    - getExtendedOrnsteinUhlenbeckProcess
    - dayCounter
    - Array
    - ext::shared_ptr<YieldTermStructure>
    - ext::shared_ptr<Quote>
    - FdmExtendedOrnsteinUhlenbeckOp::FdmExtendedOrnsteinUhlenbeckOp
    - SimpleQuote::SimpleQuote
    - getKlugeProcess
    - SecondOrderMixedDerivativeOp
    - volatility
    - FdmExtOUJumpOp::FdmExtOUJumpOp
    - Handle<Quote>
    - rho
    - layout
    linkageType: ''
    returnType: void
    signature: "void FdmKlugeExtOUOp::FdmKlugeExtOUOp(\n        const ext::shared_ptr<FdmMesher>&
      mesher,\n        const ext::shared_ptr<KlugeExtOUProcess>& klugeOUProcess,\n
      \       const ext::shared_ptr<YieldTermStructure>& rTS,\n        const FdmBoundaryConditionSet&
      bcSet,\n        Size integroIntegrationOrder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::FdmKlugeExtOUOp::size
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - layout
    linkageType: ''
    returnType: Size
    signature: Size FdmKlugeExtOUOp::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:73,1
    - Dst: QuantLib::FdmKlugeExtOUOp::setTime
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::FdmKlugeExtOUOp::setTime
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::setTime
    linkageType: ''
    returnType: void
    signature: void FdmKlugeExtOUOp::setTime(Time t1, Time t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: QuantLib::FdmKlugeExtOUOp::apply
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::apply(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:82,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_mixed
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::FdmKlugeExtOUOp::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply_mixed
    - QuantLib::FdmKlugeExtOUOp::apply
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::apply_mixed(const Array& r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:87,1
    - Dst: QuantLib::FdmKlugeExtOUOp::apply_direction
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: QuantLib::FdmKlugeExtOUOp::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::apply_direction
    linkageType: ''
    returnType: Array
    signature: "Array FdmKlugeExtOUOp::apply_direction(Size direction,\n                                           const
      Array& r) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:94,1
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - direction
    - ' r'
    - a
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 103
    functionName: QuantLib::FdmKlugeExtOUOp::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: "Array FdmKlugeExtOUOp::solve_splitting(Size direction,\n                                           const
      Array& r, Real a) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::solve_splitting
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - dt
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::FdmKlugeExtOUOp::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::solve_splitting
    linkageType: ''
    returnType: Array
    signature: Array FdmKlugeExtOUOp::preconditioner(const Array& r, Real dt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:110,1
    - Dst: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:115,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/finitedifferences/fdmklugeextouop.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::FdmKlugeExtOUOp::toMatrixDecomp
    - toMatrix
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> FdmKlugeExtOUOp::toMatrixDecomp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' correlation'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::OneFactorGaussianCopula::OneFactorGaussianCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void OneFactorGaussianCopula(const Handle<Quote>& correlation,\n                                         Real
      maximum = 5, Size integrationSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::OneFactorGaussianCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::OneFactorGaussianCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::OneFactorGaussianCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::OneFactorGaussianCopula::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::cumulativeY (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inverseCumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::OneFactorGaussianCopula::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - inverseCumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::inverseCumulativeY (Real p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' correlation'
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: QuantLib::OneFactorGaussianCopula::OneFactorGaussianCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void OneFactorGaussianCopula(const Handle<Quote>& correlation,\n                                         Real
      maximum = 5, Size integrationSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::OneFactorGaussianCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::OneFactorGaussianCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::OneFactorGaussianCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::OneFactorGaussianCopula::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::cumulativeY (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inverseCumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::OneFactorGaussianCopula::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.hpp
    functionUses: 0
    functionsReached:
    - inverseCumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::inverseCumulativeY (Real p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::points_to
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void points_to(const DefaultType& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: operator()(const ext::shared_ptr<DefaultType>& p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ext::shared_ptr<DefaultType>& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::points_to
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void points_to(const DefaultType& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: operator()(const ext::shared_ptr<DefaultType>& p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ext::shared_ptr<DefaultType>& p) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:45,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:45,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:46,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:46,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:48,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:49,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: QuantLib::points_to
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultProbKey
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 57
    functionName: operator==(const DefaultProbKey& lhs, const DefaultProbKey& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - seniority
    - QuantLib::points_to
    - currency
    - eventTypes
    - std::find_if
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultProbKey& lhs, const DefaultProbKey& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::DefaultProbKey::DefaultProbKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultProbKey::DefaultProbKey()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:64,1
    - Dst: QuantLib::DefaultProbKey::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:66,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:68,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:69,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - eventTypes
    - cur
    - sen
    argTypes:
    - std::vector<ext::shared_ptr<DefaultType> >
    - Currency
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: QuantLib::DefaultProbKey::DefaultProbKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - std::set::size
    - std::move
    - std::set::insert
    - defaultType
    - QuantLib::DefaultProbKey::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultProbKey::DefaultProbKey(std::vector<ext::shared_ptr<DefaultType>
      > eventTypes,\n                                   Currency cur,\n                                   Seniority
      sen)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<DefaultType> >
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:81,1
    - Dst: ext::shared_ptr<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:81,1
    - Dst: FailureToPay::FailureToPay
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:85,1
    - Dst: ext::make_shared<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:89,1
    - Dst: ext::make_shared<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' currency'
    - sen
    - graceFailureToPay
    - amountFailure
    - resType
    argTypes:
    - Currency
    - Seniority
    - Period
    - Real
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::NorthAmericaCorpDefaultKey::NorthAmericaCorpDefaultKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - std::vector<ext::shared_ptr<DefaultType> >
    - ext::shared_ptr<DefaultType>
    - FailureToPay::FailureToPay
    - push_back
    - ext::make_shared<DefaultType>
    linkageType: ''
    returnType: void
    signature: "void NorthAmericaCorpDefaultKey::NorthAmericaCorpDefaultKey(\n        const
      Currency& currency,\n        Seniority sen,\n        Period graceFailureToPay,\n
      \       Real amountFailure,\n        Restructuring::Type resType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::points_to
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void points_to(const DefaultType& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: operator()(const ext::shared_ptr<DefaultType>& p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ext::shared_ptr<DefaultType>& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: QuantLib::points_to
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void points_to(const DefaultType& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: operator()(const ext::shared_ptr<DefaultType>& p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(const ext::shared_ptr<DefaultType>& p) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:45,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:45,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:46,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:46,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:48,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:49,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:52,1
    - Dst: points_to
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:53,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultProbKey
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 57
    functionName: operator==(const DefaultProbKey& lhs, const DefaultProbKey& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - seniority
    - currency
    - points_to
    - eventTypes
    - std::find_if
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultProbKey& lhs, const DefaultProbKey& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::DefaultProbKey::DefaultProbKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultProbKey::DefaultProbKey()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:64,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:64,1
    - Dst: QuantLib::DefaultProbKey::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:66,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:68,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:69,1
    - Dst: std::set::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - eventTypes
    - cur
    - sen
    argTypes:
    - std::vector<ext::shared_ptr<DefaultType> >
    - Currency
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: QuantLib::DefaultProbKey::DefaultProbKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - std::set::size
    - std::move
    - std::set::insert
    - defaultType
    - QuantLib::DefaultProbKey::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultProbKey::DefaultProbKey(std::vector<ext::shared_ptr<DefaultType>
      > eventTypes,\n                                   Currency cur,\n                                   Seniority
      sen)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<ext::shared_ptr<DefaultType> >
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:79,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:81,1
    - Dst: ext::shared_ptr<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:81,1
    - Dst: FailureToPay::FailureToPay
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:82,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:85,1
    - Dst: ext::make_shared<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:85,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:89,1
    - Dst: ext::make_shared<DefaultType>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' currency'
    - sen
    - graceFailureToPay
    - amountFailure
    - resType
    argTypes:
    - Currency
    - Seniority
    - Period
    - Real
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 91
    functionName: QuantLib::NorthAmericaCorpDefaultKey::NorthAmericaCorpDefaultKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.cpp
    functionUses: 0
    functionsReached:
    - std::vector<ext::shared_ptr<DefaultType> >
    - ext::shared_ptr<DefaultType>
    - FailureToPay::FailureToPay
    - push_back
    - ext::make_shared<DefaultType>
    linkageType: ''
    returnType: void
    signature: "void NorthAmericaCorpDefaultKey::NorthAmericaCorpDefaultKey(\n        const
      Currency& currency,\n        Seniority sen,\n        Period graceFailureToPay,\n
      \       Real amountFailure,\n        Restructuring::Type resType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - asw
    - ' expiry'
    - marketSpread
    - spreadVolatility
    argTypes:
    - ext::shared_ptr<RiskyAssetSwap>
    - Date
    - Rate
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::RiskyAssetSwapOption::RiskyAssetSwapOption
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyAssetSwapOption::RiskyAssetSwapOption(ext::shared_ptr<RiskyAssetSwap>
      asw,\n                                               const Date& expiry,\n                                               Rate
      marketSpread,\n                                               Volatility spreadVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::RiskyAssetSwapOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool RiskyAssetSwapOption::isExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixedPayer
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:41,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:46,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:48,1
    - Dst: spread
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:49,1
    - Dst: nominal
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:50,1
    - Dst: floatAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:50,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:52,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: QuantLib::RiskyAssetSwapOption::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - floatAnnuity
    - spread
    - fixedPayer
    - QuantLib::detail::instance
    - std::sqrt
    - Actual365Fixed
    - CumulativeNormalDistribution
    - nominal
    - NormalDistribution
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwapOption::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - asw
    - ' expiry'
    - marketSpread
    - spreadVolatility
    argTypes:
    - ext::shared_ptr<RiskyAssetSwap>
    - Date
    - Rate
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: QuantLib::RiskyAssetSwapOption::RiskyAssetSwapOption
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyAssetSwapOption::RiskyAssetSwapOption(ext::shared_ptr<RiskyAssetSwap>
      asw,\n                                               const Date& expiry,\n                                               Rate
      marketSpread,\n                                               Volatility spreadVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: QuantLib::RiskyAssetSwapOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool RiskyAssetSwapOption::isExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixedPayer
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:41,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:46,1
    - Dst: Actual365Fixed
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:47,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:48,1
    - Dst: spread
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:49,1
    - Dst: nominal
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:50,1
    - Dst: floatAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:50,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:52,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: QuantLib::RiskyAssetSwapOption::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswapoption.cpp
    functionUses: 0
    functionsReached:
    - floatAnnuity
    - spread
    - fixedPayer
    - QuantLib::detail::instance
    - std::sqrt
    - Actual365Fixed
    - CumulativeNormalDistribution
    - nominal
    - NormalDistribution
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwapOption::performCalculations() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:27,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:30,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:33,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:48,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:50,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:56,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:56,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:58,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:58,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 63
    functionName: QuantLib::OneFactorGaussianCopula::testCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::testCumulativeY (Real y) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:27,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:30,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:33,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:48,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:50,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:56,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:56,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:58,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp:58,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 63
    functionName: QuantLib::OneFactorGaussianCopula::testCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorgaussiancopula.cpp
    functionUses: 0
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianCopula::testCumulativeY (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.hpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' integrationStep'
    - discountCurve
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::IntegralNtdEngine::IntegralNtdEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralntdengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void IntegralNtdEngine(const Period& integrationStep, Handle<YieldTermStructure>
      discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.hpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' integrationStep'
    - discountCurve
    argTypes:
    - Period
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::IntegralNtdEngine::IntegralNtdEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralntdengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void IntegralNtdEngine(const Period& integrationStep, Handle<YieldTermStructure>
      discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - probability
    - recoveryRate
    - termStructure
    - volatility
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::BlackCdsOptionEngine::BlackCdsOptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackCdsOptionEngine::BlackCdsOptionEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                               Real recoveryRate,\n
      \                                              Handle<YieldTermStructure> termStructure,\n
      \                                              Handle<Quote> volatility)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swap::coupons
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:44,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:46,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:48,1
    - Dst: swap::fairSpread
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:50,1
    - Dst: swap::runningSpread
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:51,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:53,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:58,1
    - Dst: swap::couponLegNPV
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:61,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:63,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:68,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:74,1
    - Dst: swap::notional
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:74,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:76,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackCdsOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::coupons
    - defaultProbability
    - referenceDate
    - DayCounter::yearFraction
    - value
    - dayCounter
    - Integer
    - swap::notional
    - swap::couponLegNPV
    - swap::runningSpread
    - swap::fairSpread
    - std::fabs
    - blackFormula
    - std::sqrt
    - discount
    - exercise::date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BlackCdsOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackCdsOptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> BlackCdsOptionEngine::termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::BlackCdsOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> BlackCdsOptionEngine::volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:35,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - probability
    - recoveryRate
    - termStructure
    - volatility
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 40
    functionName: QuantLib::BlackCdsOptionEngine::BlackCdsOptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BlackCdsOptionEngine::BlackCdsOptionEngine(Handle<DefaultProbabilityTermStructure>
      probability,\n                                               Real recoveryRate,\n
      \                                              Handle<YieldTermStructure> termStructure,\n
      \                                              Handle<Quote> volatility)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swap::coupons
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:44,1
    - Dst: exercise::date
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:46,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:48,1
    - Dst: swap::fairSpread
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:50,1
    - Dst: swap::runningSpread
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:51,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:53,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:58,1
    - Dst: swap::couponLegNPV
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:58,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:61,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:63,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:63,1
    - Dst: blackFormula
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:68,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:74,1
    - Dst: swap::notional
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:74,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:76,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 80
    functionName: QuantLib::BlackCdsOptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached:
    - swap::coupons
    - defaultProbability
    - referenceDate
    - DayCounter::yearFraction
    - value
    - dayCounter
    - Integer
    - swap::notional
    - swap::couponLegNPV
    - swap::runningSpread
    - swap::fairSpread
    - std::fabs
    - blackFormula
    - std::sqrt
    - discount
    - exercise::date
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BlackCdsOptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::BlackCdsOptionEngine::termStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> BlackCdsOptionEngine::termStructure()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::BlackCdsOptionEngine::volatility
    functionSourceFile: /src/quantlib/ql/experimental/credit/blackcdsoptionengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> BlackCdsOptionEngine::volatility()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::DefaultEvent::date
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date DefaultEvent::date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DefaultEvent>*>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:34,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:36,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::DefaultEvent::accept
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Event::accept
    - auto*::visit
    - dynamic_cast<Visitor<DefaultEvent>*>
    linkageType: ''
    returnType: void
    signature: void DefaultEvent::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: DefaultEvent::DefaultSettlement::date() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date DefaultEvent::DefaultSettlement::date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DefaultEvent::DefaultSettlement>*>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:47,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:49,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: DefaultEvent::DefaultSettlement::accept(AcyclicVisitor& v)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Event::accept
    - auto*::visit
    - dynamic_cast<Visitor<DefaultEvent::DefaultSettlement>*>
    linkageType: ''
    returnType: void
    signature: void DefaultEvent::DefaultSettlement::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:58,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' date'
    - ' recoveryRates'
    argTypes:
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionName: "DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        const std::map<Seniority, Real>& recoveryRates )"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - end
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        const std::map<Seniority, Real>& recoveryRates )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' date'
    - seniority
    - recoveryRate
    argTypes:
    - Date
    - Seniority
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: "DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        Seniority seniority,\n        const Real recoveryRate)"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - makeIsdaConvMap
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        Seniority seniority,\n        const Real recoveryRate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:80,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:82,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:83,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sen
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 88
    functionName: "DefaultEvent::DefaultSettlement::recoveryRate(\n        Seniority
      sen) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - end
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DefaultEvent::DefaultSettlement::recoveryRate(\n        Seniority
      sen) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:99,1
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:99,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' atomicEvType'
    - curr
    - bondsSen
    - ' settleDate'
    - ' recoveryRates'
    argTypes:
    - Date
    - DefaultType
    - Currency
    - Seniority
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 106
    functionName: QuantLib::DefaultEvent::DefaultEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - find
    - empty
    - std::move
    - makeIsdaConvMap
    - Date
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultEvent(const Date& creditEventDate,\n                               const
      DefaultType& atomicEvType,\n                               Currency curr,\n
      \                              Seniority bondsSen,\n                               //
      Settlement information:\n                               const Date& settleDate,\n
      \                              const std::map<Seniority, Real>& recoveryRates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' atomicEvType'
    - curr
    - bondsSen
    - ' settleDate'
    - recoveryRate
    argTypes:
    - Date
    - DefaultType
    - Currency
    - Seniority
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 121
    functionName: QuantLib::DefaultEvent::DefaultEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultEvent(const Date& creditEventDate,\n                               const
      DefaultType& atomicEvType,\n                               Currency curr,\n
      \                              Seniority bondsSen,\n                               //
      Settlement information:\n                               const Date& settleDate,\n
      \                              Real recoveryRate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:125,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:127,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:132,1
    - Dst: QuantLib::DefaultEvent::matchesEventType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:133,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:133,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - ' contractKey'
    argTypes:
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 136
    functionName: QuantLib::DefaultEvent::matchesDefaultKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultEvent::matchesEventType
    - seniority
    - currency
    - eventTypes
    - size
    linkageType: ''
    returnType: bool
    signature: "bool DefaultEvent::matchesDefaultKey(\n        const DefaultProbKey&
      contractKey) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:141,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:141,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:142,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:142,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:143,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:143,1
    - Dst: eventSeniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:144,1
    - Dst: eventSeniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 3
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: operator==(const DefaultEvent& lhs, const DefaultEvent& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - eventSeniority
    - currency
    - defaultType
    - QuantLib::date
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultEvent& lhs, const DefaultEvent& rhs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FailureToPay>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:151,1
    - Dst: ext::shared_ptr::amountRequired
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:154,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:155,1
    - Dst: QuantLib::FailureToPayEvent::hasOccurred
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:156,1
    - Dst: ext::shared_ptr::gracePeriod
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' contractEvType'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::FailureToPayEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::amountRequired
    - QuantLib::detail::instance
    - QuantLib::FailureToPayEvent::hasOccurred
    - ext::shared_ptr::gracePeriod
    - ext::dynamic_pointer_cast<FailureToPay>
    linkageType: ''
    returnType: bool
    signature: "bool FailureToPayEvent::matchesEventType(\n        const ext::shared_ptr<DefaultType>&
      contractEvType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - defaultedAmount
    - ' settleDate'
    - "\n                                            recoveryRates"
    argTypes:
    - Date
    - Currency
    - Seniority
    - Real
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 176
    functionName: QuantLib::FailureToPayEvent::FailureToPayEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void FailureToPayEvent::FailureToPayEvent(const Date& creditEventDate,\n
      \                                        const Currency& curr,\n                                         Seniority
      bondsSen,\n                                         Real defaultedAmount,\n
      \                                        // Settlement information:\n                                         const
      Date& settleDate,\n                                         const std::map<Seniority,
      Real>&\n                                            recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - defaultedAmount
    - ' settleDate'
    - recoveryRates
    argTypes:
    - Date
    - Currency
    - Seniority
    - Real
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 192
    functionName: QuantLib::FailureToPayEvent::FailureToPayEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void FailureToPayEvent::FailureToPayEvent(const Date& creditEventDate,\n
      \                                        const Currency& curr,\n                                         Seniority
      bondsSen,\n                                         Real defaultedAmount,\n
      \                                        // Settlement information:\n                                         const
      Date& settleDate,\n                                         Real recoveryRates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:204,1
    - Dst: hasSettled
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - ' settleDate'
    - "\n                                        recoveryRates"
    argTypes:
    - Date
    - Currency
    - Seniority
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 214
    functionName: QuantLib::BankruptcyEvent::BankruptcyEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - makeIsdaConvMap
    - DefaultType
    - size
    - hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BankruptcyEvent::BankruptcyEvent(const Date& creditEventDate,\n
      \                                    const Currency& curr,\n                                     Seniority
      bondsSen,\n                                     // Settlement information:\n
      \                                    const Date& settleDate,\n                                     const
      std::map<Seniority, Real>&\n                                        recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - ' settleDate'
    - recoveryRates
    argTypes:
    - Date
    - Currency
    - Seniority
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 229
    functionName: QuantLib::BankruptcyEvent::BankruptcyEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void BankruptcyEvent::BankruptcyEvent(const Date& creditEventDate,\n
      \                                    const Currency& curr,\n                                     Seniority
      bondsSen,\n                                     // Settlement information:\n
      \                                    const Date& settleDate,\n                                     //
      means same for all\n                                     Real recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: QuantLib::DefaultEvent::date
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date DefaultEvent::date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DefaultEvent>*>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:34,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:36,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionName: QuantLib::DefaultEvent::accept
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Event::accept
    - auto*::visit
    - dynamic_cast<Visitor<DefaultEvent>*>
    linkageType: ''
    returnType: void
    signature: void DefaultEvent::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: DefaultEvent::DefaultSettlement::date() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date DefaultEvent::DefaultSettlement::date() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<DefaultEvent::DefaultSettlement>*>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:47,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:49,1
    - Dst: QuantLib::Event::accept
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: DefaultEvent::DefaultSettlement::accept(AcyclicVisitor& v)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Event::accept
    - auto*::visit
    - dynamic_cast<Visitor<DefaultEvent::DefaultSettlement>*>
    linkageType: ''
    returnType: void
    signature: void DefaultEvent::DefaultSettlement::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:58,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:58,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' date'
    - ' recoveryRates'
    argTypes:
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionName: "DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        const std::map<Seniority, Real>& recoveryRates )"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - end
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        const std::map<Seniority, Real>& recoveryRates )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' date'
    - seniority
    - recoveryRate
    argTypes:
    - Date
    - Seniority
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: "DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        Seniority seniority,\n        const Real recoveryRate)"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - makeIsdaConvMap
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultSettlement::DefaultSettlement(\n        const
      Date& date,\n        Seniority seniority,\n        const Real recoveryRate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:80,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:82,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:83,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sen
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 88
    functionName: "DefaultEvent::DefaultSettlement::recoveryRate(\n        Seniority
      sen) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - end
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real DefaultEvent::DefaultSettlement::recoveryRate(\n        Seniority
      sen) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:97,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:99,1
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:99,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:100,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:101,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' atomicEvType'
    - curr
    - bondsSen
    - ' settleDate'
    - ' recoveryRates'
    argTypes:
    - Date
    - DefaultType
    - Currency
    - Seniority
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 106
    functionName: QuantLib::DefaultEvent::DefaultEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - find
    - empty
    - std::move
    - makeIsdaConvMap
    - Date
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultEvent(const Date& creditEventDate,\n                               const
      DefaultType& atomicEvType,\n                               Currency curr,\n
      \                              Seniority bondsSen,\n                               //
      Settlement information:\n                               const Date& settleDate,\n
      \                              const std::map<Seniority, Real>& recoveryRates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:115,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:117,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' atomicEvType'
    - curr
    - bondsSen
    - ' settleDate'
    - recoveryRate
    argTypes:
    - Date
    - DefaultType
    - Currency
    - Seniority
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 121
    functionName: QuantLib::DefaultEvent::DefaultEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultEvent::DefaultEvent(const Date& creditEventDate,\n                               const
      DefaultType& atomicEvType,\n                               Currency curr,\n
      \                              Seniority bondsSen,\n                               //
      Settlement information:\n                               const Date& settleDate,\n
      \                              Real recoveryRate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:125,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:127,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:128,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:132,1
    - Dst: QuantLib::DefaultEvent::matchesEventType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:133,1
    - Dst: eventTypes
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:133,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - ' contractKey'
    argTypes:
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 136
    functionName: QuantLib::DefaultEvent::matchesDefaultKey
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultEvent::matchesEventType
    - seniority
    - currency
    - eventTypes
    - size
    linkageType: ''
    returnType: bool
    signature: "bool DefaultEvent::matchesDefaultKey(\n        const DefaultProbKey&
      contractKey) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:141,1
    - Dst: currency
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:141,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:142,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:142,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:143,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:143,1
    - Dst: eventSeniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:144,1
    - Dst: eventSeniority
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionName: operator==(const DefaultEvent& lhs, const DefaultEvent& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - eventSeniority
    - currency
    - defaultType
    - date
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultEvent& lhs, const DefaultEvent& rhs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FailureToPay>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:151,1
    - Dst: ext::shared_ptr::amountRequired
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:154,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:155,1
    - Dst: QuantLib::FailureToPayEvent::hasOccurred
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:156,1
    - Dst: ext::shared_ptr::gracePeriod
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' contractEvType'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::FailureToPayEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::amountRequired
    - QuantLib::detail::instance
    - QuantLib::FailureToPayEvent::hasOccurred
    - ext::shared_ptr::gracePeriod
    - ext::dynamic_pointer_cast<FailureToPay>
    linkageType: ''
    returnType: bool
    signature: "bool FailureToPayEvent::matchesEventType(\n        const ext::shared_ptr<DefaultType>&
      contractEvType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - defaultedAmount
    - ' settleDate'
    - "\n                                            recoveryRates"
    argTypes:
    - Date
    - Currency
    - Seniority
    - Real
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 176
    functionName: QuantLib::FailureToPayEvent::FailureToPayEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void FailureToPayEvent::FailureToPayEvent(const Date& creditEventDate,\n
      \                                        const Currency& curr,\n                                         Seniority
      bondsSen,\n                                         Real defaultedAmount,\n
      \                                        // Settlement information:\n                                         const
      Date& settleDate,\n                                         const std::map<Seniority,
      Real>&\n                                            recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - defaultedAmount
    - ' settleDate'
    - recoveryRates
    argTypes:
    - Date
    - Currency
    - Seniority
    - Real
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 192
    functionName: QuantLib::FailureToPayEvent::FailureToPayEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void FailureToPayEvent::FailureToPayEvent(const Date& creditEventDate,\n
      \                                        const Currency& curr,\n                                         Seniority
      bondsSen,\n                                         Real defaultedAmount,\n
      \                                        // Settlement information:\n                                         const
      Date& settleDate,\n                                         Real recoveryRates)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:204,1
    - Dst: hasSettled
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:210,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    - Dst: makeIsdaConvMap
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - ' settleDate'
    - "\n                                        recoveryRates"
    argTypes:
    - Date
    - Currency
    - Seniority
    - Date
    - std::map<Seniority, Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 214
    functionName: QuantLib::BankruptcyEvent::BankruptcyEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - makeIsdaConvMap
    - DefaultType
    - size
    - hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BankruptcyEvent::BankruptcyEvent(const Date& creditEventDate,\n
      \                                    const Currency& curr,\n                                     Seniority
      bondsSen,\n                                     // Settlement information:\n
      \                                    const Date& settleDate,\n                                     const
      std::map<Seniority, Real>&\n                                        recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' creditEventDate'
    - ' curr'
    - bondsSen
    - ' settleDate'
    - recoveryRates
    argTypes:
    - Date
    - Currency
    - Seniority
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 229
    functionName: QuantLib::BankruptcyEvent::BankruptcyEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.cpp
    functionUses: 0
    functionsReached:
    - DefaultType
    linkageType: ''
    returnType: void
    signature: "void BankruptcyEvent::BankruptcyEvent(const Date& creditEventDate,\n
      \                                    const Currency& curr,\n                                     Seniority
      bondsSen,\n                                     // Settlement information:\n
      \                                    const Date& settleDate,\n                                     //
      means same for all\n                                     Real recoveryRates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dts
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: QuantLib::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Root(Handle<DefaultProbabilityTermStructure> dts, Real pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:38,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dts
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: QuantLib::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Root(Handle<DefaultProbabilityTermStructure> dts, Real pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:38,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' pool'
    - ' defaultKeys'
    - ' copula'
    - accuracy
    - seed
    argTypes:
    - ext::shared_ptr<Pool>
    - std::vector<DefaultProbKey>
    - Handle<OneFactorCopula>
    - Real
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::GaussianRandomDefaultModel::GaussianRandomDefaultModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: void
    signature: "void GaussianRandomDefaultModel::GaussianRandomDefaultModel(\n        const
      ext::shared_ptr<Pool>& pool,\n        const std::vector<DefaultProbKey>& defaultKeys,\n
      \       const Handle<OneFactorCopula>& copula,\n        Real accuracy,\n        long
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:61,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::GaussianRandomDefaultModel::reset
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: void
    signature: void GaussianRandomDefaultModel::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianRandomDefaultModel::nextSequence
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:66,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:67,1
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:68,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:69,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:71,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:73,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:74,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:76,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:77,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:83,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:84,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: Root
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:88,1
    - Dst: Bisection
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:89,1
    - Dst: Root
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:89,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - tmax
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 93
    functionName: QuantLib::GaussianRandomDefaultModel::nextSequence
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 1
    functionsReached:
    - correlation
    - Root
    - defaultProbability
    - Brent::setLowerBound
    - setTime
    - names
    - Brent::setUpperBound
    - Brent::solve
    - get
    - size
    - Bisection
    - CumulativeNormalDistribution
    - QuantLib::GaussianRandomDefaultModel::nextSequence
    - sqrt
    linkageType: ''
    returnType: void
    signature: void GaussianRandomDefaultModel::nextSequence(Real tmax)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dts
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: QuantLib::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Root(Handle<DefaultProbabilityTermStructure> dts, Real pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:38,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dts
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: QuantLib::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Root(Handle<DefaultProbabilityTermStructure> dts, Real pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:38,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' pool'
    - ' defaultKeys'
    - ' copula'
    - accuracy
    - seed
    argTypes:
    - ext::shared_ptr<Pool>
    - std::vector<DefaultProbKey>
    - Handle<OneFactorCopula>
    - Real
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::GaussianRandomDefaultModel::GaussianRandomDefaultModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: void
    signature: "void GaussianRandomDefaultModel::GaussianRandomDefaultModel(\n        const
      ext::shared_ptr<Pool>& pool,\n        const std::vector<DefaultProbKey>& defaultKeys,\n
      \       const Handle<OneFactorCopula>& copula,\n        Real accuracy,\n        long
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:61,1
    - Dst: QuantLib::make_sequence_generator
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::GaussianRandomDefaultModel::reset
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::make_sequence_generator
    linkageType: ''
    returnType: void
    signature: void GaussianRandomDefaultModel::reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianRandomDefaultModel::nextSequence
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:66,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:67,1
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:68,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:69,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:71,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:73,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:74,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:76,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:77,1
    - Dst: Brent::setLowerBound
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:83,1
    - Dst: Brent::setUpperBound
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:84,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: Root
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:85,1
    - Dst: setTime
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:88,1
    - Dst: Bisection
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:89,1
    - Dst: Root
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp:89,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - tmax
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 93
    functionName: QuantLib::GaussianRandomDefaultModel::nextSequence
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.cpp
    functionUses: 2
    functionsReached:
    - correlation
    - Root
    - defaultProbability
    - Brent::setLowerBound
    - setTime
    - names
    - Brent::setUpperBound
    - Brent::solve
    - get
    - size
    - Bisection
    - CumulativeNormalDistribution
    - QuantLib::GaussianRandomDefaultModel::nextSequence
    - sqrt
    linkageType: ''
    returnType: void
    signature: void GaussianRandomDefaultModel::nextSequence(Real tmax)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sen
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::RecoveryRateQuote::conventionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real conventionalRecovery(Seniority sen)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::RecoveryRateQuote::seniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority RecoveryRateQuote::seniority() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:75,1
    - Dst: QuantLib::RecoveryRateQuote::isValid
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::RecoveryRateQuote::value
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::RecoveryRateQuote::isValid
    linkageType: ''
    returnType: Real
    signature: Real RecoveryRateQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::RecoveryRateQuote::isValid
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 1
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool RecoveryRateQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Seniority
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::RecoveryRateQuote::makeIsdaMap
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached:
    - Seniority
    linkageType: ''
    returnType: std::map<Seniority, Real>
    signature: std::map<Seniority, Real> RecoveryRateQuote::makeIsdaMap(const Real
      (&(arrayIsdaRR))[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sen
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: QuantLib::RecoveryRateQuote::conventionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real conventionalRecovery(Seniority sen)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::RecoveryRateQuote::seniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority RecoveryRateQuote::seniority() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:75,1
    - Dst: QuantLib::RecoveryRateQuote::isValid
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::RecoveryRateQuote::value
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    - QuantLib::RecoveryRateQuote::isValid
    linkageType: ''
    returnType: Real
    signature: Real RecoveryRateQuote::value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::RecoveryRateQuote::isValid
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 2
    functionsReached:
    - Null<Real>
    linkageType: ''
    returnType: bool
    signature: bool RecoveryRateQuote::isValid() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Seniority
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: QuantLib::RecoveryRateQuote::makeIsdaMap
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.hpp
    functionUses: 0
    functionsReached:
    - Seniority
    linkageType: ''
    returnType: std::map<Seniority, Real>
    signature: std::map<Seniority, Real> RecoveryRateQuote::makeIsdaMap(const Real
      (&(arrayIsdaRR))[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:36,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:37,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:40,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:40,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:43,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:43,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:44,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' correlQuote'
    - ' quotes'
    argTypes:
    - Handle<Quote>
    - std::vector<Handle<RecoveryRateQuote> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 49
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - GaussianCopulaPolicy::initTraits
    - value
    - registerWith
    - std::sqrt
    - size
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            const
      Handle<Quote>& correlQuote,\n            const std::vector<Handle<RecoveryRateQuote>
      >& quotes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:55,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:58,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:59,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:59,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:60,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:64,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - correlation
    - ' recoveries'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<RecoveryRateQuote>
    - GaussianCopulaPolicy::initTraits
    - emplace_back
    - std::sqrt
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            Real
      correlation,\n            const std::vector<Real>& recoveries)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:70,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:71,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:74,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:74,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:76,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:76,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:79,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:81,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' correlQuote'
    - ' recoveries'
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 82
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<RecoveryRateQuote>
    - GaussianCopulaPolicy::initTraits
    - value
    - registerWith
    - emplace_back
    - std::sqrt
    - size
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            const
      Handle<Quote>& correlQuote,\n            const std::vector<Real>& recoveries)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:98,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:100,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:104,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:107,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:109,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:111,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:112,1
    - Dst: biphi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:113,1
    - Dst: biphi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - remainingNot
    - prob
    - averageRR
    - attachLimit
    - detachLimit
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 116
    functionName: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - biphi_
    - phi_
    - QuantLib::InverseCumulativeNormal::standard_value
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::expectedTrancheLossImpl(\n            Real
      remainingNot, // << at the given date 'd'\n            Real prob, // << at the
      given date 'd'\n            Real averageRR, // << at the given date 'd'\n            //
      these are percentual values:\n            Real attachLimit, Real detachLimit)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:122,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:124,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:125,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:128,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:130,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:132,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:137,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:146,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:148,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:150,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d'
    - remainingLossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 118
    functionDepth: 3
    functionLinenumber: 118
    functionLinenumberEnd: 154
    functionName: QuantLib::GaussianLHPLossModel::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QL_REQUIRE
    - QuantLib::InverseCumulativeNormal::standard_value
    - phi_
    - remainingDetachmentAmount
    - remainingNotional
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::probOverLoss(const Date& d,\n            Real
      remainingLossFraction) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:160,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:161,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:162,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:164,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:166,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:168,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:173,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:174,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:175,1
    - Dst: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:177,1
    - Dst: QuantLib::GaussianLHPLossModel::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 156
    functionDepth: 4
    functionLinenumber: 156
    functionLinenumberEnd: 185
    functionName: QuantLib::GaussianLHPLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    - QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    - remainingDetachmentAmount
    - QuantLib::GaussianLHPLossModel::probOverLoss
    - remainingNotional
    - std::max
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::expectedShortfall(const Date& d, \n            Probability
      perctl) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:191,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:197,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 187
    functionDepth: 3
    functionLinenumber: 187
    functionLinenumberEnd: 201
    functionName: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    - phi_
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::percentilePortfolioLossFraction(\n            const
      Date& d, Real perctl) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:36,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:37,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:40,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:40,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:43,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:43,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:44,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:44,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:46,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' correlQuote'
    - ' quotes'
    argTypes:
    - Handle<Quote>
    - std::vector<Handle<RecoveryRateQuote> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 49
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - GaussianCopulaPolicy::initTraits
    - value
    - registerWith
    - std::sqrt
    - size
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            const
      Handle<Quote>& correlQuote,\n            const std::vector<Handle<RecoveryRateQuote>
      >& quotes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:55,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:57,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:58,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:59,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:59,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:60,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:64,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - correlation
    - ' recoveries'
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<RecoveryRateQuote>
    - GaussianCopulaPolicy::initTraits
    - emplace_back
    - std::sqrt
    - size
    - Handle<Quote>
    - ext::make_shared<SimpleQuote>
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            Real
      correlation,\n            const std::vector<Real>& recoveries)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:70,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:71,1
    - Dst: GaussianCopulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:74,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:74,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:76,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:76,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:77,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:77,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:79,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:81,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' correlQuote'
    - ' recoveries'
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 82
    functionName: QuantLib::GaussianLHPLossModel::GaussianLHPLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<RecoveryRateQuote>
    - GaussianCopulaPolicy::initTraits
    - value
    - registerWith
    - emplace_back
    - std::sqrt
    - size
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void GaussianLHPLossModel::GaussianLHPLossModel(\n            const
      Handle<Quote>& correlQuote,\n            const std::vector<Real>& recoveries)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:98,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:100,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:104,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:107,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:109,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:111,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:112,1
    - Dst: biphi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:113,1
    - Dst: biphi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - remainingNot
    - prob
    - averageRR
    - attachLimit
    - detachLimit
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 116
    functionName: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 1
    functionsReached:
    - biphi_
    - phi_
    - QuantLib::InverseCumulativeNormal::standard_value
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::expectedTrancheLossImpl(\n            Real
      remainingNot, // << at the given date 'd'\n            Real prob, // << at the
      given date 'd'\n            Real averageRR, // << at the given date 'd'\n            //
      these are percentual values:\n            Real attachLimit, Real detachLimit)
      const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:121,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:122,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:124,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:125,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:128,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:130,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:132,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:137,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:146,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:148,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:150,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d'
    - remainingLossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 118
    functionDepth: 3
    functionLinenumber: 118
    functionLinenumberEnd: 154
    functionName: QuantLib::GaussianLHPLossModel::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 1
    functionsReached:
    - remainingAttachmentAmount
    - QL_REQUIRE
    - QuantLib::InverseCumulativeNormal::standard_value
    - phi_
    - remainingDetachmentAmount
    - remainingNotional
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::probOverLoss(const Date& d,\n            Real
      remainingLossFraction) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:160,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:161,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:162,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:164,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:166,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:168,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:173,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:174,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:175,1
    - Dst: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:177,1
    - Dst: QuantLib::GaussianLHPLossModel::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 156
    functionDepth: 4
    functionLinenumber: 156
    functionLinenumberEnd: 185
    functionName: QuantLib::GaussianLHPLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    - QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    - remainingDetachmentAmount
    - QuantLib::GaussianLHPLossModel::probOverLoss
    - remainingNotional
    - std::max
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::expectedShortfall(const Date& d, \n            Probability
      perctl) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:191,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:197,1
    - Dst: phi_
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:198,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 187
    functionDepth: 3
    functionLinenumber: 187
    functionLinenumberEnd: 201
    functionName: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    - phi_
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real GaussianLHPLossModel::percentilePortfolioLossFraction(\n            const
      Date& d, Real perctl) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<CP> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SaddlePointLossModel::SaddlePointLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddlePointLossModel(\n            const ext::shared_ptr<ConstantLossLatentmodel<CP>
      >& m)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' me'
    - target
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - SaddlePointLossModel
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 193
    functionName: QuantLib::SaddlePointLossModel::SaddleObjectiveFunction::SaddleObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddleObjectiveFunction(const SaddlePointLossModel& me,\n                                    const
      Real target,\n                                    const std::vector<Real>& invUncondProbs,\n
      \                                   const std::vector<Real>& mktFactor\n                                    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - CumGen1stDerivativeCond
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumGen2ndDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::SaddlePointLossModel::SaddleObjectiveFunction::derivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - CumGen2ndDerivativeCond
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' me'
    - target
    - ' date'
    argTypes:
    - SaddlePointLossModel
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: QuantLib::SaddlePointLossModel::SaddlePercObjFunction::SaddlePercObjFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddlePercObjFunction(\n                const SaddlePointLossModel&
      me,\n                const Real target,\n                const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - probOverLoss
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:339,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:340,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:341,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:341,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:342,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:343,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:343,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:344,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:345,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: QuantLib::SaddlePointLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:391,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:392,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:394,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:396,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: QuantLib::SaddlePointLossModel<CP>::CumulantGenerating
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumulantGenerating(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:407,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:408,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:410,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:412,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:414,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 416
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen1stDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:423,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:424,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:426,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:428,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 432
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
    - inverseCumulativeY
    - integratedExpectedValue
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen2ndDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:439,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:440,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:442,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:444,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:446,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 448
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen3rdDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:455,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:456,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:458,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:460,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 464
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen4thDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:473,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:476,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:477,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:479,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:481,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d'
    - trancheLossFract
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 467
    functionDepth: 1
    functionLinenumber: 467
    functionLinenumberEnd: 485
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - detachmentAmount
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::probOverLossCond
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLoss(\n        const
      Date& d, Real trancheLossFract) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:492,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:493,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:495,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:497,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 501
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverPortfLoss(\n        const
      Date& d, Real loss) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:508,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:509,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:511,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:513,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 517
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedTrancheLoss(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:524,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:525,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:527,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:529,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probDensityCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 520
    functionDepth: 1
    functionLinenumber: 520
    functionLinenumberEnd: 533
    functionName: QuantLib::SaddlePointLossModel<CP>::probDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probDensityCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probDensity(\n        const
      Date& d, Real loss) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:539,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:540,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:542,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:544,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::splitLossCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 548
    functionName: QuantLib::SaddlePointLossModel<CP>::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - integratedExpectedValueV
    - QuantLib::SaddlePointLossModel<CP>::splitLossCond
    - remainingProbabilities
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> SaddlePointLossModel<CP>::splitVaRLevel(const Date&
      date, Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:571,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:576,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:578,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:579,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossFraction
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 584
    functionName: QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumulantGeneratingCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real lossFraction,\n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:592,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:597,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:601,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:603,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 607
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - size
    - conditionalRecoveryInvP
    - conditionalDefaultProbabilityInvP
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen1stDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle,\n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:615,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:620,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:624,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 632
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen2ndDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:640,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:645,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:648,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:651,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 635
    functionDepth: 0
    functionLinenumber: 635
    functionLinenumberEnd: 663
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen3rdDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:671,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:676,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:679,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:682,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 696
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen4thDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:704,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:712,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:715,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:718,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:728,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:730,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:731,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 738
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::tuple<Real, Real, Real, Real>
    signature: "std::tuple<Real, Real, Real, Real> SaddlePointLossModel<CP>::CumGen0234DerivCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:746,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:752,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:755,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:758,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:766,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:768,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 771
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::tuple<Real, Real>
    signature: "std::tuple<Real, Real> SaddlePointLossModel<CP>::CumGen02DerivCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:789,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:792,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:793,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:799,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:799,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:805,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:811,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:816,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:824,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:827,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:838,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:839,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - ' invUncondPs'
    - lossLevel
    - ' mktFactor'
    - accuracy
    - maxEvaluations
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 840
    functionName: QuantLib::SaddlePointLossModel<CP>::findSaddle
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    - std::log
    - std::vector::begin
    - std::vector::end
    - conditionalRecoveryInvP
    - Brent::setMaxEvaluations
    - std::max_element
    - Brent::solve
    - size
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    - std::distance
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::findSaddle(\n        const std::vector<Real>&
      invUncondPs,\n        Real lossLevel, // in total portfolio loss fractional
      unit \n        const std::vector<Real>& mktFactor, \n        Real accuracy,\n
      \       Natural maxEvaluations\n        ) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:851,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:856,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:860,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:861,1
    - Dst: remainingTrancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:862,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:866,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:872,1
    - Dst: remainingTrancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:873,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 847
    functionDepth: 2
    functionLinenumber: 847
    functionLinenumberEnd: 874
    functionName: QuantLib::SaddlePointLossModel<CP>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - remainingTrancheNotional
    - QuantLib::SaddlePointLossModel<CP>::probOverLoss
    - QuantLib::detail::instance
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::percentile(const Date& d, \n        Probability
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:889,1
    - Dst: basketNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' invUncondPs'
    - trancheLossFract
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 877
    functionDepth: 1
    functionLinenumber: 877
    functionLinenumberEnd: 893
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - basketNotional
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossCond(\n        const
      std::vector<Real>& invUncondPs,\n        Real trancheLossFract, \n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:901,1
    - Dst: std::make_pair<Real, Probability>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:901,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:903,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 896
    functionDepth: 2
    functionLinenumber: 896
    functionLinenumberEnd: 905
    functionName: QuantLib::SaddlePointLossModel<CP>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
    - std::map::insert
    - std::make_pair<Real, Probability>
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> SaddlePointLossModel<CP>::lossDistribution(const
      Date& d) const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:935,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:939,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:946,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:950,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:952,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:953,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:954,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:955,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:966,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:968,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:969,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:969,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:970,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:990,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:993,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:994,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:994,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:995,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 919
    functionDepth: 2
    functionLinenumber: 919
    functionLinenumberEnd: 1009
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::get<1>
    - std::exp
    - std::abs
    - std::get<2>
    - conditionalRecoveryInvP
    - CumulativeNormalDistribution
    - std::get<3>
    - std::sqrt
    - size
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossPortfCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real loss, \n        const std::vector<Real>&
      mktFactor) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1019,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1028,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1035,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1039,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1041,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1042,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1049,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1052,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1055,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1055,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1056,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1062,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1068,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1069,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1069,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1070,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - ' invUncondPs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1013
    functionDepth: 2
    functionLinenumber: 1013
    functionLinenumberEnd: 1072
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond1stOrder
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
    - std::get<1>
    - std::exp
    - conditionalRecoveryInvP
    - CumulativeNormalDistribution
    - std::sqrt
    - size
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - std::abs
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossPortfCond1stOrder(\n
      \       const std::vector<Real>& invUncondPs,\n        Real loss, \n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1090,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1094,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1097,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1098,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1099,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1108,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' invUncondPs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1082
    functionDepth: 2
    functionLinenumber: 1082
    functionLinenumberEnd: 1113
    functionName: QuantLib::SaddlePointLossModel<CP>::probDensityCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::get<1>
    - std::exp
    - std::get<2>
    - std::pow
    - std::get<3>
    - std::sqrt
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probDensityCond(\n        const
      std::vector<Real>& invUncondPs,\n        Real loss,\n        const std::vector<Real>&
      mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1132,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1136,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1141,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - loss
    - mktFactor
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1127
    functionDepth: 2
    functionLinenumber: 1127
    functionLinenumberEnd: 1153
    functionName: QuantLib::SaddlePointLossModel<CP>::splitLossCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - size
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> SaddlePointLossModel<CP>::splitLossCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real loss, \n        std::vector<Real>
      mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1160,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1164,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1171
    functionName: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - conditionalRecoveryInvP
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::conditionalExpectedLoss(\n        const
      std::vector<Real>& invUncondProbs,\n        const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1178,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1182,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1186,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1189,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1174
    functionDepth: 0
    functionLinenumber: 1174
    functionLinenumberEnd: 1192
    functionName: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - conditionalRecoveryInvP
    - std::max
    - size
    - conditionalDefaultProbabilityInvP
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss(\n        const
      std::vector<Real>& invUncondProbs,\n        const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1199,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1202,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1203,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1208,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1221,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1223,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1224,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1195
    functionDepth: 0
    functionLinenumber: 1195
    functionLinenumberEnd: 1227
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallSplitCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - NormalDistribution
    - conditionalRecoveryInvP
    - std::sqrt
    - size
    - CumulativeNormalDistribution
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> SaddlePointLossModel<CP>::expectedShortfallSplitCond(\n
      \           const std::vector<Real>& invUncondProbs,\n            Real lossPerc,
      const std::vector<Real>& mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1242,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1243,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1244,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1245,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1246,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1247,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1248,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1250,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1252,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1253,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1258,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1259,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1259,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1260,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - percentile
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - Probability
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1230
    functionDepth: 3
    functionLinenumber: 1230
    functionLinenumberEnd: 1263
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallTrancheCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - detachmentAmount
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - std::max
    - QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    - attachmentAmount
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfallTrancheCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real lossPerc, // value \n        Probability
      percentile,\n        const std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1278,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1282,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1285,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1288,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1292,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probDensityCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1266
    functionDepth: 3
    functionLinenumber: 1266
    functionLinenumberEnd: 1326
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probDensityCond
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - conditionalRecoveryInvP
    - size
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real lossPerc, //
      value \n        const std::vector<Real>& mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::percentile
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1333,1
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1337,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1343,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1344,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1346,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1349,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - d
    - percProb
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1329
    functionDepth: 4
    functionLinenumber: 1329
    functionLinenumberEnd: 1359
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::percentile
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    - std::vector::size
    - trancheNotional
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfall(const Date&d, \n
      \       Probability percProb) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<CP> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: QuantLib::SaddlePointLossModel::SaddlePointLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddlePointLossModel(\n            const ext::shared_ptr<ConstantLossLatentmodel<CP>
      >& m)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' me'
    - target
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - SaddlePointLossModel
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 193
    functionName: QuantLib::SaddlePointLossModel::SaddleObjectiveFunction::SaddleObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddleObjectiveFunction(const SaddlePointLossModel& me,\n                                    const
      Real target,\n                                    const std::vector<Real>& invUncondProbs,\n
      \                                   const std::vector<Real>& mktFactor\n                                    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - CumGen1stDerivativeCond
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CumGen2ndDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::SaddlePointLossModel::SaddleObjectiveFunction::derivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - CumGen2ndDerivativeCond
    linkageType: ''
    returnType: Real
    signature: Real derivative(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' me'
    - target
    - ' date'
    argTypes:
    - SaddlePointLossModel
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: QuantLib::SaddlePointLossModel::SaddlePercObjFunction::SaddlePercObjFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SaddlePercObjFunction(\n                const SaddlePointLossModel&
      me,\n                const Real target,\n                const Date& date)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - probOverLoss
    linkageType: ''
    returnType: Real
    signature: Real operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:339,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:340,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:341,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:341,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:342,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:343,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:343,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:344,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:345,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: QuantLib::SaddlePointLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:391,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:392,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:394,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:396,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: QuantLib::SaddlePointLossModel<CP>::CumulantGenerating
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumulantGenerating(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:407,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:408,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:410,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:412,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:414,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 416
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen1stDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:423,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:424,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:426,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:428,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 432
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
    - inverseCumulativeY
    - integratedExpectedValue
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen2ndDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:439,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:440,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:442,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:444,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:446,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 448
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen3rdDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:455,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:456,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:458,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:460,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 464
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivative
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen4thDerivative(\n        const
      Date& date, Real s) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:473,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:476,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:477,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:479,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:481,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' d'
    - trancheLossFract
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 485
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - detachmentAmount
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::probOverLossCond
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLoss(\n        const
      Date& d, Real trancheLossFract) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:492,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:493,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:495,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:497,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 488
    functionDepth: 3
    functionLinenumber: 488
    functionLinenumberEnd: 501
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverPortfLoss(\n        const
      Date& d, Real loss) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:508,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:509,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:511,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:513,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 517
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedTrancheLoss(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:524,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:525,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:527,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:529,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probDensityCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 520
    functionDepth: 3
    functionLinenumber: 520
    functionLinenumberEnd: 533
    functionName: QuantLib::SaddlePointLossModel<CP>::probDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probDensityCond
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probDensity(\n        const
      Date& d, Real loss) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:539,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:540,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:542,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:544,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::splitLossCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' date'
    - s
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 536
    functionDepth: 3
    functionLinenumber: 536
    functionLinenumberEnd: 548
    functionName: QuantLib::SaddlePointLossModel<CP>::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - integratedExpectedValueV
    - QuantLib::SaddlePointLossModel<CP>::splitLossCond
    - remainingProbabilities
    - inverseCumulativeY
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> SaddlePointLossModel<CP>::splitVaRLevel(const Date&
      date, Real s) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:571,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:576,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:578,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:579,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossFraction
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 584
    functionName: QuantLib::SaddlePointLossModel<CP>::CumulantGeneratingCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumulantGeneratingCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real lossFraction,\n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:592,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:597,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:601,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:603,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 607
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 3
    functionsReached:
    - size
    - conditionalRecoveryInvP
    - conditionalDefaultProbabilityInvP
    - std::exp
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen1stDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle,\n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:615,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:620,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:624,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:626,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 632
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen2ndDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen2ndDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:640,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:645,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:648,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:651,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 635
    functionDepth: 0
    functionLinenumber: 635
    functionLinenumberEnd: 663
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen3rdDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen3rdDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:671,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:676,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:679,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:682,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 696
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen4thDerivativeCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::CumGen4thDerivativeCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const std::vector<Real>&
      \ mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:704,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:712,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:715,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:718,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:728,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:730,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:731,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 738
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::tuple<Real, Real, Real, Real>
    signature: "std::tuple<Real, Real, Real, Real> SaddlePointLossModel<CP>::CumGen0234DerivCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:746,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:752,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:755,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:758,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:766,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:768,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - saddle
    - '  mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 771
    functionName: QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - conditionalRecoveryInvP
    - std::pow
    - size
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::tuple<Real, Real>
    signature: "std::tuple<Real, Real> SaddlePointLossModel<CP>::CumGen02DerivCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real saddle, \n        const
      std::vector<Real>&  mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:789,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:792,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:793,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:799,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:799,1
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:800,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:805,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:811,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:816,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:824,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:827,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:838,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:839,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - ' invUncondPs'
    - lossLevel
    - ' mktFactor'
    - accuracy
    - maxEvaluations
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    - Real
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 840
    functionName: QuantLib::SaddlePointLossModel<CP>::findSaddle
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen1stDerivativeCond
    - std::log
    - std::vector::begin
    - std::vector::end
    - conditionalRecoveryInvP
    - Brent::setMaxEvaluations
    - std::max_element
    - Brent::solve
    - size
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    - std::distance
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::findSaddle(\n        const std::vector<Real>&
      invUncondPs,\n        Real lossLevel, // in total portfolio loss fractional
      unit \n        const std::vector<Real>& mktFactor, \n        Real accuracy,\n
      \       Natural maxEvaluations\n        ) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:851,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:856,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:860,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:861,1
    - Dst: remainingTrancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:862,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:866,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:872,1
    - Dst: remainingTrancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:873,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 847
    functionDepth: 2
    functionLinenumber: 847
    functionLinenumberEnd: 874
    functionName: QuantLib::SaddlePointLossModel<CP>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - remainingTrancheNotional
    - QuantLib::SaddlePointLossModel<CP>::probOverLoss
    - QuantLib::detail::instance
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::percentile(const Date& d, \n        Probability
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:889,1
    - Dst: basketNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' invUncondPs'
    - trancheLossFract
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 877
    functionDepth: 3
    functionLinenumber: 877
    functionLinenumberEnd: 893
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - basketNotional
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossCond(\n        const
      std::vector<Real>& invUncondPs,\n        Real trancheLossFract, \n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:901,1
    - Dst: std::make_pair<Real, Probability>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:901,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:903,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 896
    functionDepth: 2
    functionLinenumber: 896
    functionLinenumberEnd: 905
    functionName: QuantLib::SaddlePointLossModel<CP>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probOverPortfLoss
    - std::map::insert
    - std::make_pair<Real, Probability>
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> SaddlePointLossModel<CP>::lossDistribution(const
      Date& d) const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:935,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:939,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:946,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:950,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:952,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:953,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:954,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:955,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:966,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:968,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:969,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:969,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:970,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:990,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:993,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:994,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:994,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:995,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 919
    functionDepth: 2
    functionLinenumber: 919
    functionLinenumberEnd: 1009
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 6
    functionsReached:
    - std::get<1>
    - std::exp
    - std::abs
    - std::get<2>
    - conditionalRecoveryInvP
    - CumulativeNormalDistribution
    - std::get<3>
    - std::sqrt
    - size
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossPortfCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real loss, \n        const std::vector<Real>&
      mktFactor) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1019,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1028,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1035,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1039,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1041,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1042,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1049,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1052,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1055,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1055,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1056,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1062,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1068,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1069,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1069,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1070,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - ' invUncondPs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1013
    functionDepth: 2
    functionLinenumber: 1013
    functionLinenumberEnd: 1072
    functionName: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond1stOrder
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::CumGen02DerivCond
    - std::get<1>
    - std::exp
    - conditionalRecoveryInvP
    - CumulativeNormalDistribution
    - std::sqrt
    - size
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - std::abs
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probOverLossPortfCond1stOrder(\n
      \       const std::vector<Real>& invUncondPs,\n        Real loss, \n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1090,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1094,1
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1097,1
    - Dst: std::get<1>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1098,1
    - Dst: std::get<2>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1099,1
    - Dst: std::get<3>
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1100,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1108,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1109,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' invUncondPs'
    - loss
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1082
    functionDepth: 2
    functionLinenumber: 1082
    functionLinenumberEnd: 1113
    functionName: QuantLib::SaddlePointLossModel<CP>::probDensityCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 3
    functionsReached:
    - std::get<1>
    - std::exp
    - std::get<2>
    - std::pow
    - std::get<3>
    - std::sqrt
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - std::get<0>
    - QuantLib::SaddlePointLossModel<CP>::CumGen0234DerivCond
    linkageType: ''
    returnType: Probability
    signature: "Probability SaddlePointLossModel<CP>::probDensityCond(\n        const
      std::vector<Real>& invUncondPs,\n        Real loss,\n        const std::vector<Real>&
      mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1132,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1136,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1141,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1144,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - loss
    - mktFactor
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1127
    functionDepth: 2
    functionLinenumber: 1127
    functionLinenumberEnd: 1153
    functionName: QuantLib::SaddlePointLossModel<CP>::splitLossCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - conditionalRecoveryInvP
    - size
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> SaddlePointLossModel<CP>::splitLossCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real loss, \n        std::vector<Real>
      mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1160,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1164,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1171
    functionName: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - conditionalRecoveryInvP
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::conditionalExpectedLoss(\n        const
      std::vector<Real>& invUncondProbs,\n        const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1178,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1182,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1186,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1189,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' invUncondProbs'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1174
    functionDepth: 0
    functionLinenumber: 1174
    functionLinenumberEnd: 1192
    functionName: QuantLib::SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 2
    functionsReached:
    - conditionalRecoveryInvP
    - std::max
    - size
    - conditionalDefaultProbabilityInvP
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::conditionalExpectedTrancheLoss(\n        const
      std::vector<Real>& invUncondProbs,\n        const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1199,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1202,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1203,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1208,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1221,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1223,1
    - Dst: NormalDistribution
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1224,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1195
    functionDepth: 0
    functionLinenumber: 1195
    functionLinenumberEnd: 1227
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallSplitCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - NormalDistribution
    - conditionalRecoveryInvP
    - std::sqrt
    - size
    - CumulativeNormalDistribution
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> SaddlePointLossModel<CP>::expectedShortfallSplitCond(\n
      \           const std::vector<Real>& invUncondProbs,\n            Real lossPerc,
      const std::vector<Real>& mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1242,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1243,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1244,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1245,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1246,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1247,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1248,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1250,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1252,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1253,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1258,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1259,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1259,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1260,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - percentile
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - Probability
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1230
    functionDepth: 4
    functionLinenumber: 1230
    functionLinenumberEnd: 1263
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallTrancheCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - detachmentAmount
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - std::max
    - QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    - attachmentAmount
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfallTrancheCond(\n        const
      std::vector<Real>& invUncondProbs,\n        Real lossPerc, // value \n        Probability
      percentile,\n        const std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1278,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1282,1
    - Dst: conditionalRecoveryInvP
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1285,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::findSaddle
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1288,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1292,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::probDensityCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ' invUncondProbs'
    - lossPerc
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1266
    functionDepth: 3
    functionLinenumber: 1266
    functionLinenumberEnd: 1326
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::probDensityCond
    - QuantLib::SaddlePointLossModel<CP>::probOverLossPortfCond
    - conditionalRecoveryInvP
    - size
    - QuantLib::SaddlePointLossModel<CP>::findSaddle
    - conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond(\n
      \       const std::vector<Real>& invUncondProbs,\n        Real lossPerc, //
      value \n        const std::vector<Real>& mktFactor) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SaddlePointLossModel<CP>::percentile
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1333,1
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1337,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1343,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1344,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1346,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1349,1
    - Dst: QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
      Src: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp:1351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - d
    - percProb
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1329
    functionDepth: 4
    functionLinenumber: 1329
    functionLinenumberEnd: 1359
    functionName: QuantLib::SaddlePointLossModel<CP>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/saddlepointlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::SaddlePointLossModel<CP>::percentile
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - QuantLib::SaddlePointLossModel<CP>::expectedShortfallFullPortfolioCond
    - std::vector::size
    - trancheNotional
    linkageType: ''
    returnType: Real
    signature: "Real SaddlePointLossModel<CP>::expectedShortfall(const Date&d, \n
      \       Probability percProb) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:67,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::SpreadedHazardRateCurve::SpreadedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedHazardRateCurve::SpreadedHazardRateCurve(\n        Handle<DefaultProbabilityTermStructure>
      h, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::dayCounter
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::SpreadedHazardRateCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedHazardRateCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::calendar
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::SpreadedHazardRateCurve::calendar
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedHazardRateCurve::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: '& SpreadedHazardRateCurve::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedHazardRateCurve::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::maxDate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::SpreadedHazardRateCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedHazardRateCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::maxTime
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::SpreadedHazardRateCurve::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedHazardRateCurve::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hazardRate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:93,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::SpreadedHazardRateCurve::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - value
    - hazardRate
    linkageType: ''
    returnType: Real
    signature: Real SpreadedHazardRateCurve::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:67,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:67,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:68,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: QuantLib::SpreadedHazardRateCurve::SpreadedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SpreadedHazardRateCurve::SpreadedHazardRateCurve(\n        Handle<DefaultProbabilityTermStructure>
      h, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::dayCounter
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::SpreadedHazardRateCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SpreadedHazardRateCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::calendar
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::SpreadedHazardRateCurve::calendar
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SpreadedHazardRateCurve::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: '& SpreadedHazardRateCurve::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SpreadedHazardRateCurve::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::maxDate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::SpreadedHazardRateCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SpreadedHazardRateCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpreadedHazardRateCurve::maxTime
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: QuantLib::SpreadedHazardRateCurve::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpreadedHazardRateCurve::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SpreadedHazardRateCurve::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hazardRate
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:93,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: QuantLib::SpreadedHazardRateCurve::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/spreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - value
    - hazardRate
    linkageType: ''
    returnType: Real
    signature: Real SpreadedHazardRateCurve::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::ConstantLossLatentmodel::ConstantLossLatentmodel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - initTraits
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantLossLatentmodel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()            \n
      \           )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' mktCorrel'
    - ' recoveries'
    - integralType
    - nVariables
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionName: QuantLib::ConstantLossLatentmodel::ConstantLossLatentmodel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - initTraits
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantLossLatentmodel(\n            const Handle<Quote>& mktCorrel,\n
      \           const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            Size nVariables,\n            const initTraits& ini
      = initTraits()            \n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(const Date& d, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(Probability uncondDefP, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - invUncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecoveryInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecoveryInvP(Real invUncondDefP, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - latentVarSample
    - iName
    - ' d'
    argTypes:
    - Real
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(Real latentVarSample, \n            Size
      iName, const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: '& recoveries() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & recoveries() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' defKeys'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::ConstantLossLatentmodel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real expectedRecovery(const Date& d, Size iName, \n            const
      DefaultProbKey& defKeys) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: copulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: QuantLib::ConstantLossModel::ConstantLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - copulaPolicy::initTraits
    linkageType: ''
    returnType: void
    signature: "void ConstantLossModel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const typename copulaPolicy::initTraits& ini = \n
      \               copulaPolicy::initTraits())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: copulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mktCorrel'
    - ' recoveries'
    - integralType
    - nVariables
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 140
    functionName: QuantLib::ConstantLossModel::ConstantLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - copulaPolicy::initTraits
    linkageType: ''
    returnType: void
    signature: "void ConstantLossModel(\n            const Handle<Quote>& mktCorrel,\n
      \           const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            Size nVariables,\n            const typename copulaPolicy::initTraits&
      ini = \n                copulaPolicy::initTraits())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossModel::defaultCorrelation
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::ConstantLossModel::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ConstantLossModel::defaultCorrelation
    linkageType: ''
    returnType: Real
    signature: Real defaultCorrelation(const Date& d, Size iName, Size jName) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossModel::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::ConstantLossModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ConstantLossModel::probAtLeastNEvents
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossLatentmodel::expectedRecovery
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' k'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::ConstantLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConstantLossLatentmodel::expectedRecovery
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date& d, Size iName, const DefaultProbKey&
      k) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultLatentModel::resetBasket
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:161,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: QuantLib::ConstantLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultLatentModel::resetBasket
    - currentLink
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionName: QuantLib::ConstantLossLatentmodel::ConstantLossLatentmodel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - initTraits
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantLossLatentmodel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()            \n
      \           )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:68,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' mktCorrel'
    - ' recoveries'
    - integralType
    - nVariables
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionName: QuantLib::ConstantLossLatentmodel::ConstantLossLatentmodel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - initTraits
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ConstantLossLatentmodel(\n            const Handle<Quote>& mktCorrel,\n
      \           const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            Size nVariables,\n            const initTraits& ini
      = initTraits()            \n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(const Date& d, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(Probability uncondDefP, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - invUncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecoveryInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecoveryInvP(Real invUncondDefP, Size iName, \n                                 const
      std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - latentVarSample
    - iName
    - ' d'
    argTypes:
    - Real
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::ConstantLossLatentmodel::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real conditionalRecovery(Real latentVarSample, \n            Size
      iName, const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: '& recoveries() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & recoveries() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' defKeys'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: QuantLib::ConstantLossLatentmodel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: "Real expectedRecovery(const Date& d, Size iName, \n            const
      DefaultProbKey& defKeys) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: copulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: QuantLib::ConstantLossModel::ConstantLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - copulaPolicy::initTraits
    linkageType: ''
    returnType: void
    signature: "void ConstantLossModel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const typename copulaPolicy::initTraits& ini = \n
      \               copulaPolicy::initTraits())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: copulaPolicy::initTraits
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' mktCorrel'
    - ' recoveries'
    - integralType
    - nVariables
    argTypes:
    - Handle<Quote>
    - std::vector<Real>
    - LatentModelIntegrationType::LatentModelIntegrationType
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 140
    functionName: QuantLib::ConstantLossModel::ConstantLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - copulaPolicy::initTraits
    linkageType: ''
    returnType: void
    signature: "void ConstantLossModel(\n            const Handle<Quote>& mktCorrel,\n
      \           const std::vector<Real>& recoveries,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            Size nVariables,\n            const typename copulaPolicy::initTraits&
      ini = \n                copulaPolicy::initTraits())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossModel::defaultCorrelation
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: QuantLib::ConstantLossModel::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ConstantLossModel::defaultCorrelation
    linkageType: ''
    returnType: Real
    signature: Real defaultCorrelation(const Date& d, Size iName, Size jName) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossModel::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: QuantLib::ConstantLossModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ConstantLossModel::probAtLeastNEvents
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ConstantLossLatentmodel::expectedRecovery
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' k'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: QuantLib::ConstantLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ConstantLossLatentmodel::expectedRecovery
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date& d, Size iName, const DefaultProbKey&
      k) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultLatentModel::resetBasket
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:161,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: QuantLib::ConstantLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/constantlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultLatentModel::resetBasket
    - currentLink
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - copula
    argTypes:
    - ext::shared_ptr<LLM>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::BinomialLossModel::BinomialLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BinomialLossModel(ext::shared_ptr<LLM> copula)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:70,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:71,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:73,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::BinomialLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - remainingDetachmentAmount
    - resetBasket
    - currentLink
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:82,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:84,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:85,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:87,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:89,1
    - Dst: lossProbability
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: QuantLib::BinomialLossModel::expectedDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - integratedExpectedValueV
    - remainingProbabilities
    - remainingNotionals
    - inverseCumulativeY
    - lossProbability
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> expectedDistribution(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: liveList
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:116,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:117,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:117,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:119,1
    - Dst: conditionalRecovery
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - ' mktFactors'
    argTypes:
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 121
    functionName: QuantLib::BinomialLossModel::expConditionalLgd
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - conditionalRecovery
    - liveList
    - std::vector::reserve
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> expConditionalLgd(const Date& d,\n                                            const
      std::vector<Real>& mktFactors) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:155,1
    - Dst: expConditionalLgd
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:165,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:168,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:168,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:169,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:177,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:180,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:181,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:181,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:193,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:198,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:198,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:199,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:202,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:202,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:205,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:227,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:228,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:238,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:239,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ' date'
    - ' bsktNots'
    - ' uncondDefProbInv'
    - ' mktFactors'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 242
    functionName: QuantLib::BinomialLossModel<LLM>::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - std::back_inserter
    - std::inner_product
    - std::floor
    - std::vector::begin
    - std::vector::end
    - begin
    - Real
    - static_cast<Real>
    - std::pow
    - std::multiplies<>
    - std::accumulate
    - std::transform
    - remainingSize
    - expConditionalLgd
    - conditionalDefaultProbabilityInvP
    - std::min
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> BinomialLossModel<LLM>::lossProbability(\n        const
      Date& date, \n        const std::vector<Real>& bsktNots,\n        const std::vector<Real>&
      uncondDefProbInv, \n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:252,1
    - Dst: expConditionalLgd
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:260,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:261,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:261,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:262,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:262,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:265,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:265,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:266,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - ' reminingNots'
    - ' mktFctrs'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 269
    functionName: QuantLib::BinomialLossModel<LLM>::averageLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - std::vector::begin
    - expConditionalLgd
    - begin
    - Real
    - std::vector::end
    - std::multiplies<>
    - std::accumulate
    - std::transform
    - remainingSize
    - end
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::averageLoss(\n        const Date& d,
      \n        const std::vector<Real>& reminingNots,\n        const std::vector<Real>&
      mktFctrs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:274,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:276,1
    - Dst: QuantLib::BinomialLossModel<LLM>::averageLoss
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:278,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:282,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:283,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:285,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 289
    functionName: QuantLib::BinomialLossModel<LLM>::lossPoints
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - remainingNotional
    - integratedExpectedValue
    - remainingNotionals
    - QuantLib::BinomialLossModel<LLM>::averageLoss
    - remainingSize
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> BinomialLossModel<LLM>::lossPoints(const Date& d)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossProbability
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:303,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:305,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:305,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' d'
    - ' lossVals'
    - ' bsktNots'
    - ' uncondDefProbsInv'
    - ' mkf'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 309
    functionName: QuantLib::BinomialLossModel<LLM>::condTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::BinomialLossModel<LLM>::lossProbability
    - std::max
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::condTrancheLoss(\n        const Date&
      d, \n        const std::vector<Real>& lossVals, \n        const std::vector<Real>&
      bsktNots,\n        const std::vector<Real>& uncondDefProbsInv,\n        const
      std::vector<Real>& mkf) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossPoints
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:313,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:314,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:316,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:317,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:319,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:321,1
    - Dst: QuantLib::BinomialLossModel<LLM>::condTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::BinomialLossModel<LLM>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - remainingNotionals
    - inverseCumulativeY
    - integratedExpectedValue
    - QuantLib::BinomialLossModel<LLM>::condTrancheLoss
    - std::vector::size
    - QuantLib::BinomialLossModel<LLM>::lossPoints
    linkageType: ''
    returnType: Real
    signature: Real BinomialLossModel<LLM>::expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossPoints
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:332,1
    - Dst: expectedDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:333,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:335,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:336,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:336,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 329
    functionDepth: 2
    functionLinenumber: 329
    functionLinenumberEnd: 343
    functionName: QuantLib::BinomialLossModel<LLM>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::min
    - expectedDistribution
    - std::vector::size
    - std::map::insert
    - QuantLib::BinomialLossModel<LLM>::lossPoints
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> BinomialLossModel<LLM>::lossDistribution(const
      Date& d) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:347,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:350,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:350,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:353,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:353,1
    - Dst: std::map::rbegin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:355,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:356,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:357,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:368,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:368,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' d'
    - perc
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 370
    functionName: QuantLib::BinomialLossModel<LLM>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::map::begin
    - std::max
    - std::map::rbegin
    - std::map::size
    - QuantLib::BinomialLossModel<LLM>::lossDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real BinomialLossModel<LLM>::percentile(const Date& d, Real perc) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:377,1
    - Dst: QuantLib::BinomialLossModel<LLM>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:378,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:381,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:382,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:389,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:390,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:390,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:392,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:392,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:400,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:400,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:402,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:402,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:410,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - d
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 373
    functionDepth: 3
    functionLinenumber: 373
    functionLinenumberEnd: 411
    functionName: QuantLib::BinomialLossModel<LLM>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::map::begin
    - std::max
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::BinomialLossModel<LLM>::lossDistribution
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::expectedShortfall(const Date&d, \n        Real
      perctl) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - copula
    argTypes:
    - ext::shared_ptr<LLM>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::BinomialLossModel::BinomialLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void BinomialLossModel(ext::shared_ptr<LLM> copula)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:70,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:71,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:73,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: QuantLib::BinomialLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - remainingDetachmentAmount
    - resetBasket
    - currentLink
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:82,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:84,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:85,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:87,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:89,1
    - Dst: lossProbability
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: QuantLib::BinomialLossModel::expectedDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - integratedExpectedValueV
    - remainingProbabilities
    - remainingNotionals
    - inverseCumulativeY
    - lossProbability
    - std::vector::size
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> expectedDistribution(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: liveList
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:116,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:117,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:117,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:119,1
    - Dst: conditionalRecovery
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - ' mktFactors'
    argTypes:
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 121
    functionName: QuantLib::BinomialLossModel::expConditionalLgd
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - conditionalRecovery
    - liveList
    - std::vector::reserve
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> expConditionalLgd(const Date& d,\n                                            const
      std::vector<Real>& mktFactors) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:155,1
    - Dst: expConditionalLgd
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:165,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:167,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:168,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:168,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:169,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:171,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:177,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:180,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:181,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:181,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:182,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:186,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:192,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:193,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:197,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:198,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:198,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:199,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:200,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:201,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:202,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:202,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:203,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:205,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:207,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:208,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:227,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:228,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:238,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:239,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ' date'
    - ' bsktNots'
    - ' uncondDefProbInv'
    - ' mktFactors'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 242
    functionName: QuantLib::BinomialLossModel<LLM>::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    - std::back_inserter
    - std::inner_product
    - std::floor
    - std::vector::begin
    - std::vector::end
    - begin
    - Real
    - static_cast<Real>
    - std::pow
    - std::multiplies<>
    - std::accumulate
    - std::transform
    - remainingSize
    - expConditionalLgd
    - conditionalDefaultProbabilityInvP
    - std::min
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> BinomialLossModel<LLM>::lossProbability(\n        const
      Date& date, \n        const std::vector<Real>& bsktNots,\n        const std::vector<Real>&
      uncondDefProbInv, \n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:252,1
    - Dst: expConditionalLgd
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:260,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:261,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:261,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:262,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:262,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:264,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:265,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:265,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:266,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - ' reminingNots'
    - ' mktFctrs'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 269
    functionName: QuantLib::BinomialLossModel<LLM>::averageLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::back_inserter
    - std::vector::begin
    - expConditionalLgd
    - begin
    - Real
    - std::vector::end
    - std::multiplies<>
    - std::accumulate
    - std::transform
    - remainingSize
    - end
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::averageLoss(\n        const Date& d,
      \n        const std::vector<Real>& reminingNots,\n        const std::vector<Real>&
      mktFctrs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:274,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:276,1
    - Dst: QuantLib::BinomialLossModel<LLM>::averageLoss
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:278,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:282,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:283,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:285,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 289
    functionName: QuantLib::BinomialLossModel<LLM>::lossPoints
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::vector::reserve
    - remainingNotional
    - integratedExpectedValue
    - remainingNotionals
    - QuantLib::BinomialLossModel<LLM>::averageLoss
    - remainingSize
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> BinomialLossModel<LLM>::lossPoints(const Date& d)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossProbability
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:300,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:303,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:305,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:305,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' d'
    - ' lossVals'
    - ' bsktNots'
    - ' uncondDefProbsInv'
    - ' mkf'
    argTypes:
    - Date
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 309
    functionName: QuantLib::BinomialLossModel<LLM>::condTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::BinomialLossModel<LLM>::lossProbability
    - std::max
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::condTrancheLoss(\n        const Date&
      d, \n        const std::vector<Real>& lossVals, \n        const std::vector<Real>&
      bsktNots,\n        const std::vector<Real>& uncondDefProbsInv,\n        const
      std::vector<Real>& mkf) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossPoints
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:313,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:314,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:316,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:317,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:319,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:321,1
    - Dst: QuantLib::BinomialLossModel<LLM>::condTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionName: QuantLib::BinomialLossModel<LLM>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingProbabilities
    - remainingNotionals
    - inverseCumulativeY
    - integratedExpectedValue
    - QuantLib::BinomialLossModel<LLM>::condTrancheLoss
    - std::vector::size
    - QuantLib::BinomialLossModel<LLM>::lossPoints
    linkageType: ''
    returnType: Real
    signature: Real BinomialLossModel<LLM>::expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossPoints
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:332,1
    - Dst: expectedDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:333,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:335,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:336,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:336,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 329
    functionDepth: 2
    functionLinenumber: 329
    functionLinenumberEnd: 343
    functionName: QuantLib::BinomialLossModel<LLM>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::make_pair
    - std::min
    - expectedDistribution
    - std::vector::size
    - std::map::insert
    - QuantLib::BinomialLossModel<LLM>::lossPoints
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> BinomialLossModel<LLM>::lossDistribution(const
      Date& d) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BinomialLossModel<LLM>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:347,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:350,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:350,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:353,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:353,1
    - Dst: std::map::rbegin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:355,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:356,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:357,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:368,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:368,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' d'
    - perc
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 370
    functionName: QuantLib::BinomialLossModel<LLM>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::map::begin
    - std::max
    - std::map::rbegin
    - std::map::size
    - QuantLib::BinomialLossModel<LLM>::lossDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real BinomialLossModel<LLM>::percentile(const Date& d, Real perc) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:377,1
    - Dst: QuantLib::BinomialLossModel<LLM>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:378,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:381,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:382,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:389,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:390,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:390,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:392,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:392,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:400,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:400,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:402,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:402,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:407,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp:410,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - d
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 373
    functionDepth: 3
    functionLinenumber: 373
    functionLinenumberEnd: 411
    functionName: QuantLib::BinomialLossModel<LLM>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/binomiallossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::map::begin
    - std::max
    - QL_FAIL
    - QuantLib::detail::instance
    - QuantLib::BinomialLossModel<LLM>::lossDistribution
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real BinomialLossModel<LLM>::expectedShortfall(const Date&d, \n        Real
      perctl) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::DefaultProbKey::seniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority seniority() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: "&\n            eventTypes() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<DefaultType> >
    signature: "std::vector<ext::shared_ptr<DefaultType> > &\n            eventTypes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbKey::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::DefaultProbKey::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::DefaultProbKey::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::DefaultProbKey::seniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority seniority() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: "&\n            eventTypes() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<DefaultType> >
    signature: "std::vector<ext::shared_ptr<DefaultType> > &\n            eventTypes()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultProbKey::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::DefaultProbKey::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitykey.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::DefaultProbKey::size
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::RecursiveLossModel::RecursiveLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RecursiveLossModel(\n          const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& m,\n          // nope! use max common divisor. See O'Kane. Or give both options
      at least.\n          Size nbuckets = 1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:166,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:168,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:169,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:169,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:171,1
    - Dst: QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 175
    functionName: QuantLib::RecursiveLossModel<CP>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedTrancheLoss(\n        const Date&
      date) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:181,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:182,1
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossProb
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: QuantLib::RecursiveLossModel<CP>::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossProb
    - remainingProbabilities
    - integratedExpectedValueV
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> RecursiveLossModel<CP>::lossProbability(const Date&
      date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:193,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:194,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:195,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:198,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:200,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:200,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:204,1
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:204,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: std::remove
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:211,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 212
    functionName: QuantLib::RecursiveLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - std::remove
    - std::floor
    - remainingDetachmentAmount
    - begin
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - push_back
    - recoveries
    - size
    - end
    - erase
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void RecursiveLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::lossProbability
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:219,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:221,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:222,1
    - Dst: std::make_pair<Real, Probability>
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 227
    functionName: QuantLib::RecursiveLossModel<CP>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector::size
    - std::map::insert
    - std::make_pair<Real, Probability>
    - QuantLib::RecursiveLossModel<CP>::lossProbability
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> RecursiveLossModel<CP>::lossDistribution(const
      Date& d) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:236,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:238,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:238,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:241,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:241,1
    - Dst: std::map::rbegin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:243,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:244,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:245,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:257,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:257,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 259
    functionName: QuantLib::RecursiveLossModel<CP>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::map::rbegin
    - std::map::size
    - std::map::begin
    - QuantLib::RecursiveLossModel<CP>::lossDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::percentile(const Date& d, \n        Real
      percentile) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:265,1
    - Dst: QuantLib::RecursiveLossModel<CP>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:266,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:269,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:270,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:277,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:278,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:278,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:280,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:280,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:288,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:288,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:290,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:290,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:295,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 299
    functionName: QuantLib::RecursiveLossModel<CP>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::detail::instance
    - std::map::begin
    - QuantLib::RecursiveLossModel<CP>::lossDistribution
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedShortfall(const Date& d, \n        Real
      perctl) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:313,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:313,1
    - Dst: conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:316,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:320,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:321,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:323,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:324,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:327,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:327,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:331,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:332,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:335,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 346
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::map::find
    - conditionalDefaultProbability
    - std::map::begin
    - std::map::insert
    - std::map::end
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: "std::map<Real, Probability> RecursiveLossModel<CP>::conditionalLossDistrib(\n
      \           const std::vector<Probability>& pDefDate, \n            //const
      Date& date,\n            const std::vector<Real>& mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:360,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:360,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:363,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:368,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:369,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:371,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:372,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:375,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:375,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:379,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:380,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:383,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:383,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ' invpDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 393
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::make_pair
    - std::map::find
    - std::map::insert
    - std::map::begin
    - conditionalDefaultProbabilityInvP
    - std::map::end
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: "std::map<Real, Probability> RecursiveLossModel<CP>::conditionalLossDistribInvP(\n
      \           const std::vector<Real>& invpDefDate, \n            //const Date&
      date,\n            const std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:412,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:422,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:424,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:427,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:427,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 434
    functionName: QuantLib::RecursiveLossModel<CP>::expectedConditionalLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    - std::max
    - std::map::begin
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedConditionalLoss(\n        const
      std::vector<Probability>& pDefDate, \n        //const Date& date,\n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:444,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:454,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:456,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:459,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' invPDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 466
    functionName: QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::max
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
    - std::map::begin
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedConditionalLossInvP(\n                                 const
      std::vector<Real>& invPDefDate, \n                                 //const Date&
      date,\n                                 const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:475,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:478,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:479,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 490
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossProb
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    - std::map::begin
    - std::map::end
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RecursiveLossModel<CP>::conditionalLossProb(\n        const
      std::vector<Probability>& pDefDate, \n        //const Date& date,\n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::RecursiveLossModel::RecursiveLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void RecursiveLossModel(\n          const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& m,\n          // nope! use max common divisor. See O'Kane. Or give both options
      at least.\n          Size nbuckets = 1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:166,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:168,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:169,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:169,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:171,1
    - Dst: QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 175
    functionName: QuantLib::RecursiveLossModel<CP>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
    - remainingProbabilities
    - integratedExpectedValue
    - inverseCumulativeY
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedTrancheLoss(\n        const Date&
      date) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:181,1
    - Dst: integratedExpectedValueV
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:182,1
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossProb
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: QuantLib::RecursiveLossModel<CP>::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossProb
    - remainingProbabilities
    - integratedExpectedValueV
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> RecursiveLossModel<CP>::lossProbability(const Date&
      date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:193,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:194,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:195,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:196,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:198,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:200,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:200,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:204,1
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:204,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: std::remove
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:207,1
    - Dst: std::min_element
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:208,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:211,1
    - Dst: std::floor
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 212
    functionName: QuantLib::RecursiveLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - std::remove
    - std::floor
    - remainingDetachmentAmount
    - begin
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - push_back
    - recoveries
    - size
    - end
    - erase
    - std::min_element
    linkageType: ''
    returnType: void
    signature: void RecursiveLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::lossProbability
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:219,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:221,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:222,1
    - Dst: std::make_pair<Real, Probability>
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 227
    functionName: QuantLib::RecursiveLossModel<CP>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::vector::size
    - std::map::insert
    - std::make_pair<Real, Probability>
    - QuantLib::RecursiveLossModel<CP>::lossProbability
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> RecursiveLossModel<CP>::lossDistribution(const
      Date& d) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:236,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:238,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:238,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:241,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:241,1
    - Dst: std::map::rbegin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:243,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:244,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:245,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:257,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:257,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 259
    functionName: QuantLib::RecursiveLossModel<CP>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::map::rbegin
    - std::map::size
    - std::map::begin
    - QuantLib::RecursiveLossModel<CP>::lossDistribution
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::percentile(const Date& d, \n        Real
      percentile) const"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:265,1
    - Dst: QuantLib::RecursiveLossModel<CP>::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:266,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:269,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:270,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:277,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:278,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:278,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:280,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:280,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:288,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:288,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:290,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:290,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:295,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 299
    functionName: QuantLib::RecursiveLossModel<CP>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::detail::instance
    - std::map::begin
    - QuantLib::RecursiveLossModel<CP>::lossDistribution
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedShortfall(const Date& d, \n        Real
      perctl) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:313,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:313,1
    - Dst: conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:316,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:320,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:321,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:323,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:324,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:327,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:327,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:331,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:332,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:335,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 346
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::make_pair
    - std::map::find
    - conditionalDefaultProbability
    - std::map::begin
    - std::map::insert
    - std::map::end
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: "std::map<Real, Probability> RecursiveLossModel<CP>::conditionalLossDistrib(\n
      \           const std::vector<Probability>& pDefDate, \n            //const
      Date& date,\n            const std::vector<Real>& mktFactor) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:360,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:360,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:363,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:368,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:369,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:371,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:372,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:375,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:375,1
    - Dst: std::map::find
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:379,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:380,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:383,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:383,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ' invpDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 393
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 1
    functionsReached:
    - std::make_pair
    - std::map::find
    - std::map::insert
    - std::map::begin
    - conditionalDefaultProbabilityInvP
    - std::map::end
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: "std::map<Real, Probability> RecursiveLossModel<CP>::conditionalLossDistribInvP(\n
      \           const std::vector<Real>& invpDefDate, \n            //const Date&
      date,\n            const std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:412,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:422,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:424,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:427,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:427,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 434
    functionName: QuantLib::RecursiveLossModel<CP>::expectedConditionalLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    - std::max
    - std::map::begin
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedConditionalLoss(\n        const
      std::vector<Probability>& pDefDate, \n        //const Date& date,\n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:444,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:454,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:456,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:459,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' invPDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 466
    functionName: QuantLib::RecursiveLossModel<CP>::expectedConditionalLossInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 2
    functionsReached:
    - std::max
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistribInvP
    - std::map::begin
    - std::map::end
    - std::min
    linkageType: ''
    returnType: Real
    signature: "Real RecursiveLossModel<CP>::expectedConditionalLossInvP(\n                                 const
      std::vector<Real>& invPDefDate, \n                                 //const Date&
      date,\n                                 const std::vector<Real>& mktFactor)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:475,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:478,1
    - Dst: std::map::end
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:479,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' pDefDate'
    - ' mktFactor'
    argTypes:
    - std::vector<Probability>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 490
    functionName: QuantLib::RecursiveLossModel<CP>::conditionalLossProb
    functionSourceFile: /src/quantlib/ql/experimental/credit/recursivelossmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::RecursiveLossModel<CP>::conditionalLossDistrib
    - std::map::begin
    - std::map::end
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RecursiveLossModel<CP>::conditionalLossProb(\n        const
      std::vector<Probability>& pDefDate, \n        //const Date& date,\n        const
      std::vector<Real>& mktFactor) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::Loss::Loss
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Loss(Real t = 0.0, Real a = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: operator<(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: operator>(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator==(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: operator!=(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: QuantLib::Loss::Loss
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Loss(Real t = 0.0, Real a = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: operator<(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: operator>(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: operator==(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' l1'
    - ' l2'
    argTypes:
    - Loss
    - Loss
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: operator!=(const Loss& l1, const Loss& l2)
    functionSourceFile: /src/quantlib/ql/experimental/credit/loss.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Loss& l1, const Loss& l2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbKey
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:39,1
    - Dst: recoveryValueImpl
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' defaultDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::RecoveryRateModel::recoveryValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbKey
    - recoveryValueImpl
    linkageType: ''
    returnType: Real
    signature: "Real recoveryValue(const Date& defaultDate,\n            const DefaultProbKey&
      defaultKey = DefaultProbKey()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~RecoveryRateModel() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RecoveryRateModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::ConstantRecoveryModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ConstantRecoveryModel::appliesToSeniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool appliesToSeniority(Seniority) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::ConstantRecoveryModel::recoveryValueImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real recoveryValueImpl(const Date&, const DefaultProbKey&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbKey
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:39,1
    - Dst: recoveryValueImpl
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' defaultDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: QuantLib::RecoveryRateModel::recoveryValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbKey
    - recoveryValueImpl
    linkageType: ''
    returnType: Real
    signature: "Real recoveryValue(const Date& defaultDate,\n            const DefaultProbKey&
      defaultKey = DefaultProbKey()) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~RecoveryRateModel() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RecoveryRateModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::ConstantRecoveryModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ConstantRecoveryModel::appliesToSeniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool appliesToSeniority(Seniority) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::ConstantRecoveryModel::recoveryValueImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.hpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real recoveryValueImpl(const Date&, const DefaultProbKey&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:34,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:36,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:36,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:37,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:37,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' correlation'
    - nz
    - nm
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: QuantLib::OneFactorStudentCopula::OneFactorStudentCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorStudentCopula::OneFactorStudentCopula (\n                                             const
      Handle<Quote>& correlation,\n                                             int
      nz, int nm,\n                                             Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:45,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:46,1
    - Dst: QuantLib::OneFactorStudentCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 60
    functionName: QuantLib::OneFactorStudentCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorStudentCopula::cumulativeYintegral
    - clear
    - push_back
    linkageType: ''
    returnType: void
    signature: void OneFactorStudentCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:65,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:68,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:91,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:92,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:100,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:101,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:102,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 106
    functionName: QuantLib::OneFactorStudentCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 1
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:119,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' correlation'
    - nz
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 122
    functionName: QuantLib::OneFactorGaussianStudentCopula::OneFactorGaussianStudentCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorGaussianStudentCopula::OneFactorGaussianStudentCopula
      (\n                                             const Handle<Quote>& correlation,\n
      \                                            int nz, Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:127,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:128,1
    - Dst: QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:138,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:139,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 142
    functionName: QuantLib::OneFactorGaussianStudentCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - clear
    - QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
    linkageType: ''
    returnType: void
    signature: void OneFactorGaussianStudentCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:147,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:150,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:173,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:173,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:175,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:182,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:184,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:184,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 188
    functionName: QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 1
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:201,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:201,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' correlation'
    - nm
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 204
    functionName: QuantLib::OneFactorStudentGaussianCopula::OneFactorStudentGaussianCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorStudentGaussianCopula::OneFactorStudentGaussianCopula
      (\n                                             const Handle<Quote>& correlation,\n
      \                                            int nm, Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:209,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:210,1
    - Dst: QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:220,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:221,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 224
    functionName: QuantLib::OneFactorStudentGaussianCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
    - clear
    - push_back
    linkageType: ''
    returnType: void
    signature: void OneFactorStudentGaussianCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:229,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:232,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:235,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:256,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:256,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:258,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:258,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:265,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:265,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:267,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:267,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 271
    functionName: QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 1
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:34,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:36,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:36,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:37,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:37,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ' correlation'
    - nz
    - nm
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: QuantLib::OneFactorStudentCopula::OneFactorStudentCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorStudentCopula::OneFactorStudentCopula (\n                                             const
      Handle<Quote>& correlation,\n                                             int
      nz, int nm,\n                                             Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:45,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:46,1
    - Dst: QuantLib::OneFactorStudentCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:56,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 60
    functionName: QuantLib::OneFactorStudentCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorStudentCopula::cumulativeYintegral
    - clear
    - push_back
    linkageType: ''
    returnType: void
    signature: void OneFactorStudentCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:65,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:68,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:71,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:91,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:91,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:92,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:100,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:100,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:101,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:102,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 106
    functionName: QuantLib::OneFactorStudentCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 2
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:119,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:119,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' correlation'
    - nz
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 122
    functionName: QuantLib::OneFactorGaussianStudentCopula::OneFactorGaussianStudentCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorGaussianStudentCopula::OneFactorGaussianStudentCopula
      (\n                                             const Handle<Quote>& correlation,\n
      \                                            int nz, Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:127,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:128,1
    - Dst: QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:138,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:139,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 142
    functionName: QuantLib::OneFactorGaussianStudentCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - push_back
    - clear
    - QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
    linkageType: ''
    returnType: void
    signature: void OneFactorGaussianStudentCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:147,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:150,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:153,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:173,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:173,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:175,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:175,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:182,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:182,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:184,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:184,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 188
    functionName: QuantLib::OneFactorGaussianStudentCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 2
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:199,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:201,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:201,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ' correlation'
    - nm
    - maximum
    - integrationSteps
    argTypes:
    - Handle<Quote>
    - int
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 204
    functionName: QuantLib::OneFactorStudentGaussianCopula::OneFactorStudentGaussianCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - std::sqrt
    - Real
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorStudentGaussianCopula::OneFactorStudentGaussianCopula
      (\n                                             const Handle<Quote>& correlation,\n
      \                                            int nm, Real maximum,\n                                             Size
      integrationSteps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:209,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:210,1
    - Dst: QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:220,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:221,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 224
    functionName: QuantLib::OneFactorStudentGaussianCopula::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
    - clear
    - push_back
    linkageType: ''
    returnType: void
    signature: void OneFactorStudentGaussianCopula::performCalculations () const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:229,1
    - Dst: CumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:232,1
    - Dst: CumulativeStudentDistribution
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:235,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:256,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:256,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:258,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:258,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:265,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:265,1
    - Dst: dm
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:267,1
    - Dst: dz
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp:267,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 271
    functionName: QuantLib::OneFactorStudentGaussianCopula::cumulativeYintegral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.cpp
    functionUses: 2
    functionsReached:
    - dm
    - value
    - std::sqrt
    - CumulativeStudentDistribution
    - CumulativeNormalDistribution
    - dz
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::cumulativeYintegral (Real y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Basket::Basket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Basket()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:71,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::Basket::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::computeBasket
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:75,1
    - Dst: QuantLib::Basket::remainingDefaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:82,1
    - Dst: QuantLib::Basket::settledLoss
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:83,1
    - Dst: QuantLib::Basket::remainingNotional
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:84,1
    - Dst: QuantLib::Basket::remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:85,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:86,1
    - Dst: QuantLib::Basket::remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:87,1
    - Dst: QuantLib::Basket::remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:89,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 91
    functionName: QuantLib::Basket::computeBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::remainingDefaultKeys
    - QuantLib::Basket::remainingNotionals
    - QuantLib::Basket::liveList
    - QuantLib::Basket::settledLoss
    - QuantLib::Basket::remainingAttachmentAmount
    - QuantLib::detail::instance
    - QuantLib::Basket::remainingNames
    - QuantLib::Basket::remainingNotional
    - QuantLib::Basket::remainingDetachmentAmount
    linkageType: ''
    returnType: void
    signature: void computeBasket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: '& names() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - names
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & names() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: '& refDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & refDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::Basket::attachmentRatio
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachmentRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::Basket::detachmentRatio
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachmentRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::Basket::basketNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real basketNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::Basket::trancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real trancheNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::Basket::attachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::Basket::detachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::Basket::claim
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Claim>
    signature: ext::shared_ptr<Claim> claim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::Basket::remainingTrancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real remainingTrancheNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:214,1
    - Dst: QuantLib::Basket::remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:215,1
    - Dst: QuantLib::Basket::remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::Basket::remainingTrancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::remainingAttachmentAmount
    - QuantLib::Basket::remainingDetachmentAmount
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real remainingTrancheNotional(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 319
    functionName: QuantLib::Basket::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::size
    linkageType: ''
    returnType: Size
    signature: Size Basket::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 323
    functionName: '& Basket::notionals() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Basket::notionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionName: QuantLib::Basket::defaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::defaultKeys
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: std::vector<DefaultProbKey> Basket::defaultKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 331
    functionName: '& Basket::pool() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Pool>
    signature: ext::shared_ptr<Pool> & Basket::pool() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: '& Basket::liveList() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & Basket::liveList() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionName: QuantLib::Basket::remainingDetachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingDetachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: QuantLib::Basket::remainingAttachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingAttachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: '& Basket::remainingNames() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & Basket::remainingNames() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 351
    functionName: '& Basket::remainingNotionals() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Basket::remainingNotionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: QuantLib::Basket::cumulatedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::cumulatedLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 359
    functionName: QuantLib::Basket::settledLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::settledLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 365
    functionName: "& \n        Basket::remainingDefaultKeys() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: "std::vector<DefaultProbKey> & \n        Basket::remainingDefaultKeys()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::Basket::Basket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Basket()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:71,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::Basket::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::computeBasket
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:75,1
    - Dst: QuantLib::Basket::remainingDefaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:82,1
    - Dst: QuantLib::Basket::settledLoss
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:83,1
    - Dst: QuantLib::Basket::remainingNotional
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:84,1
    - Dst: QuantLib::Basket::remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:85,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:86,1
    - Dst: QuantLib::Basket::remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:87,1
    - Dst: QuantLib::Basket::remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:89,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 91
    functionName: QuantLib::Basket::computeBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::remainingDefaultKeys
    - QuantLib::Basket::remainingNotionals
    - QuantLib::Basket::liveList
    - QuantLib::Basket::settledLoss
    - QuantLib::Basket::remainingAttachmentAmount
    - QuantLib::detail::instance
    - QuantLib::Basket::remainingNames
    - QuantLib::Basket::remainingNotional
    - QuantLib::Basket::remainingDetachmentAmount
    linkageType: ''
    returnType: void
    signature: void computeBasket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: '& names() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - names
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & names() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: '& refDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date & refDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::Basket::attachmentRatio
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachmentRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::Basket::detachmentRatio
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachmentRatio() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: QuantLib::Basket::basketNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real basketNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: QuantLib::Basket::trancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real trancheNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: QuantLib::Basket::attachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: QuantLib::Basket::detachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 126
    functionName: QuantLib::Basket::claim
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Claim>
    signature: ext::shared_ptr<Claim> claim() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::Basket::remainingTrancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real remainingTrancheNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:214,1
    - Dst: QuantLib::Basket::remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:215,1
    - Dst: QuantLib::Basket::remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: QuantLib::Basket::remainingTrancheNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::remainingAttachmentAmount
    - QuantLib::Basket::remainingDetachmentAmount
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real remainingTrancheNotional(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 319
    functionName: QuantLib::Basket::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    linkageType: ''
    returnType: Size
    signature: Size Basket::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 323
    functionName: '& Basket::notionals() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Basket::notionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.hpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionName: QuantLib::Basket::defaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::defaultKeys
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: std::vector<DefaultProbKey> Basket::defaultKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 331
    functionName: '& Basket::pool() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Pool>
    signature: ext::shared_ptr<Pool> & Basket::pool() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: '& Basket::liveList() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> & Basket::liveList() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionName: QuantLib::Basket::remainingDetachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingDetachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: QuantLib::Basket::remainingAttachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingAttachmentAmount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: '& Basket::remainingNames() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & Basket::remainingNames() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 351
    functionName: '& Basket::remainingNotionals() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & Basket::remainingNotionals() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionName: QuantLib::Basket::cumulatedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::cumulatedLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 359
    functionName: QuantLib::Basket::settledLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::settledLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 365
    functionName: "& \n        Basket::remainingDefaultKeys() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: "std::vector<DefaultProbKey> & \n        Basket::remainingDefaultKeys()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:32,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::BaseCorrelationTermStructure<BilinearInterpolation>::setupInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - BilinearInterpolation
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<BilinearInterpolation>::setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::BaseCorrelationTermStructure<BicubicSpline>::setupInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp
    functionUses: 0
    functionsReached:
    - BicubicSpline
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<BicubicSpline>::setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BilinearInterpolation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:32,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:32,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: QuantLib::BaseCorrelationTermStructure<BilinearInterpolation>::setupInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - BilinearInterpolation
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<BilinearInterpolation>::setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BicubicSpline
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:44,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:44,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: QuantLib::BaseCorrelationTermStructure<BicubicSpline>::setupInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.cpp
    functionUses: 0
    functionsReached:
    - BicubicSpline
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<BicubicSpline>::setupInterpolation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: QuantLib::FactorSpreadedHazardRateCurve::FactorSpreadedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FactorSpreadedHazardRateCurve::FactorSpreadedHazardRateCurve(\n
      \       Handle<DefaultProbabilityTermStructure> h, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::dayCounter
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FactorSpreadedHazardRateCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter FactorSpreadedHazardRateCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::calendar
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FactorSpreadedHazardRateCurve::calendar
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar FactorSpreadedHazardRateCurve::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: '& FactorSpreadedHazardRateCurve::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & FactorSpreadedHazardRateCurve::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::maxDate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::FactorSpreadedHazardRateCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date FactorSpreadedHazardRateCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::maxTime
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::FactorSpreadedHazardRateCurve::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::maxTime
    linkageType: ''
    returnType: Time
    signature: Time FactorSpreadedHazardRateCurve::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hazardRate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:91,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::FactorSpreadedHazardRateCurve::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - value
    - hazardRate
    linkageType: ''
    returnType: Real
    signature: Real FactorSpreadedHazardRateCurve::hazardRateImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:65,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:66,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - h
    - spread
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: QuantLib::FactorSpreadedHazardRateCurve::FactorSpreadedHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void FactorSpreadedHazardRateCurve::FactorSpreadedHazardRateCurve(\n
      \       Handle<DefaultProbabilityTermStructure> h, Handle<Quote> spread)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::dayCounter
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: QuantLib::FactorSpreadedHazardRateCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter FactorSpreadedHazardRateCurve::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::calendar
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::FactorSpreadedHazardRateCurve::calendar
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar FactorSpreadedHazardRateCurve::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: '& FactorSpreadedHazardRateCurve::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & FactorSpreadedHazardRateCurve::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::maxDate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::FactorSpreadedHazardRateCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::maxDate
    linkageType: ''
    returnType: Date
    signature: Date FactorSpreadedHazardRateCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FactorSpreadedHazardRateCurve::maxTime
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: QuantLib::FactorSpreadedHazardRateCurve::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::FactorSpreadedHazardRateCurve::maxTime
    linkageType: ''
    returnType: Time
    signature: Time FactorSpreadedHazardRateCurve::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hazardRate
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:91,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::FactorSpreadedHazardRateCurve::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/factorspreadedhazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - value
    - hazardRate
    linkageType: ''
    returnType: Real
    signature: Real FactorSpreadedHazardRateCurve::hazardRateImpl(Time t) const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:31,1
    - Dst: expectedTrancheLoss::clear
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:37,1
    - Dst: basket::attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:39,1
    - Dst: basket::detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:40,1
    - Dst: basket::trancheNotional
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:43,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:48,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:51,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:53,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:56,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:58,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:62,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:64,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:65,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:70,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:74,1
    - Dst: dayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:80,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:81,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:88,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:94,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:101,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:113,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:124,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 127
    functionName: QuantLib::IntegralCDOEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - basket::trancheNotional
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - basket::attachmentAmount
    - expectedTrancheLoss::clear
    - Real
    - discount
    - QuantLib::detail::instance
    - basket::expectedTrancheLoss
    - expectedTrancheLoss::push_back
    - hasOccurred
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - dayCounter::yearFraction
    - basket::detachmentAmount
    linkageType: ''
    returnType: void
    signature: void IntegralCDOEngine::calculate() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:31,1
    - Dst: expectedTrancheLoss::clear
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:37,1
    - Dst: basket::attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:39,1
    - Dst: basket::detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:40,1
    - Dst: basket::trancheNotional
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:43,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:48,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:50,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:51,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:53,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:56,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:58,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:62,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:64,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:65,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:70,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:74,1
    - Dst: dayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:80,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:81,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:88,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:94,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:98,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:101,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:102,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:113,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp:124,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 127
    functionName: QuantLib::IntegralCDOEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralcdoengine.cpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    - basket::trancheNotional
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - basket::attachmentAmount
    - expectedTrancheLoss::clear
    - Real
    - discount
    - QuantLib::detail::instance
    - basket::expectedTrancheLoss
    - expectedTrancheLoss::push_back
    - hasOccurred
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - dayCounter::yearFraction
    - basket::detachmentAmount
    linkageType: ''
    returnType: void
    signature: void IntegralCDOEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::LossDist::LossDist
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDist()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~LossDist()
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LossDist()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ProbabilityOfNEvents::ProbabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ProbabilityOfNEvents (int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::ProbabilityOfAtLeastNEvents::ProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ProbabilityOfAtLeastNEvents (int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::BinomialProbabilityOfAtLeastNEvents::BinomialProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BinomialProbabilityOfAtLeastNEvents(int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 98
    functionName: QuantLib::LossDistBinomial::LossDistBinomial
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDistBinomial (Size nBuckets, Real maximum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::LossDistBinomial::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::LossDistBinomial::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::LossDistBinomial::volume
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volume() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::LossDistBinomial::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::LossDistBinomial::probability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> probability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::LossDistBinomial::excessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> excessProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::LossDistHomogeneous::LossDistHomogeneous
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDistHomogeneous(Size nBuckets, Real maximum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::LossDistHomogeneous::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: QuantLib::LossDistHomogeneous::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: QuantLib::LossDistHomogeneous::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::LossDistHomogeneous::volume
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volume() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::LossDistHomogeneous::probability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> probability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::LossDistHomogeneous::excessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> excessProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::LossDistBucketing::LossDistBucketing
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LossDistBucketing (Size nBuckets, Real maximum, \n                           Real
      epsilon = 1e-6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::LossDistBucketing::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::LossDistBucketing::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - nBuckets
    - maximum
    - simulations
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::LossDistMonteCarlo::LossDistMonteCarlo
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LossDistMonteCarlo (Size nBuckets, Real maximum, Size simulations,\n
      \                           long seed = 42, Real epsilon = 1e-6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 201
    functionName: QuantLib::LossDistMonteCarlo::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 202
    functionName: QuantLib::LossDistMonteCarlo::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::LossDist::LossDist
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDist()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~LossDist()
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LossDist()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: QuantLib::ProbabilityOfNEvents::ProbabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ProbabilityOfNEvents (int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: QuantLib::ProbabilityOfAtLeastNEvents::ProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ProbabilityOfAtLeastNEvents (int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::BinomialProbabilityOfAtLeastNEvents::BinomialProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BinomialProbabilityOfAtLeastNEvents(int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 98
    functionName: QuantLib::LossDistBinomial::LossDistBinomial
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDistBinomial (Size nBuckets, Real maximum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: QuantLib::LossDistBinomial::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::LossDistBinomial::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 104
    functionName: QuantLib::LossDistBinomial::volume
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volume() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 105
    functionName: QuantLib::LossDistBinomial::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: QuantLib::LossDistBinomial::probability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> probability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::LossDistBinomial::excessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> excessProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::LossDistHomogeneous::LossDistHomogeneous
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LossDistHomogeneous(Size nBuckets, Real maximum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: QuantLib::LossDistHomogeneous::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: QuantLib::LossDistHomogeneous::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: QuantLib::LossDistHomogeneous::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::LossDistHomogeneous::volume
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real volume() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::LossDistHomogeneous::probability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> probability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::LossDistHomogeneous::excessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> excessProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - nBuckets
    - maximum
    argTypes:
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::LossDistBucketing::LossDistBucketing
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LossDistBucketing (Size nBuckets, Real maximum, \n                           Real
      epsilon = 1e-6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::LossDistBucketing::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::LossDistBucketing::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - nBuckets
    - maximum
    - simulations
    argTypes:
    - Size
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::LossDistMonteCarlo::LossDistMonteCarlo
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void LossDistMonteCarlo (Size nBuckets, Real maximum, Size simulations,\n
      \                           long seed = 42, Real epsilon = 1e-6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 201
    functionName: QuantLib::LossDistMonteCarlo::buckets
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size buckets() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 202
    functionName: QuantLib::LossDistMonteCarlo::maximum
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maximum() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:42,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:45,1
    - Dst: BlackCdsOptionEngine::BlackCdsOptionEngine
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:46,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:51,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' cdsoption'
    - ' probability'
    - recoveryRate
    - ' termStructure'
    - targetValue
    argTypes:
    - CdsOption
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::ImpliedVolHelper::ImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackCdsOptionEngine::BlackCdsOptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolHelper(\n                   const CdsOption& cdsoption,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   const Handle<YieldTermStructure>&
      termStructure,\n                   Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:55,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:42,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:45,1
    - Dst: BlackCdsOptionEngine::BlackCdsOptionEngine
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:46,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:51,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' cdsoption'
    - ' probability'
    - recoveryRate
    - ' termStructure'
    - targetValue
    argTypes:
    - CdsOption
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::ImpliedVolHelper::ImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackCdsOptionEngine::BlackCdsOptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolHelper(\n                   const CdsOption& cdsoption,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   const Handle<YieldTermStructure>&
      termStructure,\n                   Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:55,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:72,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:74,1
    - Dst: side
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:76,1
    - Dst: upfront
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:76,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' swap'
    - ' exercise'
    - knocksOut
    argTypes:
    - ext::shared_ptr<CreditDefaultSwap>
    - ext::shared_ptr<Exercise>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 78
    functionName: QuantLib::CdsOption::CdsOption
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Payoff>
    - registerWith
    - upfront
    - side
    - NullPayoff::NullPayoff
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CdsOption::CdsOption(const ext::shared_ptr<CreditDefaultSwap>&
      swap,\n                         const ext::shared_ptr<Exercise>& exercise,\n
      \                        bool knocksOut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:81,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::CdsOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool CdsOption::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::CdsOption::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CdsOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CdsOption::setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:90,1
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:91,1
    - Dst: dynamic_cast<CdsOption::arguments*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: QuantLib::CdsOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<CdsOption::arguments*>
    - QuantLib::CdsOption::setupArguments
    linkageType: ''
    returnType: void
    signature: void CdsOption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:102,1
    - Dst: dynamic_cast<const CdsOption::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:103,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionName: QuantLib::CdsOption::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const CdsOption::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void CdsOption::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fairSpread
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::CdsOption::atmRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    linkageType: ''
    returnType: Rate
    signature: Rate CdsOption::atmRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:116,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: QuantLib::CdsOption::riskyAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CdsOption::riskyAnnuity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:130,1
    - Dst: QuantLib::CdsOption::isExpired
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:130,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:137,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - targetValue
    - ' termStructure'
    - ' probability'
    - recoveryRate
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 139
    functionName: QuantLib::CdsOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - calculate
    - QuantLib::CdsOption::isExpired
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CdsOption::impliedVolatility(\n                   Real
      targetValue,\n                   const Handle<YieldTermStructure>& termStructure,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   Real accuracy,\n                   Size
      maxEvaluations,\n                   Volatility minVol,\n                   Volatility
      maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:144,1
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionName: CdsOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CdsOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MargrabeOption::results::reset
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: CdsOption::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::MargrabeOption::results::reset
    linkageType: ''
    returnType: void
    signature: void CdsOption::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:42,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:45,1
    - Dst: BlackCdsOptionEngine::BlackCdsOptionEngine
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:46,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:51,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' cdsoption'
    - ' probability'
    - recoveryRate
    - ' termStructure'
    - targetValue
    argTypes:
    - CdsOption
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::ImpliedVolHelper::ImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackCdsOptionEngine::BlackCdsOptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolHelper(\n                   const CdsOption& cdsoption,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   const Handle<YieldTermStructure>&
      termStructure,\n                   Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:55,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:42,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:45,1
    - Dst: BlackCdsOptionEngine::BlackCdsOptionEngine
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:46,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:48,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:51,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ' cdsoption'
    - ' probability'
    - recoveryRate
    - ' termStructure'
    - targetValue
    argTypes:
    - CdsOption
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: QuantLib::ImpliedVolHelper::ImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackCdsOptionEngine::BlackCdsOptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void ImpliedVolHelper(\n                   const CdsOption& cdsoption,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   const Handle<YieldTermStructure>&
      termStructure,\n                   Real targetValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:55,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:72,1
    - Dst: NullPayoff::NullPayoff
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:74,1
    - Dst: side
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:74,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:76,1
    - Dst: upfront
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:76,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' swap'
    - ' exercise'
    - knocksOut
    argTypes:
    - ext::shared_ptr<CreditDefaultSwap>
    - ext::shared_ptr<Exercise>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 78
    functionName: QuantLib::CdsOption::CdsOption
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<Payoff>
    - registerWith
    - upfront
    - side
    - NullPayoff::NullPayoff
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CdsOption::CdsOption(const ext::shared_ptr<CreditDefaultSwap>&
      swap,\n                         const ext::shared_ptr<Exercise>& exercise,\n
      \                        bool knocksOut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:81,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::CdsOption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool CdsOption::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::CdsOption::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CdsOption::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CdsOption::setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:90,1
    - Dst: QuantLib::Option::setupArguments
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:91,1
    - Dst: dynamic_cast<CdsOption::arguments*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: QuantLib::CdsOption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - QuantLib::Option::setupArguments
    - dynamic_cast<CdsOption::arguments*>
    - QuantLib::CdsOption::setupArguments
    linkageType: ''
    returnType: void
    signature: void CdsOption::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::QuantoBarrierOption::fetchResults
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:102,1
    - Dst: dynamic_cast<const CdsOption::results*>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:103,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionName: QuantLib::CdsOption::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::QuantoBarrierOption::fetchResults
    - dynamic_cast<const CdsOption::results*>
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void CdsOption::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fairSpread
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::CdsOption::atmRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    linkageType: ''
    returnType: Rate
    signature: Rate CdsOption::atmRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:116,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: QuantLib::CdsOption::riskyAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real CdsOption::riskyAnnuity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:130,1
    - Dst: QuantLib::CdsOption::isExpired
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:130,1
    - Dst: Brent::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:137,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - targetValue
    - ' termStructure'
    - ' probability'
    - recoveryRate
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Handle<DefaultProbabilityTermStructure>
    - Real
    - Real
    - Size
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 139
    functionName: QuantLib::CdsOption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - calculate
    - QuantLib::CdsOption::isExpired
    - Brent::solve
    - Brent::setMaxEvaluations
    linkageType: ''
    returnType: Volatility
    signature: "Volatility CdsOption::impliedVolatility(\n                   Real
      targetValue,\n                   const Handle<YieldTermStructure>& termStructure,\n
      \                  const Handle<DefaultProbabilityTermStructure>& probability,\n
      \                  Real recoveryRate,\n                   Real accuracy,\n                   Size
      maxEvaluations,\n                   Volatility minVol,\n                   Volatility
      maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:144,1
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:145,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionName: CdsOption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CdsOption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MargrabeOption::results::reset
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdsoption.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: CdsOption::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::MargrabeOption::results::reset
    linkageType: ''
    returnType: void
    signature: void CdsOption::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: ~DefaultType()
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DefaultType()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::DefaultType::defaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AtomicDefault::Type
    signature: AtomicDefault::Type defaultType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::DefaultType::restructuringType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Restructuring::Type
    signature: Restructuring::Type restructuringType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::DefaultType::isRestructuring
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isRestructuring() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - defType
    argTypes:
    - AtomicDefault::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::DefaultType::containsDefaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool containsDefaultType(AtomicDefault::Type defType) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - resType
    argTypes:
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::DefaultType::containsRestructuringType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool containsRestructuringType(Restructuring::Type resType) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' grace'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: QuantLib::FailureToPay::FailureToPay
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FailureToPay(const Period& grace,\n                              Real
      amount = 1.e+6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::FailureToPay::amountRequired
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amountRequired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: '& gracePeriod() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & gracePeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: ~DefaultType()
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DefaultType()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::DefaultType::defaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AtomicDefault::Type
    signature: AtomicDefault::Type defaultType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::DefaultType::restructuringType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Restructuring::Type
    signature: Restructuring::Type restructuringType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: QuantLib::DefaultType::isRestructuring
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isRestructuring() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - defType
    argTypes:
    - AtomicDefault::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::DefaultType::containsDefaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool containsDefaultType(AtomicDefault::Type defType) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - resType
    argTypes:
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::DefaultType::containsRestructuringType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool containsRestructuringType(Restructuring::Type resType) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' grace'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: QuantLib::FailureToPay::FailureToPay
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FailureToPay(const Period& grace,\n                              Real
      amount = 1.e+6)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::FailureToPay::amountRequired
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amountRequired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: '& gracePeriod() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Period
    signature: Period & gracePeriod() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:73,1
    - Dst: "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' factorWeights'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::DefaultLatentModel::DefaultLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
    - initTraits
    linkageType: ''
    returnType: void
    signature: "void DefaultLatentModel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:83,1
    - Dst: "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mktCorrel'
    - nVariables
    - integralType
    argTypes:
    - Handle<Quote>
    - Size
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::DefaultLatentModel::DefaultLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
    - initTraits
    linkageType: ''
    returnType: void
    signature: "void DefaultLatentModel(\n            const Handle<Quote>& mktCorrel,\n
      \           Size nVariables,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' basket'
    argTypes:
    - ext::shared_ptr<Basket>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::DefaultLatentModel::resetBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 2
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetBasket(const ext::shared_ptr<Basket>& basket) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:121,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:127,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - prob
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 129
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - inverseCumulativeY
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbability(Probability prob, Size iName,\n
      \           const std::vector<Real>& mktFactors) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:133,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::DefaultLatentModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:155,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:155,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - invCumYProb
    - iName
    - ' m'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 165
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 1
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - cumulativeZ
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbabilityInvP(Real invCumYProb, \n
      \           Size iName, \n            const std::vector<Real>& m) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:182,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:184,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:184,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:185,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' date'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 188
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultLatentModel::conditionalDefaultProbability
    - names
    - get
    - pool
    - defaultKeys
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbability(const Date& date, Size iName,\n
      \           const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:195,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - invCumYProb1
    - invCumYProb2
    - iName1
    - iName2
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::DefaultLatentModel::condProbProduct
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Probability
    signature: "Probability condProbProduct(Real invCumYProb1, Real invCumYProb2,
      \n            Size iName1, Size iName2, \n            const std::vector<Real>&
      mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 205
    functionName: '& integration() const override'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:212,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:213,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:215,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:215,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:216,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:220,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:222,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - iName
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 225
    functionName: QuantLib::DefaultLatentModel::probOfDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    - defaultKeys
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - get
    - pool
    linkageType: ''
    returnType: Probability
    signature: Probability probOfDefault(Size iName, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:238,1
    - Dst: conditionalProbAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - n
    - ' date'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 242
    functionName: QuantLib::DefaultLatentModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - conditionalProbAtLeastNEvents
    - integratedExpectedValue
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:252,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:254,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:256,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:256,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:257,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:259,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:259,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:260,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:263,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:264,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:268,1
    - Dst: condProbProduct
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:270,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - ' d'
    - iNamei
    - iNamej
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 275
    functionName: QuantLib::DefaultLatentModel<CP>::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - condProbProduct
    - defaultKeys
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - std::sqrt
    - get
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real DefaultLatentModel<CP>::defaultCorrelation(const Date& d, \n
      \       Size iNamei, Size iNamej) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:282,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:292,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:293,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:295,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:299,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:301,1
    - Dst: conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:301,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:302,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:302,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:303,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:307,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:307,1
    - Dst: boost::dynamic_bitset::count
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:311,1
    - Dst: boost::dynamic_bitset::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:313,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - n
    - ' date'
    - ' mktFactors'
    argTypes:
    - Size
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 320
    functionName: QuantLib::DefaultLatentModel<CP>::conditionalProbAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::vector::reserve
    - static_cast<BigNatural>
    - defaultKeys
    - names
    - conditionalDefaultProbability
    - std::pow
    - get
    - size
    - boost::dynamic_bitset::size
    - boost::dynamic_bitset::count
    - std::vector::push_back
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real DefaultLatentModel<CP>::conditionalProbAtLeastNEvents(Size n,
      \n        const Date& date,\n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:73,1
    - Dst: "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:76,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' factorWeights'
    - integralType
    argTypes:
    - std::vector<std::vector<Real> >
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: QuantLib::DefaultLatentModel::DefaultLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
    - initTraits
    linkageType: ''
    returnType: void
    signature: "void DefaultLatentModel(\n            const std::vector<std::vector<Real>
      >& factorWeights,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:83,1
    - Dst: "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' mktCorrel'
    - nVariables
    - integralType
    argTypes:
    - Handle<Quote>
    - Size
    - LatentModelIntegrationType::LatentModelIntegrationType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: QuantLib::DefaultLatentModel::DefaultLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - "LatentModel<copulaPolicy>::IntegrationFactory::\n            createLMIntegration"
    - initTraits
    linkageType: ''
    returnType: void
    signature: "void DefaultLatentModel(\n            const Handle<Quote>& mktCorrel,\n
      \           Size nVariables,\n            LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n            const initTraits& ini = initTraits()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' basket'
    argTypes:
    - ext::shared_ptr<Basket>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: QuantLib::DefaultLatentModel::resetBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 2
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetBasket(const ext::shared_ptr<Basket>& basket) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:121,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:127,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - prob
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 129
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 1
    functionsReached:
    - inverseCumulativeY
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbability(Probability prob, Size iName,\n
      \           const std::vector<Real>& mktFactors) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:133,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::DefaultLatentModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:155,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:155,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:156,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:157,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - invCumYProb
    - iName
    - ' m'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 165
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 4
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - cumulativeZ
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbabilityInvP(Real invCumYProb, \n
      \           Size iName, \n            const std::vector<Real>& m) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:182,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:184,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:184,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:185,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' date'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 188
    functionName: QuantLib::DefaultLatentModel::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DefaultLatentModel::conditionalDefaultProbability
    - names
    - get
    - pool
    - defaultKeys
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalDefaultProbability(const Date& date, Size iName,\n
      \           const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:195,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - invCumYProb1
    - invCumYProb2
    - iName1
    - iName2
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::DefaultLatentModel::condProbProduct
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    linkageType: ''
    returnType: Probability
    signature: "Probability condProbProduct(Real invCumYProb1, Real invCumYProb2,
      \n            Size iName1, Size iName2, \n            const std::vector<Real>&
      mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 205
    functionName: '& integration() const override'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:212,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:213,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:215,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:215,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:216,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:220,1
    - Dst: QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:222,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - iName
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 225
    functionName: QuantLib::DefaultLatentModel::probOfDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::DefaultLatentModel::conditionalDefaultProbabilityInvP
    - defaultKeys
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - get
    - pool
    linkageType: ''
    returnType: Probability
    signature: Probability probOfDefault(Size iName, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:238,1
    - Dst: conditionalProbAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - n
    - ' date'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 242
    functionName: QuantLib::DefaultLatentModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - conditionalProbAtLeastNEvents
    - integratedExpectedValue
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& date) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:252,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:254,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:256,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:256,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:257,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:259,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:259,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:260,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:263,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:264,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:268,1
    - Dst: condProbProduct
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:270,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - ' d'
    - iNamei
    - iNamej
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 275
    functionName: QuantLib::DefaultLatentModel<CP>::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - condProbProduct
    - defaultKeys
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - std::sqrt
    - get
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real DefaultLatentModel<CP>::defaultCorrelation(const Date& d, \n
      \       Size iNamei, Size iNamej) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:282,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:292,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:293,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:295,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:299,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:301,1
    - Dst: conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:301,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:302,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:302,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:303,1
    - Dst: static_cast<BigNatural>
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:307,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:307,1
    - Dst: boost::dynamic_bitset::count
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:311,1
    - Dst: boost::dynamic_bitset::size
      Src: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp:313,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - n
    - ' date'
    - ' mktFactors'
    argTypes:
    - Size
    - Date
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 320
    functionName: QuantLib::DefaultLatentModel<CP>::conditionalProbAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultprobabilitylatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - std::vector::reserve
    - static_cast<BigNatural>
    - defaultKeys
    - names
    - conditionalDefaultProbability
    - std::pow
    - get
    - size
    - boost::dynamic_bitset::size
    - boost::dynamic_bitset::count
    - std::vector::push_back
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real DefaultLatentModel<CP>::conditionalProbAtLeastNEvents(Size n,
      \n        const Date& date,\n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - d
    - r
    argTypes:
    - unsigned int
    - unsigned int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::simEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::lround
    linkageType: ''
    returnType: void
    signature: void simEvent(unsigned int n, unsigned int d, Real r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: operator<(const simEvent& evt) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const simEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::recovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real recovery() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: QuantLib::RandomLossLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - " \n                copula"
    argTypes:
    - ext::shared_ptr<SpotRecoveryLatentModel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: QuantLib::RandomLossLM::RandomLossLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - copula
    - size
    - numFactors
    - QuantLib::RandomLossLM::registerWith
    linkageType: ''
    returnType: void
    signature: "void RandomLossLM(\n            const ext::shared_ptr<SpotRecoveryLatentModel<copulaPolicy>
      >& \n                copula,\n            Size nSims = 0,\n            Real
      accuracy = 1.e-6, \n            BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:112,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:113,1
    - Dst: QuantLib::RandomLossLM::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:115,1
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: QuantLib::RandomLossLM::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 120
    functionName: QuantLib::RandomLossLM::initDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    - push_back
    - Period
    - names
    - QuantLib::detail::instance
    - QuantLib::RandomLossLM::basket_::defaultKeys
    - get
    - QuantLib::RandomLossLM::basket_::pool
    linkageType: ''
    returnType: void
    signature: void initDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recovery
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - defaultSimEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::RandomLossLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - recovery
    linkageType: ''
    returnType: Real
    signature: Real getEventRecovery(const defaultSimEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM::latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factorsSample'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::RandomLossLM::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::RandomLossLM::latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& factorsSample, \n            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 129
    functionName: QuantLib::RandomLossLM::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    linkageType: ''
    returnType: Size
    signature: Size basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:139,1
    - Dst: QuantLib::RandomLossLM::basket_::currentLink
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 146
    functionName: QuantLib::RandomLossLM::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    - resetBasket
    - QuantLib::RandomLossLM::basket_::currentLink
    - size
    - QuantLib::LazyObject::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM<C, URNG>::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:160,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::simsBuffer_::push_back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:161,1
    - Dst: std::vector<defaultSimEvent>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:164,1
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:174,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:176,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:180,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:180,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:181,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:185,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:185,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:186,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:205,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:206,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:206,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:208,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:209,1
    - Dst: latentRRVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:211,1
    - Dst: conditionalRecovery
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:213,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::simsBuffer_::back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:215,1
    - Dst: defaultSimEvent
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:216,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 229
    functionName: QuantLib::RandomLossLM<C, URNG>::nextSample
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - latentVarValue
    - static_cast<Integer>
    - get
    - defaultSimEvent
    - std::vector<defaultSimEvent>
    - QuantLib::RandomLossLM<C, URNG>::basket_::defaultKeys
    - referenceDate
    - names
    - size
    - QuantLib::RandomLossLM<C, URNG>::simsBuffer_::back
    - QuantLib::RandomLossLM<C, URNG>::basket_::pool
    - Period
    - latentRRVarValue
    - QuantLib::normalizePseudoRoot
    - cumulativeY
    - conditionalRecovery
    - Brent
    - QuantLib::RandomLossLM<C, URNG>::simsBuffer_::push_back
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void RandomLossLM<C, URNG>::nextSample(\n        const std::vector<Real>&
      values) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - n
    - d
    - r
    argTypes:
    - unsigned int
    - unsigned int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: QuantLib::simEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::lround
    linkageType: ''
    returnType: void
    signature: void simEvent(unsigned int n, unsigned int d, Real r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: operator<(const simEvent& evt) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const simEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::recovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real recovery() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:87,1
    - Dst: QuantLib::RandomLossLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:92,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - " \n                copula"
    argTypes:
    - ext::shared_ptr<SpotRecoveryLatentModel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: QuantLib::RandomLossLM::RandomLossLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - copula
    - size
    - numFactors
    - QuantLib::RandomLossLM::registerWith
    linkageType: ''
    returnType: void
    signature: "void RandomLossLM(\n            const ext::shared_ptr<SpotRecoveryLatentModel<copulaPolicy>
      >& \n                copula,\n            Size nSims = 0,\n            Real
      accuracy = 1.e-6, \n            BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:112,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:113,1
    - Dst: QuantLib::RandomLossLM::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:115,1
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:117,1
    - Dst: QuantLib::RandomLossLM::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 120
    functionName: QuantLib::RandomLossLM::initDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    - push_back
    - Period
    - names
    - QuantLib::detail::instance
    - QuantLib::RandomLossLM::basket_::defaultKeys
    - get
    - QuantLib::RandomLossLM::basket_::pool
    linkageType: ''
    returnType: void
    signature: void initDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recovery
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - defaultSimEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: QuantLib::RandomLossLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - recovery
    linkageType: ''
    returnType: Real
    signature: Real getEventRecovery(const defaultSimEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM::latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factorsSample'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::RandomLossLM::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::RandomLossLM::latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& factorsSample, \n            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 129
    functionName: QuantLib::RandomLossLM::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    linkageType: ''
    returnType: Size
    signature: Size basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:139,1
    - Dst: QuantLib::RandomLossLM::basket_::currentLink
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:139,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: QuantLib::RandomLossLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:141,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 146
    functionName: QuantLib::RandomLossLM::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLossLM::basket_::size
    - resetBasket
    - QuantLib::RandomLossLM::basket_::currentLink
    - size
    - QuantLib::LazyObject::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLossLM<C, URNG>::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:160,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::simsBuffer_::push_back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:161,1
    - Dst: std::vector<defaultSimEvent>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:161,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:164,1
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:174,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:176,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:180,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:180,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:181,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:185,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:185,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:186,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:205,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:206,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:206,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:208,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:209,1
    - Dst: latentRRVarValue
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:211,1
    - Dst: conditionalRecovery
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:213,1
    - Dst: QuantLib::RandomLossLM<C, URNG>::simsBuffer_::back
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:215,1
    - Dst: defaultSimEvent
      Src: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp:216,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 229
    functionName: QuantLib::RandomLossLM<C, URNG>::nextSample
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - latentVarValue
    - static_cast<Integer>
    - get
    - defaultSimEvent
    - std::vector<defaultSimEvent>
    - QuantLib::RandomLossLM<C, URNG>::basket_::defaultKeys
    - referenceDate
    - names
    - size
    - QuantLib::RandomLossLM<C, URNG>::simsBuffer_::back
    - QuantLib::RandomLossLM<C, URNG>::basket_::pool
    - Period
    - latentRRVarValue
    - QuantLib::normalizePseudoRoot
    - cumulativeY
    - conditionalRecovery
    - Brent
    - QuantLib::RandomLossLM<C, URNG>::simsBuffer_::push_back
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void RandomLossLM<C, URNG>::nextSample(\n        const std::vector<Real>&
      values) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:71,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:76,1
    - Dst: checkTrancheTenors
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:80,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: initializeTrancheTimes
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:83,1
    - Dst: checkInputs
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: updateMatrix
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:85,1
    - Dst: registerWithMarketData
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:86,1
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' tenors'
    - ' lossLevel'
    - ' correls'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Real>
    - std::vector<std::vector<Handle<Quote> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 89
    functionName: QuantLib::BaseCorrelationTermStructure::BaseCorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    - referenceDate
    - initializeTrancheTimes
    - checkInputs
    - calendar
    - rows
    - registerWithMarketData
    - push_back
    - checkTrancheTenors
    - columns
    - DayCounter
    - size
    - businessDayConvention
    - updateMatrix
    - front
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationTermStructure(\n            Natural settlementDays,\n
      \           const Calendar& cal,\n            BusinessDayConvention bdc,\n            const
      std::vector<Period>& tenors,// sorted\n            const std::vector<Real>&
      lossLevel,//sorted\n            const std::vector<std::vector<Handle<Quote>
      > >& correls,\n            const DayCounter& dc = DayCounter()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::BaseCorrelationTermStructure::correlationSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size correlationSize() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::BaseCorrelationTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BaseCorrelationTermStructure::correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:109,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossLevel
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::BaseCorrelationTermStructure::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - QuantLib::BaseCorrelationTermStructure::correlation
    linkageType: ''
    returnType: Real
    signature: Real correlation(const Date& d, Real lossLevel, bool extrapolate =
      false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolation_
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - lossLevel
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: QuantLib::BaseCorrelationTermStructure::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 1
    functionsReached:
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: "Real correlation(Time t, Real lossLevel, \n            bool extrapolate
      = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:136,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:137,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkTrancheTenors
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::checkTrancheTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:150,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:151,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 157
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkLosses
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::checkLosses() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::initializeTrancheTimes
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::initializeTrancheTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - volRows
    - volsColumns
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 176
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationTermStructure<I2D_T>::checkInputs(Size volRows,\n
      \                                              Size volsColumns) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:181,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:182,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - front
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:188,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:194,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:195,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 1
    functionsReached:
    - size
    - value
    - front
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::updateMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:71,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:72,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:73,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:76,1
    - Dst: checkTrancheTenors
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:80,1
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: businessDayConvention
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:81,1
    - Dst: initializeTrancheTimes
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:83,1
    - Dst: checkInputs
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:84,1
    - Dst: updateMatrix
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:85,1
    - Dst: registerWithMarketData
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:86,1
    - Dst: setupInterpolation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' tenors'
    - ' lossLevel'
    - ' correls'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - std::vector<Period>
    - std::vector<Real>
    - std::vector<std::vector<Handle<Quote> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 89
    functionName: QuantLib::BaseCorrelationTermStructure::BaseCorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - setupInterpolation
    - referenceDate
    - initializeTrancheTimes
    - checkInputs
    - calendar
    - rows
    - registerWithMarketData
    - push_back
    - checkTrancheTenors
    - columns
    - DayCounter
    - size
    - businessDayConvention
    - updateMatrix
    - front
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationTermStructure(\n            Natural settlementDays,\n
      \           const Calendar& cal,\n            BusinessDayConvention bdc,\n            const
      std::vector<Period>& tenors,// sorted\n            const std::vector<Real>&
      lossLevel,//sorted\n            const std::vector<std::vector<Handle<Quote>
      > >& correls,\n            const DayCounter& dc = DayCounter()\n            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::BaseCorrelationTermStructure::correlationSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size correlationSize() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 107
    functionName: QuantLib::BaseCorrelationTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BaseCorrelationTermStructure::correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:109,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossLevel
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: QuantLib::BaseCorrelationTermStructure::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::BaseCorrelationTermStructure::correlation
    linkageType: ''
    returnType: Real
    signature: Real correlation(const Date& d, Real lossLevel, bool extrapolate =
      false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interpolation_
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - lossLevel
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: QuantLib::BaseCorrelationTermStructure::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 2
    functionsReached:
    - interpolation_
    linkageType: ''
    returnType: Real
    signature: "Real correlation(Time t, Real lossLevel, \n            bool extrapolate
      = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:136,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:137,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkTrancheTenors
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::checkTrancheTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:147,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:150,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:151,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 157
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkLosses
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::checkLosses() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::initializeTrancheTimes
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::initializeTrancheTimes()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:168,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - volRows
    - volsColumns
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 176
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationTermStructure<I2D_T>::checkInputs(Size volRows,\n
      \                                              Size volsColumns) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:181,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:182,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - size
    - registerWith
    - front
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:188,1
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::TermStructure::update
    - QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:194,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:195,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: QuantLib::BaseCorrelationTermStructure<I2D_T>::updateMatrix
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationstructure.hpp
    functionUses: 2
    functionsReached:
    - size
    - value
    - front
    linkageType: ''
    returnType: void
    signature: void BaseCorrelationTermStructure<I2D_T>::updateMatrix() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& integration() const override'
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' basket'
    argTypes:
    - ext::shared_ptr<Basket>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 143
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::resetBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SpotRecoveryLatentModel<CP>::resetBasket(const ext::shared_ptr<Basket>&
      basket) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:151,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:153,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:153,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:154,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' date'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 157
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - names
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    - get
    - pool
    - defaultKeys
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbability(\n
      \       const Date& date, \n        Size iName, const std::vector<Real>& mktFactors)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:169,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:175,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - prob
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 177
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    - inverseCumulativeY
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbability(\n
      \       Probability prob, \n        Size iName, const std::vector<Real>& mktFactors)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:187,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:187,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - invCumYProb
    - iName
    - ' m'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 197
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
    - std::inner_product
    - begin
    - Real
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP(\n
      \       Real invCumYProb, \n        Size iName, \n        const std::vector<Real>&
      m) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::numFactors
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:209,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:211,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:211,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:212,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 216
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
    - defaultKeys
    - QuantLib::SpotRecoveryLatentModel<CP>::numFactors
    - names
    - get
    - size
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecovery(const Date& d, \n
      \       Size iName,\n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:222,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:223,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 226
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - inverseCumulativeY
    - QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecoveryP(\n        Real
      uncondDefP, Size iName, const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factorWeights
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:235,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:239,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:239,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:241,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:241,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:242,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:243,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:244,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:245,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:245,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:248,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - invUncondDefP
    - invUncondRR
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 253
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
    - factorWeights
    - std::inner_product
    - begin
    - Real
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR(\n        Real
      invUncondDefP, \n        Real invUncondRR, \n        Size iName, \n        const
      std::vector<Real>& mktFactors) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:259,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:263,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:263,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:264,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:265,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:267,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:270,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:271,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:272,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:273,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:276,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - latentVarSample
    - iName
    - ' d'
    argTypes:
    - Real
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 279
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - names
    - Real
    - inverseCumulativeY
    - std::sqrt
    - get
    - pool
    - cumulativeY
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalRecovery(Real latentVarSample,\n
      \       Size iName, const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' allFactors'
    - iName
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::latentRRVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::latentRRVarValue(\n        const
      std::vector<Real>& allFactors, \n        Size iName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:295,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:297,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:297,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:298,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:301,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:302,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 305
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRR
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - names
    - inverseCumulativeY
    - get
    - pool
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalExpLossRR(const Date&
      d,\n        Size iName, \n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:314,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecoveryInvPinvRR
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - invP
    - invRR
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 2
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecoveryInvPinvRR
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv(\n        Real
      invP, \n        Real invRR,\n        Size iName, \n        const std::vector<Real>&
      mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:322,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:324,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:324,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:325,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:328,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:329,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:331,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - iName
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 319
    functionDepth: 3
    functionLinenumber: 319
    functionLinenumberEnd: 335
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - get
    - pool
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expectedLoss(const Date& d, \n        Size
      iName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:348,1
    - Dst: "LatentModel<CP>::IntegrationFactory::\n        createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:349,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:352,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:354,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:364,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:365,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:371,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - modelA
    - integralType
    - ' ini'
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - Real
    - LatentModelIntegrationType::LatentModelIntegrationType
    - typename CP::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 374
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::SpotRecoveryLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - "LatentModel<CP>::IntegrationFactory::\n        createLMIntegration"
    - push_back
    - Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SpotRecoveryLatentModel<CP>::SpotRecoveryLatentModel(\n        const
      std::vector<std::vector<Real> >& factorWeights,\n        const std::vector<Real>&
      recoveries,\n        Real modelA,\n        LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n        const typename CP::initTraits& ini\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& integration() const override'
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:141,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' basket'
    argTypes:
    - ext::shared_ptr<Basket>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 143
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::resetBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SpotRecoveryLatentModel<CP>::resetBasket(const ext::shared_ptr<Basket>&
      basket) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:151,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:153,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:153,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:154,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' date'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 157
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - names
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    - get
    - pool
    - defaultKeys
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbability(\n
      \       const Date& date, \n        Size iName, const std::vector<Real>& mktFactors)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:169,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:175,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - prob
    - iName
    - ' mktFactors'
    argTypes:
    - Probability
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 160
    functionDepth: 2
    functionLinenumber: 160
    functionLinenumberEnd: 177
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    - inverseCumulativeY
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbability(\n
      \       Probability prob, \n        Size iName, const std::vector<Real>& mktFactors)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:187,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:187,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:188,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:189,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - invCumYProb
    - iName
    - ' m'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 197
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
    - std::inner_product
    - begin
    - Real
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP(\n
      \       Real invCumYProb, \n        Size iName, \n        const std::vector<Real>&
      m) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::numFactors
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:206,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:209,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:211,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:211,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:212,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 216
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
    - defaultKeys
    - QuantLib::SpotRecoveryLatentModel<CP>::numFactors
    - names
    - get
    - size
    - pool
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecovery(const Date& d, \n
      \       Size iName,\n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:222,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:223,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uncondDefP
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 226
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryP
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - inverseCumulativeY
    - QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecoveryP(\n        Real
      uncondDefP, Size iName, const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: factorWeights
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:235,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:238,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:239,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:239,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:241,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:241,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:242,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:243,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:244,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:245,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:245,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:248,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - invUncondDefP
    - invUncondRR
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 253
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::cumulativeZ
    - factorWeights
    - std::inner_product
    - begin
    - Real
    - std::sqrt
    - end
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expCondRecoveryInvPinvRR(\n        Real
      invUncondDefP, \n        Real invUncondRR, \n        Size iName, \n        const
      std::vector<Real>& mktFactors) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:259,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:263,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:263,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:264,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:265,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:267,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:270,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:271,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:272,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:273,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:276,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - latentVarSample
    - iName
    - ' d'
    argTypes:
    - Real
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 279
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - names
    - Real
    - inverseCumulativeY
    - std::sqrt
    - get
    - pool
    - cumulativeY
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalRecovery(Real latentVarSample,\n
      \       Size iName, const Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' allFactors'
    - iName
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::latentRRVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::latentRRVarValue(\n        const
      std::vector<Real>& allFactors, \n        Size iName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:295,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:297,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:297,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:298,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:301,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:302,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' mktFactors'
    argTypes:
    - Date
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 291
    functionDepth: 3
    functionLinenumber: 291
    functionLinenumberEnd: 305
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRR
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - names
    - inverseCumulativeY
    - get
    - pool
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalExpLossRR(const Date&
      d,\n        Size iName, \n        const std::vector<Real>& mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:314,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecoveryInvPinvRR
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - invP
    - invRR
    - iName
    - ' mktFactors'
    argTypes:
    - Real
    - Real
    - Size
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 2
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalDefaultProbabilityInvP
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalRecoveryInvPinvRR
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv(\n        Real
      invP, \n        Real invRR,\n        Size iName, \n        const std::vector<Real>&
      mktFactors) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:322,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:324,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:324,1
    - Dst: defaultKeys
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:325,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:328,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:329,1
    - Dst: integratedExpectedValue
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:331,1
    - Dst: QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' d'
    - iName
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 319
    functionDepth: 3
    functionLinenumber: 319
    functionLinenumberEnd: 335
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::expectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - names
    - integratedExpectedValue
    - inverseCumulativeY
    - get
    - pool
    - QuantLib::SpotRecoveryLatentModel<CP>::conditionalExpLossRRInv
    - defaultKeys
    linkageType: ''
    returnType: Real
    signature: "Real SpotRecoveryLatentModel<CP>::expectedLoss(const Date& d, \n        Size
      iName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:348,1
    - Dst: "LatentModel<CP>::IntegrationFactory::\n        createLMIntegration"
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:349,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:350,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:352,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:352,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:354,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:354,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:364,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:365,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp:371,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ' factorWeights'
    - ' recoveries'
    - modelA
    - integralType
    - ' ini'
    argTypes:
    - std::vector<std::vector<Real> >
    - std::vector<Real>
    - Real
    - LatentModelIntegrationType::LatentModelIntegrationType
    - typename CP::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 374
    functionName: QuantLib::SpotRecoveryLatentModel<CP>::SpotRecoveryLatentModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/spotlosslatentmodel.hpp
    functionUses: 0
    functionsReached:
    - "LatentModel<CP>::IntegrationFactory::\n        createLMIntegration"
    - push_back
    - Real
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SpotRecoveryLatentModel<CP>::SpotRecoveryLatentModel(\n        const
      std::vector<std::vector<Real> >& factorWeights,\n        const std::vector<Real>&
      recoveries,\n        Real modelA,\n        LatentModelIntegrationType::LatentModelIntegrationType
      integralType,\n        const typename CP::initTraits& ini\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - discountCurve
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::MidPointCDOEngine::MidPointCDOEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/midpointcdoengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MidPointCDOEngine(Handle<YieldTermStructure> discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.hpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - discountCurve
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: QuantLib::MidPointCDOEngine::MidPointCDOEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/midpointcdoengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void MidPointCDOEngine(Handle<YieldTermStructure> discountCurve)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - discountCurve
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::IntegralCDOEngine::IntegralCDOEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralcdoengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralCDOEngine(Handle<YieldTermStructure> discountCurve,\n
      \                                Period stepSize = 3 * Months)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/integralcdoengine.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - discountCurve
    argTypes:
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::IntegralCDOEngine::IntegralCDOEngine
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralcdoengine.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IntegralCDOEngine(Handle<YieldTermStructure> discountCurve,\n
      \                                Period stepSize = 3 * Months)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::isRestructuring
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::DefaultEvent::isRestructuring
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultEvent::isRestructuring
    linkageType: ''
    returnType: bool
    signature: bool isRestructuring() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::isRestructuring
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::DefaultEvent::isDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultEvent::isRestructuring
    linkageType: ''
    returnType: bool
    signature: bool isDefault() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:117,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::DefaultEvent::hasSettled
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached:
    - Date
    - QuantLib::DefaultEvent::date
    linkageType: ''
    returnType: bool
    signature: bool hasSettled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: '& settlement() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DefaultSettlement
    signature: DefaultSettlement & settlement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: '& defaultType() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DefaultType
    signature: DefaultType & defaultType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::DefaultEvent::eventSeniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority eventSeniority() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::hasSettled
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:138,1
    - Dst: QuantLib::DefaultEvent::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - seniority
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 142
    functionName: QuantLib::DefaultEvent::recoveryRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DefaultEvent::hasSettled
    - Null<Real>
    - QuantLib::DefaultEvent::recoveryRate
    linkageType: ''
    returnType: Real
    signature: Real recoveryRate(Seniority seniority) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: containsRestructuringType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:155,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:156,1
    - Dst: containsDefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:157,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' contractEvType'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 159
    functionName: QuantLib::DefaultEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 2
    functionsReached:
    - containsRestructuringType
    - restructuringType
    - containsDefaultType
    - defaultType
    linkageType: ''
    returnType: bool
    signature: "bool matchesEventType(\n                 const ext::shared_ptr<DefaultType>&
      contractEvType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: operator!=(const DefaultEvent& lhs, const DefaultEvent& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const DefaultEvent& lhs, const DefaultEvent& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:192,1
    - Dst: QuantLib::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' e1'
    - ' e2'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 3
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: "operator()(const DefaultEvent& e1,\n                        const
      DefaultEvent& e2) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DefaultEvent& e1,\n                        const
      DefaultEvent& e2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: QuantLib::FailureToPayEvent::amountDefaulted
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amountDefaulted() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: QuantLib::BankruptcyEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool matchesEventType(const ext::shared_ptr<DefaultType>&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::isRestructuring
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::DefaultEvent::isRestructuring
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::DefaultEvent::isRestructuring
    linkageType: ''
    returnType: bool
    signature: bool isRestructuring() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::isRestructuring
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::DefaultEvent::isDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::DefaultEvent::isRestructuring
    linkageType: ''
    returnType: bool
    signature: bool isDefault() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:117,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: QuantLib::DefaultEvent::hasSettled
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 1
    functionsReached:
    - Date
    - QuantLib::DefaultEvent::date
    linkageType: ''
    returnType: bool
    signature: bool hasSettled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: '& settlement() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DefaultSettlement
    signature: DefaultSettlement & settlement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: '& defaultType() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DefaultType
    signature: DefaultType & defaultType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: '& currency() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Currency
    signature: Currency & currency() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::DefaultEvent::eventSeniority
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Seniority
    signature: Seniority eventSeniority() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DefaultEvent::hasSettled
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:138,1
    - Dst: QuantLib::DefaultEvent::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - seniority
    argTypes:
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 142
    functionName: QuantLib::DefaultEvent::recoveryRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DefaultEvent::hasSettled
    - Null<Real>
    - QuantLib::DefaultEvent::recoveryRate
    linkageType: ''
    returnType: Real
    signature: Real recoveryRate(Seniority seniority) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: containsRestructuringType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:155,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:156,1
    - Dst: containsDefaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:157,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' contractEvType'
    argTypes:
    - ext::shared_ptr<DefaultType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 159
    functionName: QuantLib::DefaultEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 2
    functionsReached:
    - containsRestructuringType
    - restructuringType
    - containsDefaultType
    - defaultType
    linkageType: ''
    returnType: bool
    signature: "bool matchesEventType(\n                 const ext::shared_ptr<DefaultType>&
      contractEvType) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: operator!=(const DefaultEvent& lhs, const DefaultEvent& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const DefaultEvent& lhs, const DefaultEvent& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:192,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/defaultevent.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' e1'
    - ' e2'
    argTypes:
    - DefaultEvent
    - DefaultEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: "operator()(const DefaultEvent& e1,\n                        const
      DefaultEvent& e2) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached:
    - date
    linkageType: ''
    returnType: bool
    signature: "bool operator()(const DefaultEvent& e1,\n                        const
      DefaultEvent& e2) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 215
    functionName: QuantLib::FailureToPayEvent::amountDefaulted
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real amountDefaulted() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: QuantLib::BankruptcyEvent::matchesEventType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultevent.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool matchesEventType(const ext::shared_ptr<DefaultType>&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:45,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:47,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: Schedule::startDate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:56,1
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:57,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 8
    argNames:
    - ' basket'
    - side
    - schedule
    - upfrontRate
    - runningRate
    - ' dayCounter'
    - paymentConvention
    - notional
    argTypes:
    - ext::shared_ptr<Basket>
    - Protection::Side
    - Schedule
    - Rate
    - Rate
    - DayCounter
    - BusinessDayConvention
    - ext::optional<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 85
    functionName: QuantLib::SyntheticCDO::SyntheticCDO
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - refDate
    - std::move
    - names
    - Real
    - Schedule::startDate
    - registerWith
    - FixedRateLeg
    - pool
    - trancheNotional
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SyntheticCDO::SyntheticCDO(const ext::shared_ptr<Basket>& basket,\n
      \                              Protection::Side side,\n                               Schedule
      schedule,\n                               Rate upfrontRate,\n                               Rate
      runningRate,\n                               const DayCounter& dayCounter,\n
      \                              BusinessDayConvention paymentConvention,\n                               ext::optional<Real>
      notional)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::SyntheticCDO::premiumValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::premiumValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::SyntheticCDO::protectionValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::protectionValue () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::SyntheticCDO::premiumLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::premiumLegNPV() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: QuantLib::SyntheticCDO::protectionLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::protectionLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::SyntheticCDO::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::fairPremium () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::SyntheticCDO::fairUpfrontPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::fairUpfrontPremium () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::SyntheticCDO::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> SyntheticCDO::expectedTrancheLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::SyntheticCDO::error
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Size
    signature: Size SyntheticCDO::error () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:134,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: QuantLib::SyntheticCDO::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool SyntheticCDO::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::SyntheticCDO::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::remainingNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<SyntheticCDO::arguments*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: QuantLib::SyntheticCDO::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<SyntheticCDO::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:158,1
    - Dst: dynamic_cast<const SyntheticCDO::results*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 169
    functionName: QuantLib::SyntheticCDO::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const SyntheticCDO::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:172,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 178
    functionName: QuantLib::SyntheticCDO::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - clear
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:181,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:181,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:182,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:183,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:185,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 186
    functionName: SyntheticCDO::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Protection::Side
    - Null<Real>
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:191,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:192,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:193,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: SyntheticCDO::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - clear
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - SyntheticCDO::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      SyntheticCDO::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:214,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - SyntheticCDO::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      SyntheticCDO::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:214,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:234,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:237,1
    - Dst: GaussianLHPLossModel::GaussianLHPLossModel
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:236,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:240,1
    - Dst: QuantLib::SyntheticCDO::setupArguments
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:243,1
    - Dst: MidPointCDOEngine::getArguments
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:243,1
    - Dst: dynamic_cast<const SyntheticCDO::results*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:244,1
    - Dst: MidPointCDOEngine::getResults
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:244,1
    - Dst: recalculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:247,1
    - Dst: freeze
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:248,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:255,1
    - Dst: unfreeze
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ' recoveries'
    - ' discountCurve'
    - targetNPV
    - accuracy
    argTypes:
    - std::vector<Real>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 258
    functionName: QuantLib::SyntheticCDO::implicitCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SyntheticCDO::setupArguments
    - Brent
    - MidPointCDOEngine::getArguments
    - unfreeze
    - setLossModel
    - SimpleQuote::SimpleQuote
    - GaussianLHPLossModel::GaussianLHPLossModel
    - MidPointCDOEngine::getResults
    - freeze
    - dynamic_cast<const SyntheticCDO::results*>
    - Handle<Quote>
    - recalculate
    linkageType: ''
    returnType: Real
    signature: "Real SyntheticCDO::implicitCorrelation(const std::vector<Real>& recoveries,\n
      \       const Handle<YieldTermStructure>& discountCurve,\n        Real targetNPV,\n
      \       Real accuracy) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:45,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:47,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:47,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: Schedule::startDate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:49,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:56,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:56,1
    - Dst: trancheNotional
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:57,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:65,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:77,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 8
    argNames:
    - ' basket'
    - side
    - schedule
    - upfrontRate
    - runningRate
    - ' dayCounter'
    - paymentConvention
    - notional
    argTypes:
    - ext::shared_ptr<Basket>
    - Protection::Side
    - Schedule
    - Rate
    - Rate
    - DayCounter
    - BusinessDayConvention
    - ext::optional<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 85
    functionName: QuantLib::SyntheticCDO::SyntheticCDO
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - refDate
    - std::move
    - names
    - Real
    - Schedule::startDate
    - registerWith
    - FixedRateLeg
    - pool
    - trancheNotional
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SyntheticCDO::SyntheticCDO(const ext::shared_ptr<Basket>& basket,\n
      \                              Protection::Side side,\n                               Schedule
      schedule,\n                               Rate upfrontRate,\n                               Rate
      runningRate,\n                               const DayCounter& dayCounter,\n
      \                              BusinessDayConvention paymentConvention,\n                               ext::optional<Real>
      notional)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: QuantLib::SyntheticCDO::premiumValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::premiumValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: QuantLib::SyntheticCDO::protectionValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::protectionValue () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: QuantLib::SyntheticCDO::premiumLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::premiumLegNPV() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: QuantLib::SyntheticCDO::protectionLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::protectionLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::SyntheticCDO::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::fairPremium () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: QuantLib::SyntheticCDO::fairUpfrontPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate SyntheticCDO::fairUpfrontPremium () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::SyntheticCDO::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> SyntheticCDO::expectedTrancheLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: QuantLib::SyntheticCDO::error
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Size
    signature: Size SyntheticCDO::error () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:134,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: QuantLib::SyntheticCDO::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool SyntheticCDO::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::SyntheticCDO::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SyntheticCDO::remainingNotional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<SyntheticCDO::arguments*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: QuantLib::SyntheticCDO::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<SyntheticCDO::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:158,1
    - Dst: dynamic_cast<const SyntheticCDO::results*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:160,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 169
    functionName: QuantLib::SyntheticCDO::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const SyntheticCDO::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:172,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 178
    functionName: QuantLib::SyntheticCDO::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    - clear
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:181,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:181,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:182,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:183,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:183,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:184,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:185,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 186
    functionName: SyntheticCDO::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - Protection::Side
    - Null<Real>
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:189,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:190,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:191,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:192,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:193,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: SyntheticCDO::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - clear
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void SyntheticCDO::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - SyntheticCDO::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      SyntheticCDO::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:214,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - target
    - ' quote'
    - ' engine'
    - results
    argTypes:
    - Real
    - SimpleQuote
    - PricingEngine
    - SyntheticCDO::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: QuantLib::ObjectiveFunction::ObjectiveFunction
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ObjectiveFunction(Real target,\n                              SimpleQuote&
      quote,\n                              PricingEngine& engine,\n                              const
      SyntheticCDO::results* results)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:214,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - guess
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: operator()(Real guess) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real guess) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:234,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:237,1
    - Dst: GaussianLHPLossModel::GaussianLHPLossModel
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:236,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:240,1
    - Dst: QuantLib::SyntheticCDO::setupArguments
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:243,1
    - Dst: MidPointCDOEngine::getArguments
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:243,1
    - Dst: dynamic_cast<const SyntheticCDO::results*>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:244,1
    - Dst: MidPointCDOEngine::getResults
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:244,1
    - Dst: recalculate
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:247,1
    - Dst: freeze
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:248,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:255,1
    - Dst: unfreeze
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ' recoveries'
    - ' discountCurve'
    - targetNPV
    - accuracy
    argTypes:
    - std::vector<Real>
    - Handle<YieldTermStructure>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 258
    functionName: QuantLib::SyntheticCDO::implicitCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::SyntheticCDO::setupArguments
    - Brent
    - MidPointCDOEngine::getArguments
    - unfreeze
    - setLossModel
    - SimpleQuote::SimpleQuote
    - GaussianLHPLossModel::GaussianLHPLossModel
    - MidPointCDOEngine::getResults
    - freeze
    - dynamic_cast<const SyntheticCDO::results*>
    - Handle<Quote>
    - recalculate
    linkageType: ''
    returnType: Real
    signature: "Real SyntheticCDO::implicitCorrelation(const std::vector<Real>& recoveries,\n
      \       const Handle<YieldTermStructure>& discountCurve,\n        Real targetNPV,\n
      \       Real accuracy) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:30,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::LossDist::binomialProbabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - binomial
    linkageType: ''
    returnType: Real
    signature: Real LossDist::binomialProbabilityOfNEvents(int n, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:37,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - binomial
    linkageType: ''
    returnType: Real
    signature: Real LossDist::binomialProbabilityOfAtLeastNEvents(int n, vector<Real>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 64
    functionName: QuantLib::LossDist::probabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> LossDist::probabilityOfNEvents(vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 109
    functionName: QuantLib::LossDist::probabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real LossDist::probabilityOfNEvents(int k, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - k
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 125
    functionName: QuantLib::LossDist::probabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real LossDist::probabilityOfAtLeastNEvents (int k, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: ProbabilityOfNEvents::operator()(vector<Real> p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real ProbabilityOfNEvents::operator()(vector<Real> p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: ProbabilityOfAtLeastNEvents::operator()(vector<Real> p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::probabilityOfAtLeastNEvents
    linkageType: ''
    returnType: Real
    signature: Real ProbabilityOfAtLeastNEvents::operator()(vector<Real> p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BinomialProbabilityOfAtLeastNEvents::operator()(vector<Real> p)
      const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
    linkageType: ''
    returnType: Real
    signature: Real BinomialProbabilityOfAtLeastNEvents::operator()(vector<Real> p)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:150,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:151,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:156,1
    - Dst: Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:157,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:158,1
    - Dst: Distribution::dx
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:158,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:159,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:163,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:164,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - n
    - volume
    - probability
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 172
    functionName: "LossDistBinomial::operator()(Size n, Real volume,\n                                              Real
      probability) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - binomial
    - Distribution::normalize
    - Distribution::addAverage
    - resize
    - Distribution::addDensity
    - Distribution::dx
    - clear
    - Distribution::locate
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBinomial::operator()(Size n, Real volume,\n                                              Real
      probability) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionName: "LossDistBinomial::operator()(const vector<Real>& nominals,\n                                    const
      vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - operator
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBinomial::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:186,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:187,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:188,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:199,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:200,1
    - Dst: Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:208,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:209,1
    - Dst: Distribution::dx
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:209,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:210,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - volume
    - ' p'
    argTypes:
    - Real
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 217
    functionName: "LossDistHomogeneous::operator()(Real volume,\n                                                 const
      vector<Real>& p) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - Distribution::normalize
    - Distribution::addAverage
    - resize
    - Distribution::addDensity
    - Distribution::dx
    - size
    - clear
    - Distribution::locate
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistHomogeneous::operator()(Real volume,\n                                                 const
      vector<Real>& p) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: "LossDistHomogeneous::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - operator
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistHomogeneous::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:243,1
    - Dst: vector::size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:246,1
    - Dst: locateTargetBucket
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:249,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:250,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:277,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:284,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:285,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 289
    functionName: "LossDistBucketing::operator()(const vector<Real>& nominals,\n                                    const
      vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - Distribution::addAverage
    - Distribution::addDensity
    - locateTargetBucket
    - size
    - vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBucketing::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - loss
    - i0
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 299
    functionName: QuantLib::LossDistBucketing::locateTargetBucket
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: int
    signature: int LossDistBucketing::locateTargetBucket (Real loss, Size i0) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:311,1
    - Dst: MersenneTwisterUniformRng::next
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:312,1
    - Dst: Distribution::add
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:316,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 322
    functionName: "LossDistMonteCarlo::operator()(const vector<Real>& nominals,\n
      \                                  const vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - Distribution::add
    - MersenneTwisterUniformRng::next
    - Distribution::normalize
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistMonteCarlo::operator()(const vector<Real>& nominals,\n
      \                                  const vector<Real>& probabilities) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:30,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::LossDist::binomialProbabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - binomial
    linkageType: ''
    returnType: Real
    signature: Real LossDist::binomialProbabilityOfNEvents(int n, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:37,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 1
    functionsReached:
    - size
    - binomial
    linkageType: ''
    returnType: Real
    signature: Real LossDist::binomialProbabilityOfAtLeastNEvents(int n, vector<Real>&
      p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 64
    functionName: QuantLib::LossDist::probabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 3
    functionsReached:
    - size
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> LossDist::probabilityOfNEvents(vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - k
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 109
    functionName: QuantLib::LossDist::probabilityOfNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real LossDist::probabilityOfNEvents(int k, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - k
    - ' p'
    argTypes:
    - int
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 125
    functionName: QuantLib::LossDist::probabilityOfAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real LossDist::probabilityOfAtLeastNEvents (int k, vector<Real>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: ProbabilityOfNEvents::operator()(vector<Real> p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::probabilityOfNEvents
    linkageType: ''
    returnType: Real
    signature: Real ProbabilityOfNEvents::operator()(vector<Real> p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::probabilityOfAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: ProbabilityOfAtLeastNEvents::operator()(vector<Real> p) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::probabilityOfAtLeastNEvents
    linkageType: ''
    returnType: Real
    signature: Real ProbabilityOfAtLeastNEvents::operator()(vector<Real> p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BinomialProbabilityOfAtLeastNEvents::operator()(vector<Real> p)
      const
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::LossDist::binomialProbabilityOfAtLeastNEvents
    linkageType: ''
    returnType: Real
    signature: Real BinomialProbabilityOfAtLeastNEvents::operator()(vector<Real> p)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:150,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:151,1
    - Dst: binomial
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:156,1
    - Dst: Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:157,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:158,1
    - Dst: Distribution::dx
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:158,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:159,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:163,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:164,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - n
    - volume
    - probability
    argTypes:
    - Size
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 172
    functionName: "LossDistBinomial::operator()(Size n, Real volume,\n                                              Real
      probability) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - binomial
    - Distribution::normalize
    - Distribution::addAverage
    - resize
    - Distribution::addDensity
    - Distribution::dx
    - clear
    - Distribution::locate
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBinomial::operator()(Size n, Real volume,\n                                              Real
      probability) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:178,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionName: "LossDistBinomial::operator()(const vector<Real>& nominals,\n                                    const
      vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - operator
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBinomial::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:186,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:187,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:188,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:199,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:200,1
    - Dst: Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:208,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:209,1
    - Dst: Distribution::dx
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:209,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:210,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - volume
    - ' p'
    argTypes:
    - Real
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 217
    functionName: "LossDistHomogeneous::operator()(Real volume,\n                                                 const
      vector<Real>& p) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - Distribution::normalize
    - Distribution::addAverage
    - resize
    - Distribution::addDensity
    - Distribution::dx
    - size
    - clear
    - Distribution::locate
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistHomogeneous::operator()(Real volume,\n                                                 const
      vector<Real>& p) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: operator
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: "LossDistHomogeneous::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - operator
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistHomogeneous::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:230,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:231,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:243,1
    - Dst: vector::size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:246,1
    - Dst: locateTargetBucket
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:248,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:249,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:250,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:277,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:284,1
    - Dst: Distribution::addAverage
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:285,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 289
    functionName: "LossDistBucketing::operator()(const vector<Real>& nominals,\n                                    const
      vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - Distribution::addAverage
    - Distribution::addDensity
    - locateTargetBucket
    - size
    - vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistBucketing::operator()(const vector<Real>& nominals,\n
      \                                   const vector<Real>& probabilities) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - loss
    - i0
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 299
    functionName: QuantLib::LossDistBucketing::locateTargetBucket
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: int
    signature: int LossDistBucketing::locateTargetBucket (Real loss, Size i0) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:311,1
    - Dst: MersenneTwisterUniformRng::next
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:312,1
    - Dst: Distribution::add
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:316,1
    - Dst: Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/lossdistribution.cpp:319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' nominals'
    - ' probabilities'
    argTypes:
    - vector<Real>
    - vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 322
    functionName: "LossDistMonteCarlo::operator()(const vector<Real>& nominals,\n
      \                                  const vector<Real>& probabilities) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/lossdistribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - Distribution::add
    - MersenneTwisterUniformRng::next
    - Distribution::normalize
    linkageType: ''
    returnType: Distribution
    signature: "Distribution LossDistMonteCarlo::operator()(const vector<Real>& nominals,\n
      \                                  const vector<Real>& probabilities) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - fixedPayer
    - nominal
    - fixedSchedule
    - floatSchedule
    - fixedDayCounter
    - floatDayCounter
    - spread
    - recoveryRate
    - yieldTS
    - defaultTS
    - coupon
    argTypes:
    - bool
    - Real
    - Schedule
    - Schedule
    - DayCounter
    - DayCounter
    - Rate
    - Rate
    - Handle<YieldTermStructure>
    - Handle<DefaultProbabilityTermStructure>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 45
    functionName: QuantLib::RiskyAssetSwap::RiskyAssetSwap
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyAssetSwap::RiskyAssetSwap(bool fixedPayer,\n                                   Real
      nominal,\n                                   Schedule fixedSchedule,\n                                   Schedule
      floatSchedule,\n                                   DayCounter fixedDayCounter,\n
      \                                  DayCounter floatDayCounter,\n                                   Rate
      spread,\n                                   Rate recoveryRate,\n                                   Handle<YieldTermStructure>
      yieldTS,\n                                   Handle<DefaultProbabilityTermStructure>
      defaultTS,\n                                   Rate coupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:48,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:48,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::RiskyAssetSwap::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool RiskyAssetSwap::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::RiskyAssetSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwap::setupExpired() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RiskyAssetSwap::floatAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:60,1
    - Dst: QuantLib::RiskyAssetSwap::fixedAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:61,1
    - Dst: QuantLib::RiskyAssetSwap::parCoupon
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:62,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:64,1
    - Dst: QuantLib::RiskyAssetSwap::recoveryValue
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:66,1
    - Dst: QuantLib::RiskyAssetSwap::riskyBondPrice
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:71,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:71,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:72,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: QuantLib::RiskyAssetSwap::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RiskyAssetSwap::fixedAnnuity
    - Null<Rate>
    - QuantLib::RiskyAssetSwap::recoveryValue
    - dates
    - QuantLib::RiskyAssetSwap::floatAnnuity
    - discount
    - QuantLib::RiskyAssetSwap::parCoupon
    - QuantLib::RiskyAssetSwap::riskyBondPrice
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwap::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:84,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:85,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: QuantLib::RiskyAssetSwap::floatAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 1
    functionsReached:
    - size
    - discount
    - yearFraction
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::floatAnnuity () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:95,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionName: QuantLib::RiskyAssetSwap::fixedAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 1
    functionsReached:
    - size
    - discount
    - yearFraction
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::fixedAnnuity () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:105,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:105,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:106,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::RiskyAssetSwap::parCoupon
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 1
    functionsReached:
    - discount
    - dates
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::parCoupon () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:114,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:117,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:123,1
    - Dst: defaultDensity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:125,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::RiskyAssetSwap::recoveryValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 1
    functionsReached:
    - referenceDate
    - dayCounter
    - defaultDensity
    - discount
    - size
    - NullCalendar
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::recoveryValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:143,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:144,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:146,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:147,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:151,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:151,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:152,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 156
    functionName: QuantLib::RiskyAssetSwap::riskyBondPrice
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 1
    functionsReached:
    - yearFraction
    - survivalProbability
    - dates
    - discount
    - size
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::riskyBondPrice () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:163,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:164,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:166,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:167,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:171,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:171,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:172,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:172,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 178
    functionName: QuantLib::RiskyAssetSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - calculate
    - yearFraction
    - dates
    - discount
    - size
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::fairSpread ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:195,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:196,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:197,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:200,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:202,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:202,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - ' spread'
    - ' tenor'
    - settlementDays
    - calendar
    - ' fixedPeriod'
    - fixedConvention
    - fixedDayCount
    - ' floatPeriod'
    - floatConvention
    - floatDayCount
    - recoveryRate
    - ' yieldTS'
    - ' integrationStepSize'
    argTypes:
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - Period
    - BusinessDayConvention
    - DayCounter
    - Real
    - RelinkableHandle<YieldTermStructure>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 204
    functionName: QuantLib::AssetSwapHelper::AssetSwapHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - registerWith
    - std::move
    - QuantLib::AssetSwapHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void AssetSwapHelper::AssetSwapHelper(const Handle<Quote>& spread,\n
      \                                    const Period& tenor,\n                                     Natural
      settlementDays,\n                                     Calendar calendar,\n                                     const
      Period& fixedPeriod,\n                                     BusinessDayConvention
      fixedConvention,\n                                     DayCounter fixedDayCount,\n
      \                                    const Period& floatPeriod,\n                                     BusinessDayConvention
      floatConvention,\n                                     DayCounter floatDayCount,\n
      \                                    Real recoveryRate,\n                                     const
      RelinkableHandle<YieldTermStructure>& yieldTS,\n                                     const
      Period& integrationStepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:207,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:207,1
    - Dst: recalculate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:210,1
    - Dst: fairSpread
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 212
    functionName: QuantLib::AssetSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    - recalculate
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwapHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:216,1
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:218,1
    - Dst: ext::shared_ptr<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:219,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:219,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ts
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: QuantLib::AssetSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - ext::shared_ptr<DefaultProbabilityTermStructure>
    - linkTo
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - QuantLib::AssetSwapHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void AssetSwapHelper::setTermStructure(\n                                        DefaultProbabilityTermStructure*
      ts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:226,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:227,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionName: QuantLib::AssetSwapHelper::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::AssetSwapHelper::initializeDates
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void AssetSwapHelper::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:233,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:235,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:240,1
    - Dst: ext::make_shared<RiskyAssetSwap>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 261
    functionName: QuantLib::AssetSwapHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 3
    functionsReached:
    - adjust
    - advance
    - QuantLib::detail::instance
    - ext::make_shared<RiskyAssetSwap>
    linkageType: ''
    returnType: void
    signature: void AssetSwapHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:38,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:41,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:41,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:43,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 11
    argNames:
    - fixedPayer
    - nominal
    - fixedSchedule
    - floatSchedule
    - fixedDayCounter
    - floatDayCounter
    - spread
    - recoveryRate
    - yieldTS
    - defaultTS
    - coupon
    argTypes:
    - bool
    - Real
    - Schedule
    - Schedule
    - DayCounter
    - DayCounter
    - Rate
    - Rate
    - Handle<YieldTermStructure>
    - Handle<DefaultProbabilityTermStructure>
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 45
    functionName: QuantLib::RiskyAssetSwap::RiskyAssetSwap
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void RiskyAssetSwap::RiskyAssetSwap(bool fixedPayer,\n                                   Real
      nominal,\n                                   Schedule fixedSchedule,\n                                   Schedule
      floatSchedule,\n                                   DayCounter fixedDayCounter,\n
      \                                  DayCounter floatDayCounter,\n                                   Rate
      spread,\n                                   Rate recoveryRate,\n                                   Handle<YieldTermStructure>
      yieldTS,\n                                   Handle<DefaultProbabilityTermStructure>
      defaultTS,\n                                   Rate coupon)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:48,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:48,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::RiskyAssetSwap::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool RiskyAssetSwap::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: QuantLib::RiskyAssetSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwap::setupExpired() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RiskyAssetSwap::floatAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:60,1
    - Dst: QuantLib::RiskyAssetSwap::fixedAnnuity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:61,1
    - Dst: QuantLib::RiskyAssetSwap::parCoupon
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:62,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:64,1
    - Dst: QuantLib::RiskyAssetSwap::recoveryValue
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:66,1
    - Dst: QuantLib::RiskyAssetSwap::riskyBondPrice
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:67,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:71,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:71,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:72,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: QuantLib::RiskyAssetSwap::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RiskyAssetSwap::fixedAnnuity
    - Null<Rate>
    - QuantLib::RiskyAssetSwap::recoveryValue
    - dates
    - QuantLib::RiskyAssetSwap::floatAnnuity
    - discount
    - QuantLib::RiskyAssetSwap::parCoupon
    - QuantLib::RiskyAssetSwap::riskyBondPrice
    linkageType: ''
    returnType: void
    signature: void RiskyAssetSwap::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:84,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:85,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: QuantLib::RiskyAssetSwap::floatAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 2
    functionsReached:
    - size
    - discount
    - yearFraction
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::floatAnnuity () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:95,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:96,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionName: QuantLib::RiskyAssetSwap::fixedAnnuity
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 2
    functionsReached:
    - size
    - discount
    - yearFraction
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::fixedAnnuity () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:105,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:105,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:106,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: QuantLib::RiskyAssetSwap::parCoupon
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 2
    functionsReached:
    - discount
    - dates
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::parCoupon () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:114,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:117,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:120,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:123,1
    - Dst: defaultDensity
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:124,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:125,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: QuantLib::RiskyAssetSwap::recoveryValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 2
    functionsReached:
    - referenceDate
    - dayCounter
    - defaultDensity
    - discount
    - size
    - NullCalendar
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::recoveryValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:143,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:144,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:146,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:147,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:151,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:151,1
    - Dst: survivalProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:152,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 156
    functionName: QuantLib::RiskyAssetSwap::riskyBondPrice
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 2
    functionsReached:
    - yearFraction
    - survivalProbability
    - dates
    - discount
    - size
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::riskyBondPrice () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:160,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:163,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:164,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:166,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:167,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:171,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:171,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:172,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:172,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 178
    functionName: QuantLib::RiskyAssetSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - defaultProbability
    - calculate
    - yearFraction
    - dates
    - discount
    - size
    linkageType: ''
    returnType: Real
    signature: Real RiskyAssetSwap::fairSpread ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:195,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:196,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:197,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:200,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:202,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:202,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 13
    argNames:
    - ' spread'
    - ' tenor'
    - settlementDays
    - calendar
    - ' fixedPeriod'
    - fixedConvention
    - fixedDayCount
    - ' floatPeriod'
    - floatConvention
    - floatDayCount
    - recoveryRate
    - ' yieldTS'
    - ' integrationStepSize'
    argTypes:
    - Handle<Quote>
    - Period
    - Natural
    - Calendar
    - Period
    - BusinessDayConvention
    - DayCounter
    - Period
    - BusinessDayConvention
    - DayCounter
    - Real
    - RelinkableHandle<YieldTermStructure>
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 204
    functionName: QuantLib::AssetSwapHelper::AssetSwapHelper
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - registerWith
    - std::move
    - QuantLib::AssetSwapHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void AssetSwapHelper::AssetSwapHelper(const Handle<Quote>& spread,\n
      \                                    const Period& tenor,\n                                     Natural
      settlementDays,\n                                     Calendar calendar,\n                                     const
      Period& fixedPeriod,\n                                     BusinessDayConvention
      fixedConvention,\n                                     DayCounter fixedDayCount,\n
      \                                    const Period& floatPeriod,\n                                     BusinessDayConvention
      floatConvention,\n                                     DayCounter floatDayCount,\n
      \                                    Real recoveryRate,\n                                     const
      RelinkableHandle<YieldTermStructure>& yieldTS,\n                                     const
      Period& integrationStepSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:207,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:207,1
    - Dst: recalculate
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:210,1
    - Dst: fairSpread
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 212
    functionName: QuantLib::AssetSwapHelper::impliedQuote
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - fairSpread
    - recalculate
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real AssetSwapHelper::impliedQuote() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BootstrapHelper<TS>::setTermStructure
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:216,1
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:218,1
    - Dst: ext::shared_ptr<DefaultProbabilityTermStructure>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:219,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:219,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ts
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: QuantLib::AssetSwapHelper::setTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - ext::shared_ptr<DefaultProbabilityTermStructure>
    - linkTo
    - QuantLib::BootstrapHelper<TS>::setTermStructure
    - QuantLib::AssetSwapHelper::initializeDates
    linkageType: ''
    returnType: void
    signature: "void AssetSwapHelper::setTermStructure(\n                                        DefaultProbabilityTermStructure*
      ts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:226,1
    - Dst: QuantLib::AssetSwapHelper::initializeDates
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:227,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionName: QuantLib::AssetSwapHelper::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::AssetSwapHelper::initializeDates
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void AssetSwapHelper::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:233,1
    - Dst: advance
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:235,1
    - Dst: adjust
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:240,1
    - Dst: ext::make_shared<RiskyAssetSwap>
      Src: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 261
    functionName: QuantLib::AssetSwapHelper::initializeDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.cpp
    functionUses: 6
    functionsReached:
    - adjust
    - advance
    - QuantLib::detail::instance
    - ext::make_shared<RiskyAssetSwap>
    linkageType: ''
    returnType: void
    signature: void AssetSwapHelper::initializeDates()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::NthToDefault::premium
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate premium() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::NthToDefault::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::NthToDefault::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::NthToDefault::side
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Protection::Side
    signature: Protection::Side side() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::NthToDefault::rank
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rank() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: endDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: '& maturity() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached:
    - endDate
    linkageType: ''
    returnType: Date
    signature: Date & maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: '& basket() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Basket>
    signature: ext::shared_ptr<Basket> & basket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:138,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::NthToDefault::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached:
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: QuantLib::NthToDefault::premium
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate premium() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::NthToDefault::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::NthToDefault::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: QuantLib::NthToDefault::side
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Protection::Side
    signature: Protection::Side side() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: QuantLib::NthToDefault::rank
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size rank() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: endDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: '& maturity() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached:
    - endDate
    linkageType: ''
    returnType: Date
    signature: Date & maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: '& basket() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Basket>
    signature: ext::shared_ptr<Basket> & basket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:138,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:139,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::NthToDefault::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.hpp
    functionUses: 0
    functionsReached:
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::CorrelationTermStructure::CorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CorrelationTermStructure::CorrelationTermStructure(\n        const
      Calendar& cal,\n        BusinessDayConvention bdc,\n        const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::CorrelationTermStructure::CorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CorrelationTermStructure::CorrelationTermStructure(\n        Natural
      settlementDays,\n        const Calendar& cal,\n        BusinessDayConvention
      bdc,\n        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionName: QuantLib::CorrelationTermStructure::CorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CorrelationTermStructure::CorrelationTermStructure(\n        const
      Calendar& cal,\n        BusinessDayConvention bdc,\n        const DayCounter&
      dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: QuantLib::CorrelationTermStructure::CorrelationTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CorrelationTermStructure::CorrelationTermStructure(\n        Natural
      settlementDays,\n        const Calendar& cal,\n        BusinessDayConvention
      bdc,\n        const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - nBuckets
    - xmin
    - xmax
    argTypes:
    - int
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 52
    functionName: QuantLib::Distribution::Distribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: void Distribution::Distribution (int nBuckets, Real xmin, Real xmax)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:58,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:58,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:61,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:62,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:62,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:63,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:67,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::Distribution::locate
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - close
    - back
    - QuantLib::Distribution::size
    - front
    linkageType: ''
    returnType: int
    signature: int Distribution::locate (Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::Distribution::dx
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::locate
    linkageType: ''
    returnType: Real
    signature: Real Distribution::dx (Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:81,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: QuantLib::Distribution::add
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::size
    - front
    linkageType: ''
    returnType: void
    signature: void Distribution::add (Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bucket
    - value
    argTypes:
    - int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::Distribution::addDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::addDensity (int bucket, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bucket
    - value
    argTypes:
    - int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionName: QuantLib::Distribution::addAverage
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::addAverage (int bucket, Real value)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 148
    functionName: QuantLib::Distribution::normalize
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Distribution::normalize ()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:153,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - quantil
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 159
    functionName: QuantLib::Distribution::confidenceLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real Distribution::confidenceLevel (Real quantil)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 171
    functionName: QuantLib::Distribution::expectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real Distribution::expectedValue ()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:176,1
    - Dst: QuantLib::Distribution::cumulativeDensity
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - a
    - d
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: QuantLib::Distribution::trancheExpectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - QuantLib::Distribution::cumulativeDensity
    linkageType: ''
    returnType: Real
    signature: Real Distribution::trancheExpectedValue (Real a, Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:210,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:214,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 217
    functionName: QuantLib::Distribution::cumulativeExcessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - QuantLib::Distribution::locate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::cumulativeExcessProbability (Real a, Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:222,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:223,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:230,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:231,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 232
    functionName: QuantLib::Distribution::cumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 1
    functionsReached:
    - QL_FAIL
    - back
    - QuantLib::Distribution::normalize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::cumulativeDensity (Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:238,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:241,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:244,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:248,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:248,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:249,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:250,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:250,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:251,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:251,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:252,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:252,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:253,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:253,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:258,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:259,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:261,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:262,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:262,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:263,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:264,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:270,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:273,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:274,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:275,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:276,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:277,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:279,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:280,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:283,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:283,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - attachmentPoint
    - detachmentPoint
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 285
    functionName: QuantLib::Distribution::tranche
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - std::find_if
    - begin
    - std::min
    - push_back
    - std::max
    - QuantLib::Distribution::normalize
    - back
    - end
    - erase
    - clear
    - QuantLib::Distribution::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::tranche (Real attachmentPoint, Real detachmentPoint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:292,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:293,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:294,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:295,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:308,1
    - Dst: Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:314,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Distribution
    - Distribution
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 324
    functionName: QuantLib::ManipulateDistribution::convolve
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - Distribution::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Distribution
    signature: "Distribution ManipulateDistribution::convolve (const Distribution&
      d1,\n                                                   const Distribution&
      d2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:330,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:332,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:334,1
    - Dst: QuantLib::Distribution::confidenceLevel
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:334,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:336,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:341,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - percValue
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 342
    functionName: QuantLib::Distribution::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::confidenceLevel
    - QuantLib::Distribution::locate
    - at
    - QuantLib::Distribution::normalize
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::expectedShortfall (Real percValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:51,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - nBuckets
    - xmin
    - xmax
    argTypes:
    - int
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 52
    functionName: QuantLib::Distribution::Distribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: void
    signature: void Distribution::Distribution (int nBuckets, Real xmin, Real xmax)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:57,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:58,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:58,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:59,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:61,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:62,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:62,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:63,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:67,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 68
    functionName: QuantLib::Distribution::locate
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 3
    functionsReached:
    - QL_REQUIRE
    - close
    - back
    - QuantLib::Distribution::size
    - front
    linkageType: ''
    returnType: int
    signature: int Distribution::locate (Real x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: QuantLib::Distribution::dx
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::locate
    linkageType: ''
    returnType: Real
    signature: Real Distribution::dx (Real x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:81,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: QuantLib::Distribution::add
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::size
    - front
    linkageType: ''
    returnType: void
    signature: void Distribution::add (Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bucket
    - value
    argTypes:
    - int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: QuantLib::Distribution::addDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::addDensity (int bucket, Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bucket
    - value
    argTypes:
    - int
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionName: QuantLib::Distribution::addAverage
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::addAverage (int bucket, Real value)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 148
    functionName: QuantLib::Distribution::normalize
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Distribution::normalize ()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:153,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:158,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - quantil
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 159
    functionName: QuantLib::Distribution::confidenceLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 1
    functionsReached:
    - back
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real Distribution::confidenceLevel (Real quantil)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 171
    functionName: QuantLib::Distribution::expectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real Distribution::expectedValue ()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:176,1
    - Dst: QuantLib::Distribution::cumulativeDensity
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - a
    - d
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: QuantLib::Distribution::trancheExpectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - QuantLib::Distribution::cumulativeDensity
    linkageType: ''
    returnType: Real
    signature: Real Distribution::trancheExpectedValue (Real a, Real d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:206,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:207,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:210,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:214,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 217
    functionName: QuantLib::Distribution::cumulativeExcessProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - QuantLib::Distribution::locate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::cumulativeExcessProbability (Real a, Real b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:222,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:223,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:224,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:230,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:231,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:231,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 232
    functionName: QuantLib::Distribution::cumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - back
    - QuantLib::Distribution::normalize
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::cumulativeDensity (Real x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:238,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:240,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:241,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:244,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:248,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:248,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:249,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:249,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:250,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:250,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:251,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:251,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:252,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:252,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:253,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:253,1
    - Dst: std::find_if
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:257,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:258,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:259,1
    - Dst: QuantLib::Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:261,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:262,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:262,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:263,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:264,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:265,1
    - Dst: erase
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:266,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:270,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:270,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:273,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:274,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:275,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:276,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:277,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:279,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:280,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:283,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:283,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:284,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - attachmentPoint
    - detachmentPoint
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 285
    functionName: QuantLib::Distribution::tranche
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - std::find_if
    - begin
    - std::min
    - push_back
    - std::max
    - QuantLib::Distribution::normalize
    - back
    - end
    - erase
    - clear
    - QuantLib::Distribution::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Distribution::tranche (Real attachmentPoint, Real detachmentPoint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:292,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:293,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:294,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:295,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:296,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:302,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:306,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:308,1
    - Dst: Distribution::size
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:314,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - ' d1'
    - ' d2'
    argTypes:
    - Distribution
    - Distribution
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 324
    functionName: QuantLib::ManipulateDistribution::convolve
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - size
    - Distribution::size
    - QL_REQUIRE
    linkageType: ''
    returnType: Distribution
    signature: "Distribution ManipulateDistribution::convolve (const Distribution&
      d1,\n                                                   const Distribution&
      d2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:330,1
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:332,1
    - Dst: QuantLib::Distribution::locate
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:334,1
    - Dst: QuantLib::Distribution::confidenceLevel
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:334,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:336,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.cpp:341,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - percValue
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 342
    functionName: QuantLib::Distribution::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::confidenceLevel
    - QuantLib::Distribution::locate
    - at
    - QuantLib::Distribution::normalize
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Distribution::expectedShortfall (Real percValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quote'
    argTypes:
    - Handle<RecoveryRateQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::ConstantRecoveryModel::ConstantRecoveryModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void ConstantRecoveryModel::ConstantRecoveryModel(\n                                       const
      Handle<RecoveryRateQuote>& quote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:32,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - recovery
    - sen
    argTypes:
    - Real
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::ConstantRecoveryModel::ConstantRecoveryModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp
    functionUses: 0
    functionsReached:
    - Handle<RecoveryRateQuote>
    - ext::make_shared<RecoveryRateQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantRecoveryModel::ConstantRecoveryModel(Real recovery,\n
      \                                                Seniority sen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' quote'
    argTypes:
    - Handle<RecoveryRateQuote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::ConstantRecoveryModel::ConstantRecoveryModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: "void ConstantRecoveryModel::ConstantRecoveryModel(\n                                       const
      Handle<RecoveryRateQuote>& quote)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:32,1
    - Dst: ext::make_shared<RecoveryRateQuote>
      Src: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - recovery
    - sen
    argTypes:
    - Real
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: QuantLib::ConstantRecoveryModel::ConstantRecoveryModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratemodel.cpp
    functionUses: 0
    functionsReached:
    - Handle<RecoveryRateQuote>
    - ext::make_shared<RecoveryRateQuote>
    linkageType: ''
    returnType: void
    signature: "void ConstantRecoveryModel::ConstantRecoveryModel(Real recovery,\n
      \                                                Seniority sen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' pool'
    - ' defaultKeys'
    argTypes:
    - ext::shared_ptr<Pool>
    - std::vector<DefaultProbKey>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::RandomDefaultModel::RandomDefaultModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultModel(const ext::shared_ptr<Pool>& pool,\n                         const
      std::vector<DefaultProbKey>& defaultKeys)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~RandomDefaultModel() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomDefaultModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::RandomDefaultModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' pool'
    - ' defaultKeys'
    argTypes:
    - ext::shared_ptr<Pool>
    - std::vector<DefaultProbKey>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: QuantLib::RandomDefaultModel::RandomDefaultModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultModel(const ext::shared_ptr<Pool>& pool,\n                         const
      std::vector<DefaultProbKey>& defaultKeys)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~RandomDefaultModel() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomDefaultModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::RandomDefaultModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:99,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:100,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:103,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:104,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' correlTS'
    - recoveries
    argTypes:
    - Handle<BaseCorrelationTermStructure<Corr2DInt_T> >
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::BaseCorrelationLossModel::BaseCorrelationLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - initTraits
    - std::move
    - QuantLib::detail::instance
    - registerWith
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel(const Handle<BaseCorrelationTermStructure<Corr2DInt_T>
      >& correlTS,\n                               std::vector<Real> recoveries,\n
      \                              const initTraits& traits = initTraits())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setupModels
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:110,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:112,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::BaseCorrelationLossModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - setupModels
    - notifyObservers
    - empty
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:118,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:119,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:120,1
    - Dst: ext::make_shared<Basket>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: remainingNames
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:123,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:123,1
    - Dst: claim
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:124,1
    - Dst: ext::make_shared<Basket>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: remainingNames
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:126,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:126,1
    - Dst: claim
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:127,1
    - Dst: setupModels
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 129
    functionName: QuantLib::BaseCorrelationLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - setupModels
    - ext::make_shared<Basket>
    - claim
    - refDate
    - remainingDetachmentAmount
    - remainingNotional
    - remainingNotionals
    - remainingNames
    - pool
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:166,1
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:167,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:171,1
    - Dst: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:173,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:174,1
    - Dst: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
    - correlation
    - setValue
    linkageType: ''
    returnType: Real
    signature: "Real BaseCorrelationLossModel<LM, I>::expectedTrancheLoss(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianLHPLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:197,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:198,1
    - Dst: ext::make_shared<GaussianLHPLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:199,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:200,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:202,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 204
    functionName: "QuantLib::BaseCorrelationLossModel<GaussianLHPLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussianLHPLossModel>
    - Handle<Quote>
    - setLossModel
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<GaussianLHPLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:211,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:214,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:216,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:219,1
    - Dst: ext::make_shared<GaussianBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:221,1
    - Dst: ext::make_shared<GaussianBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:223,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:225,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 228
    functionName: "QuantLib::BaseCorrelationLossModel<GaussianBinomialLossModel, \n
      \       BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussianBinomialLossModel>
    - setLossModel
    - ext::make_shared<GaussianConstantLossLM>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<GaussianBinomialLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:235,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:238,1
    - Dst: ext::make_shared<TConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:240,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:241,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:243,1
    - Dst: ext::make_shared<TBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:246,1
    - Dst: ext::make_shared<TBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:248,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:250,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 252
    functionName: "QuantLib::BaseCorrelationLossModel<TBinomialLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - setLossModel
    - ext::make_shared<TConstantLossLM>
    - ext::make_shared<TBinomialLossModel>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<TBinomialLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:262,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:263,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:265,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:267,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:270,1
    - Dst: ext::make_shared<IHGaussPoolLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:275,1
    - Dst: ext::make_shared<IHGaussPoolLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:277,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:279,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 281
    functionName: "QuantLib::BaseCorrelationLossModel<IHGaussPoolLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<IHGaussPoolLossModel>
    - setLossModel
    - ext::make_shared<GaussianConstantLossLM>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<IHGaussPoolLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:99,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:100,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:101,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:103,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:104,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' correlTS'
    - recoveries
    argTypes:
    - Handle<BaseCorrelationTermStructure<Corr2DInt_T> >
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionName: QuantLib::BaseCorrelationLossModel::BaseCorrelationLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - initTraits
    - std::move
    - QuantLib::detail::instance
    - registerWith
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel(const Handle<BaseCorrelationTermStructure<Corr2DInt_T>
      >& correlTS,\n                               std::vector<Real> recoveries,\n
      \                              const initTraits& traits = initTraits())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setupModels
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:110,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:112,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: QuantLib::BaseCorrelationLossModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - setupModels
    - notifyObservers
    - empty
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:118,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:119,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:120,1
    - Dst: ext::make_shared<Basket>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: remainingNames
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:122,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:123,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:123,1
    - Dst: claim
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:124,1
    - Dst: ext::make_shared<Basket>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: remainingNames
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:125,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:126,1
    - Dst: pool
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:126,1
    - Dst: claim
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:127,1
    - Dst: setupModels
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 129
    functionName: QuantLib::BaseCorrelationLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - setupModels
    - ext::make_shared<Basket>
    - claim
    - refDate
    - remainingDetachmentAmount
    - remainingNotional
    - remainingNotionals
    - remainingNames
    - pool
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:166,1
    - Dst: correlation
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:167,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:171,1
    - Dst: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:173,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:174,1
    - Dst: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BaseCorrelationLossModel<LM, I>::expectedTrancheLoss
    - correlation
    - setValue
    linkageType: ''
    returnType: Real
    signature: "Real BaseCorrelationLossModel<LM, I>::expectedTrancheLoss(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianLHPLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:197,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:198,1
    - Dst: ext::make_shared<GaussianLHPLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:199,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:200,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:202,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 204
    functionName: "QuantLib::BaseCorrelationLossModel<GaussianLHPLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussianLHPLossModel>
    - Handle<Quote>
    - setLossModel
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<GaussianLHPLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:211,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:212,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:214,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:216,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:219,1
    - Dst: ext::make_shared<GaussianBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:221,1
    - Dst: ext::make_shared<GaussianBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:223,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:225,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 228
    functionName: "QuantLib::BaseCorrelationLossModel<GaussianBinomialLossModel, \n
      \       BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<GaussianBinomialLossModel>
    - setLossModel
    - ext::make_shared<GaussianConstantLossLM>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<GaussianBinomialLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<TConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:235,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:236,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:238,1
    - Dst: ext::make_shared<TConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:240,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:241,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:243,1
    - Dst: ext::make_shared<TBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:246,1
    - Dst: ext::make_shared<TBinomialLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:248,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:250,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 252
    functionName: "QuantLib::BaseCorrelationLossModel<TBinomialLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - setLossModel
    - ext::make_shared<TConstantLossLM>
    - ext::make_shared<TBinomialLossModel>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<TBinomialLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:262,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:263,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:265,1
    - Dst: ext::make_shared<GaussianConstantLossLM>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:267,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:268,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:270,1
    - Dst: ext::make_shared<IHGaussPoolLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:275,1
    - Dst: ext::make_shared<IHGaussPoolLossModel>
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:277,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:279,1
    - Dst: setLossModel
      Src: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 281
    functionName: "QuantLib::BaseCorrelationLossModel<IHGaussPoolLossModel, \n        BilinearInterpolation>::setupModels"
    functionSourceFile: /src/quantlib/ql/experimental/credit/basecorrelationlossmodel.hpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<IHGaussPoolLossModel>
    - setLossModel
    - ext::make_shared<GaussianConstantLossLM>
    - size
    - Handle<Quote>
    linkageType: ''
    returnType: void
    signature: "void BaseCorrelationLossModel<IHGaussPoolLossModel, \n        BilinearInterpolation>::setupModels()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: '& basket() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Basket>
    signature: ext::shared_ptr<Basket> & basket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::SyntheticCDO::leverageFactor
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real leverageFactor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:148,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: '& maturity() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - back
    linkageType: ''
    returnType: Date
    signature: Date & maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:192,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: QuantLib::SyntheticCDO::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached:
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: '& basket() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<Basket>
    signature: ext::shared_ptr<Basket> & basket() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: QuantLib::SyntheticCDO::leverageFactor
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real leverageFactor() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:148,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: '& maturity() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - back
    linkageType: ''
    returnType: Date
    signature: Date & maturity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:192,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:193,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: QuantLib::SyntheticCDO::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/syntheticcdo.hpp
    functionUses: 0
    functionsReached:
    - Protection::Side
    - Null<Real>
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:66,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - " \n                copula"
    - nBuckets
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::InhomogeneousPoolLossModel::InhomogeneousPoolLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InhomogeneousPoolLossModel(\n        // restricted to non random
      recoveries, but it could be possible.\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& \n                copula,\n            Size nBuckets,\n            Real max
      = 5.,\n            Real min = -5.,\n            Size nSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 81
    functionName: QuantLib::InhomogeneousPoolLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:83,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::InhomogeneousPoolLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - lossDistrib
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:87,1
    - Dst: Distribution::tranche
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:88,1
    - Dst: Distribution::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::InhomogeneousPoolLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - Distribution::tranche
    - Distribution::expectedShortfall
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Probability percentile) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:118,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:118,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:119,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:120,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:120,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:121,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:122,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:123,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:124,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:125,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:127,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: QuantLib::InhomogeneousPoolLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void InhomogeneousPoolLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:137,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:139,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:142,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:142,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:143,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:144,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:145,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:157,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:158,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:159,1
    - Dst: bucktLDistBuff
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:161,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:162,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:166,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:166,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 170
    functionName: QuantLib::InhomogeneousPoolLossModel<CP>::lossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - begin
    - remainingProbabilities
    - std::vector::size
    - inverseCumulativeY
    - density
    - Distribution::addDensity
    - std::multiplies<>
    - recoveries
    - Distribution::density
    - bucktLDistBuff
    - std::transform
    - size
    - std::back_inserter
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: Distribution
    signature: "Distribution InhomogeneousPoolLossModel<CP>::lossDistrib(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:66,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - " \n                copula"
    - nBuckets
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionName: QuantLib::InhomogeneousPoolLossModel::InhomogeneousPoolLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void InhomogeneousPoolLossModel(\n        // restricted to non random
      recoveries, but it could be possible.\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& \n                copula,\n            Size nBuckets,\n            Real max
      = 5.,\n            Real min = -5.,\n            Size nSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 81
    functionName: QuantLib::InhomogeneousPoolLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:83,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:84,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::InhomogeneousPoolLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - lossDistrib
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:87,1
    - Dst: Distribution::tranche
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:88,1
    - Dst: Distribution::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: QuantLib::InhomogeneousPoolLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - Distribution::tranche
    - Distribution::expectedShortfall
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Probability percentile) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:118,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:118,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:119,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:120,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:120,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:121,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:122,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:123,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:124,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:125,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:127,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: QuantLib::InhomogeneousPoolLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void InhomogeneousPoolLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:137,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:138,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:139,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:141,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:142,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:142,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:143,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:144,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:145,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:156,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:157,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:158,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:159,1
    - Dst: bucktLDistBuff
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:161,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:162,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:166,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp:166,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 170
    functionName: QuantLib::InhomogeneousPoolLossModel<CP>::lossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/inhomogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - begin
    - remainingProbabilities
    - std::vector::size
    - inverseCumulativeY
    - density
    - Distribution::addDensity
    - std::multiplies<>
    - recoveries
    - Distribution::density
    - bucktLDistBuff
    - std::transform
    - size
    - std::back_inserter
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: Distribution
    signature: "Distribution InhomogeneousPoolLossModel<CP>::lossDistrib(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:43,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:55,1
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 7
    argNames:
    - ' refDate'
    - ' names'
    - notionals
    - pool
    - attachment
    - detachment
    - claim
    argTypes:
    - Date
    - vector<string>
    - vector<Real>
    - ext::shared_ptr<Pool>
    - Real
    - Real
    - ext::shared_ptr<Claim>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 69
    functionName: QuantLib::Basket::Basket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    - empty
    - std::move
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::Basket::computeBasket
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Basket::Basket(const Date& refDate,\n                   const
      vector<string>& names,\n                   vector<Real> notionals,\n                   ext::shared_ptr<Pool>
      pool,\n                   Real attachment,\n                   Real detachment,\n
      \                  ext::shared_ptr<Claim> claim)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:83,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' lossModel'
    argTypes:
    - ext::shared_ptr<DefaultLossModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 86
    functionName: QuantLib::Basket::setLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: "void Basket::setLossModel(\n        const ext::shared_ptr<DefaultLossModel>&
      lossModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:92,1
    - Dst: setBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:103,1
    - Dst: const_cast<Basket*>
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::Basket::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::computeBasket
    - setBasket
    - const_cast<Basket*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Basket::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::Basket::notional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::accumulate
    - Real
    linkageType: ''
    returnType: Real
    signature: Real Basket::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:112,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:113,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:114,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: QuantLib::Basket::probabilities
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - names
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - get
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> Basket::probabilities(const Date& d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:120,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:123,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:125,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:125,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:126,1
    - Dst: ext::shared_ptr::hasSettled
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:132,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:133,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:133,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: ext::shared_ptr::settlement
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:136,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:137,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 141
    functionName: QuantLib::Basket::cumulatedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - seniority
    - names
    - ext::shared_ptr::settlement
    - QuantLib::Basket::exposure
    - get
    - ext::shared_ptr::date
    - amount
    - ext::shared_ptr::hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::cumulatedLoss(const Date& endDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:144,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:148,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:150,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:150,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:151,1
    - Dst: ext::shared_ptr::hasSettled
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:153,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:154,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:154,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: ext::shared_ptr::settlement
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:160,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:161,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 166
    functionName: QuantLib::Basket::settledLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - seniority
    - names
    - ext::shared_ptr::settlement
    - QuantLib::Basket::exposure
    - get
    - ext::shared_ptr::date
    - amount
    - ext::shared_ptr::hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::settledLoss(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::Basket::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingNotional() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:174,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:175,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:175,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:178,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 182
    functionName: QuantLib::Basket::liveList
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - names
    - get
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> Basket::liveList(const Date& endDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:186,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:187,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:188,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 194
    functionName: QuantLib::Basket::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - names
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - get
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingNotional(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:198,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:202,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:203,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:203,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:204,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:205,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:206,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 209
    functionName: QuantLib::Basket::remainingNotionals
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - std::vector::reserve
    - QuantLib::Basket::liveList
    - names
    - QuantLib::Basket::exposure
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> Basket::remainingNotionals(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:213,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:215,1
    - Dst: vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:217,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:217,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:218,1
    - Dst: vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::Basket::remainingProbabilities
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - vector::push_back
    - vector::reserve
    - QuantLib::Basket::liveList
    - names
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> Basket::remainingProbabilities(const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:229,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:229,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:235,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:235,1
    - Dst: std::find
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:237,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:237,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' name'
    - ' d'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 246
    functionName: QuantLib::Basket::exposure
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 3
    functionsReached:
    - std::find
    - std::distance
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::exposure(const std::string& name, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:251,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:254,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:256,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:256,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:258,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 260
    functionName: QuantLib::Basket::remainingNames
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - std::vector::reserve
    - QuantLib::Basket::liveList
    - names
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> Basket::remainingNames(const Date& endDate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:264,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:267,1
    - Dst: vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:269,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:269,1
    - Dst: vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:271,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 273
    functionName: QuantLib::Basket::remainingDefaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - vector::push_back
    - vector::reserve
    - QuantLib::Basket::liveList
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<DefaultProbKey>
    signature: vector<DefaultProbKey> Basket::remainingDefaultKeys(const Date& endDate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::Basket::remainingSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    linkageType: ''
    returnType: Size
    signature: Size Basket::remainingSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::remainingDefaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 4
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::Basket::remainingSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::remainingDefaultKeys
    linkageType: ''
    returnType: Size
    signature: Size Basket::remainingSize(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 290
    functionName: QuantLib::Basket::remainingDetachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingDetachmentAmount(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:294,1
    - Dst: QuantLib::Basket::settledLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:296,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:297,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 299
    functionName: QuantLib::Basket::remainingAttachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Basket::settledLoss
    - std::min
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingAttachmentAmount(const Date& endDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:303,1
    - Dst: QuantLib::Basket::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 318
    functionName: QuantLib::Basket::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::Basket::probOverLoss
    linkageType: ''
    returnType: Probability
    signature: Probability Basket::probOverLoss(const Date& d, Real lossFraction)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:321,1
    - Dst: QuantLib::Basket::percentile
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - prob
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionName: QuantLib::Basket::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::percentile
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::percentile(const Date& d, Probability prob) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:326,1
    - Dst: QuantLib::Basket::cumulatedLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:327,1
    - Dst: QuantLib::Basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::Basket::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::cumulatedLoss
    - calculate
    - QuantLib::Basket::expectedTrancheLoss
    linkageType: ''
    returnType: Real
    signature: Real Basket::expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:331,1
    - Dst: QuantLib::Basket::splitVaRLevel
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' date'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::Basket::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::splitVaRLevel
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> Basket::splitVaRLevel(const Date& date, Real loss)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:336,1
    - Dst: QuantLib::Basket::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - prob
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 338
    functionName: QuantLib::Basket::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::expectedShortfall
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::expectedShortfall(const Date& d, Probability prob) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:341,1
    - Dst: QuantLib::Basket::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: QuantLib::Basket::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::Basket::lossDistribution
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> Basket::lossDistribution(const Date& d)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:348,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:348,1
    - Dst: std::vector<Probability>
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:350,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:350,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:352,1
    - Dst: QuantLib::Basket::probsBeingNthEvent
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 345
    functionDepth: 4
    functionLinenumber: 345
    functionLinenumberEnd: 354
    functionName: QuantLib::Basket::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::probsBeingNthEvent
    - calculate
    - QuantLib::Basket::size
    - std::vector<Probability>
    - QuantLib::Basket::remainingNames
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> Basket::probsBeingNthEvent(Size n, const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:357,1
    - Dst: QuantLib::Basket::defaultCorrelation
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::Basket::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::defaultCorrelation
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::defaultCorrelation(const Date& d, Size iName, Size jName)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:366,1
    - Dst: QuantLib::Basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: QuantLib::Basket::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::probAtLeastNEvents
    - calculate
    linkageType: ''
    returnType: Probability
    signature: Probability Basket::probAtLeastNEvents(Size n, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:372,1
    - Dst: expectedRecovery
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:374,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - iName
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 371
    functionDepth: 2
    functionLinenumber: 371
    functionLinenumberEnd: 375
    functionName: QuantLib::Basket::recoveryRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - expectedRecovery
    - calculate
    - QuantLib::Basket::defaultKeys
    linkageType: ''
    returnType: Real
    signature: Real Basket::recoveryRate(const Date& d, Size iName) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:43,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:43,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:49,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:54,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:55,1
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 7
    argNames:
    - ' refDate'
    - ' names'
    - notionals
    - pool
    - attachment
    - detachment
    - claim
    argTypes:
    - Date
    - vector<string>
    - vector<Real>
    - ext::shared_ptr<Pool>
    - Real
    - Real
    - ext::shared_ptr<Claim>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 69
    functionName: QuantLib::Basket::Basket
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    - empty
    - std::move
    - registerWith
    - QuantLib::detail::instance
    - QuantLib::Basket::computeBasket
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Basket::Basket(const Date& refDate,\n                   const
      vector<string>& names,\n                   vector<Real> notionals,\n                   ext::shared_ptr<Pool>
      pool,\n                   Real attachment,\n                   Real detachment,\n
      \                  ext::shared_ptr<Claim> claim)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unregisterWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:78,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:83,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' lossModel'
    argTypes:
    - ext::shared_ptr<DefaultLossModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 86
    functionName: QuantLib::Basket::setLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - unregisterWith
    - QuantLib::LazyObject::update
    linkageType: ''
    returnType: void
    signature: "void Basket::setLossModel(\n        const ext::shared_ptr<DefaultLossModel>&
      lossModel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::computeBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:92,1
    - Dst: setBasket
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:103,1
    - Dst: const_cast<Basket*>
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::Basket::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::computeBasket
    - setBasket
    - const_cast<Basket*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void Basket::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::Basket::notional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - std::accumulate
    - Real
    linkageType: ''
    returnType: Real
    signature: Real Basket::notional() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:112,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:113,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:114,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: QuantLib::Basket::probabilities
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - names
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - get
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> Basket::probabilities(const Date& d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:120,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:123,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:125,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:125,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:126,1
    - Dst: ext::shared_ptr::hasSettled
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:132,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:133,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:133,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:135,1
    - Dst: ext::shared_ptr::settlement
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:136,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:137,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 141
    functionName: QuantLib::Basket::cumulatedLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - seniority
    - names
    - ext::shared_ptr::settlement
    - QuantLib::Basket::exposure
    - get
    - ext::shared_ptr::date
    - amount
    - ext::shared_ptr::hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::cumulatedLoss(const Date& endDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:144,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:148,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:150,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:150,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:151,1
    - Dst: ext::shared_ptr::hasSettled
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:153,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:154,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:154,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:156,1
    - Dst: ext::shared_ptr::settlement
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:160,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:161,1
    - Dst: seniority
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 166
    functionName: QuantLib::Basket::settledLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - seniority
    - names
    - ext::shared_ptr::settlement
    - QuantLib::Basket::exposure
    - get
    - ext::shared_ptr::date
    - amount
    - ext::shared_ptr::hasSettled
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::settledLoss(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: QuantLib::Basket::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingNotional() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:174,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:175,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:175,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:178,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 182
    functionName: QuantLib::Basket::liveList
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 6
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - names
    - get
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> Basket::liveList(const Date& endDate) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:186,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:187,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:188,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 194
    functionName: QuantLib::Basket::remainingNotional
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - names
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - get
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingNotional(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:198,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:202,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:203,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:203,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:204,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:205,1
    - Dst: QuantLib::Basket::exposure
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:206,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 209
    functionName: QuantLib::Basket::remainingNotionals
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::size
    - std::vector::reserve
    - QuantLib::Basket::liveList
    - names
    - QuantLib::Basket::exposure
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<Real>
    signature: vector<Real> Basket::remainingNotionals(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:213,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:215,1
    - Dst: vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:217,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:217,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:218,1
    - Dst: vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:219,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 222
    functionName: QuantLib::Basket::remainingProbabilities
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - vector::push_back
    - vector::reserve
    - QuantLib::Basket::liveList
    - names
    - get
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> Basket::remainingProbabilities(const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::find
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:228,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:229,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:229,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:235,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:235,1
    - Dst: std::find
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:237,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:237,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' name'
    - ' d'
    argTypes:
    - std::string
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 246
    functionName: QuantLib::Basket::exposure
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 6
    functionsReached:
    - std::find
    - std::distance
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::exposure(const std::string& name, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:251,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:254,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:256,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:256,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:258,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 260
    functionName: QuantLib::Basket::remainingNames
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Basket::size
    - std::vector::reserve
    - QuantLib::Basket::liveList
    - names
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> Basket::remainingNames(const Date& endDate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:264,1
    - Dst: QuantLib::Basket::liveList
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:267,1
    - Dst: vector::reserve
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:269,1
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:269,1
    - Dst: vector::push_back
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:271,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 273
    functionName: QuantLib::Basket::remainingDefaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Basket::size
    - QuantLib::Basket::defaultKeys
    - vector::push_back
    - vector::reserve
    - QuantLib::Basket::liveList
    - QL_REQUIRE
    linkageType: ''
    returnType: vector<DefaultProbKey>
    signature: vector<DefaultProbKey> Basket::remainingDefaultKeys(const Date& endDate)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: QuantLib::Basket::remainingSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::size
    linkageType: ''
    returnType: Size
    signature: Size Basket::remainingSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::remainingDefaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 4
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: QuantLib::Basket::remainingSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Basket::remainingDefaultKeys
    linkageType: ''
    returnType: Size
    signature: Size Basket::remainingSize(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 290
    functionName: QuantLib::Basket::remainingDetachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 4
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingDetachmentAmount(const Date& endDate) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:294,1
    - Dst: QuantLib::Basket::settledLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:296,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:297,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' endDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 299
    functionName: QuantLib::Basket::remainingAttachmentAmount
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Basket::settledLoss
    - std::min
    - std::max
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Basket::remainingAttachmentAmount(const Date& endDate) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:303,1
    - Dst: QuantLib::Basket::probOverLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 318
    functionName: QuantLib::Basket::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::Basket::probOverLoss
    linkageType: ''
    returnType: Probability
    signature: Probability Basket::probOverLoss(const Date& d, Real lossFraction)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:321,1
    - Dst: QuantLib::Basket::percentile
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - prob
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionName: QuantLib::Basket::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::percentile
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::percentile(const Date& d, Probability prob) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:326,1
    - Dst: QuantLib::Basket::cumulatedLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:327,1
    - Dst: QuantLib::Basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::Basket::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::cumulatedLoss
    - calculate
    - QuantLib::Basket::expectedTrancheLoss
    linkageType: ''
    returnType: Real
    signature: Real Basket::expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:331,1
    - Dst: QuantLib::Basket::splitVaRLevel
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' date'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: QuantLib::Basket::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::splitVaRLevel
    - calculate
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> Basket::splitVaRLevel(const Date& date, Real loss)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:336,1
    - Dst: QuantLib::Basket::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - prob
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 338
    functionName: QuantLib::Basket::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::expectedShortfall
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::expectedShortfall(const Date& d, Probability prob) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:341,1
    - Dst: QuantLib::Basket::lossDistribution
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: QuantLib::Basket::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::Basket::lossDistribution
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> Basket::lossDistribution(const Date& d)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Basket::size
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:348,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:348,1
    - Dst: std::vector<Probability>
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:350,1
    - Dst: QuantLib::Basket::remainingNames
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:350,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:352,1
    - Dst: QuantLib::Basket::probsBeingNthEvent
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 345
    functionDepth: 4
    functionLinenumber: 345
    functionLinenumberEnd: 354
    functionName: QuantLib::Basket::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::probsBeingNthEvent
    - calculate
    - QuantLib::Basket::size
    - std::vector<Probability>
    - QuantLib::Basket::remainingNames
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> Basket::probsBeingNthEvent(Size n, const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:357,1
    - Dst: QuantLib::Basket::defaultCorrelation
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionName: QuantLib::Basket::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::defaultCorrelation
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real Basket::defaultCorrelation(const Date& d, Size iName, Size jName)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:366,1
    - Dst: QuantLib::Basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: QuantLib::Basket::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Basket::probAtLeastNEvents
    - calculate
    linkageType: ''
    returnType: Probability
    signature: Probability Basket::probAtLeastNEvents(Size n, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:372,1
    - Dst: expectedRecovery
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:374,1
    - Dst: QuantLib::Basket::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/basket.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - iName
    argTypes:
    - Date
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 371
    functionDepth: 2
    functionLinenumber: 371
    functionLinenumberEnd: 375
    functionName: QuantLib::Basket::recoveryRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/basket.cpp
    functionUses: 0
    functionsReached:
    - expectedRecovery
    - calculate
    - QuantLib::Basket::defaultKeys
    linkageType: ''
    returnType: Real
    signature: Real Basket::recoveryRate(const Date& d, Size iName) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::OneFactorStudentCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::OneFactorStudentCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::OneFactorGaussianStudentCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::OneFactorGaussianStudentCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: QuantLib::OneFactorStudentGaussianCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::OneFactorStudentGaussianCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: QuantLib::OneFactorStudentCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::OneFactorStudentCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::OneFactorGaussianStudentCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: QuantLib::OneFactorGaussianStudentCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorGaussianStudentCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: density_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: QuantLib::OneFactorStudentGaussianCopula::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - density_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::density (Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::OneFactorStudentGaussianCopula::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorstudentcopula.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Real
    signature: Real OneFactorStudentGaussianCopula::cumulativeZ (Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:110,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:110,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:111,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - correlation
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 114
    functionName: QuantLib::OneFactorCopula::OneFactorCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorCopula(Handle<Quote> correlation,\n                        Real
      maximum = 5.0,\n                        Size integrationSteps = 50,\n                        Real
      minimum = -5.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:170,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:172,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:175,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:176,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:176,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 180
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - QuantLib::OneFactorCopula::steps
    - QuantLib::OneFactorCopula::conditionalProbability
    - QuantLib::OneFactorCopula::m
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real integral(Real p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:195,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:200,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:200,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:201,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' f'
    - ' probabilities'
    argTypes:
    - F
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 205
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - f
    - QuantLib::OneFactorCopula::conditionalProbability
    - QuantLib::OneFactorCopula::m
    linkageType: ''
    returnType: Real
    signature: Real integral(const F& f, std::vector<Real>& probabilities) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:221,1
    - Dst: buckets
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:223,1
    - Dst: maximum
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:223,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:224,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:226,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:226,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:227,1
    - Dst: Distribution::size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:228,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' f'
    - ' nominals'
    - ' probabilities'
    argTypes:
    - F
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 232
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - Distribution::size
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - QuantLib::OneFactorCopula::steps
    - f
    - Distribution::addDensity
    - QuantLib::OneFactorCopula::conditionalProbability
    - Distribution::density
    - QuantLib::OneFactorCopula::m
    - buckets
    - maximum
    linkageType: ''
    returnType: Distribution
    signature: "Distribution integral(const F& f,\n                              const
      std::vector<Real>& nominals,\n                              const std::vector<Real>&
      probabilities) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:264,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::OneFactorCopula::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - value
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: QuantLib::OneFactorCopula::steps
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneFactorCopula::steps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: QuantLib::OneFactorCopula::dm
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::dm(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:277,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:278,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionName: QuantLib::OneFactorCopula::m
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::OneFactorCopula::dm
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::m(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:282,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionName: QuantLib::OneFactorCopula::densitydm
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::OneFactorCopula::m
    - density
    - QuantLib::OneFactorCopula::dm
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::densitydm(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:108,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:110,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:110,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:111,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - correlation
    argTypes:
    - Handle<Quote>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 114
    functionName: QuantLib::OneFactorCopula::OneFactorCopula
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void OneFactorCopula(Handle<Quote> correlation,\n                        Real
      maximum = 5.0,\n                        Size integrationSteps = 50,\n                        Real
      minimum = -5.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:170,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:172,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:175,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:176,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:176,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - p
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 169
    functionDepth: 3
    functionLinenumber: 169
    functionLinenumberEnd: 180
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - QuantLib::OneFactorCopula::steps
    - QuantLib::OneFactorCopula::conditionalProbability
    - QuantLib::OneFactorCopula::m
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real integral(Real p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:195,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:200,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:200,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:201,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' f'
    - ' probabilities'
    argTypes:
    - F
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 194
    functionDepth: 3
    functionLinenumber: 194
    functionLinenumberEnd: 205
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - f
    - QuantLib::OneFactorCopula::conditionalProbability
    - QuantLib::OneFactorCopula::m
    linkageType: ''
    returnType: Real
    signature: Real integral(const F& f, std::vector<Real>& probabilities) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:221,1
    - Dst: buckets
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:223,1
    - Dst: maximum
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:223,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:224,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:226,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:226,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:227,1
    - Dst: Distribution::size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:228,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ' f'
    - ' nominals'
    - ' probabilities'
    argTypes:
    - F
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 218
    functionDepth: 3
    functionLinenumber: 218
    functionLinenumberEnd: 232
    functionName: QuantLib::OneFactorCopula::integral
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - Distribution::size
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - QuantLib::OneFactorCopula::steps
    - f
    - Distribution::addDensity
    - QuantLib::OneFactorCopula::conditionalProbability
    - Distribution::density
    - QuantLib::OneFactorCopula::m
    - buckets
    - maximum
    linkageType: ''
    returnType: Distribution
    signature: "Distribution integral(const F& f,\n                              const
      std::vector<Real>& nominals,\n                              const std::vector<Real>&
      probabilities) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:264,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: QuantLib::OneFactorCopula::correlation
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - value
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::correlation() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: QuantLib::OneFactorCopula::steps
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size OneFactorCopula::steps() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: QuantLib::OneFactorCopula::dm
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::dm(Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:277,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:278,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionName: QuantLib::OneFactorCopula::m
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::OneFactorCopula::dm
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::m(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:282,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    - Dst: QuantLib::OneFactorCopula::dm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionName: QuantLib::OneFactorCopula::densitydm
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::OneFactorCopula::m
    - density
    - QuantLib::OneFactorCopula::dm
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::densitydm(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Distribution::Distribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Distribution()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::Distribution::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Distribution::x
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real x (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& x ()'
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & x ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Distribution::dx
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real dx (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& dx ()'
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & dx ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:57,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::Distribution::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real density (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:61,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Distribution::cumulative
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real cumulative (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:65,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::Distribution::excess
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real excess (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:69,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::Distribution::cumulativeExcess
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real cumulativeExcess (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Distribution::average
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real average (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:82,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::Distribution::expectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - f
    linkageType: ''
    returnType: Real
    signature: Real expectedValue (F& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::Distribution::Distribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Distribution()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::Distribution::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::Distribution::x
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real x (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& x ()'
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & x ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::Distribution::dx
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real dx (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& dx ()'
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & dx ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:57,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: QuantLib::Distribution::density
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real density (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:61,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: QuantLib::Distribution::cumulative
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real cumulative (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:65,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::Distribution::excess
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real excess (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:69,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: QuantLib::Distribution::cumulativeExcess
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::Distribution::normalize
    linkageType: ''
    returnType: Real
    signature: Real cumulativeExcess (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - k
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: QuantLib::Distribution::average
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: Real
    signature: Real average (Size k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Distribution::normalize
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:82,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/credit/distribution.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: QuantLib::Distribution::expectedValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/distribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Distribution::normalize
    - f
    linkageType: ''
    returnType: Real
    signature: Real expectedValue (F& f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:178,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:185,1
    - Dst: C*::hazardRate
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 192
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - C*::hazardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:202,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:202,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:216,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:216,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 223
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 231
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 233
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedAffineHazardRateCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedAffineHazardRateCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedAffineHazardRateCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 260
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedAffineHazardRateCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::hazardRates() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedAffineHazardRateCurve<T>::hazardRates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:271,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:272,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedAffineHazardRateCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:283,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:284,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedAffineHazardRateCurve<T>::hazardRateImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:297,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:297,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:300,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:303,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:304,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:308,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:308,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:309,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:309,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:311,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:311,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 312
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
    - discountBond
    - std::pow
    - dynamics
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl(\n
      \       Time t) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:324,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:325,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:328,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:333,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:334,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:338,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:338,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:339,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:339,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:341,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:342,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:346,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:346,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:347,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:347,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:350,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:351,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - tFwd
    - tTarget
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 352
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::conditionalSurvivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
    - discountBond
    - dynamics
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedAffineHazardRateCurve<T>::conditionalSurvivalProbabilityImpl(\n
      \       Time tFwd, Time tTarget, Real yVal) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 362
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const std::vector<Handle<Quote> >& jumps,\n        const std::vector<Date>&
      jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 374
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const Date& referenceDate,\n        const DayCounter& dayCounter,\n
      \       const ext::shared_ptr<OneFactorAffineModel>& model,\n        const std::vector<Handle<Quote>
      >& jumps,\n        const std::vector<Date>& jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 387
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       Natural settlementDays,\n        const Calendar& calendar,\n        const
      DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const std::vector<Handle<Quote> >& jumps,\n        const std::vector<Date>&
      jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:399,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:400,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 402
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const Calendar& calendar,\n        const std::vector<Handle<Quote>
      >& jumps,\n        const std::vector<Date>& jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:412,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:413,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 415
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const Calendar& calendar,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:424,1
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:424,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:425,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 418
    functionDepth: 1
    functionLinenumber: 418
    functionLinenumberEnd: 427
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:432,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:432,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::setupTimes
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:437,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:437,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:438,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 440
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::setupInterpolation
    - dayCounter
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::setupTimes
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::size
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::update
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedAffineHazardRateCurve<T>::initialize()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DefaultProbabilityTermStructure*::referenceDate
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - DefaultProbabilityTermStructure*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: QuantLib::initialDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - DefaultProbabilityTermStructure*::referenceDate
    linkageType: ''
    returnType: Date
    signature: Date initialDate(const DefaultProbabilityTermStructure* c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: QuantLib::initialValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real initialValue(const DefaultProbabilityTermStructure*)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:178,1
    - Dst: C*::dates
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:185,1
    - Dst: C*::hazardRate
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 192
    functionName: QuantLib::guess
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 2
    functionsReached:
    - C*::hazardRate
    - C*::data
    - C*::dates
    linkageType: ''
    returnType: Real
    signature: "Real guess(Size i,\n                          const C* c,\n                          bool
      validData,\n                          Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min_element
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:202,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:202,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 208
    functionName: QuantLib::minValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::min_element
    linkageType: ''
    returnType: Real
    signature: "Real minValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:216,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:216,1
    - Dst: C*::data
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - i
    - c
    - validData
    argTypes:
    - Size
    - C*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 223
    functionName: QuantLib::maxValueAfter
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - C*::data
    - std::max_element
    linkageType: ''
    returnType: Real
    signature: "Real maxValueAfter(Size i,\n                                  const
      C* c,\n                                  bool validData,\n                                  Size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' data'
    - rate
    - i
    argTypes:
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 231
    functionName: QuantLib::updateGuess
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void updateGuess(std::vector<Real>& data,\n                                Real
      rate,\n                                Size i)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 233
    functionName: QuantLib::maxIterations
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size maxIterations()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Date
    signature: Date InterpolatedAffineHazardRateCurve<T>::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::times() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: "std::vector<Time> &\n    InterpolatedAffineHazardRateCurve<T>::times()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::dates() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: "std::vector<Date> &\n    InterpolatedAffineHazardRateCurve<T>::dates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 260
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::data() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> &\n    InterpolatedAffineHazardRateCurve<T>::data()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: "&\n    InterpolatedAffineHazardRateCurve<T>::hazardRates() const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Rate>
    signature: "std::vector<Rate> &\n    InterpolatedAffineHazardRateCurve<T>::hazardRates()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:271,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:272,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 275
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::nodes
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::make_pair
    linkageType: ''
    returnType: std::vector<std::pair<Date, Real> >
    signature: std::vector<std::pair<Date, Real> > InterpolatedAffineHazardRateCurve<T>::nodes()
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:283,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:284,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    linkageType: ''
    returnType: Real
    signature: Real InterpolatedAffineHazardRateCurve<T>::hazardRateImpl(Time t) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:297,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:297,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:300,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:303,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:304,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:308,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:308,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:309,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:309,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:311,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:311,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 312
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
    - discountBond
    - std::pow
    - dynamics
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl(\n
      \       Time t) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:324,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:325,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:328,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:333,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:334,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:338,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:338,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:339,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:339,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:341,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:342,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:346,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:346,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:347,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:347,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:350,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:351,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - tFwd
    - tTarget
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 352
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::conditionalSurvivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::times_::back
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::back
    - std::exp
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::survivalProbabilityImpl
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::primitive
    - discountBond
    - dynamics
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability InterpolatedAffineHazardRateCurve<T>::conditionalSurvivalProbabilityImpl(\n
      \       Time tFwd, Time tTarget, Real yVal) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 362
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const std::vector<Handle<Quote> >& jumps,\n        const std::vector<Date>&
      jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - ' referenceDate'
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Date
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 374
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const Date& referenceDate,\n        const DayCounter& dayCounter,\n
      \       const ext::shared_ptr<OneFactorAffineModel>& model,\n        const std::vector<Handle<Quote>
      >& jumps,\n        const std::vector<Date>& jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - settlementDays
    - ' calendar'
    - ' dayCounter'
    - ' model'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - Natural
    - Calendar
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 387
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       Natural settlementDays,\n        const Calendar& calendar,\n        const
      DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const std::vector<Handle<Quote> >& jumps,\n        const std::vector<Date>&
      jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:399,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:400,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' calendar'
    - ' jumps'
    - ' jumpDates'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - Calendar
    - std::vector<Handle<Quote> >
    - std::vector<Date>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 390
    functionDepth: 2
    functionLinenumber: 390
    functionLinenumberEnd: 402
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const Calendar& calendar,\n        const std::vector<Handle<Quote>
      >& jumps,\n        const std::vector<Date>& jumpDates,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:412,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:413,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' calendar'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - Calendar
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 415
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const Calendar& calendar,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:424,1
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:424,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:425,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ' dates'
    - ' hazardRates'
    - ' dayCounter'
    - ' model'
    - ' interpolator'
    argTypes:
    - std::vector<Date>
    - std::vector<Rate>
    - DayCounter
    - ext::shared_ptr<OneFactorAffineModel>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 427
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 0
    functionsReached:
    - at
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    - Calendar
    - std::vector<Time>
    linkageType: ''
    returnType: void
    signature: "void InterpolatedAffineHazardRateCurve<T>::InterpolatedAffineHazardRateCurve(\n
      \       const std::vector<Date>& dates,\n        const std::vector<Rate>& hazardRates,\n
      \       const DayCounter& dayCounter,\n        const ext::shared_ptr<OneFactorAffineModel>&
      model,\n        const T& interpolator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:432,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:432,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:434,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::setupTimes
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:437,1
    - Dst: dayCounter
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:437,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::setupInterpolation
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:438,1
    - Dst: QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::update
      Src: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 440
    functionName: QuantLib::InterpolatedAffineHazardRateCurve<T>::initialize
    functionSourceFile: /src/quantlib/ql/experimental/credit/interpolatedaffinehazardratecurve.hpp
    functionUses: 6
    functionsReached:
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::setupInterpolation
    - dayCounter
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::setupTimes
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::data_::size
    - QuantLib::InterpolatedAffineHazardRateCurve<T>::interpolation_::update
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void InterpolatedAffineHazardRateCurve<T>::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:62,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:62,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:63,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:63,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:64,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:70,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:71,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:75,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 14
    argNames:
    - attachment
    - detachment
    - nominals
    - ' basket'
    - copula
    - protectionSeller
    - premiumSchedule
    - premiumRate
    - dayCounter
    - recoveryRate
    - upfrontPremiumRate
    - yieldTS
    - nBuckets
    - ' integrationStep'
    argTypes:
    - Real
    - Real
    - vector<Real>
    - vector<Handle<DefaultProbabilityTermStructure> >
    - Handle<OneFactorCopula>
    - bool
    - Schedule
    - Rate
    - DayCounter
    - Rate
    - Rate
    - Handle<YieldTermStructure>
    - Size
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 81
    functionName: QuantLib::CDO::CDO
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - push_back
    - registerWith
    - QuantLib::CDO::size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CDO::CDO(Real attachment,\n             Real detachment,\n             vector<Real>
      nominals,\n             const vector<Handle<DefaultProbabilityTermStructure>
      >& basket,\n             Handle<OneFactorCopula> copula,\n             bool
      protectionSeller,\n             Schedule premiumSchedule,\n             Rate
      premiumRate,\n             DayCounter dayCounter,\n             Rate recoveryRate,\n
      \            Rate upfrontPremiumRate,\n             Handle<YieldTermStructure>
      yieldTS,\n             Size nBuckets,\n             const Period& integrationStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:85,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::CDO::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool CDO::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::CDO::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CDO::setupExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:96,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:99,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:100,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:101,1
    - Dst: integral
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:104,1
    - Dst: Distribution::trancheExpectedValue
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 115
    functionName: QuantLib::CDO::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - integral
    - defaultProbability
    - Distribution::trancheExpectedValue
    - QuantLib::CDO::size
    - front
    linkageType: ''
    returnType: Real
    signature: Real CDO::expectedTrancheLoss (Date d) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:120,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:120,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:122,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:136,1
    - Dst: QuantLib::CDO::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:138,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:140,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:149,1
    - Dst: QuantLib::CDO::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:154,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:157,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:158,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:164,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:174,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 185
    functionName: QuantLib::CDO::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - yearFraction
    - empty
    - Null<Real>
    - discount
    - QuantLib::CDO::size
    - QuantLib::CDO::expectedTrancheLoss
    - NullCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CDO::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::CDO::premiumValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::premiumValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: QuantLib::CDO::protectionValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::protectionValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::CDO::error
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Size
    signature: Size CDO::error () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: QuantLib::CDO::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::fairPremium () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:43,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:44,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:45,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:49,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:50,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:54,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:55,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:59,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:62,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:62,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:63,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:63,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:64,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:66,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:69,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:70,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:71,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:74,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:75,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 14
    argNames:
    - attachment
    - detachment
    - nominals
    - ' basket'
    - copula
    - protectionSeller
    - premiumSchedule
    - premiumRate
    - dayCounter
    - recoveryRate
    - upfrontPremiumRate
    - yieldTS
    - nBuckets
    - ' integrationStep'
    argTypes:
    - Real
    - Real
    - vector<Real>
    - vector<Handle<DefaultProbabilityTermStructure> >
    - Handle<OneFactorCopula>
    - bool
    - Schedule
    - Rate
    - DayCounter
    - Rate
    - Rate
    - Handle<YieldTermStructure>
    - Size
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 81
    functionName: QuantLib::CDO::CDO
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::move
    - push_back
    - registerWith
    - QuantLib::CDO::size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CDO::CDO(Real attachment,\n             Real detachment,\n             vector<Real>
      nominals,\n             const vector<Handle<DefaultProbabilityTermStructure>
      >& basket,\n             Handle<OneFactorCopula> copula,\n             bool
      protectionSeller,\n             Schedule premiumSchedule,\n             Rate
      premiumRate,\n             DayCounter dayCounter,\n             Rate recoveryRate,\n
      \            Rate upfrontPremiumRate,\n             Handle<YieldTermStructure>
      yieldTS,\n             Size nBuckets,\n             const Period& integrationStep)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:85,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:85,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: QuantLib::CDO::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool CDO::isExpired () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::CDO::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void CDO::setupExpired() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:96,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:99,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:100,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:101,1
    - Dst: integral
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:104,1
    - Dst: Distribution::trancheExpectedValue
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 115
    functionName: QuantLib::CDO::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 1
    functionsReached:
    - integral
    - defaultProbability
    - Distribution::trancheExpectedValue
    - QuantLib::CDO::size
    - front
    linkageType: ''
    returnType: Real
    signature: Real CDO::expectedTrancheLoss (Date d) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:120,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:120,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:122,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:136,1
    - Dst: QuantLib::CDO::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:138,1
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:140,1
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:149,1
    - Dst: QuantLib::CDO::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:154,1
    - Dst: yearFraction
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:157,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:158,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:164,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:174,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 185
    functionName: QuantLib::CDO::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - yearFraction
    - empty
    - Null<Real>
    - discount
    - QuantLib::CDO::size
    - QuantLib::CDO::expectedTrancheLoss
    - NullCalendar
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CDO::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::CDO::premiumValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::premiumValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: QuantLib::CDO::protectionValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::protectionValue () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionName: QuantLib::CDO::error
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Size
    signature: Size CDO::error () const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/cdo.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: QuantLib::CDO::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.cpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Rate
    signature: Rate CDO::fairPremium () const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:29,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:33,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: QuantLib::OneFactorCopula::inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - p
    - m
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::OneFactorCopula::conditionalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 6
    functionsReached:
    - QL_REQUIRE
    - calculate
    - value
    - QuantLib::OneFactorCopula::inverseCumulativeY
    - cumulativeZ
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::conditionalProbability(Real p, Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:50,1
    - Dst: vector::size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:51,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' prob'
    - m
    argTypes:
    - vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::OneFactorCopula::conditionalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 7
    functionsReached:
    - size
    - QuantLib::OneFactorCopula::conditionalProbability
    - vector::size
    - calculate
    linkageType: ''
    returnType: vector<Real>
    signature: "vector<Real> OneFactorCopula::conditionalProbability(\n                                                     const
      vector<Real>& prob,\n                                                     Real
      m) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:61,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:64,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:67,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 75
    functionName: QuantLib::OneFactorCopula::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - calculate
    - empty
    - size
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::cumulativeY (Real y) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:82,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:85,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:88,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::OneFactorCopula::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - calculate
    - empty
    - size
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::inverseCumulativeY (Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:101,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:104,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:105,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:106,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:106,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:110,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:111,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:112,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:112,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:125,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:125,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:131,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:132,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:133,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:133,1
    - Dst: QuantLib::OneFactorCopula::cumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:146,1
    - Dst: QuantLib::OneFactorCopula::cumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:152,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:153,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:154,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 157
    functionName: QuantLib::OneFactorCopula::checkMoments
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - fabs
    - QuantLib::OneFactorCopula::steps
    - QuantLib::OneFactorCopula::cumulativeY
    - pow
    - cumulativeZ
    - QuantLib::OneFactorCopula::m
    - QL_REQUIRE
    linkageType: ''
    returnType: int
    signature: int OneFactorCopula::checkMoments (Real tolerance) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:29,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:33,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: QuantLib::OneFactorCopula::inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:35,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - p
    - m
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionName: QuantLib::OneFactorCopula::conditionalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 7
    functionsReached:
    - QL_REQUIRE
    - calculate
    - value
    - QuantLib::OneFactorCopula::inverseCumulativeY
    - cumulativeZ
    - sqrt
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::conditionalProbability(Real p, Real m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:50,1
    - Dst: vector::size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:51,1
    - Dst: QuantLib::OneFactorCopula::conditionalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' prob'
    - m
    argTypes:
    - vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: QuantLib::OneFactorCopula::conditionalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 8
    functionsReached:
    - size
    - QuantLib::OneFactorCopula::conditionalProbability
    - vector::size
    - calculate
    linkageType: ''
    returnType: vector<Real>
    signature: "vector<Real> OneFactorCopula::conditionalProbability(\n                                                     const
      vector<Real>& prob,\n                                                     Real
      m) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:61,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:61,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:64,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:65,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:67,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - y
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 75
    functionName: QuantLib::OneFactorCopula::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 1
    functionsReached:
    - QL_REQUIRE
    - calculate
    - empty
    - size
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::cumulativeY (Real y) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:82,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:82,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:85,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:88,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 96
    functionName: QuantLib::OneFactorCopula::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 2
    functionsReached:
    - QL_REQUIRE
    - calculate
    - empty
    - size
    - back
    - front
    linkageType: ''
    returnType: Real
    signature: Real OneFactorCopula::inverseCumulativeY (Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:101,1
    - Dst: QuantLib::OneFactorCopula::steps
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:104,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:105,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:106,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:106,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QuantLib::OneFactorCopula::m
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QuantLib::OneFactorCopula::densitydm
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:107,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:110,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:110,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:111,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:111,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:112,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:112,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:125,1
    - Dst: cumulativeZ
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:125,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:131,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:131,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:132,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:133,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:133,1
    - Dst: QuantLib::OneFactorCopula::cumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:146,1
    - Dst: QuantLib::OneFactorCopula::cumulativeY
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:146,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:152,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:153,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:154,1
    - Dst: fabs
      Src: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp:154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 1
    argNames:
    - tolerance
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 157
    functionName: QuantLib::OneFactorCopula::checkMoments
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactorcopula.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorCopula::densitydm
    - calculate
    - fabs
    - QuantLib::OneFactorCopula::steps
    - QuantLib::OneFactorCopula::cumulativeY
    - pow
    - cumulativeZ
    - QuantLib::OneFactorCopula::m
    - QL_REQUIRE
    linkageType: ''
    returnType: int
    signature: int OneFactorCopula::checkMoments (Real tolerance) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecoveryRateQuote::makeIsdaMap
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::makeIsdaConvMap
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecoveryRateQuote::makeIsdaMap
    linkageType: ''
    returnType: std::map<Seniority, Real>
    signature: std::map<Seniority, Real> makeIsdaConvMap()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - value
    - seniority
    argTypes:
    - Real
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::RecoveryRateQuote::RecoveryRateQuote
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RecoveryRateQuote::RecoveryRateQuote(Real value,\n                                         Seniority
      seniority)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::RecoveryRateQuote::setValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Real
    signature: Real RecoveryRateQuote::setValue(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecoveryRateQuote::setValue
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::RecoveryRateQuote::reset
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::RecoveryRateQuote::setValue
    linkageType: ''
    returnType: void
    signature: void RecoveryRateQuote::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecoveryRateQuote::makeIsdaMap
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: QuantLib::makeIsdaConvMap
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::RecoveryRateQuote::makeIsdaMap
    linkageType: ''
    returnType: std::map<Seniority, Real>
    signature: std::map<Seniority, Real> makeIsdaConvMap()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:40,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - value
    - seniority
    argTypes:
    - Real
    - Seniority
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: QuantLib::RecoveryRateQuote::RecoveryRateQuote
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void RecoveryRateQuote::RecoveryRateQuote(Real value,\n                                         Seniority
      seniority)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: QuantLib::RecoveryRateQuote::setValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 1
    functionsReached:
    - notifyObservers
    linkageType: ''
    returnType: Real
    signature: Real RecoveryRateQuote::setValue(Real value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RecoveryRateQuote::setValue
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:55,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: QuantLib::RecoveryRateQuote::reset
    functionSourceFile: /src/quantlib/ql/experimental/credit/recoveryratequote.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - QuantLib::RecoveryRateQuote::setValue
    linkageType: ''
    returnType: void
    signature: void RecoveryRateQuote::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::DefaultLossModel::DefaultLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultLossModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::DefaultLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::DefaultLossModel::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Probability
    signature: "Probability probOverLoss(\n            const Date& d, Real lossFraction)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::DefaultLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::DefaultLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Real percentile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::DefaultLossModel::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> splitVaRLevel(const Date& d, Real loss) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::DefaultLossModel::splitESFLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> splitESFLevel(const Date& d, Real loss) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::DefaultLossModel::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> lossDistribution(const Date&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::DefaultLossModel::densityTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real densityTrancheLoss(\n            const Date& d, Real lossFraction)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::DefaultLossModel::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> probsBeingNthEvent(Size n, const Date& d)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::DefaultLossModel::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real defaultCorrelation(const Date& d, Size iName, \n            Size
      jName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::DefaultLossModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iName
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::DefaultLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real expectedRecovery(const Date&, Size iName, \n            const
      DefaultProbKey&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: ext::shared_ptr<Basket>
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: resetModel
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bskt
    argTypes:
    - Basket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 154
    functionName: QuantLib::DefaultLossModel::setBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - resetModel
    - ext::shared_ptr<Basket>
    - linkTo
    linkageType: ''
    returnType: void
    signature: void setBasket(Basket* bskt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::DefaultLossModel::DefaultLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultLossModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: QuantLib::DefaultLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::DefaultLossModel::probOverLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Probability
    signature: "Probability probOverLoss(\n            const Date& d, Real lossFraction)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: QuantLib::DefaultLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: QuantLib::DefaultLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Real percentile) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: QuantLib::DefaultLossModel::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> splitVaRLevel(const Date& d, Real loss) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::DefaultLossModel::splitESFLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> splitESFLevel(const Date& d, Real loss) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: QuantLib::DefaultLossModel::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> lossDistribution(const Date&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - lossFraction
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: QuantLib::DefaultLossModel::densityTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real densityTrancheLoss(\n            const Date& d, Real lossFraction)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::DefaultLossModel::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Probability>
    signature: std::vector<Probability> probsBeingNthEvent(Size n, const Date& d)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: QuantLib::DefaultLossModel::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real defaultCorrelation(const Date& d, Size iName, \n            Size
      jName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::DefaultLossModel::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Probability
    signature: Probability probAtLeastNEvents(Size n, const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iName
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::DefaultLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: "Real expectedRecovery(const Date&, Size iName, \n            const
      DefaultProbKey&) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: linkTo
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: ext::shared_ptr<Basket>
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: null_deleter
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:151,1
    - Dst: resetModel
      Src: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bskt
    argTypes:
    - Basket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 154
    functionName: QuantLib::DefaultLossModel::setBasket
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaultlossmodel.hpp
    functionUses: 0
    functionsReached:
    - null_deleter
    - resetModel
    - ext::shared_ptr<Basket>
    - linkTo
    linkageType: ''
    returnType: void
    signature: void setBasket(Basket* bskt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::RiskyAssetSwap::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::RiskyAssetSwap::spread
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::RiskyAssetSwap::fixedPayer
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool fixedPayer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::RiskyAssetSwap::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::RiskyAssetSwap::spread
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate spread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::RiskyAssetSwap::fixedPayer
    functionSourceFile: /src/quantlib/ql/experimental/credit/riskyassetswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool fixedPayer() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::CorrelationTermStructure::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention CorrelationTermStructure::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:84,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:84,1
    - Dst: QuantLib::CorrelationTermStructure::businessDayConvention
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::CorrelationTermStructure::dateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.hpp
    functionUses: 0
    functionsReached:
    - calendar
    - QuantLib::CorrelationTermStructure::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date CorrelationTermStructure::dateFromTenor(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::CorrelationTermStructure::businessDayConvention
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: BusinessDayConvention
    signature: BusinessDayConvention CorrelationTermStructure::businessDayConvention()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calendar
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:84,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:84,1
    - Dst: QuantLib::CorrelationTermStructure::businessDayConvention
      Src: /src/quantlib/ql/experimental/credit/correlationstructure.hpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::CorrelationTermStructure::dateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/credit/correlationstructure.hpp
    functionUses: 0
    functionsReached:
    - calendar
    - QuantLib::CorrelationTermStructure::businessDayConvention
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date CorrelationTermStructure::dateFromTenor(const Period& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:59,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - " \n                copula"
    - nBuckets
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::HomogeneousPoolLossModel::HomogeneousPoolLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HomogeneousPoolLossModel(\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& \n                copula,\n            Size nBuckets,\n            Real max
      = 5.,\n            Real min = -5.,\n            Size nSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 73
    functionName: QuantLib::HomogeneousPoolLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:75,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::HomogeneousPoolLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - lossDistrib
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:79,1
    - Dst: Distribution::tranche
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:80,1
    - Dst: Distribution::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::HomogeneousPoolLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - Distribution::tranche
    - Distribution::expectedShortfall
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Probability percentile) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:110,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:110,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:111,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:112,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:112,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:113,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:114,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:115,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:116,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:117,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:119,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionName: QuantLib::HomogeneousPoolLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void HomogeneousPoolLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:129,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:131,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:134,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:134,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:135,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:136,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:137,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:148,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:149,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:150,1
    - Dst: bucktLDistBuff
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:152,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:153,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:157,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:157,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 161
    functionName: QuantLib::HomogeneousPoolLossModel<CP>::lossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - begin
    - remainingProbabilities
    - std::vector::size
    - inverseCumulativeY
    - density
    - Distribution::addDensity
    - std::multiplies<>
    - recoveries
    - Distribution::density
    - bucktLDistBuff
    - std::transform
    - size
    - std::back_inserter
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: Distribution
    signature: "Distribution HomogeneousPoolLossModel<CP>::lossDistrib(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:59,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - " \n                copula"
    - nBuckets
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionName: QuantLib::HomogeneousPoolLossModel::HomogeneousPoolLossModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void HomogeneousPoolLossModel(\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& \n                copula,\n            Size nBuckets,\n            Real max
      = 5.,\n            Real min = -5.,\n            Size nSteps = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 73
    functionName: QuantLib::HomogeneousPoolLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:75,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: QuantLib::HomogeneousPoolLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - lossDistrib
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real percentile) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lossDistrib
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:79,1
    - Dst: Distribution::tranche
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:80,1
    - Dst: Distribution::expectedShortfall
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: QuantLib::HomogeneousPoolLossModel::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - Distribution::tranche
    - Distribution::expectedShortfall
    - lossDistrib
    linkageType: ''
    returnType: Real
    signature: Real expectedShortfall(const Date& d, Probability percentile) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:110,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:110,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:111,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:112,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:112,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:113,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:114,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:115,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:116,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:117,1
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:119,1
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionName: QuantLib::HomogeneousPoolLossModel<CP>::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - currentLink
    - remainingDetachmentAmount
    - resetBasket
    - remainingNotional
    - remainingNotionals
    - std::min
    linkageType: ''
    returnType: void
    signature: void HomogeneousPoolLossModel<CP>::resetModel()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:129,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:130,1
    - Dst: std::back_inserter
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:131,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:133,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:134,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:134,1
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:135,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:136,1
    - Dst: inverseCumulativeY
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:137,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:147,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:148,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:149,1
    - Dst: conditionalDefaultProbabilityInvP
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:150,1
    - Dst: bucktLDistBuff
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:152,1
    - Dst: density
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:153,1
    - Dst: Distribution::addDensity
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:157,1
    - Dst: Distribution::density
      Src: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp:157,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 161
    functionName: QuantLib::HomogeneousPoolLossModel<CP>::lossDistrib
    functionSourceFile: /src/quantlib/ql/experimental/credit/homogeneouspooldef.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - begin
    - remainingProbabilities
    - std::vector::size
    - inverseCumulativeY
    - density
    - Distribution::addDensity
    - std::multiplies<>
    - recoveries
    - Distribution::density
    - bucktLDistBuff
    - std::transform
    - size
    - std::back_inserter
    - conditionalDefaultProbabilityInvP
    - std::vector::push_back
    linkageType: ''
    returnType: Distribution
    signature: "Distribution HomogeneousPoolLossModel<CP>::lossDistrib(\n        const
      Date& d) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - defType
    - restType
    argTypes:
    - AtomicDefault::Type
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::DefaultType::DefaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultType::DefaultType(AtomicDefault::Type defType,\n                             Restructuring::Type
      restType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:36,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:36,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:37,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultType
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: operator==(const DefaultType& lhs, const DefaultType& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.cpp
    functionUses: 0
    functionsReached:
    - restructuringType
    - defaultType
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultType& lhs, const DefaultType& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - defType
    - restType
    argTypes:
    - AtomicDefault::Type
    - Restructuring::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionName: QuantLib::DefaultType::DefaultType
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void DefaultType::DefaultType(AtomicDefault::Type defType,\n                             Restructuring::Type
      restType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:36,1
    - Dst: defaultType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:36,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:37,1
    - Dst: restructuringType
      Src: /src/quantlib/ql/experimental/credit/defaulttype.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - DefaultType
    - DefaultType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: operator==(const DefaultType& lhs, const DefaultType& rhs)
    functionSourceFile: /src/quantlib/ql/experimental/credit/defaulttype.cpp
    functionUses: 0
    functionsReached:
    - restructuringType
    - defaultType
    linkageType: ''
    returnType: bool
    signature: bool operator==(const DefaultType& lhs, const DefaultType& rhs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:79,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:80,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:80,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:84,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::GaussianLHPLossModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - BivariateCumulativeNormalDistribution
    - empty
    - value
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::GaussianLHPLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:100,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:101,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:102,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:103,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:104,1
    - Dst: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 98
    functionDepth: 4
    functionLinenumber: 98
    functionLinenumberEnd: 115
    functionName: QuantLib::GaussianLHPLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    - remainingDetachmentAmount
    - remainingNotional
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' ik'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::GaussianLHPLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date& d, Size iName, const DefaultProbKey&
      ik) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:143,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:144,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:145,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:146,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:147,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    - Dst: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 142
    functionDepth: 4
    functionLinenumber: 142
    functionLinenumberEnd: 151
    functionName: QuantLib::GaussianLHPLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    - remainingDetachmentAmount
    - remainingNotional
    - std::max
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real perctl) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:156,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:158,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 161
    functionName: QuantLib::GaussianLHPLossModel::averageProb
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 7
    functionsReached:
    - std::inner_product
    - std::vector::begin
    - std::vector::end
    - remainingProbabilities
    - Real
    - remainingNotionals
    - remainingNotional
    linkageType: ''
    returnType: Probability
    signature: Probability averageProb(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:175,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:177,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:177,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:178,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:179,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:179,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:180,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:181,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:181,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:186,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:186,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:189,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 190
    functionName: QuantLib::GaussianLHPLossModel::averageRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 7
    functionsReached:
    - value
    - std::inner_product
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - remainingProbabilities
    - Real
    - remainingNotionals
    - std::multiplies<>
    - std::transform
    - remainingSize
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: "Real averageRecovery(\n            const Date& d) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:79,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:79,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:80,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:80,1
    - Dst: BivariateCumulativeNormalDistribution
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:81,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:84,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: QuantLib::GaussianLHPLossModel::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - BivariateCumulativeNormalDistribution
    - empty
    - value
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::GaussianLHPLossModel::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:100,1
    - Dst: QuantLib::GaussianLHPLossModel::averageRecovery
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:101,1
    - Dst: QuantLib::GaussianLHPLossModel::averageProb
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:102,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:103,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:104,1
    - Dst: QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 98
    functionDepth: 4
    functionLinenumber: 98
    functionLinenumberEnd: 115
    functionName: QuantLib::GaussianLHPLossModel::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::expectedTrancheLossImpl
    - remainingDetachmentAmount
    - remainingNotional
    - QuantLib::GaussianLHPLossModel::averageProb
    - QuantLib::GaussianLHPLossModel::averageRecovery
    linkageType: ''
    returnType: Real
    signature: Real expectedTrancheLoss(const Date& d) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: currentLink
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' d'
    - iName
    - ' ik'
    argTypes:
    - Date
    - Size
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: QuantLib::GaussianLHPLossModel::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - currentLink
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date& d, Size iName, const DefaultProbKey&
      ik) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:143,1
    - Dst: remainingAttachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:144,1
    - Dst: remainingDetachmentAmount
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:145,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:146,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:147,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    - Dst: QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - perctl
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 142
    functionDepth: 4
    functionLinenumber: 142
    functionLinenumberEnd: 151
    functionName: QuantLib::GaussianLHPLossModel::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 0
    functionsReached:
    - remainingAttachmentAmount
    - QuantLib::GaussianLHPLossModel::percentilePortfolioLossFraction
    - remainingDetachmentAmount
    - remainingNotional
    - std::max
    - std::min
    linkageType: ''
    returnType: Real
    signature: Real percentile(const Date& d, Real perctl) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:156,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:158,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:159,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    - Dst: remainingNotional
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 161
    functionName: QuantLib::GaussianLHPLossModel::averageProb
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 8
    functionsReached:
    - std::inner_product
    - std::vector::begin
    - std::vector::end
    - remainingProbabilities
    - Real
    - remainingNotionals
    - remainingNotional
    linkageType: ''
    returnType: Probability
    signature: Probability averageProb(const Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: remainingProbabilities
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:175,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:177,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:177,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:178,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:179,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:179,1
    - Dst: remainingNotionals
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:180,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:181,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:181,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:182,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:185,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:186,1
    - Dst: std::multiplies<>
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:186,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:188,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:189,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 190
    functionName: QuantLib::GaussianLHPLossModel::averageRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/gaussianlhplossmodel.hpp
    functionUses: 8
    functionsReached:
    - value
    - std::inner_product
    - std::vector::reserve
    - std::vector::begin
    - std::vector::end
    - remainingProbabilities
    - Real
    - remainingNotionals
    - std::multiplies<>
    - std::transform
    - remainingSize
    - std::vector::push_back
    linkageType: ''
    returnType: Real
    signature: "Real averageRecovery(\n            const Date& d) const"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:29,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:31,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:49,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:50,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:51,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:64,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:68,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:68,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:71,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:72,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:73,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:75,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:89,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:93,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:97,1
    - Dst: basket::claim
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:100,1
    - Dst: basket::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:102,1
    - Dst: basket::probsBeingNthEvent
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:107,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:109,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:110,1
    - Dst: basket::remainingSize
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:125,1
    - Dst: basket::claim
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:130,1
    - Dst: basket::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:132,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:142,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:147,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:152,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:157,1
    - Dst: basket::remainingNotional
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:159,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:161,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:162,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:181,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 184
    functionName: QuantLib::IntegralNtdEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralntdengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Real
    - ext::shared_ptr::accrualEndDate
    - basket::probAtLeastNEvents
    - date
    - referenceDate
    - ext::shared_ptr::accrualStartDate
    - begin
    - basket::remainingNotional
    - basket::recoveryRate
    - basket::remainingSize
    - Null<Real>
    - ext::shared_ptr::accruedAmount
    - end
    - basket::probsBeingNthEvent
    - discount
    - QuantLib::detail::instance
    - std::accumulate
    - hasOccurred
    - basket::claim
    - amount
    linkageType: ''
    returnType: void
    signature: void IntegralNtdEngine::calculate() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:29,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:31,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:49,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:50,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:51,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:64,1
    - Dst: amount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:68,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:68,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:71,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:72,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:73,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:75,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:89,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:93,1
    - Dst: basket::probAtLeastNEvents
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:97,1
    - Dst: basket::claim
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:100,1
    - Dst: basket::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:102,1
    - Dst: basket::probsBeingNthEvent
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:107,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:109,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:109,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:110,1
    - Dst: basket::remainingSize
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:125,1
    - Dst: basket::claim
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:130,1
    - Dst: basket::recoveryRate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:132,1
    - Dst: ext::shared_ptr::accruedAmount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:142,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:147,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:152,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:157,1
    - Dst: basket::remainingNotional
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:159,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:161,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:162,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/integralntdengine.cpp:181,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 184
    functionName: QuantLib::IntegralNtdEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/integralntdengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Real
    - ext::shared_ptr::accrualEndDate
    - basket::probAtLeastNEvents
    - date
    - referenceDate
    - ext::shared_ptr::accrualStartDate
    - begin
    - basket::remainingNotional
    - basket::recoveryRate
    - basket::remainingSize
    - Null<Real>
    - ext::shared_ptr::accruedAmount
    - end
    - basket::probsBeingNthEvent
    - discount
    - QuantLib::detail::instance
    - std::accumulate
    - hasOccurred
    - basket::claim
    - amount
    linkageType: ''
    returnType: void
    signature: void IntegralNtdEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: '& underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CreditDefaultSwap>
    signature: ext::shared_ptr<CreditDefaultSwap> & underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::CdsOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: '& underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<CreditDefaultSwap>
    signature: ext::shared_ptr<CreditDefaultSwap> & underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 92
    functionName: QuantLib::CdsOption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdsoption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::Pool::Pool
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::clear
    linkageType: ''
    returnType: void
    signature: void Pool::Pool()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::size
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::Pool::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::Pool::size
    linkageType: ''
    returnType: Size
    signature: Size Pool::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:35,1
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:36,1
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::Pool::clear
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::Pool::clear
    linkageType: ''
    returnType: void
    signature: void Pool::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::Pool::has
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool Pool::has(const std::string& name) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:46,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' name'
    - ' issuer'
    - ' contractTrigger'
    argTypes:
    - std::string
    - Issuer
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::Pool::add
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::has
    - push_back
    linkageType: ''
    returnType: void
    signature: "void Pool::add (const std::string& name, const Issuer& issuer, \n
      \       const DefaultProbKey& contractTrigger)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:55,1
    - Dst: has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:55,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: '& Pool::get (const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Issuer
    signature: Issuer & Pool::get (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:60,1
    - Dst: has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:60,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& Pool::defaultKey (const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: DefaultProbKey
    signature: DefaultProbKey & Pool::defaultKey (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:65,1
    - Dst: QuantLib::Pool::has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:65,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::Pool::getTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Pool::getTime (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - time
    argTypes:
    - std::string
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::Pool::setTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Pool::setTime(const std::string& name, Real time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: '& Pool::names() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & Pool::names() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:79,1
    - Dst: QuantLib::Pool::size
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: QuantLib::Pool::defaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::Pool::size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: std::vector<DefaultProbKey> Pool::defaultKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: QuantLib::Pool::Pool
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::clear
    linkageType: ''
    returnType: void
    signature: void Pool::Pool()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::size
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: QuantLib::Pool::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::Pool::size
    linkageType: ''
    returnType: Size
    signature: Size Pool::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:35,1
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:36,1
    - Dst: QuantLib::Pool::clear
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::Pool::clear
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::Pool::clear
    linkageType: ''
    returnType: void
    signature: void Pool::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:41,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: QuantLib::Pool::has
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 2
    functionsReached:
    - end
    - find
    linkageType: ''
    returnType: bool
    signature: bool Pool::has(const std::string& name) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Pool::has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:46,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ' name'
    - ' issuer'
    - ' contractTrigger'
    argTypes:
    - std::string
    - Issuer
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: QuantLib::Pool::add
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::has
    - push_back
    linkageType: ''
    returnType: void
    signature: "void Pool::add (const std::string& name, const Issuer& issuer, \n
      \       const DefaultProbKey& contractTrigger)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:55,1
    - Dst: has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:55,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: '& Pool::get (const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Issuer
    signature: Issuer & Pool::get (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:60,1
    - Dst: has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:60,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& Pool::defaultKey (const std::string& name) const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: DefaultProbKey
    signature: DefaultProbKey & Pool::defaultKey (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:65,1
    - Dst: QuantLib::Pool::has
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:65,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: QuantLib::Pool::getTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Pool::has
    - find
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real Pool::getTime (const std::string& name) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - time
    argTypes:
    - std::string
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: QuantLib::Pool::setTime
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Pool::setTime(const std::string& name, Real time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: '& Pool::names() const'
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> & Pool::names() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:79,1
    - Dst: QuantLib::Pool::size
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:79,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/pool.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: QuantLib::Pool::defaultKeys
    functionSourceFile: /src/quantlib/ql/experimental/credit/pool.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::Pool::size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<DefaultProbKey>
    signature: std::vector<DefaultProbKey> Pool::defaultKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:31,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' e'
    - ' start'
    - ' end'
    argTypes:
    - ext::shared_ptr<DefaultEvent>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::between
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: "bool between(const ext::shared_ptr<DefaultEvent>& e,\n                     const
      Date& start,\n                     const Date& end,\n                     bool
      includeRefDate = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:31,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' e'
    - ' start'
    - ' end'
    argTypes:
    - ext::shared_ptr<DefaultEvent>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::between
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: "bool between(const ext::shared_ptr<DefaultEvent>& e,\n                     const
      Date& start,\n                     const Date& end,\n                     bool
      includeRefDate = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:52,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 5
    argNames:
    - ' eventTypes'
    - ' currencies'
    - ' seniorities'
    - ' curves'
    - events
    argTypes:
    - std::vector<std::vector<ext::shared_ptr<DefaultType> > >
    - std::vector<Currency>
    - std::vector<Seniority>
    - std::vector<Handle<DefaultProbabilityTermStructure> >
    - DefaultEventSet
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 57
    functionName: QuantLib::Issuer::Issuer
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - size
    - emplace_back
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Issuer::Issuer(const std::vector<std::vector<ext::shared_ptr<DefaultType>
      > >& eventTypes,\n                   const std::vector<Currency>& currencies,\n
      \                  const std::vector<Seniority>& seniorities,\n                   const
      std::vector<Handle<DefaultProbabilityTermStructure> >& curves,\n                   DefaultEventSet
      events)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: "&\n        Issuer::defaultProbability(const DefaultProbKey& key)
      const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: "Handle<DefaultProbabilityTermStructure> &\n        Issuer::defaultProbability(const
      DefaultProbKey& key) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: matchesDefaultKey
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:76,1
    - Dst: between
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:76,1
    - Dst: ext::shared_ptr<DefaultEvent>
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 4
    argNames:
    - ' start'
    - ' end'
    - ' contractKey'
    - includeRefDate
    argTypes:
    - Date
    - Date
    - DefaultProbKey
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 80
    functionName: QuantLib::Issuer::defaultedBetween
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DefaultEvent>
    - matchesDefaultKey
    - between
    linkageType: ''
    returnType: ext::shared_ptr<DefaultEvent>
    signature: "ext::shared_ptr<DefaultEvent> Issuer::defaultedBetween(const Date&
      start,\n                             const Date& end,\n                             const
      DefaultProbKey& contractKey,\n                             bool includeRefDate\n
      \                            ) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: matchesDefaultKey
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:93,1
    - Dst: between
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:93,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 4
    argNames:
    - ' start'
    - ' end'
    - ' contractKey'
    - includeRefDate
    argTypes:
    - Date
    - Date
    - DefaultProbKey
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 97
    functionName: QuantLib::Issuer::defaultsBetween
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - matchesDefaultKey
    - between
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<DefaultEvent> >
    signature: "std::vector<ext::shared_ptr<DefaultEvent> > Issuer::defaultsBetween(const
      Date& start,\n                            const Date& end,\n                            const
      DefaultProbKey& contractKey,\n                            bool includeRefDate\n
      \                           ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:31,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' e'
    - ' start'
    - ' end'
    argTypes:
    - ext::shared_ptr<DefaultEvent>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::between
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: "bool between(const ext::shared_ptr<DefaultEvent>& e,\n                     const
      Date& start,\n                     const Date& end,\n                     bool
      includeRefDate = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:31,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - ' e'
    - ' start'
    - ' end'
    argTypes:
    - ext::shared_ptr<DefaultEvent>
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: QuantLib::between
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - hasOccurred
    linkageType: ''
    returnType: bool
    signature: "bool between(const ext::shared_ptr<DefaultEvent>& e,\n                     const
      Date& start,\n                     const Date& end,\n                     bool
      includeRefDate = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:46,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:52,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 5
    argNames:
    - ' eventTypes'
    - ' currencies'
    - ' seniorities'
    - ' curves'
    - events
    argTypes:
    - std::vector<std::vector<ext::shared_ptr<DefaultType> > >
    - std::vector<Currency>
    - std::vector<Seniority>
    - std::vector<Handle<DefaultProbabilityTermStructure> >
    - DefaultEventSet
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 57
    functionName: QuantLib::Issuer::Issuer
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - size
    - emplace_back
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void Issuer::Issuer(const std::vector<std::vector<ext::shared_ptr<DefaultType>
      > >& eventTypes,\n                   const std::vector<Currency>& currencies,\n
      \                  const std::vector<Seniority>& seniorities,\n                   const
      std::vector<Handle<DefaultProbabilityTermStructure> >& curves,\n                   DefaultEventSet
      events)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - DefaultProbKey
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: "&\n        Issuer::defaultProbability(const DefaultProbKey& key)
      const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Handle<DefaultProbabilityTermStructure>
    signature: "Handle<DefaultProbabilityTermStructure> &\n        Issuer::defaultProbability(const
      DefaultProbKey& key) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: matchesDefaultKey
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:76,1
    - Dst: between
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:76,1
    - Dst: ext::shared_ptr<DefaultEvent>
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 4
    argNames:
    - ' start'
    - ' end'
    - ' contractKey'
    - includeRefDate
    argTypes:
    - Date
    - Date
    - DefaultProbKey
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 80
    functionName: QuantLib::Issuer::defaultedBetween
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<DefaultEvent>
    - matchesDefaultKey
    - between
    linkageType: ''
    returnType: ext::shared_ptr<DefaultEvent>
    signature: "ext::shared_ptr<DefaultEvent> Issuer::defaultedBetween(const Date&
      start,\n                             const Date& end,\n                             const
      DefaultProbKey& contractKey,\n                             bool includeRefDate\n
      \                            ) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: matchesDefaultKey
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:93,1
    - Dst: between
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:93,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/issuer.cpp:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 4
    argNames:
    - ' start'
    - ' end'
    - ' contractKey'
    - includeRefDate
    argTypes:
    - Date
    - Date
    - DefaultProbKey
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 97
    functionName: QuantLib::Issuer::defaultsBetween
    functionSourceFile: /src/quantlib/ql/experimental/credit/issuer.cpp
    functionUses: 0
    functionsReached:
    - matchesDefaultKey
    - between
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<ext::shared_ptr<DefaultEvent> >
    signature: "std::vector<ext::shared_ptr<DefaultEvent> > Issuer::defaultsBetween(const
      Date& start,\n                            const Date& end,\n                            const
      DefaultProbKey& contractKey,\n                            bool includeRefDate\n
      \                           ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - numFactors
    - numLMVars
    - copula
    - nSims
    - seed
    argTypes:
    - Size
    - Size
    - copulaPolicy
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::RandomLM::RandomLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void RandomLM(Size numFactors, Size numLMVars, copulaPolicy copula,
      Size nSims, BigNatural seed)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:109,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:111,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:112,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::RandomLM::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::LazyObject::update
    - clear
    - empty
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:117,1
    - Dst: ext::make_shared<copulaRNG_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:119,1
    - Dst: QuantLib::RandomLM::performSimulations
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionName: QuantLib::RandomLM::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    - ext::make_shared<copulaRNG_type>
    - QuantLib::RandomLM::performSimulations
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:127,1
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::RandomLM::performSimulations
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    - nextSequence
    linkageType: ''
    returnType: void
    signature: void performSimulations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iSim
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: "&\n            getSim(const Size iSim) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<simEvent<derivedRandomLM<copulaPolicy, USNG> > >
    signature: "std::vector<simEvent<derivedRandomLM<copulaPolicy, USNG> > > &\n            getSim(const
      Size iSim) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent<derivedRandomLM<copulaPolicy, USNG> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::RandomLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    linkageType: ''
    returnType: Real
    signature: "Real getEventRecovery(\n            const simEvent<derivedRandomLM<copulaPolicy,
      USNG> >& evt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 202
    functionName: ~RandomLM() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomLM() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:230,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:233,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:235,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:235,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:243,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:244,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 251
    functionName: QuantLib::RandomLM<D, C, URNG>::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - Date::serialNumber
    - serialNumber
    - QuantLib::detail::instance
    - size
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability RandomLM<D, C, URNG>::probAtLeastNEvents(Size n,\n        const
      Date& d) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:257,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:260,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:263,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:265,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:265,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:271,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:275,1
    - Dst: "std::make_pair<unsigned short,\n                      unsigned short>"
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:275,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:279,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:281,1
    - Dst: std::advance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:283,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:289,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 293
    functionName: QuantLib::RandomLM<D, C, URNG>::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::advance
    - calculate
    - std::transform
    - std::vector::begin
    - std::vector::end
    - serialNumber
    - Date::serialNumber
    - QuantLib::detail::instance
    - "std::make_pair<unsigned short,\n                      unsigned short>"
    - size
    - std::map::size
    - std::map::begin
    - std::map::insert
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Probability>
    signature: "std::vector<Probability> RandomLM<D, C, URNG>::probsBeingNthEvent(Size
      n,\n                                                                      const
      Date& d) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:301,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:304,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:306,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:306,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:314,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:331,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 334
    functionName: QuantLib::RandomLM<D, C, URNG>::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - Date::serialNumber
    - serialNumber
    - QuantLib::detail::instance
    - std::sqrt
    - size
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::defaultCorrelation(const Date& d,\n        Size
      iName, Size jName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::expectedTrancheLoss(\n        const Date&
      d) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:348,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:349,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:350,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:350,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:352,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:353,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:358,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:361,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:363,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:368,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:368,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:369,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:370,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:371,1
    - Dst: GeneralStatistics::add
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:374,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:375,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:375,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: GeneralStatistics::mean
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: GeneralStatistics::errorEstimate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:379,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' d'
    - confidencePerc
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 345
    functionDepth: 3
    functionLinenumber: 345
    functionLinenumberEnd: 380
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - detachmentAmount
    - names
    - GeneralStatistics::add
    - size
    - std::min
    - calculate
    - serialNumber
    - GeneralStatistics::errorEstimate
    - std::max
    - getSim
    - GeneralStatistics::mean
    - std::make_pair
    - QuantLib::InverseCumulativeNormal::standard_value
    - getEventRecovery
    - Date::serialNumber
    - QuantLib::detail::instance
    - attachmentAmount
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> RandomLM<D, C, URNG>::expectedTrancheLossInterval(\n
      \       const Date& d, Probability confidencePerc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::computeHistogram
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:386,1
    - Dst: Histogram::frequency
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:390,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:391,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:391,1
    - Dst: Histogram::bins
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:392,1
    - Dst: Histogram::frequency
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:393,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    - Dst: Histogram::breaks
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 397
    functionName: QuantLib::RandomLM<D, C, URNG>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Histogram::frequency
    - Histogram::breaks
    - std::make_pair
    - Histogram::bins
    - QuantLib::RandomLM<D, C, URNG>::computeHistogram
    - std::map::insert
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> RandomLM<D, C, URNG>::lossDistribution(const
      Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:404,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:405,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:406,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:408,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:410,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:412,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:413,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:416,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:419,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:420,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:426,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:426,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:427,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:428,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:429,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:434,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:434,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:437,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:437,1
    - Dst: Histogram
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 439
    functionName: QuantLib::RandomLM<D, C, URNG>::computeHistogram
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - std::vector::push_back
    - detachmentAmount
    - names
    - size
    - std::min
    - calculate
    - Histogram
    - serialNumber
    - std::max
    - std::vector::size
    - getSim
    - QL_REQUIRE
    - getEventRecovery
    - std::min<Size>
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::set::insert
    - std::vector::back
    - attachmentAmount
    linkageType: ''
    returnType: Histogram
    signature: Histogram RandomLM<D, C, URNG>::computeHistogram(const Date& d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:446,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:447,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:449,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:451,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:452,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:454,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:454,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:460,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:462,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:463,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:469,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:469,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:470,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:471,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:472,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:475,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:475,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:477,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:481,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:483,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:489,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:489,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:493,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ' d'
    - percent
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 521
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - static_cast<Date::serial_type>
    - exposure
    - static_cast<Real>
    - Real
    - Date
    - std::vector::push_back
    - std::sort
    - detachmentAmount
    - names
    - std::ceil
    - size
    - std::min
    - calculate
    - serialNumber
    - std::max
    - getSim
    - QL_REQUIRE
    - std::distance
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::accumulate
    - attachmentAmount
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::expectedShortfall(const Date& d,\n        Real
      percent) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:527,1
    - Dst: QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - perc
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 528
    functionName: QuantLib::RandomLM<D, C, URNG>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::get<0>
    - QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
    linkageType: ''
    returnType: Real
    signature: Real RandomLM<D, C, URNG>::percentile(const Date& d, Real perc) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:541,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:543,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:545,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:546,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:549,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:550,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:550,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:552,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:554,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:555,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:560,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:560,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:561,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:562,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:563,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:566,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:566,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:569,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:573,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:573,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:611,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:616,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 538
    functionDepth: 1
    functionLinenumber: 538
    functionLinenumberEnd: 617
    functionName: QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Size>
    - static_cast<Date::serial_type>
    - exposure
    - Real
    - Date
    - std::vector::push_back
    - std::make_tuple
    - std::sort
    - detachmentAmount
    - incompleteBetaFunction
    - names
    - floor
    - size
    - std::min
    - calculate
    - serialNumber
    - std::max
    - getSim
    - QL_REQUIRE
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - attachmentAmount
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: "std::tuple<Real, Real, Real> RandomLM<D, C, URNG>::percentileAndInterval(const
      Date& d,\n                                                                             Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:624,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' date'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 629
    functionName: QuantLib::RandomLM<D, C, URNG>::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector::begin
    - std::vector::end
    - QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RandomLM<D, C, URNG>::splitVaRLevel(\n        const
      Date& date, Real loss) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:641,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:643,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:644,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:645,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:650,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:651,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:651,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:654,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:659,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:660,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:665,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:665,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:666,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:667,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:668,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:670,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:673,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:673,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::assign
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:685,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:691,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:691,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:692,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:693,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:694,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:697,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:697,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:701,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:701,1
    - Dst: add
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:707,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:708,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:708,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:716,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:718,1
    - Dst: mean
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:718,1
    - Dst: errorEstimate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:719,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:720,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:720,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:721,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:721,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:725,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:726,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:727,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - ' date'
    - loss
    - confInterval
    argTypes:
    - Date
    - Real
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 730
    functionName: QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - std::vector::push_back
    - std::sort
    - detachmentAmount
    - mean
    - names
    - std::vector::assign
    - errorEstimate
    - size
    - remainingSize
    - add
    - InverseCumulativeNormal
    - std::min
    - calculate
    - serialNumber
    - push_back
    - std::max
    - std::vector::size
    - getSim
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::vector::back
    - attachmentAmount
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: "std::vector<std::vector<Real> > RandomLM<D, C, URNG>::splitVaRAndError(const
      Date& date, Real loss,\n                                                                           Probability
      confInterval) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dts'
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 754
    functionName: QuantLib::detail::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void Root(const Handle<DefaultProbabilityTermStructure>& dts, Real
      pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:762,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:767,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 769
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Period
    - defaultProbability
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dts'
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 754
    functionName: QuantLib::detail::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void Root(const Handle<DefaultProbabilityTermStructure>& dts, Real
      pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:762,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:767,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 769
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Period
    - defaultProbability
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - d
    argTypes:
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 794
    functionName: QuantLib::simEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simEvent(unsigned int n, unsigned int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 799
    functionName: operator<(const simEvent& evt) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const simEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:819,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:829,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:829,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:830,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<DefaultLatentModel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 831
    functionName: QuantLib::RandomDefaultLM::RandomDefaultLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::registerWith
    - empty
    - std::vector<Real>
    - QuantLib::detail::instance
    - copula
    - size
    - numFactors
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM(const ext::shared_ptr<DefaultLatentModel<copulaPolicy>
      >& model,\n                               const std::vector<Real>& recoveries
      = std::vector<Real>(),\n                               Size nSims = 0, // stats
      will crash on div by zero, FIX ME.\n                               Real accuracy
      = 1.e-6,\n                               BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:841,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:845,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:845,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 847
    functionName: QuantLib::RandomDefaultLM::RandomDefaultLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::registerWith
    - QuantLib::detail::instance
    - copula
    - recoveries
    - size
    - numFactors
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM(\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& model,\n            Size nSims = 0,// stats will crash on div by zero, FIX
      ME.\n            Real accuracy = 1.e-6,\n            BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:868,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:869,1
    - Dst: QuantLib::RandomDefaultLM::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:871,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:872,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: QuantLib::RandomDefaultLM::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:874,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 876
    functionName: QuantLib::RandomDefaultLM::initDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::basket_::defaultKeys
    - QuantLib::RandomDefaultLM::basket_::pool
    - push_back
    - Period
    - names
    - QuantLib::detail::instance
    - get
    - QuantLib::RandomDefaultLM::basket_::size
    linkageType: ''
    returnType: void
    signature: void initDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - defaultSimEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 877
    functionDepth: 0
    functionLinenumber: 877
    functionLinenumberEnd: 879
    functionName: QuantLib::RandomDefaultLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real getEventRecovery(const defaultSimEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iName
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 883
    functionName: QuantLib::RandomDefaultLM::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date&, Size iName, const DefaultProbKey&)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomDefaultLM::latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:887,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factorsSample'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 885
    functionDepth: 1
    functionLinenumber: 885
    functionLinenumberEnd: 888
    functionName: QuantLib::RandomDefaultLM::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::RandomDefaultLM::latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& factorsSample,\n            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 891
    functionName: QuantLib::RandomDefaultLM::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:898,1
    - Dst: QuantLib::RandomDefaultLM::basket_::currentLink
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:898,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 893
    functionDepth: 2
    functionLinenumber: 893
    functionLinenumberEnd: 907
    functionName: QuantLib::RandomDefaultLM::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - resetBasket
    - QuantLib::RandomDefaultLM::basket_::size
    - size
    - QuantLib::RandomDefaultLM::basket_::currentLink
    - QuantLib::LazyObject::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:923,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:925,1
    - Dst: std::vector<defaultSimEvent>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:925,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:927,1
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:929,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:931,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:935,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:935,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:936,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:940,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:940,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:941,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:953,1
    - Dst: defaultSimEvent
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:953,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 920
    functionDepth: 2
    functionLinenumber: 920
    functionLinenumberEnd: 963
    functionName: QuantLib::RandomDefaultLM<C, URNG>::nextSample
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - latentVarValue
    - QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::push_back
    - Brent
    - names
    - QuantLib::RandomDefaultLM<C, URNG>::basket_::pool
    - QuantLib::normalizePseudoRoot
    - get
    - QuantLib::RandomDefaultLM<C, URNG>::basket_::defaultKeys
    - size
    - defaultSimEvent
    - cumulativeY
    - std::vector<defaultSimEvent>
    - QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::back
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM<C, URNG>::nextSample(\n        const std::vector<Real>&
      values) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - numFactors
    - numLMVars
    - copula
    - nSims
    - seed
    argTypes:
    - Size
    - Size
    - copulaPolicy
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: QuantLib::RandomLM::RandomLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void RandomLM(Size numFactors, Size numLMVars, copulaPolicy copula,
      Size nSims, BigNatural seed)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:109,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:111,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:112,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: QuantLib::RandomLM::update
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - QuantLib::LazyObject::update
    - clear
    - empty
    linkageType: ''
    returnType: void
    signature: void update() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:117,1
    - Dst: ext::make_shared<copulaRNG_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:119,1
    - Dst: QuantLib::RandomLM::performSimulations
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionName: QuantLib::RandomLM::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    - ext::make_shared<copulaRNG_type>
    - QuantLib::RandomLM::performSimulations
    linkageType: ''
    returnType: void
    signature: void performCalculations() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:127,1
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: QuantLib::RandomLM::performSimulations
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    - nextSequence
    linkageType: ''
    returnType: void
    signature: void performSimulations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iSim
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: "&\n            getSim(const Size iSim) const"
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<simEvent<derivedRandomLM<copulaPolicy, USNG> > >
    signature: "std::vector<simEvent<derivedRandomLM<copulaPolicy, USNG> > > &\n            getSim(const
      Size iSim) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent<derivedRandomLM<copulaPolicy, USNG> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: QuantLib::RandomLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const derivedRandomLM<copulaPolicy, USNG>* >
    linkageType: ''
    returnType: Real
    signature: "Real getEventRecovery(\n            const simEvent<derivedRandomLM<copulaPolicy,
      USNG> >& evt) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 202
    functionName: ~RandomLM() override
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomLM() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:230,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:231,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:233,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:235,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:235,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:243,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:244,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 251
    functionName: QuantLib::RandomLM<D, C, URNG>::probAtLeastNEvents
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - Date::serialNumber
    - serialNumber
    - QuantLib::detail::instance
    - size
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability RandomLM<D, C, URNG>::probAtLeastNEvents(Size n,\n        const
      Date& d) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:257,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:258,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:260,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:261,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:263,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:265,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:265,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:271,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:275,1
    - Dst: "std::make_pair<unsigned short,\n                      unsigned short>"
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:275,1
    - Dst: std::map::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:279,1
    - Dst: std::map::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:281,1
    - Dst: std::advance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:283,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:288,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:289,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - n
    - ' d'
    argTypes:
    - Size
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 293
    functionName: QuantLib::RandomLM<D, C, URNG>::probsBeingNthEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::advance
    - calculate
    - std::transform
    - std::vector::begin
    - std::vector::end
    - serialNumber
    - Date::serialNumber
    - QuantLib::detail::instance
    - "std::make_pair<unsigned short,\n                      unsigned short>"
    - size
    - std::map::size
    - std::map::begin
    - std::map::insert
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Probability>
    signature: "std::vector<Probability> RandomLM<D, C, URNG>::probsBeingNthEvent(Size
      n,\n                                                                      const
      Date& d) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:301,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:302,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:304,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:306,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:306,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:314,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:316,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:331,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ' d'
    - iName
    - jName
    argTypes:
    - Date
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 334
    functionName: QuantLib::RandomLM<D, C, URNG>::defaultCorrelation
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - Date::serialNumber
    - serialNumber
    - QuantLib::detail::instance
    - std::sqrt
    - size
    - getSim
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::defaultCorrelation(const Date& d,\n        Size
      iName, Size jName) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 338
    functionDepth: 4
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLoss
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::expectedTrancheLoss(\n        const Date&
      d) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:348,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:349,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:350,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:350,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:352,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:353,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:358,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:361,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:363,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:368,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:368,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:369,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:370,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:371,1
    - Dst: GeneralStatistics::add
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:374,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:375,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:375,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: GeneralStatistics::mean
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: GeneralStatistics::errorEstimate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:378,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:379,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ' d'
    - confidencePerc
    argTypes:
    - Date
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 345
    functionDepth: 3
    functionLinenumber: 345
    functionLinenumberEnd: 380
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedTrancheLossInterval
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - detachmentAmount
    - names
    - GeneralStatistics::add
    - size
    - std::min
    - calculate
    - serialNumber
    - GeneralStatistics::errorEstimate
    - std::max
    - getSim
    - GeneralStatistics::mean
    - std::make_pair
    - QuantLib::InverseCumulativeNormal::standard_value
    - getEventRecovery
    - Date::serialNumber
    - QuantLib::detail::instance
    - attachmentAmount
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> RandomLM<D, C, URNG>::expectedTrancheLossInterval(\n
      \       const Date& d, Probability confidencePerc) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::computeHistogram
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:386,1
    - Dst: Histogram::frequency
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:390,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:391,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:391,1
    - Dst: Histogram::bins
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:392,1
    - Dst: Histogram::frequency
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:393,1
    - Dst: std::map::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    - Dst: std::make_pair
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    - Dst: Histogram::breaks
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 397
    functionName: QuantLib::RandomLM<D, C, URNG>::lossDistribution
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Histogram::frequency
    - Histogram::breaks
    - std::make_pair
    - Histogram::bins
    - QuantLib::RandomLM<D, C, URNG>::computeHistogram
    - std::map::insert
    linkageType: ''
    returnType: std::map<Real, Probability>
    signature: std::map<Real, Probability> RandomLM<D, C, URNG>::lossDistribution(const
      Date& d) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:404,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:405,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:406,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:406,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:408,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:410,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:412,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:413,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:416,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:419,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:420,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:426,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:426,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:427,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:428,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:429,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:432,1
    - Dst: std::set::insert
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:434,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:434,1
    - Dst: std::min<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:437,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:437,1
    - Dst: Histogram
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:438,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 439
    functionName: QuantLib::RandomLM<D, C, URNG>::computeHistogram
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - std::vector::push_back
    - detachmentAmount
    - names
    - size
    - std::min
    - calculate
    - Histogram
    - serialNumber
    - std::max
    - std::vector::size
    - getSim
    - QL_REQUIRE
    - getEventRecovery
    - std::min<Size>
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::set::insert
    - std::vector::back
    - attachmentAmount
    linkageType: ''
    returnType: Histogram
    signature: Histogram RandomLM<D, C, URNG>::computeHistogram(const Date& d) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:446,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:447,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:449,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:451,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:452,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:454,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:454,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:460,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:462,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:463,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:469,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:469,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:470,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:471,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:472,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:475,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:475,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:477,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:480,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:481,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:483,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::distance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:488,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:489,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:489,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:492,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:493,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ' d'
    - percent
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 521
    functionName: QuantLib::RandomLM<D, C, URNG>::expectedShortfall
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - static_cast<Date::serial_type>
    - exposure
    - static_cast<Real>
    - Real
    - Date
    - std::vector::push_back
    - std::sort
    - detachmentAmount
    - names
    - std::ceil
    - size
    - std::min
    - calculate
    - serialNumber
    - std::max
    - getSim
    - QL_REQUIRE
    - std::distance
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::accumulate
    - attachmentAmount
    linkageType: ''
    returnType: Real
    signature: "Real RandomLM<D, C, URNG>::expectedShortfall(const Date& d,\n        Real
      percent) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<0>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:527,1
    - Dst: QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - perc
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 525
    functionDepth: 2
    functionLinenumber: 525
    functionLinenumberEnd: 528
    functionName: QuantLib::RandomLM<D, C, URNG>::percentile
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::get<0>
    - QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
    linkageType: ''
    returnType: Real
    signature: Real RandomLM<D, C, URNG>::percentile(const Date& d, Real perc) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:541,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:543,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:545,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:546,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:549,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:550,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:550,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:552,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:554,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:555,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:560,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:560,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:561,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:562,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:563,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:566,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:566,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:569,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:572,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:573,1
    - Dst: floor
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:573,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:587,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:593,1
    - Dst: incompleteBetaFunction
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:597,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:611,1
    - Dst: std::make_tuple
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:616,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 2
    argNames:
    - ' d'
    - percentile
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 538
    functionDepth: 1
    functionLinenumber: 538
    functionLinenumberEnd: 617
    functionName: QuantLib::RandomLM<D, C, URNG>::percentileAndInterval
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - static_cast<Size>
    - static_cast<Date::serial_type>
    - exposure
    - Real
    - Date
    - std::vector::push_back
    - std::make_tuple
    - std::sort
    - detachmentAmount
    - incompleteBetaFunction
    - names
    - floor
    - size
    - std::min
    - calculate
    - serialNumber
    - std::max
    - getSim
    - QL_REQUIRE
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - attachmentAmount
    linkageType: ''
    returnType: std::tuple<Real, Real, Real>
    signature: "std::tuple<Real, Real, Real> RandomLM<D, C, URNG>::percentileAndInterval(const
      Date& d,\n                                                                             Real
      percentile) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:624,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' date'
    - loss
    argTypes:
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 629
    functionName: QuantLib::RandomLM<D, C, URNG>::splitVaRLevel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector::begin
    - std::vector::end
    - QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> RandomLM<D, C, URNG>::splitVaRLevel(\n        const
      Date& date, Real loss) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:641,1
    - Dst: attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:643,1
    - Dst: detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:644,1
    - Dst: remainingSize
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:645,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:650,1
    - Dst: serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:651,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:651,1
    - Dst: getSim
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:654,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:659,1
    - Dst: static_cast<Date::serial_type>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:660,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:665,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:665,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:666,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:667,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:668,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:670,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:673,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:673,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:680,1
    - Dst: std::vector::assign
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:682,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:685,1
    - Dst: exposure
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:691,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:691,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:692,1
    - Dst: Date::serialNumber
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:693,1
    - Dst: getEventRecovery
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:694,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:697,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:697,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:701,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:701,1
    - Dst: add
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:707,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:708,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:708,1
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:716,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:718,1
    - Dst: mean
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:718,1
    - Dst: errorEstimate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:719,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:720,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:720,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:721,1
    - Dst: std::vector::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:721,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:725,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:726,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:727,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - ' date'
    - loss
    - confInterval
    argTypes:
    - Date
    - Real
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 730
    functionName: QuantLib::RandomLM<D, C, URNG>::splitVaRAndError
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - static_cast<Date::serial_type>
    - exposure
    - Date
    - std::vector::push_back
    - std::sort
    - detachmentAmount
    - mean
    - names
    - std::vector::assign
    - errorEstimate
    - size
    - remainingSize
    - add
    - InverseCumulativeNormal
    - std::min
    - calculate
    - serialNumber
    - push_back
    - std::max
    - std::vector::size
    - getSim
    - getEventRecovery
    - std::vector::begin
    - std::vector::end
    - Date::serialNumber
    - QuantLib::detail::instance
    - std::vector::back
    - attachmentAmount
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: "std::vector<std::vector<Real> > RandomLM<D, C, URNG>::splitVaRAndError(const
      Date& date, Real loss,\n                                                                           Probability
      confInterval) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dts'
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 754
    functionName: QuantLib::detail::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void Root(const Handle<DefaultProbabilityTermStructure>& dts, Real
      pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:762,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:767,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 769
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Period
    - defaultProbability
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' dts'
    - pd
    argTypes:
    - Handle<DefaultProbabilityTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 754
    functionName: QuantLib::detail::Root::Root
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: void
    signature: void Root(const Handle<DefaultProbabilityTermStructure>& dts, Real
      pd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:762,1
    - Dst: defaultProbability
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:767,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 769
    functionName: operator()(Real t) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - Period
    - defaultProbability
    - static_cast<Integer>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - n
    - d
    argTypes:
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 794
    functionName: QuantLib::simEvent
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void simEvent(unsigned int n, unsigned int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - simEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 799
    functionName: operator<(const simEvent& evt) const
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(const simEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:819,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:824,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:826,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:829,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:829,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:830,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<DefaultLatentModel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 831
    functionName: QuantLib::RandomDefaultLM::RandomDefaultLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::registerWith
    - empty
    - std::vector<Real>
    - QuantLib::detail::instance
    - copula
    - size
    - numFactors
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM(const ext::shared_ptr<DefaultLatentModel<copulaPolicy>
      >& model,\n                               const std::vector<Real>& recoveries
      = std::vector<Real>(),\n                               Size nSims = 0, // stats
      will crash on div by zero, FIX ME.\n                               Real accuracy
      = 1.e-6,\n                               BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: copula
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:838,1
    - Dst: recoveries
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:841,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:845,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:845,1
    - Dst: QuantLib::RandomDefaultLM::registerWith
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' model'
    argTypes:
    - ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 847
    functionName: QuantLib::RandomDefaultLM::RandomDefaultLM
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::registerWith
    - QuantLib::detail::instance
    - copula
    - recoveries
    - size
    - numFactors
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM(\n            const ext::shared_ptr<ConstantLossLatentmodel<copulaPolicy>
      >& model,\n            Size nSims = 0,// stats will crash on div by zero, FIX
      ME.\n            Real accuracy = 1.e-6,\n            BigNatural seed = 2863311530UL)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:868,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:869,1
    - Dst: QuantLib::RandomDefaultLM::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:871,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:872,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:873,1
    - Dst: QuantLib::RandomDefaultLM::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:874,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 876
    functionName: QuantLib::RandomDefaultLM::initDates
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::RandomDefaultLM::basket_::defaultKeys
    - QuantLib::RandomDefaultLM::basket_::pool
    - push_back
    - Period
    - names
    - QuantLib::detail::instance
    - get
    - QuantLib::RandomDefaultLM::basket_::size
    linkageType: ''
    returnType: void
    signature: void initDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' evt'
    argTypes:
    - defaultSimEvent
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 877
    functionDepth: 0
    functionLinenumber: 877
    functionLinenumberEnd: 879
    functionName: QuantLib::RandomDefaultLM::getEventRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real getEventRecovery(const defaultSimEvent& evt) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iName
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 883
    functionName: QuantLib::RandomDefaultLM::expectedRecovery
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expectedRecovery(const Date&, Size iName, const DefaultProbKey&)
      const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomDefaultLM::latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:887,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factorsSample'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 885
    functionDepth: 1
    functionLinenumber: 885
    functionLinenumberEnd: 888
    functionName: QuantLib::RandomDefaultLM::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::RandomDefaultLM::latentVarValue
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& factorsSample,\n            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 891
    functionName: QuantLib::RandomDefaultLM::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetBasket
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:898,1
    - Dst: QuantLib::RandomDefaultLM::basket_::currentLink
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:898,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:900,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: QuantLib::RandomDefaultLM::basket_::size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:902,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 893
    functionDepth: 2
    functionLinenumber: 893
    functionLinenumberEnd: 907
    functionName: QuantLib::RandomDefaultLM::resetModel
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - resetBasket
    - QuantLib::RandomDefaultLM::basket_::size
    - size
    - QuantLib::RandomDefaultLM::basket_::currentLink
    - QuantLib::LazyObject::update
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void resetModel() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::basket_::pool
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:923,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::push_back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:925,1
    - Dst: std::vector<defaultSimEvent>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:925,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:927,1
    - Dst: latentVarValue
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:929,1
    - Dst: cumulativeY
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:931,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:935,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:935,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::basket_::defaultKeys
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:936,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:940,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:940,1
    - Dst: QuantLib::normalizePseudoRoot
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:941,1
    - Dst: QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::back
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:953,1
    - Dst: defaultSimEvent
      Src: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp:953,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' values'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 920
    functionDepth: 2
    functionLinenumber: 920
    functionLinenumberEnd: 963
    functionName: QuantLib::RandomDefaultLM<C, URNG>::nextSample
    functionSourceFile: /src/quantlib/ql/experimental/credit/randomdefaultlatentmodel.hpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - latentVarValue
    - QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::push_back
    - Brent
    - names
    - QuantLib::RandomDefaultLM<C, URNG>::basket_::pool
    - QuantLib::normalizePseudoRoot
    - get
    - QuantLib::RandomDefaultLM<C, URNG>::basket_::defaultKeys
    - size
    - defaultSimEvent
    - cumulativeY
    - std::vector<defaultSimEvent>
    - QuantLib::RandomDefaultLM<C, URNG>::simsBuffer_::back
    linkageType: ''
    returnType: void
    signature: "void RandomDefaultLM<C, URNG>::nextSample(\n        const std::vector<Real>&
      values) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::CDO::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: QuantLib::CDO::lgd
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lgd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: QuantLib::CDO::attachment
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: QuantLib::CDO::detachment
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::CDO::nominals
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> nominals()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::CDO::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 7
    functionsReached:
    - QuantLib::CDO::size
    linkageType: ''
    returnType: Size
    signature: Size size()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: QuantLib::CDO::nominal
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nominal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: QuantLib::CDO::lgd
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lgd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 138
    functionName: QuantLib::CDO::attachment
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real attachment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 139
    functionName: QuantLib::CDO::detachment
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real detachment() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 140
    functionName: QuantLib::CDO::nominals
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> nominals()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CDO::size
      Src: /src/quantlib/ql/experimental/credit/cdo.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 141
    functionName: QuantLib::CDO::size
    functionSourceFile: /src/quantlib/ql/experimental/credit/cdo.hpp
    functionUses: 8
    functionsReached:
    - QuantLib::CDO::size
    linkageType: ''
    returnType: Size
    signature: Size size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - ' basket'
    - n
    - side
    - premiumSchedule
    - upfrontRate
    - premiumRate
    - ' dayCounter'
    - nominal
    - settlePremiumAccrual
    argTypes:
    - ext::shared_ptr<Basket>
    - Size
    - Protection::Side
    - Schedule
    - Rate
    - Rate
    - DayCounter
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 62
    functionName: QuantLib::NthToDefault::NthToDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - refDate
    - std::move
    - registerWith
    - FixedRateLeg
    - size
    - startDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NthToDefault::NthToDefault(\n        const ext::shared_ptr<Basket>&
      basket,\n        Size n,\n        Protection::Side side,\n        Schedule premiumSchedule,\n
      \       Rate upfrontRate,\n        Rate premiumRate,\n        const DayCounter&
      dayCounter,\n        Real nominal,\n        bool settlePremiumAccrual\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::NthToDefault::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size NthToDefault::basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NthToDefault::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool NthToDefault::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:74,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::NthToDefault::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate NthToDefault::fairPremium() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:81,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:83,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: QuantLib::NthToDefault::premiumLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::premiumLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:90,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::NthToDefault::protectionLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::protectionLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:97,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::NthToDefault::errorEstimate
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::NthToDefault::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void NthToDefault::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<NthToDefault::arguments*>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 124
    functionName: QuantLib::NthToDefault::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<NthToDefault::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:127,1
    - Dst: dynamic_cast<const NthToDefault::results*>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: QuantLib::NthToDefault::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const NthToDefault::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:140,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:141,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:142,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:143,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:145,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 147
    functionName: NthToDefault::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - clear
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void NthToDefault::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:150,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:151,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:152,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:153,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:155,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 156
    functionName: NthToDefault::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - Protection::Side
    - Null<Real>
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:44,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: refDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:52,1
    - Dst: FixedRateLeg
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:56,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - ' basket'
    - n
    - side
    - premiumSchedule
    - upfrontRate
    - premiumRate
    - ' dayCounter'
    - nominal
    - settlePremiumAccrual
    argTypes:
    - ext::shared_ptr<Basket>
    - Size
    - Protection::Side
    - Schedule
    - Rate
    - Rate
    - DayCounter
    - Real
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 62
    functionName: QuantLib::NthToDefault::NthToDefault
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - refDate
    - std::move
    - registerWith
    - FixedRateLeg
    - size
    - startDate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NthToDefault::NthToDefault(\n        const ext::shared_ptr<Basket>&
      basket,\n        Size n,\n        Protection::Side side,\n        Schedule premiumSchedule,\n
      \       Rate upfrontRate,\n        Rate premiumRate,\n        const DayCounter&
      dayCounter,\n        Real nominal,\n        bool settlePremiumAccrual\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: QuantLib::NthToDefault::basketSize
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size NthToDefault::basketSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:69,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: QuantLib::NthToDefault::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::detail::simple_event::simple_event
    linkageType: ''
    returnType: bool
    signature: bool NthToDefault::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:73,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:74,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::NthToDefault::fairPremium
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate NthToDefault::fairPremium() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:81,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:81,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:83,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: QuantLib::NthToDefault::premiumLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::premiumLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:90,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: QuantLib::NthToDefault::protectionLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::protectionLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:97,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: QuantLib::NthToDefault::errorEstimate
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real NthToDefault::errorEstimate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::setupExpired
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionName: QuantLib::NthToDefault::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::setupExpired
    linkageType: ''
    returnType: void
    signature: void NthToDefault::setupExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<NthToDefault::arguments*>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:114,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 124
    functionName: QuantLib::NthToDefault::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<NthToDefault::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::fetchResults
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:127,1
    - Dst: dynamic_cast<const NthToDefault::results*>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: QuantLib::NthToDefault::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Instrument::fetchResults
    - dynamic_cast<const NthToDefault::results*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Instrument::results::reset
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:140,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:141,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:142,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:143,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:144,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:145,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 147
    functionName: NthToDefault::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - clear
    - QuantLib::Instrument::results::reset
    linkageType: ''
    returnType: void
    signature: void NthToDefault::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:150,1
    - Dst: names
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:151,1
    - Dst: Protection::Side
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:151,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:152,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:152,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:153,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:153,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:154,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:154,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:155,1
    - Dst: Null<Size>
      Src: /src/quantlib/ql/experimental/credit/nthtodefault.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 156
    functionName: NthToDefault::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/credit/nthtodefault.cpp
    functionUses: 0
    functionsReached:
    - Null<Size>
    - Protection::Side
    - Null<Real>
    - names
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NthToDefault::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:47,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:48,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Handle<Quote> >
    - DayCounter
    - std::vector<Date>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          const DayCounter& dayCounter = DayCounter(),\n          const
      std::vector<Handle<Quote> >& jumps = std::vector<Handle<Quote> >(),\n          const
      std::vector<Date>& jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:55,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:56,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:57,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:58,1
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - model
    - ' referenceDate'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Date>
    - DayCounter
    - std::vector<Handle<Quote> >
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          const Date& referenceDate,\n          const Calendar& cal
      = Calendar(),\n          const DayCounter& dayCounter = DayCounter(),\n          const
      std::vector<Handle<Quote> >& jumps = std::vector<Handle<Quote> >(),\n          const
      std::vector<Date>& jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:66,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:67,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:68,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - settlementDays
    - ' calendar'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Natural
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 70
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Handle<Quote> >
    - DayCounter
    - std::vector<Date>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          Natural settlementDays,\n          const Calendar& calendar,\n
      \         const DayCounter& dayCounter = DayCounter(),\n          const std::vector<Handle<Quote>
      >& jumps = std::vector<Handle<Quote> >(),\n          const std::vector<Date>&
      jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::OneFactorAffineSurvivalStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' dFwd'
    - ' dTgt'
    - yVal
    argTypes:
    - Date
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 1
    functionsReached:
    - timeFromReference
    - QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalSurvivalProbability(const Date& dFwd,\n                                                 const
      Date& dTgt,\n                                                 Real yVal,\n                                                 bool
      extrapolate = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:113,1
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:115,1
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:116,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - tFwd
    - tgt
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 121
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalSurvivalProbability(\n                Time
      tFwd, Time tgt, Real yVal,\n                bool extrapolate = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:126,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::OneFactorAffineSurvivalStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: Rate hazardRate(Time t, bool extrapolate = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real hazardRateImpl(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:153,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:154,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - dynamics
    - discountBond
    linkageType: ''
    returnType: Probability
    signature: "Probability OneFactorAffineSurvivalStructure::survivalProbabilityImpl(\n
      \       Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tFwd
    - tgt
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 1
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: Probability
    signature: "Probability OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl(\n
      \           Time tFwd, Time tgt, Real yVal) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:168,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:169,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:171,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:171,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 173
    functionName: QuantLib::OneFactorAffineSurvivalStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - dynamics
    - discountBond
    - QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
    - QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    linkageType: ''
    returnType: Real
    signature: Real OneFactorAffineSurvivalStructure::defaultDensityImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:47,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:48,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Handle<Quote> >
    - DayCounter
    - std::vector<Date>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          const DayCounter& dayCounter = DayCounter(),\n          const
      std::vector<Handle<Quote> >& jumps = std::vector<Handle<Quote> >(),\n          const
      std::vector<Date>& jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:55,1
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:56,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:57,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:58,1
    - Dst: Calendar
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:59,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - model
    - ' referenceDate'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::vector<Date>
    - DayCounter
    - std::vector<Handle<Quote> >
    - Calendar
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          const Date& referenceDate,\n          const Calendar& cal
      = Calendar(),\n          const DayCounter& dayCounter = DayCounter(),\n          const
      std::vector<Handle<Quote> >& jumps = std::vector<Handle<Quote> >(),\n          const
      std::vector<Date>& jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:66,1
    - Dst: std::vector<Handle<Quote> >
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:67,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:68,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - model
    - settlementDays
    - ' calendar'
    argTypes:
    - ext::shared_ptr<OneFactorAffineModel>
    - Natural
    - Calendar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 70
    functionName: QuantLib::OneFactorAffineSurvivalStructure::OneFactorAffineSurvivalStructure
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Handle<Quote> >
    - DayCounter
    - std::vector<Date>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void OneFactorAffineSurvivalStructure(\n          ext::shared_ptr<OneFactorAffineModel>
      model,\n          Natural settlementDays,\n          const Calendar& calendar,\n
      \         const DayCounter& dayCounter = DayCounter(),\n          const std::vector<Handle<Quote>
      >& jumps = std::vector<Handle<Quote> >(),\n          const std::vector<Date>&
      jumpDates = std::vector<Date>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::OneFactorAffineSurvivalStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' dFwd'
    - ' dTgt'
    - yVal
    argTypes:
    - Date
    - Date
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalSurvivalProbability(const Date& dFwd,\n                                                 const
      Date& dTgt,\n                                                 Real yVal,\n                                                 bool
      extrapolate = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:113,1
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:115,1
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:116,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - tFwd
    - tgt
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 121
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbability
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
    - checkRange
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: "Probability conditionalSurvivalProbability(\n                Time
      tFwd, Time tgt, Real yVal,\n                bool extrapolate = false) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:126,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: QuantLib::OneFactorAffineSurvivalStructure::hazardRate
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    - checkRange
    linkageType: ''
    returnType: Rate
    signature: Rate hazardRate(Time t, bool extrapolate = false) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real hazardRateImpl(Time) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:153,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:154,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 1
    functionsReached:
    - dynamics
    - discountBond
    linkageType: ''
    returnType: Probability
    signature: "Probability OneFactorAffineSurvivalStructure::survivalProbabilityImpl(\n
      \       Time t) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tFwd
    - tgt
    - yVal
    argTypes:
    - Time
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: QuantLib::OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 2
    functionsReached:
    - discountBond
    linkageType: ''
    returnType: Probability
    signature: "Probability OneFactorAffineSurvivalStructure::conditionalSurvivalProbabilityImpl(\n
      \           Time tFwd, Time tgt, Real yVal) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:168,1
    - Dst: dynamics
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:169,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:171,1
    - Dst: QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:171,1
    - Dst: discountBond
      Src: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 173
    functionName: QuantLib::OneFactorAffineSurvivalStructure::defaultDensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/credit/onefactoraffinesurvival.hpp
    functionUses: 0
    functionsReached:
    - dynamics
    - discountBond
    - QuantLib::OneFactorAffineSurvivalStructure::survivalProbabilityImpl
    - QuantLib::OneFactorAffineSurvivalStructure::hazardRateImpl
    linkageType: ''
    returnType: Real
    signature: Real OneFactorAffineSurvivalStructure::defaultDensityImpl(Time t) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:31,1
    - Dst: expectedTrancheLoss::clear
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:37,1
    - Dst: basket::attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:39,1
    - Dst: basket::detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:40,1
    - Dst: basket::trancheNotional
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:43,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:48,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:53,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:54,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:56,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:59,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:60,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:63,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:65,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:66,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:67,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:71,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:72,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:75,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:76,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:78,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:94,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:121,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 124
    functionName: QuantLib::MidPointCDOEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - basket::trancheNotional
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - basket::attachmentAmount
    - expectedTrancheLoss::clear
    - Real
    - std::max
    - ext::shared_ptr::amount
    - QuantLib::detail::instance
    - discount
    - basket::expectedTrancheLoss
    - expectedTrancheLoss::push_back
    - hasOccurred
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - basket::detachmentAmount
    linkageType: ''
    returnType: void
    signature: void MidPointCDOEngine::calculate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:31,1
    - Dst: expectedTrancheLoss::clear
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:37,1
    - Dst: basket::attachmentAmount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:39,1
    - Dst: basket::detachmentAmount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:40,1
    - Dst: basket::trancheNotional
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:43,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:48,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:53,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:54,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:56,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:59,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:60,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:63,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:64,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:65,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:65,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:66,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:67,1
    - Dst: basket::expectedTrancheLoss
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:71,1
    - Dst: expectedTrancheLoss::push_back
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:72,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:75,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:76,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:78,1
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:94,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:97,1
    - Dst: ext::dynamic_pointer_cast<Coupon>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:98,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:110,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp:121,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 124
    functionName: QuantLib::MidPointCDOEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/credit/midpointcdoengine.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - basket::trancheNotional
    - ext::shared_ptr::accrualStartDate
    - Null<Real>
    - basket::attachmentAmount
    - expectedTrancheLoss::clear
    - Real
    - std::max
    - ext::shared_ptr::amount
    - QuantLib::detail::instance
    - discount
    - basket::expectedTrancheLoss
    - expectedTrancheLoss::push_back
    - hasOccurred
    - ext::shared_ptr::date
    - ext::dynamic_pointer_cast<Coupon>
    - ext::shared_ptr::accrualEndDate
    - basket::detachmentAmount
    linkageType: ''
    returnType: void
    signature: void MidPointCDOEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::ExtendedBinomialTree::ExtendedBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: void
    signature: "void ExtendedBinomialTree(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::ExtendedBinomialTree::size
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::ExtendedBinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBinomialTree::treeProcess_::drift
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - driftTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::ExtendedBinomialTree::driftStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedBinomialTree::treeProcess_::drift
    linkageType: ''
    returnType: Real
    signature: Real driftStep(Time driftTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::ExtendedEqualProbabilitiesBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExtendedEqualProbabilitiesBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~ExtendedEqualProbabilitiesBinomialTree()
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExtendedEqualProbabilitiesBinomialTree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:83,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    - Dst: QuantLib::ExtendedEqualProbabilitiesBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    - Dst: QuantLib::ExtendedEqualProbabilitiesBinomialTree::upStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualProbabilitiesBinomialTree::upStep
    - QuantLib::ExtendedEqualProbabilitiesBinomialTree::driftStep
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::ExtendedEqualJumpsBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExtendedEqualJumpsBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: ~ExtendedEqualJumpsBinomialTree()
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExtendedEqualJumpsBinomialTree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:110,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:112,1
    - Dst: QuantLib::ExtendedEqualJumpsBinomialTree::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualJumpsBinomialTree::dxStep
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedEqualJumpsBinomialTree::probUp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualJumpsBinomialTree::probUp
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: QuantLib::ExtendedBinomialTree::ExtendedBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: void
    signature: "void ExtendedBinomialTree(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: QuantLib::ExtendedBinomialTree::size
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - index
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::ExtendedBinomialTree::descendant
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size descendant(Size, Size index, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBinomialTree::treeProcess_::drift
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - driftTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: QuantLib::ExtendedBinomialTree::driftStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedBinomialTree::treeProcess_::drift
    linkageType: ''
    returnType: Real
    signature: Real driftStep(Time driftTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::ExtendedEqualProbabilitiesBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExtendedEqualProbabilitiesBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~ExtendedEqualProbabilitiesBinomialTree()
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExtendedEqualProbabilitiesBinomialTree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:83,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:83,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    - Dst: QuantLib::ExtendedEqualProbabilitiesBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    - Dst: QuantLib::ExtendedEqualProbabilitiesBinomialTree::upStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualProbabilitiesBinomialTree::upStep
    - QuantLib::ExtendedEqualProbabilitiesBinomialTree::driftStep
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: QuantLib::ExtendedEqualProbabilitiesBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real probability(Size, Size, Size) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::ExtendedEqualJumpsBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ExtendedEqualJumpsBinomialTree(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end,\n                        Size steps)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 106
    functionName: ~ExtendedEqualJumpsBinomialTree()
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExtendedEqualJumpsBinomialTree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:110,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:110,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:112,1
    - Dst: QuantLib::ExtendedEqualJumpsBinomialTree::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualJumpsBinomialTree::dxStep
    - std::exp
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedEqualJumpsBinomialTree::probUp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: QuantLib::ExtendedEqualJumpsBinomialTree::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedEqualJumpsBinomialTree::probUp
    linkageType: ''
    returnType: Real
    signature: Real probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::ExtendedJarrowRudd::ExtendedJarrowRudd
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: void
    signature: "void ExtendedJarrowRudd::ExtendedJarrowRudd(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::ExtendedJarrowRudd::upStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJarrowRudd::upStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:49,1
    - Dst: QuantLib::ExtendedCoxRossRubinstein::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedCoxRossRubinstein::ExtendedCoxRossRubinstein
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - stdDeviation
    - QuantLib::ExtendedCoxRossRubinstein::driftStep
    linkageType: ''
    returnType: void
    signature: "void ExtendedCoxRossRubinstein::ExtendedCoxRossRubinstein(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxRossRubinstein::treeProcess_::stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ExtendedCoxRossRubinstein::dxStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedCoxRossRubinstein::treeProcess_::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxRossRubinstein::dxStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxRossRubinstein::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:62,1
    - Dst: QuantLib::ExtendedCoxRossRubinstein::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::ExtendedCoxRossRubinstein::probUp
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedCoxRossRubinstein::dxStep
    - QuantLib::ExtendedCoxRossRubinstein::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxRossRubinstein::probUp(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:73,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:73,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:74,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 75
    functionName: QuantLib::ExtendedAdditiveEQPBinomialTree::ExtendedAdditiveEQPBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
    - variance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void ExtendedAdditiveEQPBinomialTree::ExtendedAdditiveEQPBinomialTree(\n
      \                       const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                       Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:79,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:79,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:80,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::ExtendedAdditiveEQPBinomialTree::upStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
    - QuantLib::ExtendedAdditiveEQPBinomialTree::treeProcess_::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ExtendedAdditiveEQPBinomialTree::upStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:91,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:91,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:92,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:92,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:93,1
    - Dst: QuantLib::ExtendedTrigeorgis::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 98
    functionName: QuantLib::ExtendedTrigeorgis::ExtendedTrigeorgis
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::dxStep
    - QuantLib::ExtendedTrigeorgis::driftStep
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedTrigeorgis::ExtendedTrigeorgis(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:101,1
    - Dst: QuantLib::ExtendedTrigeorgis::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:101,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:102,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::ExtendedTrigeorgis::dxStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::treeProcess_::variance
    - std::sqrt
    - QuantLib::ExtendedTrigeorgis::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTrigeorgis::dxStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:106,1
    - Dst: QuantLib::ExtendedTrigeorgis::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::ExtendedTrigeorgis::probUp
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::driftStep
    - QuantLib::ExtendedTrigeorgis::dxStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTrigeorgis::probUp(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:115,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 131
    functionName: QuantLib::ExtendedTian::ExtendedTian
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - std::exp
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedTian::ExtendedTian(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:135,1
    - Dst: QuantLib::ExtendedTian::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:139,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:142,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 143
    functionName: QuantLib::ExtendedTian::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - std::exp
    - Real
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedTian::treeProcess_::variance
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTian::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:147,1
    - Dst: QuantLib::ExtendedTian::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 157
    functionName: QuantLib::ExtendedTian::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - QuantLib::ExtendedTian::treeProcess_::variance
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTian::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:168,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:169,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:171,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:171,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:172,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:172,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:173,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:175,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:177,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 181
    functionName: QuantLib::ExtendedLeisenReimer::ExtendedLeisenReimer
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - PeizerPrattMethod2Inversion
    - std::sqrt
    - variance
    - QuantLib::ExtendedLeisenReimer::driftStep
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedLeisenReimer::ExtendedLeisenReimer(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                                               Time end,\n                                               Size
      steps,\n                                               Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedLeisenReimer::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:185,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:186,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:186,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:187,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:188,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:190,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:191,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:197,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 198
    functionName: QuantLib::ExtendedLeisenReimer::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    - std::log
    - Real
    - PeizerPrattMethod2Inversion
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedLeisenReimer::driftStep
    - QuantLib::ExtendedLeisenReimer::treeProcess_::variance
    linkageType: ''
    returnType: Real
    signature: Real ExtendedLeisenReimer::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedLeisenReimer::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:202,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:203,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:203,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:204,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 210
    functionName: QuantLib::ExtendedLeisenReimer::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QuantLib::ExtendedLeisenReimer::treeProcess_::variance
    - std::sqrt
    - PeizerPrattMethod2Inversion
    - QuantLib::ExtendedLeisenReimer::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedLeisenReimer::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:215,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - k
    - dj
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 233
    functionName: QuantLib::ExtendedJoshi4::computeUpProb
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::computeUpProb(Real k, Real dj) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:242,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:243,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:245,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:245,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:246,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:247,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:249,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:251,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::ExtendedJoshi4::ExtendedJoshi4
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - QuantLib::ExtendedJoshi4::computeUpProb
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedJoshi4::ExtendedJoshi4(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                                   Time end,\n                                   Size
      steps,\n                                   Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedJoshi4::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:258,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:259,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:259,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:260,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:260,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:261,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:263,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:264,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:269,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 270
    functionName: QuantLib::ExtendedJoshi4::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - QuantLib::ExtendedJoshi4::computeUpProb
    - Real
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedJoshi4::treeProcess_::variance
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedJoshi4::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:274,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:275,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:275,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:276,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 282
    functionName: QuantLib::ExtendedJoshi4::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedJoshi4::computeUpProb
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - std::sqrt
    - QuantLib::ExtendedJoshi4::treeProcess_::variance
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::ExtendedJarrowRudd::ExtendedJarrowRudd
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: void
    signature: "void ExtendedJarrowRudd::ExtendedJarrowRudd(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: QuantLib::ExtendedJarrowRudd::upStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJarrowRudd::upStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:49,1
    - Dst: QuantLib::ExtendedCoxRossRubinstein::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedCoxRossRubinstein::ExtendedCoxRossRubinstein
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - stdDeviation
    - QuantLib::ExtendedCoxRossRubinstein::driftStep
    linkageType: ''
    returnType: void
    signature: "void ExtendedCoxRossRubinstein::ExtendedCoxRossRubinstein(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxRossRubinstein::treeProcess_::stdDeviation
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ExtendedCoxRossRubinstein::dxStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtendedCoxRossRubinstein::treeProcess_::stdDeviation
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxRossRubinstein::dxStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedCoxRossRubinstein::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:62,1
    - Dst: QuantLib::ExtendedCoxRossRubinstein::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: QuantLib::ExtendedCoxRossRubinstein::probUp
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedCoxRossRubinstein::dxStep
    - QuantLib::ExtendedCoxRossRubinstein::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedCoxRossRubinstein::probUp(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:73,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:73,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:74,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 75
    functionName: QuantLib::ExtendedAdditiveEQPBinomialTree::ExtendedAdditiveEQPBinomialTree
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
    - variance
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void ExtendedAdditiveEQPBinomialTree::ExtendedAdditiveEQPBinomialTree(\n
      \                       const ext::shared_ptr<StochasticProcess1D>& process,\n
      \                       Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:78,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:79,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:79,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:80,1
    - Dst: QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: QuantLib::ExtendedAdditiveEQPBinomialTree::upStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedAdditiveEQPBinomialTree::driftStep
    - QuantLib::ExtendedAdditiveEQPBinomialTree::treeProcess_::variance
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ExtendedAdditiveEQPBinomialTree::upStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:91,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:91,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:92,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:92,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:93,1
    - Dst: QuantLib::ExtendedTrigeorgis::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:93,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 98
    functionName: QuantLib::ExtendedTrigeorgis::ExtendedTrigeorgis
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::dxStep
    - QuantLib::ExtendedTrigeorgis::driftStep
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedTrigeorgis::ExtendedTrigeorgis(\n                        const
      ext::shared_ptr<StochasticProcess1D>& process,\n                        Time
      end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:101,1
    - Dst: QuantLib::ExtendedTrigeorgis::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:101,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:102,1
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: QuantLib::ExtendedTrigeorgis::dxStep
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::treeProcess_::variance
    - std::sqrt
    - QuantLib::ExtendedTrigeorgis::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTrigeorgis::dxStep(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedTrigeorgis::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:106,1
    - Dst: QuantLib::ExtendedTrigeorgis::dxStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stepTime
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::ExtendedTrigeorgis::probUp
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTrigeorgis::driftStep
    - QuantLib::ExtendedTrigeorgis::dxStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTrigeorgis::probUp(Time stepTime) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:115,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:115,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:119,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:120,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:129,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - ' process'
    - end
    - steps
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 131
    functionName: QuantLib::ExtendedTian::ExtendedTian
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - std::exp
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedTian::ExtendedTian(\n                        const ext::shared_ptr<StochasticProcess1D>&
      process,\n                        Time end, Size steps, Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:135,1
    - Dst: QuantLib::ExtendedTian::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:135,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:136,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:138,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:139,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:141,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:142,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 143
    functionName: QuantLib::ExtendedTian::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - std::exp
    - Real
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedTian::treeProcess_::variance
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTian::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:147,1
    - Dst: QuantLib::ExtendedTian::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:147,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: QuantLib::ExtendedTian::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:148,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 157
    functionName: QuantLib::ExtendedTian::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedTian::driftStep
    - QuantLib::ExtendedTian::treeProcess_::variance
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real ExtendedTian::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:168,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:169,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:171,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:171,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:172,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:172,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:173,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:175,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:177,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 181
    functionName: QuantLib::ExtendedLeisenReimer::ExtendedLeisenReimer
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - PeizerPrattMethod2Inversion
    - std::sqrt
    - variance
    - QuantLib::ExtendedLeisenReimer::driftStep
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedLeisenReimer::ExtendedLeisenReimer(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                                               Time end,\n                                               Size
      steps,\n                                               Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedLeisenReimer::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:185,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:186,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:186,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:187,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:187,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:188,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:190,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:191,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:191,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:196,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:197,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 198
    functionName: QuantLib::ExtendedLeisenReimer::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - BigInteger
    - std::log
    - Real
    - PeizerPrattMethod2Inversion
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedLeisenReimer::driftStep
    - QuantLib::ExtendedLeisenReimer::treeProcess_::variance
    linkageType: ''
    returnType: Real
    signature: Real ExtendedLeisenReimer::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedLeisenReimer::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:202,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:203,1
    - Dst: QuantLib::ExtendedLeisenReimer::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:203,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:204,1
    - Dst: PeizerPrattMethod2Inversion
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 210
    functionName: QuantLib::ExtendedLeisenReimer::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - QuantLib::ExtendedLeisenReimer::treeProcess_::variance
    - std::sqrt
    - PeizerPrattMethod2Inversion
    - QuantLib::ExtendedLeisenReimer::driftStep
    linkageType: ''
    returnType: Real
    signature: Real ExtendedLeisenReimer::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:215,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - k
    - dj
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 233
    functionName: QuantLib::ExtendedJoshi4::computeUpProb
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 3
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::computeUpProb(Real k, Real dj) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:242,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:243,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:245,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:245,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:246,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:246,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:247,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:249,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:251,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ' process'
    - end
    - steps
    - strike
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Time
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: QuantLib::ExtendedJoshi4::ExtendedJoshi4
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - QuantLib::ExtendedJoshi4::computeUpProb
    - std::sqrt
    - variance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedJoshi4::ExtendedJoshi4(const ext::shared_ptr<StochasticProcess1D>&
      process,\n                                   Time end,\n                                   Size
      steps,\n                                   Real strike)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedJoshi4::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:258,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:259,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:259,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:260,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:260,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:261,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:263,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:264,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:264,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:268,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:269,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - index
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 270
    functionName: QuantLib::ExtendedJoshi4::underlying
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - QuantLib::ExtendedJoshi4::computeUpProb
    - Real
    - std::pow
    - std::sqrt
    - QuantLib::ExtendedJoshi4::treeProcess_::variance
    - BigInteger
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::underlying(Size i, Size index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedJoshi4::treeProcess_::variance
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:274,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:275,1
    - Dst: QuantLib::ExtendedJoshi4::driftStep
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:275,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:276,1
    - Dst: QuantLib::ExtendedJoshi4::computeUpProb
      Src: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - i
    - branch
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 282
    functionName: QuantLib::ExtendedJoshi4::probability
    functionSourceFile: /src/quantlib/ql/experimental/lattices/extendedbinomialtree.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedJoshi4::computeUpProb
    - QuantLib::ExtendedJoshi4::driftStep
    - std::log
    - std::sqrt
    - QuantLib::ExtendedJoshi4::treeProcess_::variance
    linkageType: ''
    returnType: Real
    signature: Real ExtendedJoshi4::probability(Size i, Size, Size branch) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:27,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::NotionalPath::NotionalPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - Date
    linkageType: ''
    returnType: void
    signature: void NotionalPath::NotionalPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionName: QuantLib::NotionalPath::notionalRate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Rate
    signature: Rate NotionalPath::notionalRate(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::NotionalPath::reset
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - resize
    linkageType: ''
    returnType: void
    signature: void NotionalPath::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - date
    - newRate
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::NotionalPath::addReduction
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    linkageType: ''
    returnType: void
    signature: void NotionalPath::addReduction(const Date &date, Rate newRate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::NotionalPath::loss
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - rbegin
    linkageType: ''
    returnType: Real
    signature: Real NotionalPath::loss()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NotionalPath::reset
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:52,1
    - Dst: NotionalPath::addReduction
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    - Dst: paymentDate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    - Dst: Rate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - events
    - path
    argTypes:
    - std::vector<std::pair<Date, Real> >
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 58
    functionName: QuantLib::DigitalNotionalRisk::updatePath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - NotionalPath::addReduction
    - NotionalPath::reset
    - paymentDate
    - Rate
    linkageType: ''
    returnType: void
    signature: "void DigitalNotionalRisk::updatePath(const std::vector<std::pair<Date,
      Real> >  &events, \n                                         NotionalPath &path)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:27,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: QuantLib::NotionalPath::NotionalPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    - Date
    linkageType: ''
    returnType: void
    signature: void NotionalPath::NotionalPath()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' date'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionName: QuantLib::NotionalPath::notionalRate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Rate
    signature: Rate NotionalPath::notionalRate(const Date& date) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: QuantLib::NotionalPath::reset
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - resize
    linkageType: ''
    returnType: void
    signature: void NotionalPath::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - date
    - newRate
    argTypes:
    - Date
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: QuantLib::NotionalPath::addReduction
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - emplace_back
    linkageType: ''
    returnType: void
    signature: void NotionalPath::addReduction(const Date &date, Rate newRate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: QuantLib::NotionalPath::loss
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - rbegin
    linkageType: ''
    returnType: Real
    signature: Real NotionalPath::loss()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NotionalPath::reset
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:52,1
    - Dst: NotionalPath::addReduction
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    - Dst: paymentDate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    - Dst: Rate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - events
    - path
    argTypes:
    - std::vector<std::pair<Date, Real> >
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 58
    functionName: QuantLib::DigitalNotionalRisk::updatePath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.cpp
    functionUses: 0
    functionsReached:
    - NotionalPath::addReduction
    - NotionalPath::reset
    - paymentDate
    - Rate
    linkageType: ''
    returnType: void
    signature: "void DigitalNotionalRisk::updatePath(const std::vector<std::pair<Date,
      Real> >  &events, \n                                         NotionalPath &path)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::MonteCarloCatBondEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: QuantLib::MonteCarloCatBondEngine::discountCurve
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> discountCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~EventPaymentOffset()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EventPaymentOffset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' eventDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::NoOffset::paymentDate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date paymentDate(const Date& eventDate) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - paymentOffset
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::NotionalRisk::NotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void NotionalRisk(ext::shared_ptr<EventPaymentOffset> paymentOffset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: ~NotionalRisk()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NotionalRisk()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' paymentOffset'
    - threshold
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::DigitalNotionalRisk::DigitalNotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalNotionalRisk(const ext::shared_ptr<EventPaymentOffset>&
      paymentOffset,\n                            Real threshold)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' paymentOffset'
    - attachement
    - exhaustion
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::ProportionalNotionalRisk::ProportionalNotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ProportionalNotionalRisk(const ext::shared_ptr<EventPaymentOffset>&
      paymentOffset,\n                               Real attachement,\n                               Real
      exhaustion)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:103,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:110,1
    - Dst: addReduction
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:111,1
    - Dst: paymentDate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' events'
    - ' path'
    argTypes:
    - std::vector<std::pair<Date, Real> >
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: QuantLib::ProportionalNotionalRisk::updatePath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - reset
    - addReduction
    - paymentDate
    linkageType: ''
    returnType: void
    signature: "void updatePath(const std::vector<std::pair<Date, Real> >& events,\n
      \                       NotionalPath& path) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~EventPaymentOffset()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EventPaymentOffset()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' eventDate'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: QuantLib::NoOffset::paymentDate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date paymentDate(const Date& eventDate) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - paymentOffset
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: QuantLib::NotionalRisk::NotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void NotionalRisk(ext::shared_ptr<EventPaymentOffset> paymentOffset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: ~NotionalRisk()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~NotionalRisk()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' paymentOffset'
    - threshold
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::DigitalNotionalRisk::DigitalNotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void DigitalNotionalRisk(const ext::shared_ptr<EventPaymentOffset>&
      paymentOffset,\n                            Real threshold)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' paymentOffset'
    - attachement
    - exhaustion
    argTypes:
    - ext::shared_ptr<EventPaymentOffset>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: QuantLib::ProportionalNotionalRisk::ProportionalNotionalRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ProportionalNotionalRisk(const ext::shared_ptr<EventPaymentOffset>&
      paymentOffset,\n                               Real attachement,\n                               Real
      exhaustion)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:103,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:110,1
    - Dst: addReduction
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:111,1
    - Dst: paymentDate
      Src: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' events'
    - ' path'
    argTypes:
    - std::vector<std::pair<Date, Real> >
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: QuantLib::ProportionalNotionalRisk::updatePath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/riskynotional.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - reset
    - addReduction
    - paymentDate
    linkageType: ''
    returnType: void
    signature: "void updatePath(const std::vector<std::pair<Date, Real> >& events,\n
      \                       NotionalPath& path) const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - start
    - end
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::CatSimulation::CatSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CatSimulation(Date start, \n                      Date end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CatSimulation()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatSimulation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: ~CatRisk()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatRisk()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - start
    - end
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: QuantLib::CatSimulation::CatSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CatSimulation(Date start, \n                      Date end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~CatSimulation()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatSimulation()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: ~CatRisk()
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatRisk()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:36,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:36,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:37,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:37,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:38,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:39,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:45,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 5
    argNames:
    - events
    - eventsStart
    - eventsEnd
    - start
    - end
    argTypes:
    - ext::shared_ptr<std::vector<std::pair<Date, Real> > >
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 46
    functionName: QuantLib::EventSetSimulation::EventSetSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - std::move
    - Date
    - size
    - year
    linkageType: ''
    returnType: void
    signature: "void EventSetSimulation::EventSetSimulation(\n        ext::shared_ptr<std::vector<std::pair<Date,
      Real> > > events,\n        Date eventsStart,\n        Date eventsEnd,\n        Date
      start,\n        Date end)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:56,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:58,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::vector< std::pair< Date, Real > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 69
    functionName: QuantLib::EventSetSimulation::nextPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - at
    - resize
    - push_back
    - size
    - year
    linkageType: ''
    returnType: bool
    signature: bool EventSetSimulation::nextPath(std::vector< std::pair< Date, Real
      > >& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - events
    - eventsStart
    - eventsEnd
    argTypes:
    - ext::shared_ptr<std::vector<std::pair<Date, Real> > >
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::EventSet::EventSet
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EventSet::EventSet(ext::shared_ptr<std::vector<std::pair<Date,
      Real> > > events,\n                       Date eventsStart,\n                       Date
      eventsEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EventSetSimulation>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::EventSet::newSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<EventSetSimulation>
    linkageType: ''
    returnType: ext::shared_ptr<CatSimulation>
    signature: ext::shared_ptr<CatSimulation> EventSet::newSimulation(const Date&
      start, const Date& end) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ActualActual
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:87,1
    - Dst: DayCounter::dayCount
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - start
    - end
    - maxLoss
    - lambda
    - alpha
    - beta
    argTypes:
    - Date
    - Date
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: QuantLib::BetaRiskSimulation::BetaRiskSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - DayCounter::yearFraction
    - DayCounter::dayCount
    linkageType: ''
    returnType: void
    signature: void BetaRiskSimulation::BetaRiskSimulation(Date start, Date end, Real
      maxLoss, Real lambda, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gammaAlpha_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:94,1
    - Dst: gammaBeta_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::BetaRiskSimulation::generateBeta
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - gammaAlpha_
    - gammaBeta_
    linkageType: ''
    returnType: Real
    signature: Real BetaRiskSimulation::generateBeta()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::pair<Date, Real> >::resize
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:101,1
    - Dst: exponential_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:102,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:106,1
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:106,1
    - Dst: std::vector<std::pair<Date, Real> >::emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:110,1
    - Dst: QuantLib::BetaRiskSimulation::generateBeta
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:110,1
    - Dst: exponential_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - path
    argTypes:
    - std::vector<std::pair<Date, Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 116
    functionName: QuantLib::BetaRiskSimulation::nextPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BetaRiskSimulation::generateBeta
    - std::vector<std::pair<Date, Real> >::resize
    - std::vector<std::pair<Date, Real> >::emplace_back
    - static_cast<Integer>
    - std::lround
    - exponential_
    linkageType: ''
    returnType: bool
    signature: bool BetaRiskSimulation::nextPath(std::vector<std::pair<Date, Real>
      > &path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - maxLoss
    - years
    - mean
    - stdDev
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::BetaRisk::BetaRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BetaRisk::BetaRisk(Real maxLoss, \n                 Real years,
      \n                 Real mean, \n                 Real stdDev)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BetaRiskSimulation>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::BetaRisk::newSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BetaRiskSimulation>
    linkageType: ''
    returnType: ext::shared_ptr<CatSimulation>
    signature: ext::shared_ptr<CatSimulation> BetaRisk::newSimulation(const Date&
      start, const Date& end) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:34,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:36,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:36,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:37,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:37,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:38,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:38,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:39,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:39,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:40,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:42,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: dayOfMonth
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: month
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:45,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 5
    argNames:
    - events
    - eventsStart
    - eventsEnd
    - start
    - end
    argTypes:
    - ext::shared_ptr<std::vector<std::pair<Date, Real> > >
    - Date
    - Date
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 46
    functionName: QuantLib::EventSetSimulation::EventSetSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - dayOfMonth
    - month
    - std::move
    - Date
    - size
    - year
    linkageType: ''
    returnType: void
    signature: "void EventSetSimulation::EventSetSimulation(\n        ext::shared_ptr<std::vector<std::pair<Date,
      Real> > > events,\n        Date eventsStart,\n        Date eventsEnd,\n        Date
      start,\n        Date end)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:56,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: year
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: at
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:57,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:58,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::vector< std::pair< Date, Real > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 69
    functionName: QuantLib::EventSetSimulation::nextPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - at
    - resize
    - push_back
    - size
    - year
    linkageType: ''
    returnType: bool
    signature: bool EventSetSimulation::nextPath(std::vector< std::pair< Date, Real
      > >& path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - events
    - eventsStart
    - eventsEnd
    argTypes:
    - ext::shared_ptr<std::vector<std::pair<Date, Real> > >
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::EventSet::EventSet
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void EventSet::EventSet(ext::shared_ptr<std::vector<std::pair<Date,
      Real> > > events,\n                       Date eventsStart,\n                       Date
      eventsEnd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<EventSetSimulation>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: QuantLib::EventSet::newSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<EventSetSimulation>
    linkageType: ''
    returnType: ext::shared_ptr<CatSimulation>
    signature: ext::shared_ptr<CatSimulation> EventSet::newSimulation(const Date&
      start, const Date& end) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ActualActual
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:87,1
    - Dst: DayCounter::dayCount
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:88,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - start
    - end
    - maxLoss
    - lambda
    - alpha
    - beta
    argTypes:
    - Date
    - Date
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: QuantLib::BetaRiskSimulation::BetaRiskSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ActualActual
    - DayCounter::yearFraction
    - DayCounter::dayCount
    linkageType: ''
    returnType: void
    signature: void BetaRiskSimulation::BetaRiskSimulation(Date start, Date end, Real
      maxLoss, Real lambda, Real alpha, Real beta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gammaAlpha_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:94,1
    - Dst: gammaBeta_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: QuantLib::BetaRiskSimulation::generateBeta
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 1
    functionsReached:
    - gammaAlpha_
    - gammaBeta_
    linkageType: ''
    returnType: Real
    signature: Real BetaRiskSimulation::generateBeta()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::pair<Date, Real> >::resize
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:101,1
    - Dst: exponential_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:102,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:106,1
    - Dst: std::lround
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:106,1
    - Dst: std::vector<std::pair<Date, Real> >::emplace_back
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:110,1
    - Dst: QuantLib::BetaRiskSimulation::generateBeta
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:110,1
    - Dst: exponential_
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - path
    argTypes:
    - std::vector<std::pair<Date, Real> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 116
    functionName: QuantLib::BetaRiskSimulation::nextPath
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BetaRiskSimulation::generateBeta
    - std::vector<std::pair<Date, Real> >::resize
    - std::vector<std::pair<Date, Real> >::emplace_back
    - static_cast<Integer>
    - std::lround
    - exponential_
    linkageType: ''
    returnType: bool
    signature: bool BetaRiskSimulation::nextPath(std::vector<std::pair<Date, Real>
      > &path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - maxLoss
    - years
    - mean
    - stdDev
    argTypes:
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionName: QuantLib::BetaRisk::BetaRisk
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void BetaRisk::BetaRisk(Real maxLoss, \n                 Real years,
      \n                 Real mean, \n                 Real stdDev)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<BetaRiskSimulation>
      Src: /src/quantlib/ql/experimental/catbonds/catrisk.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' start'
    - ' end'
    argTypes:
    - Date
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: QuantLib::BetaRisk::newSimulation
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catrisk.cpp
    functionUses: 0
    functionsReached:
    - ext::make_shared<BetaRiskSimulation>
    linkageType: ''
    returnType: ext::shared_ptr<CatSimulation>
    signature: ext::shared_ptr<CatSimulation> BetaRisk::newSimulation(const Date&
      start, const Date& end) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: CatBond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CatBond::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CatBond::arguments*>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:41,1
    - Dst: QuantLib::Bond::setupArguments
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:43,1
    - Dst: issueDate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::CatBond::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<CatBond::arguments*>
    - issueDate
    - QuantLib::Bond::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CatBond::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::fetchResults
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:50,1
    - Dst: dynamic_cast<const CatBond::results*>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:52,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::CatBond::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::fetchResults
    - QL_ENSURE
    - dynamic_cast<const CatBond::results*>
    linkageType: ''
    returnType: void
    signature: void CatBond::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:75,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:77,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:79,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:90,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:90,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:92,1
    - Dst: cashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:92,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 15
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' iborIndex'
    - ' paymentDayCounter'
    - ' notionalRisk'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - ext::shared_ptr<NotionalRisk>
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 96
    functionName: QuantLib::FloatingCatBond::FloatingCatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingCatBond::FloatingCatBond(Natural settlementDays,\n                                     Real
      faceAmount,\n                                     Schedule schedule,\n                                     const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                     const
      DayCounter& paymentDayCounter,\n                                     const ext::shared_ptr<NotionalRisk>&
      notionalRisk,\n                                     BusinessDayConvention paymentConvention,\n
      \                                    Natural fixingDays,\n                                     const
      std::vector<Real>& gearings,\n                                     const std::vector<Spread>&
      spreads,\n                                     const std::vector<Rate>& caps,\n
      \                                    const std::vector<Rate>& floors,\n                                     bool
      inArrears,\n                                     Real redemption,\n                                     const
      Date& issueDate)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:141,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:149,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:160,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:160,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:162,1
    - Dst: cashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:162,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:163,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 22
    argNames:
    - settlementDays
    - faceAmount
    - ' startDate'
    - ' maturityDate'
    - couponFrequency
    - ' calendar'
    - ' iborIndex'
    - ' accrualDayCounter'
    - ' notionalRisk'
    - accrualConvention
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    - ' stubDate'
    - rule
    - endOfMonth
    argTypes:
    - Natural
    - Real
    - Date
    - Date
    - Frequency
    - Calendar
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - ext::shared_ptr<NotionalRisk>
    - BusinessDayConvention
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    - Date
    - DateGeneration::Rule
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 166
    functionName: QuantLib::FloatingCatBond::FloatingCatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Integer
    - addRedemptionsToCashflows
    - std::vector<Real>
    - IborLeg
    - QL_FAIL
    - registerWith
    - Date
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingCatBond::FloatingCatBond(Natural settlementDays,\n                                     Real
      faceAmount,\n                                     const Date& startDate,\n                                     const
      Date& maturityDate,\n                                     Frequency couponFrequency,\n
      \                                    const Calendar& calendar,\n                                     const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                     const
      DayCounter& accrualDayCounter,\n                                     const ext::shared_ptr<NotionalRisk>&
      notionalRisk,\n                                     BusinessDayConvention accrualConvention,\n
      \                                    BusinessDayConvention paymentConvention,\n
      \                                    Natural fixingDays,\n                                     const
      std::vector<Real>& gearings,\n                                     const std::vector<Spread>&
      spreads,\n                                     const std::vector<Rate>& caps,\n
      \                                    const std::vector<Rate>& floors,\n                                     bool
      inArrears,\n                                     Real redemption,\n                                     const
      Date& issueDate,\n                                     const Date& stubDate,\n
      \                                    DateGeneration::Rule rule,\n                                     bool
      endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: CatBond::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CatBond::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<CatBond::arguments*>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:41,1
    - Dst: QuantLib::Bond::setupArguments
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:43,1
    - Dst: issueDate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: QuantLib::CatBond::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<CatBond::arguments*>
    - issueDate
    - QuantLib::Bond::setupArguments
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void CatBond::setupArguments(PricingEngine::arguments* args) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Bond::fetchResults
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:50,1
    - Dst: dynamic_cast<const CatBond::results*>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:52,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: QuantLib::CatBond::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Bond::fetchResults
    - QL_ENSURE
    - dynamic_cast<const CatBond::results*>
    linkageType: ''
    returnType: void
    signature: void CatBond::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Schedule::calendar
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:75,1
    - Dst: Schedule::endDate
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:77,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:79,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:79,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:90,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:90,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:92,1
    - Dst: cashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:92,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:93,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:93,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 15
    argNames:
    - settlementDays
    - faceAmount
    - schedule
    - ' iborIndex'
    - ' paymentDayCounter'
    - ' notionalRisk'
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    argTypes:
    - Natural
    - Real
    - Schedule
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - ext::shared_ptr<NotionalRisk>
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 96
    functionName: QuantLib::FloatingCatBond::FloatingCatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Schedule::calendar
    - addRedemptionsToCashflows
    - std::move
    - Schedule::endDate
    - std::vector<Real>
    - IborLeg
    - registerWith
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingCatBond::FloatingCatBond(Natural settlementDays,\n                                     Real
      faceAmount,\n                                     Schedule schedule,\n                                     const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                     const
      DayCounter& paymentDayCounter,\n                                     const ext::shared_ptr<NotionalRisk>&
      notionalRisk,\n                                     BusinessDayConvention paymentConvention,\n
      \                                    Natural fixingDays,\n                                     const
      std::vector<Real>& gearings,\n                                     const std::vector<Spread>&
      spreads,\n                                     const std::vector<Rate>& caps,\n
      \                                    const std::vector<Rate>& floors,\n                                     bool
      inArrears,\n                                     Real redemption,\n                                     const
      Date& issueDate)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:127,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:132,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:138,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:141,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:141,1
    - Dst: IborLeg
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:149,1
    - Dst: addRedemptionsToCashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:160,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:160,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:162,1
    - Dst: cashflows
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:162,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:163,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:163,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/catbond.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 22
    argNames:
    - settlementDays
    - faceAmount
    - ' startDate'
    - ' maturityDate'
    - couponFrequency
    - ' calendar'
    - ' iborIndex'
    - ' accrualDayCounter'
    - ' notionalRisk'
    - accrualConvention
    - paymentConvention
    - fixingDays
    - ' gearings'
    - ' spreads'
    - ' caps'
    - ' floors'
    - inArrears
    - redemption
    - ' issueDate'
    - ' stubDate'
    - rule
    - endOfMonth
    argTypes:
    - Natural
    - Real
    - Date
    - Date
    - Frequency
    - Calendar
    - ext::shared_ptr<IborIndex>
    - DayCounter
    - ext::shared_ptr<NotionalRisk>
    - BusinessDayConvention
    - BusinessDayConvention
    - Natural
    - std::vector<Real>
    - std::vector<Spread>
    - std::vector<Rate>
    - std::vector<Rate>
    - bool
    - Real
    - Date
    - Date
    - DateGeneration::Rule
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 166
    functionName: QuantLib::FloatingCatBond::FloatingCatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.cpp
    functionUses: 0
    functionsReached:
    - cashflows
    - QL_ENSURE
    - Integer
    - addRedemptionsToCashflows
    - std::vector<Real>
    - IborLeg
    - QL_FAIL
    - registerWith
    - Date
    - size
    linkageType: ''
    returnType: void
    signature: "void FloatingCatBond::FloatingCatBond(Natural settlementDays,\n                                     Real
      faceAmount,\n                                     const Date& startDate,\n                                     const
      Date& maturityDate,\n                                     Frequency couponFrequency,\n
      \                                    const Calendar& calendar,\n                                     const
      ext::shared_ptr<IborIndex>& iborIndex,\n                                     const
      DayCounter& accrualDayCounter,\n                                     const ext::shared_ptr<NotionalRisk>&
      notionalRisk,\n                                     BusinessDayConvention accrualConvention,\n
      \                                    BusinessDayConvention paymentConvention,\n
      \                                    Natural fixingDays,\n                                     const
      std::vector<Real>& gearings,\n                                     const std::vector<Spread>&
      spreads,\n                                     const std::vector<Rate>& caps,\n
      \                                    const std::vector<Rate>& floors,\n                                     bool
      inArrears,\n                                     Real redemption,\n                                     const
      Date& issueDate,\n                                     const Date& stubDate,\n
      \                                    DateGeneration::Rule rule,\n                                     bool
      endOfMonth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - catRisk
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - ext::shared_ptr<CatRisk>
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::MonteCarloCatBondEngine::MonteCarloCatBondEngine
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MonteCarloCatBondEngine::MonteCarloCatBondEngine(\n        ext::shared_ptr<CatRisk>
      catRisk,\n        Handle<YieldTermStructure> discountCurve,\n        const ext::optional<bool>&
      includeSettlementDateFlows)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:38,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:41,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:45,1
    - Dst: QuantLib::MonteCarloCatBondEngine::npv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:51,1
    - Dst: QuantLib::MonteCarloCatBondEngine::npv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 73
    functionName: QuantLib::MonteCarloCatBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MonteCarloCatBondEngine::npv
    - referenceDate
    - empty
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MonteCarloCatBondEngine::calculate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: cashflows::empty
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:81,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:84,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:85,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:91,1
    - Dst: cashflows::rbegin
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:92,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:92,1
    - Dst: newSimulation
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:93,1
    - Dst: QuantLib::MonteCarloCatBondEngine::pathNpv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:96,1
    - Dst: ext::shared_ptr::nextPath
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:98,1
    - Dst: notionalRisk::updatePath
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:100,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:101,1
    - Dst: QuantLib::MonteCarloCatBondEngine::pathNpv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:102,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:104,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:115,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 6
    argNames:
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - ' lossProbability'
    - exhaustionProbability
    - ' expectedLoss'
    argTypes:
    - bool
    - Date
    - Date
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 116
    functionName: QuantLib::MonteCarloCatBondEngine::npv
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 1
    functionsReached:
    - NotionalPath::loss
    - cashflows::rbegin
    - date
    - newSimulation
    - std::max
    - discount
    - QuantLib::detail::instance
    - Date
    - ext::shared_ptr::nextPath
    - cashflows::empty
    - notionalRisk::updatePath
    - QuantLib::MonteCarloCatBondEngine::pathNpv
    linkageType: ''
    returnType: Real
    signature: Real MonteCarloCatBondEngine::npv(bool includeSettlementDateFlows,
      Date settlementDate, Date npvDate, Real& lossProbability, Real &exhaustionProbability,
      Real& expectedLoss) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:123,1
    - Dst: QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:124,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:125,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - includeSettlementDateFlows
    - settlementDate
    - ' notionalPath'
    argTypes:
    - bool
    - Date
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 129
    functionName: QuantLib::MonteCarloCatBondEngine::pathNpv
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 1
    functionsReached:
    - discount
    - date
    - QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
    - hasOccurred
    linkageType: ''
    returnType: Real
    signature: "Real MonteCarloCatBondEngine::pathNpv(bool includeSettlementDateFlows,
      \n                                          Date settlementDate, \n                                          const
      NotionalPath& notionalPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    - Dst: notionalRate
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cf'
    - ' notionalPath'
    argTypes:
    - ext::shared_ptr<CashFlow>
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 1
    functionsReached:
    - amount
    - date
    - notionalRate
    linkageType: ''
    returnType: Real
    signature: "Real MonteCarloCatBondEngine::cashFlowRiskyValue(const ext::shared_ptr<CashFlow>&
      cf,\n                                                     const NotionalPath&
      notionalPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:32,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - catRisk
    - discountCurve
    - ' includeSettlementDateFlows'
    argTypes:
    - ext::shared_ptr<CatRisk>
    - Handle<YieldTermStructure>
    - ext::optional<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionName: QuantLib::MonteCarloCatBondEngine::MonteCarloCatBondEngine
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void MonteCarloCatBondEngine::MonteCarloCatBondEngine(\n        ext::shared_ptr<CatRisk>
      catRisk,\n        Handle<YieldTermStructure> discountCurve,\n        const ext::optional<bool>&
      includeSettlementDateFlows)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:38,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:38,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:41,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:45,1
    - Dst: QuantLib::MonteCarloCatBondEngine::npv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:51,1
    - Dst: QuantLib::MonteCarloCatBondEngine::npv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 73
    functionName: QuantLib::MonteCarloCatBondEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::MonteCarloCatBondEngine::npv
    - referenceDate
    - empty
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void MonteCarloCatBondEngine::calculate() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: cashflows::empty
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:81,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:84,1
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:85,1
    - Dst: Date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:91,1
    - Dst: cashflows::rbegin
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:92,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:92,1
    - Dst: newSimulation
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:93,1
    - Dst: QuantLib::MonteCarloCatBondEngine::pathNpv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:96,1
    - Dst: ext::shared_ptr::nextPath
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:98,1
    - Dst: notionalRisk::updatePath
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:100,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:101,1
    - Dst: QuantLib::MonteCarloCatBondEngine::pathNpv
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:102,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:104,1
    - Dst: NotionalPath::loss
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:106,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:115,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 6
    argNames:
    - includeSettlementDateFlows
    - settlementDate
    - npvDate
    - ' lossProbability'
    - exhaustionProbability
    - ' expectedLoss'
    argTypes:
    - bool
    - Date
    - Date
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 116
    functionName: QuantLib::MonteCarloCatBondEngine::npv
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 2
    functionsReached:
    - NotionalPath::loss
    - cashflows::rbegin
    - date
    - newSimulation
    - std::max
    - discount
    - QuantLib::detail::instance
    - Date
    - ext::shared_ptr::nextPath
    - cashflows::empty
    - notionalRisk::updatePath
    - QuantLib::MonteCarloCatBondEngine::pathNpv
    linkageType: ''
    returnType: Real
    signature: Real MonteCarloCatBondEngine::npv(bool includeSettlementDateFlows,
      Date settlementDate, Date npvDate, Real& lossProbability, Real &exhaustionProbability,
      Real& expectedLoss) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hasOccurred
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:123,1
    - Dst: QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:124,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:125,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - includeSettlementDateFlows
    - settlementDate
    - ' notionalPath'
    argTypes:
    - bool
    - Date
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 129
    functionName: QuantLib::MonteCarloCatBondEngine::pathNpv
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 2
    functionsReached:
    - discount
    - date
    - QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
    - hasOccurred
    linkageType: ''
    returnType: Real
    signature: "Real MonteCarloCatBondEngine::pathNpv(bool includeSettlementDateFlows,
      \n                                          Date settlementDate, \n                                          const
      NotionalPath& notionalPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: amount
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    - Dst: notionalRate
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    - Dst: date
      Src: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' cf'
    - ' notionalPath'
    argTypes:
    - ext::shared_ptr<CashFlow>
    - NotionalPath
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::MonteCarloCatBondEngine::cashFlowRiskyValue
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/montecarlocatbondengine.cpp
    functionUses: 2
    functionsReached:
    - amount
    - date
    - notionalRate
    linkageType: ''
    returnType: Real
    signature: "Real MonteCarloCatBondEngine::cashFlowRiskyValue(const ext::shared_ptr<CashFlow>&
      cf,\n                                                     const NotionalPath&
      notionalPath) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catbond.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - ' issueDate'
    - notionalRisk
    argTypes:
    - Natural
    - Calendar
    - Date
    - ext::shared_ptr<NotionalRisk>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::CatBond::CatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CatBond(Natural settlementDays,\n                const Calendar&
      calendar,\n                const Date& issueDate,\n                ext::shared_ptr<NotionalRisk>
      notionalRisk)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: ~CatBond() override
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatBond() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::CatBond::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lossProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::CatBond::expectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expectedLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CatBond::exhaustionProbability
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real exhaustionProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/catbonds/catbond.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlementDays
    - ' calendar'
    - ' issueDate'
    - notionalRisk
    argTypes:
    - Natural
    - Calendar
    - Date
    - ext::shared_ptr<NotionalRisk>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: QuantLib::CatBond::CatBond
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void CatBond(Natural settlementDays,\n                const Calendar&
      calendar,\n                const Date& issueDate,\n                ext::shared_ptr<NotionalRisk>
      notionalRisk)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: ~CatBond() override
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~CatBond() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::CatBond::lossProbability
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real lossProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::CatBond::expectedLoss
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expectedLoss() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::CatBond::exhaustionProbability
    functionSourceFile: /src/quantlib/ql/experimental/catbonds/catbond.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real exhaustionProbability() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:39,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:43,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' engine'
    - logK
    - tenor
    - P1
    argTypes:
    - ext::shared_ptr<AnalyticHestonEngine>
    - Real
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: QuantLib::P12Integrand::P12Integrand
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: void
    signature: "void P12Integrand(ext::shared_ptr<AnalyticHestonEngine>& engine,\n
      \                    Real logK,\n                     Time tenor,\n                     bool
      P1, // true for P1, false for P2\n                     Real phiRightLimit =
      100)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    - Dst: chF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - std::real
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - tenor
    - resetTime
    - ' s0'
    - logK
    - P1
    - parent
    - phiRightLimit
    - nuRightLimit
    argTypes:
    - Time
    - Time
    - Handle<Quote>
    - Real
    - bool
    - AnalyticHestonForwardEuropeanEngine*
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 75
    functionName: QuantLib::P12HatIntegrand::P12HatIntegrand
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void P12HatIntegrand(Time tenor,\n                        Time resetTime,\n
      \                       Handle<Quote>& s0,\n                        Real logK,\n
      \                       bool P1, // true for P1, false for P2\n                        const
      AnalyticHestonForwardEuropeanEngine* const parent,\n                        Real
      phiRightLimit,\n                        Real nuRightLimit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardChF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:82,1
    - Dst: innerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:84,1
    - Dst: propagator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: operator()(Real nu) const
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - innerIntegrator_
    - forwardChF
    - propagator
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real nu) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:97,1
    - Dst: v0
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:99,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:100,1
    - Dst: kappa
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:101,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:102,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:103,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:106,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:111,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - process
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::AnalyticHestonForwardEuropeanEngine
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - dividendYield
    - v0
    - theta
    - std::move
    - riskFreeRate
    - rho
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonForwardEuropeanEngine::AnalyticHestonForwardEuropeanEngine(\n
      \       ext::shared_ptr<HestonProcess> process, Size integrationOrder)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:123,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::type
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:123,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:129,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:131,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:132,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:132,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:137,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:138,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:139,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:145,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:156,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:156,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:158,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:163,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:164,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:166,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:172,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 190
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
    - ext::shared_ptr::optionType
    - ext::shared_ptr<Quote>
    - QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::lastDate
    - std::max
    - discount
    - SimpleQuote::SimpleQuote
    - QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
    - QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::type
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonForwardEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:200,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:200,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:204,1
    - Dst: outerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:209,1
    - Dst: outerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - tenor
    - resetTime
    - moneyness
    - ratio
    - phiRightLimit
    - nuRightLimit
    argTypes:
    - Time
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 215
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 1
    functionsReached:
    - outerIntegrator_
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat(Time
      tenor,\n                                                                                Time
      resetTime,\n                                                                                Real
      moneyness,\n                                                                                Real
      ratio,\n                                                                                Real
      phiRightLimit,\n                                                                                Real
      nuRightLimit) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:223,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:227,1
    - Dst: modifiedBesselFunction_i
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - resetTime
    - varReset
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 231
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::propagator
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    - std::pow
    - std::sqrt
    - modifiedBesselFunction_i
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonForwardEuropeanEngine::propagator(Time resetTime,\n
      \                                                        Real varReset) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HestonProcess::HestonProcess
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:239,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:243,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' spotReset'
    - varReset
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 250
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - HestonProcess::HestonProcess
    - HestonModel::HestonModel
    - AnalyticHestonEngine::AnalyticHestonEngine
    linkageType: ''
    returnType: ext::shared_ptr<AnalyticHestonEngine>
    signature: "ext::shared_ptr<AnalyticHestonEngine> AnalyticHestonForwardEuropeanEngine::forwardChF(\n
      \                                     Handle<Quote>& spotReset,\n                                      Real
      varReset) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:259,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:260,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:260,1
    - Dst: GaussLegendreIntegration
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:263,1
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:267,1
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - tenor
    - ' St'
    - K
    - ratio
    - phiRightLimit
    argTypes:
    - Time
    - Handle<Quote>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 1
    functionsReached:
    - value
    - std::log
    - QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
    - GaussLegendreIntegration
    - integrator
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonForwardEuropeanEngine::calculateP1P2(Time
      tenor,\n                                                                             Handle<Quote>&
      St,\n                                                                             Real
      K,\n                                                                             Real
      ratio,\n                                                                             Real
      phiRightLimit) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:39,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:43,1
    - Dst: std::complex<Real>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ' engine'
    - logK
    - tenor
    - P1
    argTypes:
    - ext::shared_ptr<AnalyticHestonEngine>
    - Real
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: QuantLib::P12Integrand::P12Integrand
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - std::complex<Real>
    linkageType: ''
    returnType: void
    signature: "void P12Integrand(ext::shared_ptr<AnalyticHestonEngine>& engine,\n
      \                    Real logK,\n                     Time tenor,\n                     bool
      P1, // true for P1, false for P2\n                     Real phiRightLimit =
      100)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    - Dst: chF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: operator()(Real phi) const
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - chF
    - std::real
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - tenor
    - resetTime
    - ' s0'
    - logK
    - P1
    - parent
    - phiRightLimit
    - nuRightLimit
    argTypes:
    - Time
    - Time
    - Handle<Quote>
    - Real
    - bool
    - AnalyticHestonForwardEuropeanEngine*
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 75
    functionName: QuantLib::P12HatIntegrand::P12HatIntegrand
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void P12HatIntegrand(Time tenor,\n                        Time resetTime,\n
      \                       Handle<Quote>& s0,\n                        Real logK,\n
      \                       bool P1, // true for P1, false for P2\n                        const
      AnalyticHestonForwardEuropeanEngine* const parent,\n                        Real
      phiRightLimit,\n                        Real nuRightLimit)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forwardChF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:82,1
    - Dst: innerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:84,1
    - Dst: propagator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nu
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: operator()(Real nu) const
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - innerIntegrator_
    - forwardChF
    - propagator
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real nu) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:97,1
    - Dst: v0
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:99,1
    - Dst: rho
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:100,1
    - Dst: kappa
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:101,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:102,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:103,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:104,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:106,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:111,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - process
    - integrationOrder
    argTypes:
    - ext::shared_ptr<HestonProcess>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 118
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::AnalyticHestonForwardEuropeanEngine
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - kappa
    - sigma
    - s0
    - dividendYield
    - v0
    - theta
    - std::move
    - riskFreeRate
    - rho
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void AnalyticHestonForwardEuropeanEngine::AnalyticHestonForwardEuropeanEngine(\n
      \       ext::shared_ptr<HestonProcess> process, Size integrationOrder)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:123,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::type
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:123,1
    - Dst: ext::dynamic_pointer_cast<PlainVanillaPayoff>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:128,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:129,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:131,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:132,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::lastDate
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:132,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:137,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:138,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:139,1
    - Dst: discount
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:140,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:145,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:149,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:155,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:156,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:156,1
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:158,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:163,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:164,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:166,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:169,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:172,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 190
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
    - ext::shared_ptr::optionType
    - ext::shared_ptr<Quote>
    - QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::lastDate
    - std::max
    - discount
    - SimpleQuote::SimpleQuote
    - QuantLib::AnalyticHestonForwardEuropeanEngine::process_::time
    - QL_FAIL
    - ext::dynamic_pointer_cast<PlainVanillaPayoff>
    - std::sqrt
    - QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
    - QuantLib::AnalyticHestonForwardEuropeanEngine::arguments_::exercise::type
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AnalyticHestonForwardEuropeanEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:200,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:200,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:204,1
    - Dst: outerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:209,1
    - Dst: outerIntegrator_
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - tenor
    - resetTime
    - moneyness
    - ratio
    - phiRightLimit
    - nuRightLimit
    argTypes:
    - Time
    - Time
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 215
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 2
    functionsReached:
    - outerIntegrator_
    - SimpleQuote::SimpleQuote
    - ext::shared_ptr<Quote>
    - std::log
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonForwardEuropeanEngine::calculateP1P2Hat(Time
      tenor,\n                                                                                Time
      resetTime,\n                                                                                Real
      moneyness,\n                                                                                Real
      ratio,\n                                                                                Real
      phiRightLimit,\n                                                                                Real
      nuRightLimit) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:222,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:223,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:226,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:227,1
    - Dst: modifiedBesselFunction_i
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - resetTime
    - varReset
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 231
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::propagator
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - Real
    - std::pow
    - std::sqrt
    - modifiedBesselFunction_i
    linkageType: ''
    returnType: Real
    signature: "Real AnalyticHestonForwardEuropeanEngine::propagator(Time resetTime,\n
      \                                                        Real varReset) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HestonProcess::HestonProcess
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:239,1
    - Dst: HestonModel::HestonModel
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:243,1
    - Dst: AnalyticHestonEngine::AnalyticHestonEngine
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' spotReset'
    - varReset
    argTypes:
    - Handle<Quote>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 250
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 1
    functionsReached:
    - HestonProcess::HestonProcess
    - HestonModel::HestonModel
    - AnalyticHestonEngine::AnalyticHestonEngine
    linkageType: ''
    returnType: ext::shared_ptr<AnalyticHestonEngine>
    signature: "ext::shared_ptr<AnalyticHestonEngine> AnalyticHestonForwardEuropeanEngine::forwardChF(\n
      \                                     Handle<Quote>& spotReset,\n                                      Real
      varReset) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:259,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:260,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:260,1
    - Dst: GaussLegendreIntegration
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:263,1
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:267,1
    - Dst: integrator
      Src: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - tenor
    - ' St'
    - K
    - ratio
    - phiRightLimit
    argTypes:
    - Time
    - Handle<Quote>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 273
    functionName: QuantLib::AnalyticHestonForwardEuropeanEngine::calculateP1P2
    functionSourceFile: /src/quantlib/ql/experimental/forward/analytichestonforwardeuropeanengine.cpp
    functionUses: 2
    functionsReached:
    - value
    - std::log
    - QuantLib::AnalyticHestonForwardEuropeanEngine::forwardChF
    - GaussLegendreIntegration
    - integrator
    linkageType: ''
    returnType: std::pair<Real, Real>
    signature: "std::pair<Real, Real> AnalyticHestonForwardEuropeanEngine::calculateP1P2(Time
      tenor,\n                                                                             Handle<Quote>&
      St,\n                                                                             Real
      K,\n                                                                             Real
      ratio,\n                                                                             Real
      phiRightLimit) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' process'
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FFTVarianceGammaEngine::FFTVarianceGammaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FFTVarianceGammaEngine::FFTVarianceGammaEngine(\n        const
      ext::shared_ptr<VarianceGammaProcess>& process, Real logStrikeSpacing)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:34,1
    - Dst: std::unique_ptr<FFTEngine>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:35,1
    - Dst: FFTVarianceGammaEngine::FFTVarianceGammaEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::FFTVarianceGammaEngine::clone
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - FFTVarianceGammaEngine::FFTVarianceGammaEngine
    - std::unique_ptr<FFTEngine>
    linkageType: ''
    returnType: std::unique_ptr<FFTEngine>
    signature: std::unique_ptr<FFTEngine> FFTVarianceGammaEngine::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:41,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:44,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:46,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:48,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:49,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:49,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:51,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:52,1
    - Dst: ext::shared_ptr::theta
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::FFTVarianceGammaEngine::precalculateExpiry
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::sigma
    - ext::shared_ptr::theta
    - DayCounter::yearFraction
    - ext::shared_ptr::nu
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: void
    signature: void FFTVarianceGammaEngine::precalculateExpiry(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:64,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 68
    functionName: QuantLib::FFTVarianceGammaEngine::complexFourierTransform
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - x0
    - std::exp
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> FFTVarianceGammaEngine::complexFourierTransform(std::complex<Real>
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:73,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::FFTVarianceGammaEngine::discountFactor
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real FFTVarianceGammaEngine::discountFactor(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:80,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::FFTVarianceGammaEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    linkageType: ''
    returnType: Real
    signature: Real FFTVarianceGammaEngine::dividendYield(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' process'
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: QuantLib::FFTVarianceGammaEngine::FFTVarianceGammaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FFTVarianceGammaEngine::FFTVarianceGammaEngine(\n        const
      ext::shared_ptr<VarianceGammaProcess>& process, Real logStrikeSpacing)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:34,1
    - Dst: std::unique_ptr<FFTEngine>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:35,1
    - Dst: FFTVarianceGammaEngine::FFTVarianceGammaEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: QuantLib::FFTVarianceGammaEngine::clone
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - FFTVarianceGammaEngine::FFTVarianceGammaEngine
    - std::unique_ptr<FFTEngine>
    linkageType: ''
    returnType: std::unique_ptr<FFTEngine>
    signature: std::unique_ptr<FFTEngine> FFTVarianceGammaEngine::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:41,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:44,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:46,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:48,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:49,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:49,1
    - Dst: ext::shared_ptr::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:51,1
    - Dst: ext::shared_ptr::nu
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:52,1
    - Dst: ext::shared_ptr::theta
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::FFTVarianceGammaEngine::precalculateExpiry
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::sigma
    - ext::shared_ptr::theta
    - DayCounter::yearFraction
    - ext::shared_ptr::nu
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: void
    signature: void FFTVarianceGammaEngine::precalculateExpiry(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:63,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:64,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 68
    functionName: QuantLib::FFTVarianceGammaEngine::complexFourierTransform
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - x0
    - std::exp
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> FFTVarianceGammaEngine::complexFourierTransform(std::complex<Real>
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:73,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: QuantLib::FFTVarianceGammaEngine::discountFactor
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real FFTVarianceGammaEngine::discountFactor(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:80,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::FFTVarianceGammaEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::dividendYield
    - ext::dynamic_pointer_cast<VarianceGammaProcess>
    linkageType: ''
    returnType: Real
    signature: Real FFTVarianceGammaEngine::dividendYield(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:29,1
    - Dst: QuantLib::VarianceGammaModel::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:29,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:31,1
    - Dst: QuantLib::VarianceGammaModel::nu
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:33,1
    - Dst: QuantLib::VarianceGammaModel::theta
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:33,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:34,1
    - Dst: QuantLib::VarianceGammaModel::generateArguments
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:38,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:39,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:40,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::VarianceGammaModel::VarianceGammaModel
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - ConstantParameter
    - s0
    - PositiveConstraint
    - QuantLib::VarianceGammaModel::generateArguments
    - NoConstraint
    - riskFreeRate
    - registerWith
    - QuantLib::VarianceGammaModel::sigma
    - QuantLib::VarianceGammaModel::nu
    - QuantLib::VarianceGammaModel::theta
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaModel::VarianceGammaModel(\n        const ext::shared_ptr<VarianceGammaProcess>
      & process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:44,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:44,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:46,1
    - Dst: QuantLib::VarianceGammaModel::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    - Dst: QuantLib::VarianceGammaModel::nu
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    - Dst: QuantLib::VarianceGammaModel::theta
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::VarianceGammaModel::generateArguments
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp
    functionUses: 1
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::VarianceGammaModel::theta
    - riskFreeRate
    - QuantLib::VarianceGammaModel::sigma
    - QuantLib::VarianceGammaModel::nu
    - ext::make_shared<VarianceGammaProcess>
    linkageType: ''
    returnType: void
    signature: void VarianceGammaModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:29,1
    - Dst: QuantLib::VarianceGammaModel::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:29,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:30,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:31,1
    - Dst: QuantLib::VarianceGammaModel::nu
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:31,1
    - Dst: PositiveConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:32,1
    - Dst: ConstantParameter
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:33,1
    - Dst: QuantLib::VarianceGammaModel::theta
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:33,1
    - Dst: NoConstraint
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:34,1
    - Dst: QuantLib::VarianceGammaModel::generateArguments
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:38,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:39,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:39,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:40,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ' process'
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 41
    functionName: QuantLib::VarianceGammaModel::VarianceGammaModel
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp
    functionUses: 0
    functionsReached:
    - dividendYield
    - ConstantParameter
    - s0
    - PositiveConstraint
    - QuantLib::VarianceGammaModel::generateArguments
    - NoConstraint
    - riskFreeRate
    - registerWith
    - QuantLib::VarianceGammaModel::sigma
    - QuantLib::VarianceGammaModel::nu
    - QuantLib::VarianceGammaModel::theta
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaModel::VarianceGammaModel(\n        const ext::shared_ptr<VarianceGammaProcess>
      & process)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<VarianceGammaProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:44,1
    - Dst: s0
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:44,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:45,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:46,1
    - Dst: QuantLib::VarianceGammaModel::sigma
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    - Dst: QuantLib::VarianceGammaModel::nu
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    - Dst: QuantLib::VarianceGammaModel::theta
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: QuantLib::VarianceGammaModel::generateArguments
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.cpp
    functionUses: 2
    functionsReached:
    - dividendYield
    - s0
    - QuantLib::VarianceGammaModel::theta
    - riskFreeRate
    - QuantLib::VarianceGammaModel::sigma
    - QuantLib::VarianceGammaModel::nu
    - ext::make_shared<VarianceGammaProcess>
    linkageType: ''
    returnType: void
    signature: void VarianceGammaModel::generateArguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - payoff
    - s0
    - t
    - riskFreeDiscount
    - dividendDiscount
    - sigma
    - nu
    - theta
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction::logValue
    - std::move
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void Integrand(ext::shared_ptr<StrikedTypePayoff> payoff,\n                    Real
      s0,\n                    Real t,\n                    Real riskFreeDiscount,\n
      \                   Real dividendDiscount,\n                    Real sigma,\n
      \                   Real nu,\n                    Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:56,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - payoff
    - s0
    - t
    - riskFreeDiscount
    - dividendDiscount
    - sigma
    - nu
    - theta
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction::logValue
    - std::move
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void Integrand(ext::shared_ptr<StrikedTypePayoff> payoff,\n                    Real
      s0,\n                    Real t,\n                    Real riskFreeDiscount,\n
      \                   Real dividendDiscount,\n                    Real sigma,\n
      \                   Real nu,\n                    Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:56,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:85,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - absoluteError
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::VarianceGammaEngine::VarianceGammaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaEngine::VarianceGammaEngine(ext::shared_ptr<VarianceGammaProcess>
      process,\n                                             Real absoluteError)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:91,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:91,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:96,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:100,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:102,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:102,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:104,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:105,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:106,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:109,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: nu
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:113,1
    - Dst: nu
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:113,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:115,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:116,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:118,1
    - Dst: integrator1
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:123,1
    - Dst: integrator2
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 127
    functionName: QuantLib::VarianceGammaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - integrator2
    - dividendYield
    - QL_REQUIRE
    - sigma
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - theta
    - riskFreeRate
    - f
    - integrator1
    - std::sqrt
    - x0
    - exercise::lastDate
    - std::abs
    - nu
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void VarianceGammaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - payoff
    - s0
    - t
    - riskFreeDiscount
    - dividendDiscount
    - sigma
    - nu
    - theta
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction::logValue
    - std::move
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void Integrand(ext::shared_ptr<StrikedTypePayoff> payoff,\n                    Real
      s0,\n                    Real t,\n                    Real riskFreeDiscount,\n
      \                   Real dividendDiscount,\n                    Real sigma,\n
      \                   Real nu,\n                    Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:56,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:43,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:45,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: GammaFunction::logValue
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 8
    argNames:
    - payoff
    - s0
    - t
    - riskFreeDiscount
    - dividendDiscount
    - sigma
    - nu
    - theta
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: QuantLib::Integrand::Integrand
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::log
    - GammaFunction::logValue
    - std::move
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void Integrand(ext::shared_ptr<StrikedTypePayoff> payoff,\n                    Real
      s0,\n                    Real t,\n                    Real riskFreeDiscount,\n
      \                   Real dividendDiscount,\n                    Real sigma,\n
      \                   Real nu,\n                    Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:54,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:55,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:56,1
    - Dst: BlackScholesCalculator::value
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - BlackScholesCalculator::value
    - std::pow
    - std::sqrt
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:84,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:85,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - process
    - absoluteError
    argTypes:
    - ext::shared_ptr<VarianceGammaProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: QuantLib::VarianceGammaEngine::VarianceGammaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaEngine::VarianceGammaEngine(ext::shared_ptr<VarianceGammaProcess>
      process,\n                                             Real absoluteError)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:91,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:91,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:96,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:99,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:100,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:102,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:102,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:104,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:105,1
    - Dst: riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:105,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:106,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:109,1
    - Dst: sigma
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: nu
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: theta
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:111,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:113,1
    - Dst: nu
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:113,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:115,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:116,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:118,1
    - Dst: integrator1
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:123,1
    - Dst: integrator2
      Src: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 127
    functionName: QuantLib::VarianceGammaEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/analyticvariancegammaengine.cpp
    functionUses: 0
    functionsReached:
    - integrator2
    - dividendYield
    - QL_REQUIRE
    - sigma
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - theta
    - riskFreeRate
    - f
    - integrator1
    - std::sqrt
    - x0
    - exercise::lastDate
    - std::abs
    - nu
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void VarianceGammaEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::VarianceGammaProcess::sigma
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::VarianceGammaProcess::nu
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::VarianceGammaProcess::theta
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::VarianceGammaProcess::sigma
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: QuantLib::VarianceGammaProcess::nu
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::VarianceGammaProcess::theta
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' process'
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::FFTVanillaEngine::FFTVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FFTVanillaEngine::FFTVanillaEngine(\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process, Real logStrikeSpacing)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:36,1
    - Dst: std::unique_ptr<FFTEngine>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:37,1
    - Dst: FFTVanillaEngine::FFTVanillaEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: QuantLib::FFTVanillaEngine::clone
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - std::unique_ptr<FFTEngine>
    - FFTVanillaEngine::FFTVanillaEngine
    linkageType: ''
    returnType: std::unique_ptr<FFTEngine>
    signature: std::unique_ptr<FFTEngine> FFTVanillaEngine::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:43,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:46,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:48,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:50,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:51,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<BlackConstantVol>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:53,1
    - Dst: ext::shared_ptr::blackVolatility
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:55,1
    - Dst: ext::shared_ptr::blackVol
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 58
    functionName: QuantLib::FFTVanillaEngine::precalculateExpiry
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::blackVol
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<BlackConstantVol>
    - ext::shared_ptr::blackVolatility
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FFTVanillaEngine::precalculateExpiry(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:66,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 70
    functionName: QuantLib::FFTVanillaEngine::complexFourierTransform
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - x0
    - std::exp
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> FFTVanillaEngine::complexFourierTransform(std::complex<Real>
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:75,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::FFTVanillaEngine::discountFactor
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real FFTVanillaEngine::discountFactor(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:82,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::FFTVanillaEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::dividendYield
    linkageType: ''
    returnType: Real
    signature: Real FFTVanillaEngine::dividendYield(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' process'
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<GeneralizedBlackScholesProcess>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: QuantLib::FFTVanillaEngine::FFTVanillaEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void FFTVanillaEngine::FFTVanillaEngine(\n        const ext::shared_ptr<GeneralizedBlackScholesProcess>&
      process, Real logStrikeSpacing)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:36,1
    - Dst: std::unique_ptr<FFTEngine>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:37,1
    - Dst: FFTVanillaEngine::FFTVanillaEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: QuantLib::FFTVanillaEngine::clone
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - std::unique_ptr<FFTEngine>
    - FFTVanillaEngine::FFTVanillaEngine
    linkageType: ''
    returnType: std::unique_ptr<FFTEngine>
    signature: std::unique_ptr<FFTEngine> FFTVanillaEngine::clone() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:43,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:46,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:48,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:50,1
    - Dst: DayCounter::yearFraction
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:51,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:51,1
    - Dst: ext::dynamic_pointer_cast<BlackConstantVol>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:53,1
    - Dst: ext::shared_ptr::blackVolatility
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:55,1
    - Dst: ext::shared_ptr::blackVol
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 58
    functionName: QuantLib::FFTVanillaEngine::precalculateExpiry
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::dividendYield
    - ext::shared_ptr::blackVol
    - DayCounter::yearFraction
    - ext::dynamic_pointer_cast<BlackConstantVol>
    - ext::shared_ptr::blackVolatility
    - ext::shared_ptr::riskFreeRate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FFTVanillaEngine::precalculateExpiry(Date d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:64,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:66,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:66,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - u
    argTypes:
    - std::complex<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 70
    functionName: QuantLib::FFTVanillaEngine::complexFourierTransform
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - x0
    - std::exp
    - std::log
    linkageType: ''
    returnType: std::complex<Real>
    signature: std::complex<Real> FFTVanillaEngine::complexFourierTransform(std::complex<Real>
      u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:75,1
    - Dst: ext::shared_ptr::riskFreeRate
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: QuantLib::FFTVanillaEngine::discountFactor
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::riskFreeRate
    linkageType: ''
    returnType: Real
    signature: Real FFTVanillaEngine::discountFactor(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:82,1
    - Dst: ext::shared_ptr::dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: QuantLib::FFTVanillaEngine::dividendYield
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftvanillaengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<GeneralizedBlackScholesProcess>
    - ext::shared_ptr::dividendYield
    linkageType: ''
    returnType: Real
    signature: Real FFTVanillaEngine::dividendYield(Date d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::VarianceGammaModel::sigma
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::VarianceGammaModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::VarianceGammaModel::theta
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::VarianceGammaModel::process
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<VarianceGammaProcess>
    signature: ext::shared_ptr<VarianceGammaProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::VarianceGammaModel::sigma
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::VarianceGammaModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: QuantLib::VarianceGammaModel::theta
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real theta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::VarianceGammaModel::process
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammamodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<VarianceGammaProcess>
    signature: ext::shared_ptr<VarianceGammaProcess> process() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::FFTEngine::FFTEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void FFTEngine::FFTEngine(ext::shared_ptr<StochasticProcess1D> process,
      Real logStrikeSpacing)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:36,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:36,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:41,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:43,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:44,1
    - Dst: auto::second::find
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:46,1
    - Dst: auto::second::end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:47,1
    - Dst: QuantLib::FFTEngine::calculateUncached
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 56
    functionName: QuantLib::FFTEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FFTEngine::calculateUncached
    - QL_REQUIRE
    - find
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - auto::second::end
    - end
    - auto::second::find
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void FFTEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:61,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionName: QuantLib::FFTEngine::update
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FFTEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VanillaOption::VanillaOption
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:69,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:71,1
    - Dst: clone
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:73,1
    - Dst: ext::shared_ptr::precalculate
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:74,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:75,1
    - Dst: ext::shared_ptr::NPV
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 77
    functionName: QuantLib::FFTEngine::calculateUncached
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 1
    functionsReached:
    - clone
    - ext::shared_ptr::setPricingEngine
    - ext::shared_ptr::NPV
    - VanillaOption::VanillaOption
    - ext::shared_ptr::precalculate
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void FFTEngine::calculateUncached(const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n                                      const ext::shared_ptr<Exercise>&
      exercise) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<VanillaOption>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:91,1
    - Dst: ext::shared_ptr::exercise
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:91,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:95,1
    - Dst: ext::shared_ptr::payoff
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:96,1
    - Dst: ext::shared_ptr::exercise
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:111,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:114,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:116,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:125,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:126,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:130,1
    - Dst: precalculateExpiry
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:133,1
    - Dst: complexFourierTransform
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:143,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:153,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:154,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:158,1
    - Dst: real
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:159,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:164,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:164,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:165,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:171,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:171,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:174,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 1
    argNames:
    - ' optionList'
    argTypes:
    - std::vector<ext::shared_ptr<Instrument> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 178
    functionName: QuantLib::FFTEngine::precalculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - real
    - ext::shared_ptr::payoff
    - discountFactor
    - clear
    - dividendYield
    - std::vector::resize
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - begin
    - LinearInterpolation
    - ext::shared_ptr::exercise
    - x0
    - ext::shared_ptr::strike
    - static_cast<std::size_t>
    - std::exp
    - ext::shared_ptr::optionType
    - push_back
    - QL_FAIL
    - complexFourierTransform
    - end
    - FastFourierTransform::transform
    - precalculateExpiry
    - QL_REQUIRE
    - std::log
    - std::vector::begin
    - resize
    - std::vector::end
    - ext::dynamic_pointer_cast<VanillaOption>
    linkageType: ''
    returnType: void
    signature: void FFTEngine::precalculate(const std::vector<ext::shared_ptr<Instrument>
      >& optionList)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:30,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - process
    - logStrikeSpacing
    argTypes:
    - ext::shared_ptr<StochasticProcess1D>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: QuantLib::FFTEngine::FFTEngine
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: void FFTEngine::FFTEngine(ext::shared_ptr<StochasticProcess1D> process,
      Real logStrikeSpacing)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:36,1
    - Dst: exercise::type
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:36,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:41,1
    - Dst: find
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:43,1
    - Dst: exercise::lastDate
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:43,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:44,1
    - Dst: auto::second::find
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:46,1
    - Dst: auto::second::end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:47,1
    - Dst: QuantLib::FFTEngine::calculateUncached
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 56
    functionName: QuantLib::FFTEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::FFTEngine::calculateUncached
    - QL_REQUIRE
    - find
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - auto::second::end
    - end
    - auto::second::find
    - exercise::lastDate
    - exercise::type
    linkageType: ''
    returnType: void
    signature: void FFTEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:61,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionName: QuantLib::FFTEngine::update
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - clear
    - QuantLib::GenericEngine::update
    linkageType: ''
    returnType: void
    signature: void FFTEngine::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VanillaOption::VanillaOption
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:69,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:71,1
    - Dst: clone
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:73,1
    - Dst: ext::shared_ptr::precalculate
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:74,1
    - Dst: ext::shared_ptr::setPricingEngine
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:75,1
    - Dst: ext::shared_ptr::NPV
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' payoff'
    - ' exercise'
    argTypes:
    - ext::shared_ptr<StrikedTypePayoff>
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 77
    functionName: QuantLib::FFTEngine::calculateUncached
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 2
    functionsReached:
    - clone
    - ext::shared_ptr::setPricingEngine
    - ext::shared_ptr::NPV
    - VanillaOption::VanillaOption
    - ext::shared_ptr::precalculate
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void FFTEngine::calculateUncached(const ext::shared_ptr<StrikedTypePayoff>&
      payoff,\n                                      const ext::shared_ptr<Exercise>&
      exercise) const"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:82,1
    - Dst: ext::dynamic_pointer_cast<VanillaOption>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:89,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:90,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:91,1
    - Dst: ext::shared_ptr::exercise
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:91,1
    - Dst: ext::dynamic_pointer_cast<StrikedTypePayoff>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:95,1
    - Dst: ext::shared_ptr::payoff
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:96,1
    - Dst: ext::shared_ptr::exercise
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:98,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:111,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:112,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:114,1
    - Dst: static_cast<Size>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:115,1
    - Dst: static_cast<std::size_t>
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:116,1
    - Dst: discountFactor
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:125,1
    - Dst: dividendYield
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:126,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:130,1
    - Dst: precalculateExpiry
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:133,1
    - Dst: complexFourierTransform
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:140,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:143,1
    - Dst: FastFourierTransform::transform
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:149,1
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:153,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:154,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:158,1
    - Dst: real
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:158,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:159,1
    - Dst: LinearInterpolation
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:163,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:164,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:164,1
    - Dst: ext::shared_ptr::optionType
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:165,1
    - Dst: x0
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:171,1
    - Dst: ext::shared_ptr::strike
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:171,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp:174,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 1
    argNames:
    - ' optionList'
    argTypes:
    - std::vector<ext::shared_ptr<Instrument> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 178
    functionName: QuantLib::FFTEngine::precalculate
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/fftengine.cpp
    functionUses: 0
    functionsReached:
    - static_cast<Size>
    - real
    - ext::shared_ptr::payoff
    - discountFactor
    - clear
    - dividendYield
    - std::vector::resize
    - ext::dynamic_pointer_cast<StrikedTypePayoff>
    - begin
    - LinearInterpolation
    - ext::shared_ptr::exercise
    - x0
    - ext::shared_ptr::strike
    - static_cast<std::size_t>
    - std::exp
    - ext::shared_ptr::optionType
    - push_back
    - QL_FAIL
    - complexFourierTransform
    - end
    - FastFourierTransform::transform
    - precalculateExpiry
    - QL_REQUIRE
    - std::log
    - std::vector::begin
    - resize
    - std::vector::end
    - ext::dynamic_pointer_cast<VanillaOption>
    linkageType: ''
    returnType: void
    signature: void FFTEngine::precalculate(const std::vector<ext::shared_ptr<Instrument>
      >& optionList)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:34,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - s0
    - dividendYield
    - riskFreeRate
    - sigma
    - nu
    - theta
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::VarianceGammaProcess::VarianceGammaProcess
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaProcess::VarianceGammaProcess(Handle<Quote> s0,\n
      \                                              Handle<YieldTermStructure> dividendYield,\n
      \                                              Handle<YieldTermStructure> riskFreeRate,\n
      \                                              Real sigma,\n                                               Real
      nu,\n                                               Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::VarianceGammaProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::VarianceGammaProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::drift(Time /*t*/, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::VarianceGammaProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::diffusion(Time /*t*/, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& VarianceGammaProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & VarianceGammaProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& VarianceGammaProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & VarianceGammaProcess::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& VarianceGammaProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & VarianceGammaProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:34,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:36,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:37,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:38,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - s0
    - dividendYield
    - riskFreeRate
    - sigma
    - nu
    - theta
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::VarianceGammaProcess::VarianceGammaProcess
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - registerWith
    - ext::shared_ptr<discretization>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void VarianceGammaProcess::VarianceGammaProcess(Handle<Quote> s0,\n
      \                                              Handle<YieldTermStructure> dividendYield,\n
      \                                              Handle<YieldTermStructure> riskFreeRate,\n
      \                                              Real sigma,\n                                               Real
      nu,\n                                               Real theta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: QuantLib::VarianceGammaProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - value
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::VarianceGammaProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::drift(Time /*t*/, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: QuantLib::VarianceGammaProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Real
    signature: Real VarianceGammaProcess::diffusion(Time /*t*/, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: '& VarianceGammaProcess::s0() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<Quote>
    signature: Handle<Quote> & VarianceGammaProcess::s0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: '& VarianceGammaProcess::dividendYield() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & VarianceGammaProcess::dividendYield()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: '& VarianceGammaProcess::riskFreeRate() const'
    functionSourceFile: /src/quantlib/ql/experimental/variancegamma/variancegammaprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<YieldTermStructure>
    signature: Handle<YieldTermStructure> & VarianceGammaProcess::riskFreeRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::ZabrModel::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ZabrModel::expiryTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ZabrModel::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ZabrModel::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ZabrModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ZabrModel::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::ZabrModel::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::ZabrModel::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::ZabrModel::expiryTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::ZabrModel::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ZabrModel::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ZabrModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ZabrModel::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: QuantLib::ZabrModel::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(const Date& refDate,\n
      \                                          const Calendar& cal,\n                                           BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(Natural settlDays,\n                                           const
      Calendar& cal,\n                                           BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:43,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:45,1
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVol
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' date1'
    - ' date2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::EquityFXVolSurface::atmForwardVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVol
    - timeFromReference
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility EquityFXVolSurface::atmForwardVol(const Date& date1,\n
      \                                                const Date& date2,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - time1
    - time2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::EquityFXVolSurface::atmForwardVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVariance
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: "Volatility EquityFXVolSurface::atmForwardVol(Time time1,\n                                                 Time
      time2,\n                                                 bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:60,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:61,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:62,1
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' date1'
    - ' date2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::EquityFXVolSurface::atmForwardVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVariance
    - timeFromReference
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EquityFXVolSurface::atmForwardVariance(const Date& date1,\n                                                const
      Date& date2,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:69,1
    - Dst: atmVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:70,1
    - Dst: atmVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:71,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - time1
    - time2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 74
    functionName: QuantLib::EquityFXVolSurface::atmForwardVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 2
    functionsReached:
    - atmVariance
    - QL_ENSURE
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EquityFXVolSurface::atmForwardVariance(Time time1,\n                                                Time
      time2,\n                                                bool extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<EquityFXVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:77,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::EquityFXVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<EquityFXVolSurface>*>
    linkageType: ''
    returnType: void
    signature: void EquityFXVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(const Date& refDate,\n
      \                                          const Calendar& cal,\n                                           BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::EquityFXVolSurface::EquityFXVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void EquityFXVolSurface::EquityFXVolSurface(Natural settlDays,\n                                           const
      Calendar& cal,\n                                           BusinessDayConvention
      bdc,\n                                           const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:43,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:45,1
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVol
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' date1'
    - ' date2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: QuantLib::EquityFXVolSurface::atmForwardVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVol
    - timeFromReference
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility EquityFXVolSurface::atmForwardVol(const Date& date1,\n
      \                                                const Date& date2,\n                                                 bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:52,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - time1
    - time2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: QuantLib::EquityFXVolSurface::atmForwardVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVariance
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: "Volatility EquityFXVolSurface::atmForwardVol(Time time1,\n                                                 Time
      time2,\n                                                 bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:60,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:61,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:62,1
    - Dst: QuantLib::EquityFXVolSurface::atmForwardVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ' date1'
    - ' date2'
    - extrapolate
    argTypes:
    - Date
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::EquityFXVolSurface::atmForwardVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::EquityFXVolSurface::atmForwardVariance
    - timeFromReference
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EquityFXVolSurface::atmForwardVariance(const Date& date1,\n                                                const
      Date& date2,\n                                                bool extrapolate)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:69,1
    - Dst: atmVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:70,1
    - Dst: atmVariance
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:71,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - time1
    - time2
    - extrapolate
    argTypes:
    - Time
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 74
    functionName: QuantLib::EquityFXVolSurface::atmForwardVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 4
    functionsReached:
    - atmVariance
    - QL_ENSURE
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real EquityFXVolSurface::atmForwardVariance(Time time1,\n                                                Time
      time2,\n                                                bool extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<EquityFXVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:77,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::EquityFXVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/equityfxvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<EquityFXVolSurface>*>
    linkageType: ''
    returnType: void
    signature: void EquityFXVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:46,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - expiryTime
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: QuantLib::ZabrModel::ZabrModel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZabrModel::ZabrModel(const Real expiryTime, const Real forward,\n
      \                    const Real alpha, const Real beta, const Real nu,\n                     const
      Real rho, const Real gamma)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - strike
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::ZabrModel::lognormalVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - close
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real ZabrModel::lognormalVolatilityHelper(const Real strike,\n                                          const
      Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::lognormalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:66,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::ZabrModel::lognormalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrModel::lognormalVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::lognormalVolatility(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:70,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:71,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: QuantLib::ZabrModel::lognormalVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::ZabrModel::lognormalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::lognormalVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::lognormalVolatility(const std::vector<Real>
      &strikes) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:78,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - strike
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::ZabrModel::normalVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - close
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::normalVolatilityHelper(const Real strike, const Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::normalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:85,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::ZabrModel::normalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrModel::normalVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::normalVolatility(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:89,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:90,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: QuantLib::ZabrModel::normalVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::ZabrModel::normalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::normalVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::normalVolatility(const std::vector<Real>
      &strikes) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:97,1
    - Dst: QuantLib::ZabrModel::F
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    - Dst: QuantLib::ZabrModel::y
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - f
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::ZabrModel::localVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::ZabrModel::y
    - std::fabs
    - QuantLib::ZabrModel::F
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::localVolatilityHelper(const Real f, const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::localVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:104,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::ZabrModel::localVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrModel::localVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::localVolatility(const Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:108,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:109,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: QuantLib::ZabrModel::localVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 2
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: QuantLib::ZabrModel::localVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::localVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::localVolatility(const std::vector<Real>
      &f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::fdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:116,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::ZabrModel::fdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrModel::fdPrice
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::fdPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:124,1
    - Dst: std::vector<Real>::front
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:124,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:126,1
    - Dst: std::vector<Real>::back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:126,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:130,1
    - Dst: FdmLinearOpLayout::FdmLinearOpLayout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:141,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:149,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:148,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:159,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:165,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:167,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:168,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:168,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:172,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:173,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: QuantLib::ZabrModel::localVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:175,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:176,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: FdmDupire1dOp::FdmDupire1dOp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:180,1
    - Dst: FdmBackwardSolver::rollback
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:184,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:187,1
    - Dst: ext::shared_ptr::disableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:193,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:194,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 197
    functionName: QuantLib::ZabrModel::fdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::disableExtrapolation
    - CubicInterpolation::CubicInterpolation
    - QuantLib::ZabrModel::localVolatility
    - FdmDupire1dOp::FdmDupire1dOp
    - std::transform
    - std::vector<Real>::front
    - Array::begin
    - std::ceil
    - std::min
    - std::pair<Real, Real>
    - std::vector<Real>::end
    - Array::end
    - std::max
    - index
    - FdmLinearOpLayout::FdmLinearOpLayout
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - std::vector::size
    - FdmBackwardSolver::rollback
    - std::vector<Real>::begin
    - std::copy
    - std::vector::begin
    - ext::shared_ptr::location
    - std::vector::end
    - std::vector<Real>::back
    - Array::size
    - std::vector<Real>::size
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::fdPrice(const std::vector<Real> &strikes)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:204,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:207,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:208,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:210,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:212,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:214,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:215,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:226,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:232,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:233,1
    - Dst: FdmLinearOpLayout::FdmLinearOpLayout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:235,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:239,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:240,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:241,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:242,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:247,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:246,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:250,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:249,1
    - Dst: Glued1dMesher::Glued1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:251,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:259,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:258,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:268,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:269,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:271,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:274,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:278,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:280,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:280,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:281,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:282,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:282,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:284,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:284,1
    - Dst: FdmZabrOp::FdmZabrOp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:291,1
    - Dst: FdmBackwardSolver::rollback
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:296,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:300,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:300,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:301,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:305,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: ext::shared_ptr::disableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 309
    functionName: QuantLib::ZabrModel::fullFdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::disableExtrapolation
    - Matrix::row_begin
    - std::max<Size>
    - std::vector::push_back
    - Array::begin
    - std::ceil
    - std::pow
    - coordinates
    - InverseCumulativeNormal
    - std::min
    - std::pair<Real, Real>
    - std::exp
    - Size
    - std::max
    - index
    - FdmLinearOpLayout::FdmLinearOpLayout
    - Concentrating1dMesher::Concentrating1dMesher
    - Glued1dMesher::Glued1dMesher
    - std::vector::size
    - ext::make_shared<BicubicSpline>
    - QL_REQUIRE
    - FdmBackwardSolver::rollback
    - FdmZabrOp::FdmZabrOp
    - std::copy
    - std::vector::begin
    - ext::shared_ptr::location
    - std::vector::end
    - std::sqrt
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::fullFdPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:312,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionName: QuantLib::ZabrModel::x
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 4
    functionsReached:
    - std::vector<Real>
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::x(const Real strike) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:317,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:319,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:320,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:327,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:327,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector<Real>::rbegin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector<Real>::rend
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: QuantLib::ZabrModel::y
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:329,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:331,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:332,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:333,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:335,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:336,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:341,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:343,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:349,1
    - Dst: rk
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:350,1
    - Dst: QuantLib::ZabrModel::F
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:350,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:352,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:352,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 360
    functionName: QuantLib::ZabrModel::x
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::ZabrModel::y
    - std::vector<Real>::begin
    - close
    - QuantLib::ZabrModel::F
    - std::vector<Real>::end
    - std::log
    - std::vector::begin
    - rk
    - std::vector::end
    - std::vector<Real>::rbegin
    - std::upper_bound
    - pow
    - std::vector<Real>::rend
    - std::sqrt
    - std::transform
    - std::vector::size
    - std::vector<Real>::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::x(const std::vector<Real> &strikes) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:364,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:365,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:365,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:369,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:370,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:370,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:371,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 374
    functionName: QuantLib::ZabrModel::y
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - std::pow
    - close
    - Real
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::y(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - y
    - u
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 384
    functionName: QuantLib::ZabrModel::F
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::F(const Real y, const Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:46,1
    - Dst: validateSabrParameters
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - expiryTime
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 55
    functionName: QuantLib::ZabrModel::ZabrModel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    - validateSabrParameters
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZabrModel::ZabrModel(const Real expiryTime, const Real forward,\n
      \                    const Real alpha, const Real beta, const Real nu,\n                     const
      Real rho, const Real gamma)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:59,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:60,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - strike
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionName: QuantLib::ZabrModel::lognormalVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - close
    - std::log
    linkageType: ''
    returnType: Real
    signature: "Real ZabrModel::lognormalVolatilityHelper(const Real strike,\n                                          const
      Real x) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::lognormalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:66,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::ZabrModel::lognormalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrModel::lognormalVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::lognormalVolatility(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:70,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:71,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:72,1
    - Dst: QuantLib::ZabrModel::lognormalVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: QuantLib::ZabrModel::lognormalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::lognormalVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::lognormalVolatility(const std::vector<Real>
      &strikes) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:78,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - strike
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: QuantLib::ZabrModel::normalVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - close
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::normalVolatilityHelper(const Real strike, const Real
      x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::normalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:85,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: QuantLib::ZabrModel::normalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrModel::normalVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::normalVolatility(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:89,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:90,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:91,1
    - Dst: QuantLib::ZabrModel::normalVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::ZabrModel::normalVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::normalVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::normalVolatility(const std::vector<Real>
      &strikes) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:97,1
    - Dst: QuantLib::ZabrModel::F
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    - Dst: QuantLib::ZabrModel::y
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - f
    - x
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: QuantLib::ZabrModel::localVolatilityHelper
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 1
    functionsReached:
    - std::pow
    - QuantLib::ZabrModel::y
    - std::fabs
    - QuantLib::ZabrModel::F
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::localVolatilityHelper(const Real f, const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::localVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:104,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: QuantLib::ZabrModel::localVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ZabrModel::localVolatility
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::localVolatility(const Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:108,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:109,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:110,1
    - Dst: QuantLib::ZabrModel::localVolatilityHelper
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 2
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: QuantLib::ZabrModel::localVolatility
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 3
    functionsReached:
    - std::vector<Real>::begin
    - std::vector<Real>::end
    - std::vector::begin
    - std::transform
    - QuantLib::ZabrModel::localVolatilityHelper
    - std::vector<Real>::size
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::localVolatility(const std::vector<Real>
      &f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::fdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:116,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: QuantLib::ZabrModel::fdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrModel::fdPrice
    - std::vector<Real>
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::fdPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:124,1
    - Dst: std::vector<Real>::front
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:124,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:126,1
    - Dst: std::vector<Real>::back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:126,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:130,1
    - Dst: FdmLinearOpLayout::FdmLinearOpLayout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:141,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:149,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:148,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:159,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:165,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:167,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:168,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:168,1
    - Dst: ext::shared_ptr::locations
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:172,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:173,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:174,1
    - Dst: QuantLib::ZabrModel::localVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:175,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:176,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:177,1
    - Dst: FdmDupire1dOp::FdmDupire1dOp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:180,1
    - Dst: FdmBackwardSolver::rollback
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:184,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:188,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:187,1
    - Dst: ext::shared_ptr::disableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:193,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:194,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:195,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 197
    functionName: QuantLib::ZabrModel::fdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 2
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::disableExtrapolation
    - CubicInterpolation::CubicInterpolation
    - QuantLib::ZabrModel::localVolatility
    - FdmDupire1dOp::FdmDupire1dOp
    - std::transform
    - std::vector<Real>::front
    - Array::begin
    - std::ceil
    - std::min
    - std::pair<Real, Real>
    - std::vector<Real>::end
    - Array::end
    - std::max
    - index
    - FdmLinearOpLayout::FdmLinearOpLayout
    - ext::shared_ptr::locations
    - Concentrating1dMesher::Concentrating1dMesher
    - std::vector::size
    - FdmBackwardSolver::rollback
    - std::vector<Real>::begin
    - std::copy
    - std::vector::begin
    - ext::shared_ptr::location
    - std::vector::end
    - std::vector<Real>::back
    - Array::size
    - std::vector<Real>::size
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::fdPrice(const std::vector<Real> &strikes)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: InverseCumulativeNormal
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:204,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:205,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:207,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:208,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:210,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:210,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:211,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:212,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:213,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:214,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:215,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:216,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:217,1
    - Dst: Size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:221,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:226,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:232,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:233,1
    - Dst: FdmLinearOpLayout::FdmLinearOpLayout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:235,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:239,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:240,1
    - Dst: std::max<Size>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:241,1
    - Dst: std::ceil
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:242,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:247,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:246,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:250,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:249,1
    - Dst: Glued1dMesher::Glued1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:251,1
    - Dst: std::pair<Real, Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:259,1
    - Dst: Concentrating1dMesher::Concentrating1dMesher
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:258,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:268,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:269,1
    - Dst: FdmMesherComposite::FdmMesherComposite
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:271,1
    - Dst: ext::shared_ptr::layout
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:274,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:278,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:280,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:280,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:281,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:282,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:282,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:284,1
    - Dst: ext::shared_ptr::location
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:284,1
    - Dst: FdmZabrOp::FdmZabrOp
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:291,1
    - Dst: FdmBackwardSolver::rollback
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:296,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:300,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:300,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:301,1
    - Dst: std::copy
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:302,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: Matrix::row_begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:303,1
    - Dst: ext::make_shared<BicubicSpline>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:305,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:306,1
    - Dst: ext::shared_ptr::disableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 309
    functionName: QuantLib::ZabrModel::fullFdPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 0
    functionsReached:
    - FdmMesherComposite::FdmMesherComposite
    - ext::shared_ptr::disableExtrapolation
    - Matrix::row_begin
    - std::max<Size>
    - std::vector::push_back
    - Array::begin
    - std::ceil
    - std::pow
    - coordinates
    - InverseCumulativeNormal
    - std::min
    - std::pair<Real, Real>
    - std::exp
    - Size
    - std::max
    - index
    - FdmLinearOpLayout::FdmLinearOpLayout
    - Concentrating1dMesher::Concentrating1dMesher
    - Glued1dMesher::Glued1dMesher
    - std::vector::size
    - ext::make_shared<BicubicSpline>
    - QL_REQUIRE
    - FdmBackwardSolver::rollback
    - FdmZabrOp::FdmZabrOp
    - std::copy
    - std::vector::begin
    - ext::shared_ptr::location
    - std::vector::end
    - std::sqrt
    - ext::shared_ptr::layout
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::fullFdPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrModel::x
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:312,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionName: QuantLib::ZabrModel::x
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 8
    functionsReached:
    - std::vector<Real>
    - QuantLib::ZabrModel::x
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::x(const Real strike) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:317,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:319,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:319,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:320,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:327,1
    - Dst: std::vector<Real>::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:327,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector<Real>::rbegin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector<Real>::rend
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:328,1
    - Dst: QuantLib::ZabrModel::y
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:329,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:331,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:332,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:333,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:335,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:336,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:339,1
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:341,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:343,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:349,1
    - Dst: rk
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:350,1
    - Dst: QuantLib::ZabrModel::F
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:350,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:352,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:352,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - strikes
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 360
    functionName: QuantLib::ZabrModel::x
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 8
    functionsReached:
    - QuantLib::ZabrModel::y
    - std::vector<Real>::begin
    - close
    - QuantLib::ZabrModel::F
    - std::vector<Real>::end
    - std::log
    - std::vector::begin
    - rk
    - std::vector::end
    - std::vector<Real>::rbegin
    - std::upper_bound
    - pow
    - std::vector<Real>::rend
    - std::sqrt
    - std::transform
    - std::vector::size
    - std::vector<Real>::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> ZabrModel::x(const std::vector<Real> &strikes) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:364,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:365,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:365,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:368,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:369,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:370,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:370,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:371,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 374
    functionName: QuantLib::ZabrModel::y
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 4
    functionsReached:
    - std::pow
    - close
    - Real
    - std::log
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::y(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabr.cpp:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - y
    - u
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 384
    functionName: QuantLib::ZabrModel::F
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabr.cpp
    functionUses: 4
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real ZabrModel::F(const Real y, const Real u) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:52,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:55,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 18
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 58
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        Handle<Quote> forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote>
      atmVolatility,\n        const std::vector<Handle<Quote> >& volHandles,\n        Real
      alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n        bool
      isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n        bool
      isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:88,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 18
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 90
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        const Rate& forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        const
      Volatility& atmVolatility,\n        const std::vector<Volatility>& volHandles,\n
      \       Real alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n
      \       bool isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n
      \       bool isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:95,1
    - Dst: NoArbSabrInterpolation::NoArbSabrInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:93,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - begin
    - swap
    - NoArbSabrInterpolation::NoArbSabrInterpolation
    - end
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:103,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:104,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:107,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:110,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:114,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:114,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:120,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 122
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
    - isValid
    - size
    - QuantLib::NoArbSabrInterpolatedSmileSection::update
    - clear
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:125,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:46,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:52,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:55,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 18
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 58
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        Handle<Quote> forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote>
      atmVolatility,\n        const std::vector<Handle<Quote> >& volHandles,\n        Real
      alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n        bool
      isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n        bool
      isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:80,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:82,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:83,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:86,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:88,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 18
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 90
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolatedSmileSection::NoArbSabrInterpolatedSmileSection(\n
      \       const Date& optionDate,\n        const Rate& forward,\n        const
      std::vector<Rate>& strikes,\n        bool hasFloatingStrikes,\n        const
      Volatility& atmVolatility,\n        const std::vector<Volatility>& volHandles,\n
      \       Real alpha,\n        Real beta,\n        Real nu,\n        Real rho,\n
      \       bool isAlphaFixed,\n        bool isBetaFixed,\n        bool isNuFixed,\n
      \       bool isRhoFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:94,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:95,1
    - Dst: NoArbSabrInterpolation::NoArbSabrInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:93,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 1
    functionsReached:
    - exerciseTime
    - begin
    - swap
    - NoArbSabrInterpolation::NoArbSabrInterpolation
    - end
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:103,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:104,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:107,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:108,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:110,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:111,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:113,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:114,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:114,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:120,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 122
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - QuantLib::NoArbSabrInterpolatedSmileSection::createInterpolation
    - isValid
    - size
    - QuantLib::NoArbSabrInterpolatedSmileSection::update
    - clear
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:125,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::dayCounter
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::SabrVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SabrVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::maxDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::SabrVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SabrVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::maxTime
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::SabrVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SabrVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& SabrVolSurface::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SabrVolSurface::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::calendar
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::SabrVolSurface::calendar
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SabrVolSurface::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::settlementDays
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::SabrVolSurface::settlementDays
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SabrVolSurface::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::SabrVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SabrVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::SabrVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SabrVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: '& SabrVolSurface::atmCurve() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<BlackAtmVolCurve>
    signature: Handle<BlackAtmVolCurve> & SabrVolSurface::atmCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::volatilitySpreads
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:144,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::SabrVolSurface::volatilitySpreads
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SabrVolSurface::volatilitySpreads
    - optionDateFromTenor
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> SabrVolSurface::volatilitySpreads(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::dayCounter
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: QuantLib::SabrVolSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::dayCounter
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter SabrVolSurface::dayCounter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::maxDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: QuantLib::SabrVolSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::maxDate
    linkageType: ''
    returnType: Date
    signature: Date SabrVolSurface::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::maxTime
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: QuantLib::SabrVolSurface::maxTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::maxTime
    linkageType: ''
    returnType: Time
    signature: Time SabrVolSurface::maxTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: '& SabrVolSurface::referenceDate() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached:
    - referenceDate
    linkageType: ''
    returnType: Date
    signature: Date & SabrVolSurface::referenceDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::calendar
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: QuantLib::SabrVolSurface::calendar
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::calendar
    linkageType: ''
    returnType: Calendar
    signature: Calendar SabrVolSurface::calendar() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::settlementDays
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::SabrVolSurface::settlementDays
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::settlementDays
    linkageType: ''
    returnType: Natural
    signature: Natural SabrVolSurface::settlementDays() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::SabrVolSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SabrVolSurface::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: QuantLib::SabrVolSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real SabrVolSurface::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: '& SabrVolSurface::atmCurve() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Handle<BlackAtmVolCurve>
    signature: Handle<BlackAtmVolCurve> & SabrVolSurface::atmCurve() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::SabrVolSurface::volatilitySpreads
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:144,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::SabrVolSurface::volatilitySpreads
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SabrVolSurface::volatilitySpreads
    - optionDateFromTenor
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> SabrVolSurface::volatilitySpreads(const Period&
      p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: "&\n    InterestRateVolSurface::index() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    InterestRateVolSurface::index()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: "&\n    InterestRateVolSurface::index() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<InterestRateIndex>
    signature: "ext::shared_ptr<InterestRateIndex> &\n    InterestRateVolSurface::index()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:50,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:57,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setInterpolation
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 8
    argNames:
    - ' referenceDate'
    - ' calendar'
    - ' dates'
    - strikes
    - ' volatilities'
    - dayCounter
    - lowerEx
    - upperEx
    argTypes:
    - Date
    - Calendar
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Handle<Quote> >
    - DayCounter
    - ExtendedBlackVarianceSurface::Extrapolation
    - ExtendedBlackVarianceSurface::Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 63
    functionName: QuantLib::ExtendedBlackVarianceSurface::ExtendedBlackVarianceSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedBlackVarianceSurface::setInterpolation
    - timeFromReference
    - std::move
    - Matrix
    - registerWith
    - std::vector<Time>
    - size
    - back
    - QuantLib::ExtendedBlackVarianceSurface::setVariances
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedBlackVarianceSurface::ExtendedBlackVarianceSurface(\n
      \       const Date& referenceDate,\n        const Calendar& calendar,\n        const
      std::vector<Date>& dates,\n        std::vector<Real> strikes,\n        const
      std::vector<Handle<Quote> >& volatilities,\n        DayCounter dayCounter,\n
      \       ExtendedBlackVarianceSurface::Extrapolation lowerEx,\n        ExtendedBlackVarianceSurface::Extrapolation
      upperEx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:72,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 78
    functionName: QuantLib::ExtendedBlackVarianceSurface::setVariances
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 1
    functionsReached:
    - size
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::setVariances()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:81,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:82,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::ExtendedBlackVarianceSurface::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtendedBlackVarianceSurface::update
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceSurface::setVariances
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::update()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:92,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:94,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:95,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:99,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:100,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:102,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:102,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 104
    functionName: QuantLib::ExtendedBlackVarianceSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceSurface_
    - front
    linkageType: ''
    returnType: Real
    signature: "Real ExtendedBlackVarianceSurface::blackVarianceImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:35,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:36,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:43,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:50,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:51,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:52,1
    - Dst: Matrix
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:56,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:57,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setInterpolation
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:59,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 8
    argNames:
    - ' referenceDate'
    - ' calendar'
    - ' dates'
    - strikes
    - ' volatilities'
    - dayCounter
    - lowerEx
    - upperEx
    argTypes:
    - Date
    - Calendar
    - std::vector<Date>
    - std::vector<Real>
    - std::vector<Handle<Quote> >
    - DayCounter
    - ExtendedBlackVarianceSurface::Extrapolation
    - ExtendedBlackVarianceSurface::Extrapolation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 63
    functionName: QuantLib::ExtendedBlackVarianceSurface::ExtendedBlackVarianceSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ExtendedBlackVarianceSurface::setInterpolation
    - timeFromReference
    - std::move
    - Matrix
    - registerWith
    - std::vector<Time>
    - size
    - back
    - QuantLib::ExtendedBlackVarianceSurface::setVariances
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedBlackVarianceSurface::ExtendedBlackVarianceSurface(\n
      \       const Date& referenceDate,\n        const Calendar& calendar,\n        const
      std::vector<Date>& dates,\n        std::vector<Real> strikes,\n        const
      std::vector<Handle<Quote> >& volatilities,\n        DayCounter dayCounter,\n
      \       ExtendedBlackVarianceSurface::Extrapolation lowerEx,\n        ExtendedBlackVarianceSurface::Extrapolation
      upperEx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:72,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:72,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 78
    functionName: QuantLib::ExtendedBlackVarianceSurface::setVariances
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 3
    functionsReached:
    - size
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::setVariances()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBlackVarianceSurface::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:81,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:82,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: QuantLib::ExtendedBlackVarianceSurface::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::ExtendedBlackVarianceSurface::update
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceSurface::setVariances
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::update()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:92,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:94,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:95,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:97,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:99,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:100,1
    - Dst: varianceSurface_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:102,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:102,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 104
    functionName: QuantLib::ExtendedBlackVarianceSurface::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceSurface_
    - front
    linkageType: ''
    returnType: Real
    signature: "Real ExtendedBlackVarianceSurface::blackVarianceImpl(Time t,\n                                                         Real
      strike) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SABRSpecs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:48,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:56,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:58,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:68,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:70,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    - SABRSpecs
    - std::log
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real> &addParams)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:88,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 5
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:106,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:117,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - y
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 128
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::tan
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &paramIsFixed,\n
      \                 const std::vector<Real> &params, const Real forward)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:138,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:144,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:147,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:153,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:155,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:162,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:170,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 179
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::pow
    - QuantLib::detail::eps
    - std::log
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - forward
    - params
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 366
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SABRSpecs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:48,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:56,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:58,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:68,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:70,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    - SABRSpecs
    - std::log
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real> &addParams)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:88,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 5
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:106,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:117,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - y
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 128
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::tan
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &paramIsFixed,\n
      \                 const std::vector<Real> &params, const Real forward)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:138,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:144,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:147,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:153,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:155,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:162,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:170,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 179
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::pow
    - QuantLib::detail::eps
    - std::log
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - forward
    - params
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 366
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:206,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:212,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:213,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::NoArbSabrSpecs>::NoArbSabrSpecs>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 13
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 220
    functionName: QuantLib::NoArbSabrInterpolation::NoArbSabrInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - detail::XABRInterpolationImpl<I1, I2, detail::NoArbSabrSpecs>::NoArbSabrSpecs>
    - ext::shared_ptr<Interpolation::Impl>
    - ext::shared_ptr<EndCriteria>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolation(\n        const I1 &xBegin, // x = strikes\n
      \       const I1 &xEnd,\n        const I2 &yBegin, // y = volatilities\n        Time
      t,           // option expiry\n        const Real &forward, Real alpha, Real
      beta, Real nu, Real rho,\n        bool alphaIsFixed, bool betaIsFixed, bool
      nuIsFixed, bool rhoIsFixed,\n        bool vegaWeighted = true,\n        const
      ext::shared_ptr<EndCriteria> &endCriteria =\n            ext::shared_ptr<EndCriteria>(),\n
      \       const ext::shared_ptr<OptimizationMethod> &optMethod =\n            ext::shared_ptr<OptimizationMethod>(),\n
      \       const Real errorAccept = 0.0020, const bool useMaxError = false,\n        const
      Size maxGuesses = 50, const Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 221
    functionName: QuantLib::NoArbSabrInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::NoArbSabrInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::NoArbSabrInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 224
    functionName: QuantLib::NoArbSabrInterpolation::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::NoArbSabrInterpolation::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::NoArbSabrInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 227
    functionName: QuantLib::NoArbSabrInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 228
    functionName: QuantLib::NoArbSabrInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 232
    functionName: QuantLib::NoArbSabrInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::NoArbSabrSpecs>*>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:236,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::NoArbSabrSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::NoArbSabrSpecs>
    signature: detail::XABRCoeffHolder<detail::NoArbSabrSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:254,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:255,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:261,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 263
    functionName: QuantLib::NoArbSabr::NoArbSabr
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NoArbSabr(Time t,\n              Real forward,\n              Real
      alpha,\n              Real beta,\n              Real nu,\n              Real
      rho,\n              bool alphaIsFixed,\n              bool betaIsFixed,\n              bool
      nuIsFixed,\n              bool rhoIsFixed,\n              bool vegaWeighted
      = false,\n              ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \             ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>(),\n
      \             const Real errorAccept = 0.0020,\n              const bool useMaxError
      = false,\n              const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoArbSabrInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: QuantLib::NoArbSabr::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - NoArbSabrInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SABRSpecs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:48,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:56,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:58,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:68,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:70,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    - SABRSpecs
    - std::log
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real> &addParams)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:88,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 5
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:106,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:117,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - y
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 128
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::tan
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &paramIsFixed,\n
      \                 const std::vector<Real> &params, const Real forward)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:138,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:144,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:147,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:153,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:155,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:162,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:170,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 179
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::pow
    - QuantLib::detail::eps
    - std::log
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - forward
    - params
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 366
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SABRSpecs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:44,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:48,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:51,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:52,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:56,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:57,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:58,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:63,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:64,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:68,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:69,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:70,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    - SABRSpecs
    - std::log
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real> &addParams)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:88,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:89,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 5
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 102
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:106,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:111,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:117,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - y
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 128
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - std::tan
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &paramIsFixed,\n
      \                 const std::vector<Real> &params, const Real forward)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:138,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:144,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:147,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:148,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:149,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:153,1
    - Dst: QuantLib::detail::eps
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:154,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:155,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:161,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:162,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:170,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:177,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 179
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - std::pow
    - QuantLib::detail::eps
    - std::log
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - forward
    - params
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 366
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:206,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:212,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:213,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::NoArbSabrSpecs>::NoArbSabrSpecs>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 13
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 220
    functionName: QuantLib::NoArbSabrInterpolation::NoArbSabrInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - detail::XABRInterpolationImpl<I1, I2, detail::NoArbSabrSpecs>::NoArbSabrSpecs>
    - ext::shared_ptr<Interpolation::Impl>
    - ext::shared_ptr<EndCriteria>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrInterpolation(\n        const I1 &xBegin, // x = strikes\n
      \       const I1 &xEnd,\n        const I2 &yBegin, // y = volatilities\n        Time
      t,           // option expiry\n        const Real &forward, Real alpha, Real
      beta, Real nu, Real rho,\n        bool alphaIsFixed, bool betaIsFixed, bool
      nuIsFixed, bool rhoIsFixed,\n        bool vegaWeighted = true,\n        const
      ext::shared_ptr<EndCriteria> &endCriteria =\n            ext::shared_ptr<EndCriteria>(),\n
      \       const ext::shared_ptr<OptimizationMethod> &optMethod =\n            ext::shared_ptr<OptimizationMethod>(),\n
      \       const Real errorAccept = 0.0020, const bool useMaxError = false,\n        const
      Size maxGuesses = 50, const Real shift = 0.0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 221
    functionName: QuantLib::NoArbSabrInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: QuantLib::NoArbSabrInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::NoArbSabrInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 224
    functionName: QuantLib::NoArbSabrInterpolation::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::NoArbSabrInterpolation::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::NoArbSabrInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 227
    functionName: QuantLib::NoArbSabrInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 228
    functionName: QuantLib::NoArbSabrInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 232
    functionName: QuantLib::NoArbSabrInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::NoArbSabrSpecs>*>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:236,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::NoArbSabrSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::NoArbSabrSpecs>
    signature: detail::XABRCoeffHolder<detail::NoArbSabrSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:254,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:255,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:261,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 263
    functionName: QuantLib::NoArbSabr::NoArbSabr
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void NoArbSabr(Time t,\n              Real forward,\n              Real
      alpha,\n              Real beta,\n              Real nu,\n              Real
      rho,\n              bool alphaIsFixed,\n              bool betaIsFixed,\n              bool
      nuIsFixed,\n              bool rhoIsFixed,\n              bool vegaWeighted
      = false,\n              ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \             ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>(),\n
      \             const Real errorAccept = 0.0020,\n              const bool useMaxError
      = false,\n              const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NoArbSabrInterpolation
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: QuantLib::NoArbSabr::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - NoArbSabrInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:133,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::volatilityImpl(Rate strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:143,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::alpha
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::alpha
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:148,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::beta
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::beta
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:153,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::nu
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::nu
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:158,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::rho
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:163,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:168,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:173,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type NoArbSabrInterpolatedSmileSection::endCriteria()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:178,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:184,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:133,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void NoArbSabrInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::volatilityImpl(Rate strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:143,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::alpha
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::alpha
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:148,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::beta
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::beta
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:153,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::nu
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::nu
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:158,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::NoArbSabrInterpolatedSmileSection::rho
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:163,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:168,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:173,1
    - Dst: QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type NoArbSabrInterpolatedSmileSection::endCriteria()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:178,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:184,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: QuantLib::NoArbSabrInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrInterpolatedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:40,1
    - Dst: QuantLib::AbcdAtmVolCurve::checkInputs
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:41,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:42,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeVolatilities
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:43,1
    - Dst: QuantLib::AbcdAtmVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:45,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:46,1
    - Dst: QuantLib::AbcdAtmVolCurve::interpolate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 7
    argNames:
    - settlDays
    - ' cal'
    - ' optionTenors'
    - ' volsHandles'
    - inclusionInInterpolationFlag
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - std::vector<bool>
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 48
    functionName: QuantLib::AbcdAtmVolCurve::AbcdAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::interpolate
    - value
    - std::move
    - QuantLib::AbcdAtmVolCurve::checkInputs
    - QuantLib::AbcdAtmVolCurve::registerWithMarketData
    - size
    - QuantLib::AbcdAtmVolCurve::initializeVolatilities
    - QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: "void AbcdAtmVolCurve::AbcdAtmVolCurve(Natural settlDays,\n                                     const
      Calendar& cal,\n                                     const std::vector<Period>&
      optionTenors,\n                                     const std::vector<Handle<Quote>
      >& volsHandles,\n                                     std::vector<bool> inclusionInInterpolationFlag,\n
      \                                    BusinessDayConvention bdc,\n                                     const
      DayCounter& dc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:60,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:61,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 73
    functionName: QuantLib::AbcdAtmVolCurve::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - resize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::AbcdAtmVolCurve::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<AbcdInterpolation>
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdAtmVolCurve::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - end
    - begin
    - ext::make_shared<AbcdInterpolation>
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::interpolate()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AbcdAtmVolCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::AbcdAtmVolCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<AbcdAtmVolCurve>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:100,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:103,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:106,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::AbcdAtmVolCurve::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    - QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:114,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:115,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 125
    functionName: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - push_back
    - optionDateFromTenor
    - timeFromReference
    - clear
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::initializeOptionDatesAndTimes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:129,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:131,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:133,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 135
    functionName: QuantLib::AbcdAtmVolCurve::initializeVolatilities
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - push_back
    - clear
    - value
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::initializeVolatilities()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:141,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:142,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:144,1
    - Dst: QuantLib::AbcdAtmVolCurve::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 137
    functionDepth: 3
    functionLinenumber: 137
    functionLinenumberEnd: 147
    functionName: QuantLib::AbcdAtmVolCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - clear
    - size
    - QuantLib::AbcdAtmVolCurve::update
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:38,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:39,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:40,1
    - Dst: QuantLib::AbcdAtmVolCurve::checkInputs
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:41,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:42,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeVolatilities
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:43,1
    - Dst: QuantLib::AbcdAtmVolCurve::registerWithMarketData
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:45,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:46,1
    - Dst: QuantLib::AbcdAtmVolCurve::interpolate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 7
    argNames:
    - settlDays
    - ' cal'
    - ' optionTenors'
    - ' volsHandles'
    - inclusionInInterpolationFlag
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - std::vector<Period>
    - std::vector<Handle<Quote> >
    - std::vector<bool>
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 29
    functionDepth: 3
    functionLinenumber: 29
    functionLinenumberEnd: 48
    functionName: QuantLib::AbcdAtmVolCurve::AbcdAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::interpolate
    - value
    - std::move
    - QuantLib::AbcdAtmVolCurve::checkInputs
    - QuantLib::AbcdAtmVolCurve::registerWithMarketData
    - size
    - QuantLib::AbcdAtmVolCurve::initializeVolatilities
    - QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: "void AbcdAtmVolCurve::AbcdAtmVolCurve(Natural settlDays,\n                                     const
      Calendar& cal,\n                                     const std::vector<Period>&
      optionTenors,\n                                     const std::vector<Handle<Quote>
      >& volsHandles,\n                                     std::vector<bool> inclusionInInterpolationFlag,\n
      \                                    BusinessDayConvention bdc,\n                                     const
      DayCounter& dc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:52,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:52,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:56,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:60,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:61,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:63,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:64,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:65,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:69,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 73
    functionName: QuantLib::AbcdAtmVolCurve::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - empty
    - QuantLib::io::ordinal
    - resize
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::checkInputs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: QuantLib::AbcdAtmVolCurve::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - registerWith
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<AbcdInterpolation>
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:83,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:83,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:84,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: QuantLib::AbcdAtmVolCurve::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - end
    - begin
    - ext::make_shared<AbcdInterpolation>
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::interpolate()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<AbcdAtmVolCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:89,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: QuantLib::AbcdAtmVolCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<AbcdAtmVolCurve>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:100,1
    - Dst: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:103,1
    - Dst: QuantLib::GenericEngine::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:106,1
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 108
    functionName: QuantLib::AbcdAtmVolCurve::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::instance
    - QuantLib::LazyObject::update
    - QuantLib::GenericEngine::update
    - QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:114,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:115,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:121,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 125
    functionName: QuantLib::AbcdAtmVolCurve::initializeOptionDatesAndTimes
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 4
    functionsReached:
    - push_back
    - optionDateFromTenor
    - timeFromReference
    - clear
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::initializeOptionDatesAndTimes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:129,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:131,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:133,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 135
    functionName: QuantLib::AbcdAtmVolCurve::initializeVolatilities
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - push_back
    - clear
    - value
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::initializeVolatilities()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:141,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:142,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:144,1
    - Dst: QuantLib::AbcdAtmVolCurve::update
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 137
    functionDepth: 3
    functionLinenumber: 137
    functionLinenumberEnd: 147
    functionName: QuantLib::AbcdAtmVolCurve::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - value
    - push_back
    - clear
    - size
    - QuantLib::AbcdAtmVolCurve::update
    linkageType: ''
    returnType: void
    signature: void AbcdAtmVolCurve::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:139,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::volatilityImpl(Rate
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:152,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:158,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:164,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:170,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:176,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:182,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:188,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:195,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type ZabrInterpolatedSmileSection<Evaluation>::endCriteria()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:201,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:207,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:239,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:241,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:244,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:245,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:247,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:248,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 20
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - isGammaFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 251
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection(\n
      \   const Date& optionDate,\n    Handle<Quote> forward,\n    const std::vector<Rate>&
      strikes,\n    bool hasFloatingStrikes,\n    Handle<Quote> atmVolatility,\n    const
      std::vector<Handle<Quote> >& volHandles,\n    Real alpha,\n    Real beta,\n
      \   Real nu,\n    Real rho,\n    Real gamma,\n    bool isAlphaFixed,\n    bool
      isBetaFixed,\n    bool isNuFixed,\n    bool isRhoFixed,\n    bool isGammaFixed,\n
      \   bool vegaWeighted,\n    ext::shared_ptr<EndCriteria> endCriteria,\n    ext::shared_ptr<OptimizationMethod>
      method,\n    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:278,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:279,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:282,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:282,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:284,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:285,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:286,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 20
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - isGammaFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 287
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection(\n
      \   const Date& optionDate,\n    const Rate& forward,\n    const std::vector<Rate>&
      strikes,\n    bool hasFloatingStrikes,\n    const Volatility& atmVolatility,\n
      \   const std::vector<Volatility>& volHandles,\n    Real alpha,\n    Real beta,\n
      \   Real nu,\n    Real rho,\n    Real gamma,\n    bool isAlphaFixed,\n    bool
      isBetaFixed,\n    bool isNuFixed,\n    bool isRhoFixed,\n    bool isGammaFixed,\n
      \   bool vegaWeighted,\n    ext::shared_ptr<EndCriteria> endCriteria,\n    ext::shared_ptr<OptimizationMethod>
      method,\n    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:294,1
    - Dst: ZabrInterpolation<Evaluation>::ZabrInterpolation<Evaluation>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:292,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 298
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - begin
    - end
    - swap
    - ZabrInterpolation<Evaluation>::ZabrInterpolation<Evaluation>
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::createInterpolation()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:302,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:303,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:306,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:307,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:309,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:310,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:310,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:311,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:313,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:314,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:314,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:320,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 301
    functionDepth: 3
    functionLinenumber: 301
    functionLinenumberEnd: 322
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
    - push_back
    - isValid
    - size
    - clear
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::performCalculations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:326,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 329
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::varianceImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:139,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::volatilityImpl(Rate
      strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:152,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::alpha
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:158,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::beta
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:164,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::nu
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:170,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:176,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::gamma
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:182,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:188,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:195,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type ZabrInterpolatedSmileSection<Evaluation>::endCriteria()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:201,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:207,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:239,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:241,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:244,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:245,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:247,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:248,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 20
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - isGammaFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 251
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection(\n
      \   const Date& optionDate,\n    Handle<Quote> forward,\n    const std::vector<Rate>&
      strikes,\n    bool hasFloatingStrikes,\n    Handle<Quote> atmVolatility,\n    const
      std::vector<Handle<Quote> >& volHandles,\n    Real alpha,\n    Real beta,\n
      \   Real nu,\n    Real rho,\n    Real gamma,\n    bool isAlphaFixed,\n    bool
      isBetaFixed,\n    bool isNuFixed,\n    bool isRhoFixed,\n    bool isGammaFixed,\n
      \   bool vegaWeighted,\n    ext::shared_ptr<EndCriteria> endCriteria,\n    ext::shared_ptr<OptimizationMethod>
      method,\n    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:276,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:277,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:278,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:279,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:282,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:282,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:284,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:285,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:286,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 20
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - isAlphaFixed
    - isBetaFixed
    - isNuFixed
    - isRhoFixed
    - isGammaFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 287
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolatedSmileSection<Evaluation>::ZabrInterpolatedSmileSection(\n
      \   const Date& optionDate,\n    const Rate& forward,\n    const std::vector<Rate>&
      strikes,\n    bool hasFloatingStrikes,\n    const Volatility& atmVolatility,\n
      \   const std::vector<Volatility>& volHandles,\n    Real alpha,\n    Real beta,\n
      \   Real nu,\n    Real rho,\n    Real gamma,\n    bool isAlphaFixed,\n    bool
      isBetaFixed,\n    bool isNuFixed,\n    bool isRhoFixed,\n    bool isGammaFixed,\n
      \   bool vegaWeighted,\n    ext::shared_ptr<EndCriteria> endCriteria,\n    ext::shared_ptr<OptimizationMethod>
      method,\n    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:293,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:294,1
    - Dst: ZabrInterpolation<Evaluation>::ZabrInterpolation<Evaluation>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:292,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 298
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - exerciseTime
    - begin
    - end
    - swap
    - ZabrInterpolation<Evaluation>::ZabrInterpolation<Evaluation>
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::createInterpolation()
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:302,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:303,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:304,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:306,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:307,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:309,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:310,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:310,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:311,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:313,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:314,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:314,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:320,1
    - Dst: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 301
    functionDepth: 3
    functionLinenumber: 301
    functionLinenumberEnd: 322
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::update
    - QuantLib::ZabrInterpolatedSmileSection<Evaluation>::createInterpolation
    - push_back
    - isValid
    - size
    - clear
    linkageType: ''
    returnType: void
    signature: void ZabrInterpolatedSmileSection<Evaluation>::performCalculations()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:326,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 329
    functionName: QuantLib::ZabrInterpolatedSmileSection<Evaluation>::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real ZabrInterpolatedSmileSection<Evaluation>::varianceImpl(Real strike)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackVolSurface::smileSection
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:108,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackVolSurface::smileSection
    - optionDateFromTenor
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(const
      Period& p,\n                                  bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackVolSurface::smileSection
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:114,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackVolSurface::smileSection
    - timeFromReference
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(const
      Date& d,\n                                  bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:120,1
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 2
    functionsReached:
    - smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(Time t,\n
      \                                 bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackVolSurface::smileSection
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:108,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' p'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::BlackVolSurface::smileSection
    - optionDateFromTenor
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(const
      Period& p,\n                                  bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BlackVolSurface::smileSection
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:114,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::BlackVolSurface::smileSection
    - timeFromReference
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(const
      Date& d,\n                                  bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:120,1
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: QuantLib::BlackVolSurface::smileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.hpp
    functionUses: 4
    functionsReached:
    - smileSectionImpl
    - checkRange
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: "ext::shared_ptr<SmileSection> BlackVolSurface::smileSection(Time t,\n
      \                                 bool extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: "&\n    VolatilityCube::surfaces() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<InterestRateVolSurface> >
    signature: "std::vector<Handle<InterestRateVolSurface> > &\n    VolatilityCube::surfaces()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: "&\n    VolatilityCube::curves() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<AbcdAtmVolCurve> >
    signature: "std::vector<Handle<AbcdAtmVolCurve> > &\n    VolatilityCube::curves()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: "&\n    VolatilityCube::surfaces() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<InterestRateVolSurface> >
    signature: "std::vector<Handle<InterestRateVolSurface> > &\n    VolatilityCube::surfaces()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: "&\n    VolatilityCube::curves() const"
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Handle<AbcdAtmVolCurve> >
    signature: "std::vector<Handle<AbcdAtmVolCurve> > &\n    VolatilityCube::curves()
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:136,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::SviInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::SviInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:146,1
    - Dst: QuantLib::SviInterpolatedSmileSection::a
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: QuantLib::SviInterpolatedSmileSection::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::a
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:151,1
    - Dst: QuantLib::SviInterpolatedSmileSection::b
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: QuantLib::SviInterpolatedSmileSection::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::SviInterpolatedSmileSection::b
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:156,1
    - Dst: QuantLib::SviInterpolatedSmileSection::sigma
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::SviInterpolatedSmileSection::sigma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::SviInterpolatedSmileSection::sigma
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:161,1
    - Dst: QuantLib::SviInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::SviInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:166,1
    - Dst: QuantLib::SviInterpolatedSmileSection::m
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: QuantLib::SviInterpolatedSmileSection::m
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::m
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::m() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:171,1
    - Dst: QuantLib::SviInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: QuantLib::SviInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:176,1
    - Dst: QuantLib::SviInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::SviInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:181,1
    - Dst: QuantLib::SviInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::SviInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type SviInterpolatedSmileSection::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:186,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: QuantLib::SviInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:191,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::SviInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::SviInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LazyObject::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:136,1
    - Dst: QuantLib::SmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: QuantLib::SviInterpolatedSmileSection::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LazyObject::update
    - QuantLib::SmileSection::update
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: QuantLib::SviInterpolatedSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:146,1
    - Dst: QuantLib::SviInterpolatedSmileSection::a
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: QuantLib::SviInterpolatedSmileSection::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::a
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:151,1
    - Dst: QuantLib::SviInterpolatedSmileSection::b
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: QuantLib::SviInterpolatedSmileSection::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::SviInterpolatedSmileSection::b
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:156,1
    - Dst: QuantLib::SviInterpolatedSmileSection::sigma
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: QuantLib::SviInterpolatedSmileSection::sigma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::SviInterpolatedSmileSection::sigma
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:161,1
    - Dst: QuantLib::SviInterpolatedSmileSection::rho
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: QuantLib::SviInterpolatedSmileSection::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::rho
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:166,1
    - Dst: QuantLib::SviInterpolatedSmileSection::m
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: QuantLib::SviInterpolatedSmileSection::m
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::m
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::m() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:171,1
    - Dst: QuantLib::SviInterpolatedSmileSection::rmsError
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: QuantLib::SviInterpolatedSmileSection::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::rmsError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:176,1
    - Dst: QuantLib::SviInterpolatedSmileSection::maxError
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: QuantLib::SviInterpolatedSmileSection::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::maxError
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:181,1
    - Dst: QuantLib::SviInterpolatedSmileSection::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::SviInterpolatedSmileSection::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::SviInterpolatedSmileSection::endCriteria
    - calculate
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type SviInterpolatedSmileSection::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:186,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: QuantLib::SviInterpolatedSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    - front
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:191,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: QuantLib::SviInterpolatedSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: QuantLib::SviInterpolatedSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.hpp
    functionUses: 0
    functionsReached:
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::atmLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - tte
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::checkSviParameters
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkSviParameters(const Real a, const Real b, const Real sigma,\n
      \                              const Real rho, const Real m, const Time tte)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - k
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::sviTotalVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real sviTotalVariance(const Real a, const Real b, const Real sigma,\n
      \                            const Real rho, const Real m, const Real k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:63,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - Null<Real>
    - std::max
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,\n
      \                      const std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:86,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:115,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::sin
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - tte
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::checkSviParameters
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkSviParameters(const Real a, const Real b, const Real sigma,\n
      \                              const Real rho, const Real m, const Time tte)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - k
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::sviTotalVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real sviTotalVariance(const Real a, const Real b, const Real sigma,\n
      \                            const Real rho, const Real m, const Real k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:63,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - Null<Real>
    - std::max
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,\n
      \                      const std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:86,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:115,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::sin
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:155,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:157,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:162,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::SviSpecs>::SviSpecs>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - a
    - b
    - sigma
    - rho
    - m
    - aIsFixed
    - bIsFixed
    - sigmaIsFixed
    - rhoIsFixed
    - mIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 169
    functionName: QuantLib::SviInterpolation::SviInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<Interpolation::Impl>
    - detail::XABRInterpolationImpl<I1, I2, detail::SviSpecs>::SviSpecs>
    linkageType: ''
    returnType: void
    signature: "void SviInterpolation(const I1 &xBegin, // x = strikes\n                     const
      I1 &xEnd,\n                     const I2 &yBegin, // y = volatilities\n                     Time
      t,           // option expiry\n                     const Real &forward, Real
      a, Real b, Real sigma, Real rho,\n                     Real m, bool aIsFixed,
      bool bIsFixed, bool sigmaIsFixed,\n                     bool rhoIsFixed, bool
      mIsFixed, bool vegaWeighted = true,\n                     const ext::shared_ptr<EndCriteria>
      &endCriteria =\n                         ext::shared_ptr<EndCriteria>(),\n                     const
      ext::shared_ptr<OptimizationMethod> &optMethod =\n                         ext::shared_ptr<OptimizationMethod>(),\n
      \                    const Real errorAccept = 0.0020,\n                     const
      bool useMaxError = false,\n                     const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::SviInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::SviInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: QuantLib::SviInterpolation::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::SviInterpolation::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 174
    functionName: QuantLib::SviInterpolation::sigma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::SviInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::SviInterpolation::m
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real m() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::SviInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::SviInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::SviInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::SviSpecs>*>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:186,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::SviSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::SviSpecs>
    signature: detail::XABRCoeffHolder<detail::SviSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:206,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:207,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:213,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - t
    - forward
    - a
    - b
    - sigma
    - rho
    - m
    - aIsFixed
    - bIsFixed
    - sigmaIsFixed
    - rhoIsFixed
    - mIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 215
    functionName: QuantLib::Svi::Svi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Svi(Time t,\n        Real forward,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool aIsFixed,\n
      \       bool bIsFixed,\n        bool sigmaIsFixed,\n        bool rhoIsFixed,\n
      \       bool mIsFixed,\n        bool vegaWeighted = false,\n        ext::shared_ptr<EndCriteria>
      endCriteria = ext::shared_ptr<EndCriteria>(),\n        ext::shared_ptr<OptimizationMethod>
      optMethod = ext::shared_ptr<OptimizationMethod>(),\n        const Real errorAccept
      = 0.0020,\n        const bool useMaxError = false,\n        const Size maxGuesses
      = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SviInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::Svi::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - SviInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - tte
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::checkSviParameters
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkSviParameters(const Real a, const Real b, const Real sigma,\n
      \                              const Real rho, const Real m, const Time tte)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - k
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::sviTotalVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real sviTotalVariance(const Real a, const Real b, const Real sigma,\n
      \                            const Real rho, const Real m, const Real k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:63,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - Null<Real>
    - std::max
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,\n
      \                      const std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:86,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:115,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::sin
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - tte
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: QuantLib::detail::checkSviParameters
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::fabs
    - std::sqrt
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void checkSviParameters(const Real a, const Real b, const Real sigma,\n
      \                              const Real rho, const Real m, const Time tte)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - a
    - b
    - sigma
    - rho
    - m
    - k
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: QuantLib::detail::sviTotalVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: "Real sviTotalVariance(const Real a, const Real b, const Real sigma,\n
      \                            const Real rho, const Real m, const Real k)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:63,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:65,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:67,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:69,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:70,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:71,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:72,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - addParams
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 80
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - Null<Real>
    - std::max
    - std::fabs
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,\n
      \                      const std::vector<Real> &addParams)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:86,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:88,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:95,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - addParams
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:101,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:102,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:104,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:106,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 109
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::fabs
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 110
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:115,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:116,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:121,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:122,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:126,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - x
    - paramIsFixed
    - params
    - forward
    argTypes:
    - Array
    - std::vector<bool>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 129
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::sin
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &paramIsFixed,\n
      \                const std::vector<Real> &params, const Real forward)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:155,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:157,1
    - Dst: ext::shared_ptr<Interpolation::Impl>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:162,1
    - Dst: detail::XABRInterpolationImpl<I1, I2, detail::SviSpecs>::SviSpecs>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - a
    - b
    - sigma
    - rho
    - m
    - aIsFixed
    - bIsFixed
    - sigmaIsFixed
    - rhoIsFixed
    - mIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 169
    functionName: QuantLib::SviInterpolation::SviInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<Interpolation::Impl>
    - detail::XABRInterpolationImpl<I1, I2, detail::SviSpecs>::SviSpecs>
    linkageType: ''
    returnType: void
    signature: "void SviInterpolation(const I1 &xBegin, // x = strikes\n                     const
      I1 &xEnd,\n                     const I2 &yBegin, // y = volatilities\n                     Time
      t,           // option expiry\n                     const Real &forward, Real
      a, Real b, Real sigma, Real rho,\n                     Real m, bool aIsFixed,
      bool bIsFixed, bool sigmaIsFixed,\n                     bool rhoIsFixed, bool
      mIsFixed, bool vegaWeighted = true,\n                     const ext::shared_ptr<EndCriteria>
      &endCriteria =\n                         ext::shared_ptr<EndCriteria>(),\n                     const
      ext::shared_ptr<OptimizationMethod> &optMethod =\n                         ext::shared_ptr<OptimizationMethod>(),\n
      \                    const Real errorAccept = 0.0020,\n                     const
      bool useMaxError = false,\n                     const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: QuantLib::SviInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: QuantLib::SviInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 172
    functionName: QuantLib::SviInterpolation::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 173
    functionName: QuantLib::SviInterpolation::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 174
    functionName: QuantLib::SviInterpolation::sigma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real sigma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 175
    functionName: QuantLib::SviInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: QuantLib::SviInterpolation::m
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real m() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 177
    functionName: QuantLib::SviInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: QuantLib::SviInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: QuantLib::SviInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::SviSpecs>*>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:186,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::SviSpecs>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::SviSpecs>
    signature: detail::XABRCoeffHolder<detail::SviSpecs> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:206,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:207,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:213,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - t
    - forward
    - a
    - b
    - sigma
    - rho
    - m
    - aIsFixed
    - bIsFixed
    - sigmaIsFixed
    - rhoIsFixed
    - mIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 215
    functionName: QuantLib::Svi::Svi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Svi(Time t,\n        Real forward,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool aIsFixed,\n
      \       bool bIsFixed,\n        bool sigmaIsFixed,\n        bool rhoIsFixed,\n
      \       bool mIsFixed,\n        bool vegaWeighted = false,\n        ext::shared_ptr<EndCriteria>
      endCriteria = ext::shared_ptr<EndCriteria>(),\n        ext::shared_ptr<OptimizationMethod>
      optMethod = ext::shared_ptr<OptimizationMethod>(),\n        const Real errorAccept
      = 0.0020,\n        const bool useMaxError = false,\n        const Size maxGuesses
      = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SviInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: QuantLib::Svi::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolation.hpp
    functionUses: 0
    functionsReached:
    - SviInterpolation
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::NoArbSabrModel::density
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::NoArbSabrModel::p
    linkageType: ''
    returnType: Real
    signature: Real density(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::NoArbSabrModel::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::NoArbSabrModel::numericalForward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real numericalForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::NoArbSabrModel::expiryTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::NoArbSabrModel::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::NoArbSabrModel::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::NoArbSabrModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::NoArbSabrModel::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::NoArbSabrModel::absorptionProbability
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real absorptionProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::NoArbSabrModel::density
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::NoArbSabrModel::p
    linkageType: ''
    returnType: Real
    signature: Real density(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 111
    functionName: QuantLib::NoArbSabrModel::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: QuantLib::NoArbSabrModel::numericalForward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real numericalForward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: QuantLib::NoArbSabrModel::expiryTime
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real expiryTime() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: QuantLib::NoArbSabrModel::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::NoArbSabrModel::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: QuantLib::NoArbSabrModel::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: QuantLib::NoArbSabrModel::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: QuantLib::NoArbSabrModel::absorptionProbability
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real absorptionProbability() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - model
    - strike
    argTypes:
    - NoArbSabrModel*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::NoArbSabrModel::integrand::integrand
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand(const NoArbSabrModel* model, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:36,1
    - Dst: p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: operator()(Real f) const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - p
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - NoArbSabrModel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::NoArbSabrModel::p_integrand::p_integrand
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void p_integrand(const NoArbSabrModel* model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: operator()(Real f) const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - p
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:60,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:70,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:77,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:77,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:79,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:82,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:83,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:83,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:90,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:93,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:101,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:103,1
    - Dst: QuantLib::NoArbSabrModel::forwardError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:105,1
    - Dst: QuantLib::NoArbSabrModel::forwardError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:112,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 6
    argNames:
    - expiryTime
    - forward
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 114
    functionName: QuantLib::NoArbSabrModel::NoArbSabrModel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - d0
    - std::min
    - std::max
    - std::pow
    - QuantLib::NoArbSabrModel::forwardError
    - QuantLib::NoArbSabrModel::p
    - std::sqrt
    - Brent::solve
    - ext::make_shared<GaussLobattoIntegral>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrModel::NoArbSabrModel(const Real expiryTime, const Real
      forward,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:117,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:117,1
    - Dst: integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:120,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 123
    functionName: QuantLib::NoArbSabrModel::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - integrand
    - QuantLib::NoArbSabrModel::p
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::optionPrice(const Real strike) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:128,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:128,1
    - Dst: p_integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:131,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 134
    functionName: QuantLib::NoArbSabrModel::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::NoArbSabrModel::p
    - p_integrand
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::digitalOptionPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: p_integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:138,1
    - Dst: QuantLib::NoArbSabrModel::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - forward
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 141
    functionName: QuantLib::NoArbSabrModel::forwardError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrModel::optionPrice
    - p_integrand
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::forwardError(const Real forward) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:149,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:157,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:158,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:160,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:167,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:169,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:171,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:176,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:176,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:177,1
    - Dst: modifiedBesselFunction_i_exponentiallyWeighted
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 182
    functionName: QuantLib::NoArbSabrModel::p
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 5
    functionsReached:
    - std::atan
    - std::exp
    - std::log
    - Real
    - std::pow
    - modifiedBesselFunction_i_exponentiallyWeighted
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::p(const Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 6
    argNames:
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::D0Interpolator::D0Interpolator
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void D0Interpolator::D0Interpolator(const Real forward, const Real
      expiryTime,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:227,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:238,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:247,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:252,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:260,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:289,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:291,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:304,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:318,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 319
    functionName: D0Interpolator::operator()() const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - rend
    - d0
    - begin
    - std::upper_bound
    - phi
    - rbegin
    - size
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::operator()() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q_inv
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d0
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::D0Interpolator::phi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_q_inv
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::phi(const Real d0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::detail::D0Interpolator::d0
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - boost::math::gamma_q
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::d0(const Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 6
    argNames:
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::D0Interpolator::D0Interpolator
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void D0Interpolator::D0Interpolator(const Real forward, const Real
      expiryTime,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:227,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:238,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:247,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:252,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:260,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:289,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:291,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:304,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:318,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 319
    functionName: D0Interpolator::operator()() const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - rend
    - d0
    - begin
    - std::upper_bound
    - phi
    - rbegin
    - size
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::operator()() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q_inv
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d0
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::D0Interpolator::phi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_q_inv
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::phi(const Real d0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::detail::D0Interpolator::d0
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - boost::math::gamma_q
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::d0(const Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - model
    - strike
    argTypes:
    - NoArbSabrModel*
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: QuantLib::NoArbSabrModel::integrand::integrand
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void integrand(const NoArbSabrModel* model, Real strike)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:36,1
    - Dst: p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: operator()(Real f) const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - p
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - model
    argTypes:
    - NoArbSabrModel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QuantLib::NoArbSabrModel::p_integrand::p_integrand
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void p_integrand(const NoArbSabrModel* model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: operator()(Real f) const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - p
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:57,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:59,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:60,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:62,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:63,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:68,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:70,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:76,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:77,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:77,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:79,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:82,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:83,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:83,1
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:85,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:88,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:90,1
    - Dst: ext::make_shared<GaussLobattoIntegral>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:93,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:97,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:101,1
    - Dst: Brent::solve
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:103,1
    - Dst: QuantLib::NoArbSabrModel::forwardError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:103,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:105,1
    - Dst: QuantLib::NoArbSabrModel::forwardError
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:112,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:112,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 6
    argNames:
    - expiryTime
    - forward
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 50
    functionDepth: 3
    functionLinenumber: 50
    functionLinenumberEnd: 114
    functionName: QuantLib::NoArbSabrModel::NoArbSabrModel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - d0
    - std::min
    - std::max
    - std::pow
    - QuantLib::NoArbSabrModel::forwardError
    - QuantLib::NoArbSabrModel::p
    - std::sqrt
    - Brent::solve
    - ext::make_shared<GaussLobattoIntegral>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrModel::NoArbSabrModel(const Real expiryTime, const Real
      forward,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:117,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:117,1
    - Dst: integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:120,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 123
    functionName: QuantLib::NoArbSabrModel::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - integrand
    - QuantLib::NoArbSabrModel::p
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::optionPrice(const Real strike) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrModel::p
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:128,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:128,1
    - Dst: p_integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:131,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 134
    functionName: QuantLib::NoArbSabrModel::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - QuantLib::NoArbSabrModel::p
    - p_integrand
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::digitalOptionPrice(const Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: p_integrand
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:138,1
    - Dst: QuantLib::NoArbSabrModel::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - forward
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 141
    functionName: QuantLib::NoArbSabrModel::forwardError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrModel::optionPrice
    - p_integrand
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::forwardError(const Real forward) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:149,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:150,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:157,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:158,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:160,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:167,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:169,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:171,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:172,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:175,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:176,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:176,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:177,1
    - Dst: modifiedBesselFunction_i_exponentiallyWeighted
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:179,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 182
    functionName: QuantLib::NoArbSabrModel::p
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 8
    functionsReached:
    - std::atan
    - std::exp
    - std::log
    - Real
    - std::pow
    - modifiedBesselFunction_i_exponentiallyWeighted
    - std::sqrt
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrModel::p(const Real f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 6
    argNames:
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::D0Interpolator::D0Interpolator
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void D0Interpolator::D0Interpolator(const Real forward, const Real
      expiryTime,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:227,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:238,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:247,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:252,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:260,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:289,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:291,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:304,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:318,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 319
    functionName: D0Interpolator::operator()() const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - rend
    - d0
    - begin
    - std::upper_bound
    - phi
    - rbegin
    - size
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::operator()() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q_inv
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d0
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::D0Interpolator::phi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_q_inv
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::phi(const Real d0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::detail::D0Interpolator::d0
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - boost::math::gamma_q
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::d0(const Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 6
    argNames:
    - forward
    - expiryTime
    - alpha
    - beta
    - nu
    - rho
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 218
    functionName: QuantLib::detail::D0Interpolator::D0Interpolator
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void D0Interpolator::D0Interpolator(const Real forward, const Real
      expiryTime,\n                               const Real alpha, const Real beta,
      const Real nu,\n                               const Real rho)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:225,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:226,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:227,1
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:232,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:238,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:239,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:240,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:247,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:248,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:252,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:259,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:260,1
    - Dst: std::upper_bound
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:267,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:269,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:289,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:291,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:297,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:298,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:299,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:300,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:301,1
    - Dst: phi
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:304,1
    - Dst: d0
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:318,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 319
    functionName: D0Interpolator::operator()() const
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - rend
    - d0
    - begin
    - std::upper_bound
    - phi
    - rbegin
    - size
    - end
    - front
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::operator()() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q_inv
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - d0
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 325
    functionName: QuantLib::detail::D0Interpolator::phi
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - boost::math::gamma_q_inv
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::phi(const Real d0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: boost::math::gamma_q
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - phi
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: QuantLib::detail::D0Interpolator::d0
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabr.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - boost::math::gamma_q
    linkageType: ''
    returnType: Real
    signature: Real D0Interpolator::d0(const Real phi) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:56,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:57,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 20
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - a
    - b
    - sigma
    - rho
    - m
    - isAFixed
    - isBFixed
    - isSigmaFixed
    - isRhoFixed
    - isMFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 60
    functionName: QuantLib::SviInterpolatedSmileSection::SviInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SviInterpolatedSmileSection::SviInterpolatedSmileSection(\n        const
      Date& optionDate,\n        Handle<Quote> forward,\n        const std::vector<Rate>&
      strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote> atmVolatility,\n
      \       const std::vector<Handle<Quote> >& volHandles,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool isAFixed,\n
      \       bool isBFixed,\n        bool isSigmaFixed,\n        bool isRhoFixed,\n
      \       bool isMFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 20
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - a
    - b
    - sigma
    - rho
    - m
    - isAFixed
    - isBFixed
    - isSigmaFixed
    - isRhoFixed
    - isMFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 95
    functionName: QuantLib::SviInterpolatedSmileSection::SviInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void SviInterpolatedSmileSection::SviInterpolatedSmileSection(\n        const
      Date& optionDate,\n        const Rate& forward,\n        const std::vector<Rate>&
      strikes,\n        bool hasFloatingStrikes,\n        const Volatility& atmVolatility,\n
      \       const std::vector<Volatility>& volHandles,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool isAFixed,\n
      \       bool isBFixed,\n        bool isSigmaFixed,\n        bool isRhoFixed,\n
      \       bool isMFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:100,1
    - Dst: SviInterpolation::SviInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:98,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::SviInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - begin
    - SviInterpolation::SviInterpolation
    - swap
    - end
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:107,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:108,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:111,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:112,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:114,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:119,1
    - Dst: QuantLib::SviInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:125,1
    - Dst: QuantLib::SviInterpolatedSmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 127
    functionName: QuantLib::SviInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::SviInterpolatedSmileSection::update
    - push_back
    - isValid
    - size
    - QuantLib::SviInterpolatedSmileSection::createInterpolation
    - clear
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:130,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::SviInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:48,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:49,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:50,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:53,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:54,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:56,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:57,1
    - Dst: QuantLib::Observer::registerWith
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 20
    argNames:
    - ' optionDate'
    - forward
    - ' strikes'
    - hasFloatingStrikes
    - atmVolatility
    - ' volHandles'
    - a
    - b
    - sigma
    - rho
    - m
    - isAFixed
    - isBFixed
    - isSigmaFixed
    - isRhoFixed
    - isMFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Handle<Quote>
    - std::vector<Rate>
    - bool
    - Handle<Quote>
    - std::vector<Handle<Quote> >
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 60
    functionName: QuantLib::SviInterpolatedSmileSection::SviInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Observer::registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SviInterpolatedSmileSection::SviInterpolatedSmileSection(\n        const
      Date& optionDate,\n        Handle<Quote> forward,\n        const std::vector<Rate>&
      strikes,\n        bool hasFloatingStrikes,\n        Handle<Quote> atmVolatility,\n
      \       const std::vector<Handle<Quote> >& volHandles,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool isAFixed,\n
      \       bool isBFixed,\n        bool isSigmaFixed,\n        bool isRhoFixed,\n
      \       bool isMFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:84,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:85,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:87,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:90,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:91,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:93,1
    - Dst: Handle<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    - Dst: ext::shared_ptr<Quote>
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    - Dst: SimpleQuote::SimpleQuote
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:94,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 20
    argNames:
    - ' optionDate'
    - ' forward'
    - ' strikes'
    - hasFloatingStrikes
    - ' atmVolatility'
    - ' volHandles'
    - a
    - b
    - sigma
    - rho
    - m
    - isAFixed
    - isBFixed
    - isSigmaFixed
    - isRhoFixed
    - isMFixed
    - vegaWeighted
    - endCriteria
    - method
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Rate>
    - bool
    - Volatility
    - std::vector<Volatility>
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    - bool
    - ext::shared_ptr<EndCriteria>
    - ext::shared_ptr<OptimizationMethod>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 95
    functionName: QuantLib::SviInterpolatedSmileSection::SviInterpolatedSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Handle<Quote>
    - std::move
    - ext::shared_ptr<Quote>
    - size
    - SimpleQuote::SimpleQuote
    linkageType: ''
    returnType: void
    signature: "void SviInterpolatedSmileSection::SviInterpolatedSmileSection(\n        const
      Date& optionDate,\n        const Rate& forward,\n        const std::vector<Rate>&
      strikes,\n        bool hasFloatingStrikes,\n        const Volatility& atmVolatility,\n
      \       const std::vector<Volatility>& volHandles,\n        Real a,\n        Real
      b,\n        Real sigma,\n        Real rho,\n        Real m,\n        bool isAFixed,\n
      \       bool isBFixed,\n        bool isSigmaFixed,\n        bool isRhoFixed,\n
      \       bool isMFixed,\n        bool vegaWeighted,\n        ext::shared_ptr<EndCriteria>
      endCriteria,\n        ext::shared_ptr<OptimizationMethod> method,\n        const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:99,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:100,1
    - Dst: SviInterpolation::SviInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:98,1
    - Dst: swap
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: QuantLib::SviInterpolatedSmileSection::createInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 1
    functionsReached:
    - exerciseTime
    - begin
    - SviInterpolation::SviInterpolation
    - swap
    - end
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::createInterpolation() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:107,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:108,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:111,1
    - Dst: isValid
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:112,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:114,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:115,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:116,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:118,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:119,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:119,1
    - Dst: QuantLib::SviInterpolatedSmileSection::createInterpolation
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:125,1
    - Dst: QuantLib::SviInterpolatedSmileSection::update
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 127
    functionName: QuantLib::SviInterpolatedSmileSection::performCalculations
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - value
    - QuantLib::SviInterpolatedSmileSection::update
    - push_back
    - isValid
    - size
    - QuantLib::SviInterpolatedSmileSection::createInterpolation
    - clear
    linkageType: ''
    returnType: void
    signature: void SviInterpolatedSmileSection::performCalculations() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:130,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: QuantLib::SviInterpolatedSmileSection::varianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sviinterpolatedsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - calculate
    linkageType: ''
    returnType: Real
    signature: Real SviInterpolatedSmileSection::varianceImpl(Real strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ExtendedBlackVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:52,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:54,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:55,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ExtendedBlackVarianceCurve::setInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - QuantLib::ExtendedBlackVarianceCurve::update
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::ExtendedBlackVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date ExtendedBlackVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::ExtendedBlackVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ExtendedBlackVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ExtendedBlackVarianceCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:87,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:89,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 3
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: QuantLib::ExtendedBlackVarianceCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<ExtendedBlackVarianceCurve>*>
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::ExtendedBlackVarianceCurve::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:52,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:53,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:54,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:55,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: QuantLib::ExtendedBlackVarianceCurve::setInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - Interpolator
    - interpolate
    - begin
    - QuantLib::ExtendedBlackVarianceCurve::update
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: QuantLib::ExtendedBlackVarianceCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date ExtendedBlackVarianceCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: QuantLib::ExtendedBlackVarianceCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: QuantLib::ExtendedBlackVarianceCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::maxStrike() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ExtendedBlackVarianceCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:87,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:89,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 3
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: QuantLib::ExtendedBlackVarianceCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<Visitor<ExtendedBlackVarianceCurve>*>
    - QuantLib::BlackVarianceTermStructure::accept
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:27,1
    - Dst: QuantLib::SviSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - timeToExpiry
    - forward
    - sviParams
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::SviSmileSection::SviSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - QuantLib::SviSmileSection::init
    - std::move
    linkageType: ''
    returnType: void
    signature: void SviSmileSection::SviSmileSection(Time timeToExpiry, Rate forward,
      std::vector<Real> sviParams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:35,1
    - Dst: QuantLib::SviSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d'
    - forward
    - sviParams
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionName: QuantLib::SviSmileSection::SviSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::SviSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void SviSmileSection::SviSmileSection(const Date& d,\n                                     Rate
      forward,\n                                     std::vector<Real> sviParams,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:40,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:43,1
    - Dst: QuantLib::detail::checkSviParameters
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:44,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: QuantLib::SviSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::detail::checkSviParameters
    - exerciseTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SviSmileSection::init()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:50,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:50,1
    - Dst: QuantLib::detail::sviTotalVariance
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::SviSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - exerciseTime
    - std::max
    - QuantLib::detail::sviTotalVariance
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility SviSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:27,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:27,1
    - Dst: QuantLib::SviSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - timeToExpiry
    - forward
    - sviParams
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 3
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: QuantLib::SviSmileSection::SviSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - QuantLib::SviSmileSection::init
    - std::move
    linkageType: ''
    returnType: void
    signature: void SviSmileSection::SviSmileSection(Time timeToExpiry, Rate forward,
      std::vector<Real> sviParams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:35,1
    - Dst: QuantLib::SviSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' d'
    - forward
    - sviParams
    - ' dc'
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 31
    functionDepth: 3
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionName: QuantLib::SviSmileSection::SviSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::SviSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void SviSmileSection::SviSmileSection(const Date& d,\n                                     Rate
      forward,\n                                     std::vector<Real> sviParams,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:40,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:40,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:43,1
    - Dst: QuantLib::detail::checkSviParameters
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:44,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: QuantLib::SviSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 4
    functionsReached:
    - size
    - QuantLib::detail::checkSviParameters
    - exerciseTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SviSmileSection::init()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:50,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:50,1
    - Dst: QuantLib::detail::sviTotalVariance
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:51,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/svismilesection.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: QuantLib::SviSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.cpp
    functionUses: 0
    functionsReached:
    - std::log
    - exerciseTime
    - std::max
    - QuantLib::detail::sviTotalVariance
    - std::sqrt
    linkageType: ''
    returnType: Volatility
    signature: Volatility SviSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:31,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:37,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:40,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:46,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:50,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setInterpolation
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dates'
    - volatilities
    - dayCounter
    - forceMonotoneVariance
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - DayCounter
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedBlackVarianceCurve::ExtendedBlackVarianceCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - std::vector<Real>
    - std::move
    - QuantLib::ExtendedBlackVarianceCurve::setVariances
    - registerWith
    - QuantLib::ExtendedBlackVarianceCurve::setInterpolation
    - std::vector<Time>
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedBlackVarianceCurve::ExtendedBlackVarianceCurve(const
      Date& referenceDate,\n                                                           const
      std::vector<Date>& dates,\n                                                           std::vector<Handle<Quote>
      > volatilities,\n                                                           DayCounter
      dayCounter,\n                                                           bool
      forceMonotoneVariance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:59,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::ExtendedBlackVarianceCurve::setVariances
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 1
    functionsReached:
    - size
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::setVariances()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:69,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:70,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::ExtendedBlackVarianceCurve::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::ExtendedBlackVarianceCurve::update
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceCurve::setVariances
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:75,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:76,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::ExtendedBlackVarianceCurve::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceCurve_
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::blackVarianceImpl(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:31,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:32,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:37,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:40,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:40,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:41,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:44,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:45,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:46,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:50,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setInterpolation
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:51,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - ' referenceDate'
    - ' dates'
    - volatilities
    - dayCounter
    - forceMonotoneVariance
    argTypes:
    - Date
    - std::vector<Date>
    - std::vector<Handle<Quote> >
    - DayCounter
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedBlackVarianceCurve::ExtendedBlackVarianceCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - timeFromReference
    - std::vector<Real>
    - std::move
    - QuantLib::ExtendedBlackVarianceCurve::setVariances
    - registerWith
    - QuantLib::ExtendedBlackVarianceCurve::setInterpolation
    - std::vector<Time>
    - size
    - back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtendedBlackVarianceCurve::ExtendedBlackVarianceCurve(const
      Date& referenceDate,\n                                                           const
      std::vector<Date>& dates,\n                                                           std::vector<Handle<Quote>
      > volatilities,\n                                                           DayCounter
      dayCounter,\n                                                           bool
      forceMonotoneVariance)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:59,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:60,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: QuantLib::ExtendedBlackVarianceCurve::setVariances
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 3
    functionsReached:
    - size
    - value
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::setVariances()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtendedBlackVarianceCurve::setVariances
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:69,1
    - Dst: QuantLib::ExtendedBlackVarianceCurve::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:70,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: QuantLib::ExtendedBlackVarianceCurve::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::ExtendedBlackVarianceCurve::update
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceCurve::setVariances
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceCurve::update()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:75,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:76,1
    - Dst: varianceCurve_
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: QuantLib::ExtendedBlackVarianceCurve::blackVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancecurve.cpp
    functionUses: 0
    functionsReached:
    - back
    - varianceCurve_
    linkageType: ''
    returnType: Real
    signature: Real ExtendedBlackVarianceCurve::blackVarianceImpl(Time t, Real) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - index
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - index
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   const Date& refDate,\n
      \                                                  const Calendar& cal,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - index
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   Natural settlDays,\n
      \                                                  const Calendar& cal,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:45,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:47,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:47,1
    - Dst: ext::shared_ptr::valueDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:48,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::InterestRateVolSurface::optionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::fixingCalendar
    - referenceDate
    - ext::shared_ptr::valueDate
    - index
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: Date
    signature: Date InterestRateVolSurface::optionDateFromTenor(const Period& p) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<InterestRateVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:54,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:56,1
    - Dst: QuantLib::BlackVolSurface::accept
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::InterestRateVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<InterestRateVolSurface>*>
    - QuantLib::BlackVolSurface::accept
    linkageType: ''
    returnType: void
    signature: void InterestRateVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - index
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - index
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   const Date& refDate,\n
      \                                                  const Calendar& cal,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - index
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: QuantLib::InterestRateVolSurface::InterestRateVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void InterestRateVolSurface::InterestRateVolSurface(ext::shared_ptr<InterestRateIndex>
      index,\n                                                   Natural settlDays,\n
      \                                                  const Calendar& cal,\n                                                   BusinessDayConvention
      bdc,\n                                                   const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: index
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:45,1
    - Dst: ext::shared_ptr::fixingCalendar
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:47,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:47,1
    - Dst: ext::shared_ptr::valueDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:48,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Period
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: QuantLib::InterestRateVolSurface::optionDateFromTenor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr::fixingCalendar
    - referenceDate
    - ext::shared_ptr::valueDate
    - index
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: Date
    signature: Date InterestRateVolSurface::optionDateFromTenor(const Period& p) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<InterestRateVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:54,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:56,1
    - Dst: QuantLib::BlackVolSurface::accept
      Src: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: QuantLib::InterestRateVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/interestratevolsurface.cpp
    functionUses: 0
    functionsReached:
    - auto*::visit
    - dynamic_cast<Visitor<InterestRateVolSurface>*>
    - QuantLib::BlackVolSurface::accept
    linkageType: ''
    returnType: void
    signature: void InterestRateVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::ExtendedBlackVarianceSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::ExtendedBlackVarianceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::ExtendedBlackVarianceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedBlackVarianceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:57,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:60,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:62,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::ExtendedBlackVarianceSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceSurface::update
    - interpolate
    - Interpolator
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ExtendedBlackVarianceSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:82,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:84,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::ExtendedBlackVarianceSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - dynamic_cast<Visitor<ExtendedBlackVarianceSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: QuantLib::ExtendedBlackVarianceSurface::dayCounter
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DayCounter
    signature: DayCounter dayCounter() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: QuantLib::ExtendedBlackVarianceSurface::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: QuantLib::ExtendedBlackVarianceSurface::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: QuantLib::ExtendedBlackVarianceSurface::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Interpolator
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:57,1
    - Dst: interpolate
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:60,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:60,1
    - Dst: QuantLib::ExtendedBlackVarianceSurface::update
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:62,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::ExtendedBlackVarianceSurface::setInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 2
    functionsReached:
    - notifyObservers
    - QuantLib::ExtendedBlackVarianceSurface::update
    - interpolate
    - Interpolator
    - begin
    - end
    linkageType: ''
    returnType: void
    signature: void setInterpolation(const Interpolator& i = Interpolator())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<ExtendedBlackVarianceSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:82,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:84,1
    - Dst: QuantLib::BlackVarianceTermStructure::accept
      Src: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: QuantLib::ExtendedBlackVarianceSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/extendedblackvariancesurface.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::BlackVarianceTermStructure::accept
    - dynamic_cast<Visitor<ExtendedBlackVarianceSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void ExtendedBlackVarianceSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:122,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:123,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::AbcdAtmVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date AbcdAtmVolCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::AbcdAtmVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::AbcdAtmVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::atmVolImpl
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::AbcdAtmVolCurve::atmVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::atmVolImpl
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::atmVarianceImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:140,1
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::AbcdAtmVolCurve::atmVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - calculate
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: Volatility
    signature: Volatility AbcdAtmVolCurve::atmVolImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: '& AbcdAtmVolCurve::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & AbcdAtmVolCurve::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& AbcdAtmVolCurve::optionTenorsInInterpolation() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & AbcdAtmVolCurve::optionTenorsInInterpolation()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: '& AbcdAtmVolCurve::optionDates() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & AbcdAtmVolCurve::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: '& AbcdAtmVolCurve::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & AbcdAtmVolCurve::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::AbcdAtmVolCurve::k
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> AbcdAtmVolCurve::k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::AbcdAtmVolCurve::k
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 3
    functionsReached:
    - end
    - begin
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::k(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::a
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::AbcdAtmVolCurve::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::a
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::b
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::AbcdAtmVolCurve::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::b
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::c
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::AbcdAtmVolCurve::c
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::c
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::d
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::AbcdAtmVolCurve::d
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::d
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::rmsError
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::AbcdAtmVolCurve::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::rmsError
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::maxError
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::AbcdAtmVolCurve::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::maxError
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdAtmVolCurve::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::endCriteria
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type AbcdAtmVolCurve::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:122,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:123,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: QuantLib::AbcdAtmVolCurve::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached:
    - back
    - optionDateFromTenor
    - calculate
    linkageType: ''
    returnType: Date
    signature: Date AbcdAtmVolCurve::maxDate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: QuantLib::AbcdAtmVolCurve::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::minStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: QuantLib::AbcdAtmVolCurve::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::maxStrike() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::atmVolImpl
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: QuantLib::AbcdAtmVolCurve::atmVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::atmVolImpl
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::atmVarianceImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:140,1
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: QuantLib::AbcdAtmVolCurve::atmVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - calculate
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: Volatility
    signature: Volatility AbcdAtmVolCurve::atmVolImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: '& AbcdAtmVolCurve::optionTenors() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & AbcdAtmVolCurve::optionTenors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: '& AbcdAtmVolCurve::optionTenorsInInterpolation() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Period>
    signature: std::vector<Period> & AbcdAtmVolCurve::optionTenorsInInterpolation()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: '& AbcdAtmVolCurve::optionDates() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Date>
    signature: std::vector<Date> & AbcdAtmVolCurve::optionDates() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: '& AbcdAtmVolCurve::optionTimes() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Time>
    signature: std::vector<Time> & AbcdAtmVolCurve::optionTimes() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: QuantLib::AbcdAtmVolCurve::k
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 5
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> AbcdAtmVolCurve::k() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::k
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: QuantLib::AbcdAtmVolCurve::k
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 6
    functionsReached:
    - end
    - begin
    - QuantLib::AbcdAtmVolCurve::k
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::k(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::a
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: QuantLib::AbcdAtmVolCurve::a
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::a
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::a() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::b
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: QuantLib::AbcdAtmVolCurve::b
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::b
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::b() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::c
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: QuantLib::AbcdAtmVolCurve::c
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::c
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::c() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::d
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: QuantLib::AbcdAtmVolCurve::d
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::d
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::d() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::rmsError
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionName: QuantLib::AbcdAtmVolCurve::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::rmsError
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::maxError
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: QuantLib::AbcdAtmVolCurve::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::maxError
    linkageType: ''
    returnType: Real
    signature: Real AbcdAtmVolCurve::maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AbcdAtmVolCurve::endCriteria
      Src: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionName: QuantLib::AbcdAtmVolCurve::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/abcdatmvolcurve.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AbcdAtmVolCurve::endCriteria
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type AbcdAtmVolCurve::endCriteria() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:37,1
    - Dst: QuantLib::SabrVolSurface::checkInputs
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:39,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:52,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:54,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:55,1
    - Dst: QuantLib::SabrVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 5
    argNames:
    - ' index'
    - atmCurve
    - ' optionTenors'
    - atmRateSpreads
    - volSpreads
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Handle<BlackAtmVolCurve>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 64
    functionName: QuantLib::SabrVolSurface::SabrVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    - QuantLib::SabrVolSurface::registerWithMarketData
    - resize
    - QuantLib::SabrVolSurface::checkInputs
    - std::move
    - size
    linkageType: ''
    returnType: void
    signature: "void SabrVolSurface::SabrVolSurface(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                   Handle<BlackAtmVolCurve> atmCurve,\n
      \                                  const std::vector<Period>& optionTenors,\n
      \                                  std::vector<Spread> atmRateSpreads,\n                                   std::vector<std::vector<Handle<Quote>
      > > volSpreads)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 74
    functionName: QuantLib::SabrVolSurface::sabrGuesses
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: std::array<Real, 4> SabrVolSurface::sabrGuesses(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - newGuesses
    argTypes:
    - Date
    - std::array<Real, 4>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionName: QuantLib::SabrVolSurface::updateSabrGuesses
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::updateSabrGuesses(const Date& d, std::array<Real,
      4> newGuesses) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:91,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:99,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:100,1
    - Dst: interpolator
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:101,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::SabrVolSurface::volatilitySpreads
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - value
    - std::vector::begin
    - begin
    - interpolator
    - size
    - end
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> SabrVolSurface::volatilitySpreads(const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:109,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:110,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:111,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: QuantLib::SabrVolSurface::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - optionDateFromTenor
    - timeFromReference
    - QuantLib::TermStructure::update
    - size
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:121,1
    - Dst: QuantLib::SabrVolSurface::volatilitySpreads
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:123,1
    - Dst: QuantLib::SabrVolSurface::sabrGuesses
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:126,1
    - Dst: fixing
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:130,1
    - Dst: atmVol
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:131,1
    - Dst: SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 145
    functionName: QuantLib::SabrVolSurface::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::SabrVolSurface::sabrGuesses
    - fixing
    - atmVol
    - QuantLib::SabrVolSurface::volatilitySpreads
    - SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    - BigInteger
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SabrVolSurface::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:150,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: QuantLib::SabrVolSurface::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 1
    functionsReached:
    - size
    - registerWith
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:161,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:163,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:164,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:168,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 170
    functionName: QuantLib::SabrVolSurface::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::checkInputs() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SabrVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:173,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:175,1
    - Dst: QuantLib::InterestRateVolSurface::accept
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: QuantLib::SabrVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateVolSurface::accept
    - dynamic_cast<Visitor<SabrVolSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:36,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:36,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:37,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:37,1
    - Dst: QuantLib::SabrVolSurface::checkInputs
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:39,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:50,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:52,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:54,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:55,1
    - Dst: QuantLib::SabrVolSurface::registerWithMarketData
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 5
    argNames:
    - ' index'
    - atmCurve
    - ' optionTenors'
    - atmRateSpreads
    - volSpreads
    argTypes:
    - ext::shared_ptr<InterestRateIndex>
    - Handle<BlackAtmVolCurve>
    - std::vector<Period>
    - std::vector<Spread>
    - std::vector<std::vector<Handle<Quote> > >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 30
    functionDepth: 3
    functionLinenumber: 30
    functionLinenumberEnd: 64
    functionName: QuantLib::SabrVolSurface::SabrVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - optionDateFromTenor
    - timeFromReference
    - QuantLib::SabrVolSurface::registerWithMarketData
    - resize
    - QuantLib::SabrVolSurface::checkInputs
    - std::move
    - size
    linkageType: ''
    returnType: void
    signature: "void SabrVolSurface::SabrVolSurface(const ext::shared_ptr<InterestRateIndex>&
      index,\n                                   Handle<BlackAtmVolCurve> atmCurve,\n
      \                                  const std::vector<Period>& optionTenors,\n
      \                                  std::vector<Spread> atmRateSpreads,\n                                   std::vector<std::vector<Handle<Quote>
      > > volSpreads)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 74
    functionName: QuantLib::SabrVolSurface::sabrGuesses
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 1
    functionsReached:
    - size
    linkageType: ''
    returnType: std::array<Real, 4>
    signature: std::array<Real, 4> SabrVolSurface::sabrGuesses(const Date& d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ' d'
    - newGuesses
    argTypes:
    - Date
    - std::array<Real, 4>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionName: QuantLib::SabrVolSurface::updateSabrGuesses
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::updateSabrGuesses(const Date& d, std::array<Real,
      4> newGuesses) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:90,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:91,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:97,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:99,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:99,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:100,1
    - Dst: interpolator
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:101,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' d'
    argTypes:
    - Date
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::SabrVolSurface::volatilitySpreads
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 3
    functionsReached:
    - timeFromReference
    - value
    - std::vector::begin
    - begin
    - interpolator
    - size
    - end
    linkageType: ''
    returnType: std::vector<Volatility>
    signature: std::vector<Volatility> SabrVolSurface::volatilitySpreads(const Date&
      d) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::TermStructure::update
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:109,1
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:110,1
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:111,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: QuantLib::SabrVolSurface::update
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - notifyObservers
    - optionDateFromTenor
    - timeFromReference
    - QuantLib::TermStructure::update
    - size
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BigInteger
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:120,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:121,1
    - Dst: QuantLib::SabrVolSurface::volatilitySpreads
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:123,1
    - Dst: QuantLib::SabrVolSurface::sabrGuesses
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:126,1
    - Dst: fixing
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:130,1
    - Dst: atmVol
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:131,1
    - Dst: SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 145
    functionName: QuantLib::SabrVolSurface::smileSectionImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - referenceDate
    - QuantLib::SabrVolSurface::sabrGuesses
    - fixing
    - atmVol
    - QuantLib::SabrVolSurface::volatilitySpreads
    - SabrInterpolatedSmileSection::SabrInterpolatedSmileSection
    - BigInteger
    linkageType: ''
    returnType: ext::shared_ptr<SmileSection>
    signature: ext::shared_ptr<SmileSection> SabrVolSurface::smileSectionImpl(Time
      t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:149,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:150,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: QuantLib::SabrVolSurface::registerWithMarketData
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 2
    functionsReached:
    - size
    - registerWith
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::registerWithMarketData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:158,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:159,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:161,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:163,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:164,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:165,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:166,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:167,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:168,1
    - Dst: QuantLib::io::ordinal
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 170
    functionName: QuantLib::SabrVolSurface::checkInputs
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::io::ordinal
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::checkInputs() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<SabrVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:173,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:175,1
    - Dst: QuantLib::InterestRateVolSurface::accept
      Src: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: QuantLib::SabrVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvolsurface.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::InterestRateVolSurface::accept
    - dynamic_cast<Visitor<SabrVolSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void SabrVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BlackAtmVolCurve() override
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackAtmVolCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: ~BlackAtmVolCurve() override
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BlackAtmVolCurve() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(const Date& refDate,\n                                     const
      Calendar& cal,\n                                     BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(Natural settlDays,\n                                     const
      Calendar& cal,\n                                     BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:42,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:43,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackVolSurface::atmVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    - variance
    - atmLevel
    linkageType: ''
    returnType: Real
    signature: Real BlackVolSurface::atmVarianceImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:47,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:48,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::BlackVolSurface::atmVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    - volatility
    - atmLevel
    linkageType: ''
    returnType: Volatility
    signature: Volatility BlackVolSurface::atmVolImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:52,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::BlackVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<BlackVolSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(const Date& refDate,\n                                     const
      Calendar& cal,\n                                     BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: QuantLib::BlackVolSurface::BlackVolSurface
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackVolSurface::BlackVolSurface(Natural settlDays,\n                                     const
      Calendar& cal,\n                                     BusinessDayConvention bdc,\n
      \                                    const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:42,1
    - Dst: variance
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:43,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackVolSurface::atmVarianceImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    - variance
    - atmLevel
    linkageType: ''
    returnType: Real
    signature: Real BlackVolSurface::atmVarianceImpl(Time t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smileSectionImpl
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:47,1
    - Dst: volatility
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:48,1
    - Dst: atmLevel
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: QuantLib::BlackVolSurface::atmVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 0
    functionsReached:
    - smileSectionImpl
    - volatility
    - atmLevel
    linkageType: ''
    returnType: Volatility
    signature: Volatility BlackVolSurface::atmVolImpl(Time t) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackVolSurface>*>
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:52,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:54,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: QuantLib::BlackVolSurface::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackvolsurface.cpp
    functionUses: 2
    functionsReached:
    - QL_FAIL
    - dynamic_cast<Visitor<BlackVolSurface>*>
    - auto*::visit
    linkageType: ''
    returnType: void
    signature: void BlackVolSurface::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - ' addParams'
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - std::sqrt
    - Real
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real>& addParams)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:65,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - ' addParams'
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real>& addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:83,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:94,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:95,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:98,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - ' addParams'
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - std::sqrt
    - Real
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real>& addParams)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:65,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - ' addParams'
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real>& addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:83,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:94,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:95,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:98,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:132,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:134,1
    - Dst: "ext::shared_ptr<\n                Interpolation::Impl>"
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:137,1
    - Dst: "detail::XABRInterpolationImpl<\n                I1, I2,\n                detail::ZabrSpecs<Evaluation>
        >::ZabrSpecs<Evaluation> >"
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    - gammaIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 146
    functionName: QuantLib::ZabrInterpolation::ZabrInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - "ext::shared_ptr<\n                Interpolation::Impl>"
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - "detail::XABRInterpolationImpl<\n                I1, I2,\n                detail::ZabrSpecs<Evaluation>
      >::ZabrSpecs<Evaluation> >"
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolation(\n        const I1 &xBegin, // x = strikes\n
      \       const I1 &xEnd,\n        const I2 &yBegin, // y = volatilities\n        Time
      t,           // option expiry\n        const Real &forward, Real alpha, Real
      beta, Real nu, Real rho,\n        Real gamma, bool alphaIsFixed, bool betaIsFixed,
      bool nuIsFixed,\n        bool rhoIsFixed, bool gammaIsFixed, bool vegaWeighted
      = true,\n        const ext::shared_ptr<EndCriteria> &endCriteria =\n            ext::shared_ptr<EndCriteria>(),\n
      \       const ext::shared_ptr<OptimizationMethod> &optMethod =\n            ext::shared_ptr<OptimizationMethod>(),\n
      \       const Real errorAccept = 0.0020, const bool useMaxError = false,\n        const
      Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::ZabrInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::ZabrInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::ZabrInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::ZabrInterpolation::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::ZabrInterpolation::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::ZabrInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 153
    functionName: QuantLib::ZabrInterpolation::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 154
    functionName: QuantLib::ZabrInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 155
    functionName: QuantLib::ZabrInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::ZabrInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>*>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:163,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>
    signature: detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:183,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:184,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:191,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    - gammaIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 192
    functionName: QuantLib::Zabr::Zabr
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Zabr(Time t,\n         Real forward,\n         Real alpha,\n
      \        Real beta,\n         Real nu,\n         Real rho,\n         Real gamma,\n
      \        bool alphaIsFixed,\n         bool betaIsFixed,\n         bool nuIsFixed,\n
      \        bool rhoIsFixed,\n         bool gammaIsFixed,\n         bool vegaWeighted
      = false,\n         ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \        ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>(),\n
      \        const Real errorAccept = 0.0020,\n         const bool useMaxError =
      false,\n         const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZabrInterpolation<Evaluation>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 201
    functionName: QuantLib::Zabr::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ZabrInterpolation<Evaluation>
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - ' addParams'
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - std::sqrt
    - Real
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real>& addParams)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:65,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - ' addParams'
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real>& addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 28
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:83,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:94,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:95,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:98,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: QuantLib::detail::dimension
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size dimension()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: QuantLib::detail::eps
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:41,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:43,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:47,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:48,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:49,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:50,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:52,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 5
    argNames:
    - params
    - paramIsFixed
    - forward
    - expiryTime
    - ' addParams'
    argTypes:
    - std::vector<Real>
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: QuantLib::detail::defaultValues
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Null<Real>
    - std::sqrt
    - Real
    linkageType: ''
    returnType: void
    signature: "void defaultValues(std::vector<Real> &params,\n                       std::vector<bool>
      &paramIsFixed, const Real &forward,\n                       const Real expiryTime,
      const std::vector<Real>& addParams)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:65,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 6
    argNames:
    - values
    - paramIsFixed
    - forward
    - expiryTime
    - r
    - ' addParams'
    argTypes:
    - Array
    - std::vector<bool>
    - Real
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 73
    functionName: QuantLib::detail::guess
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    linkageType: ''
    returnType: void
    signature: "void guess(Array &values, const std::vector<bool> &paramIsFixed,\n
      \              const Real &forward, const Real expiryTime,\n               const
      std::vector<Real> &r, const std::vector<Real>& addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: QuantLib::detail::eps1
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps1()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: QuantLib::detail::eps2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real eps2()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: QuantLib::detail::dilationFactor
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real dilationFactor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:80,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:81,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:82,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:83,1
    - Dst: std::asin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:84,1
    - Dst: std::tan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - y
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::detail::inverse
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::eps1
    - std::log
    - Real
    - std::sqrt
    - std::tan
    - std::asin
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array inverse(const Array &y, const std::vector<bool> &,\n                  const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:91,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:92,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:93,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:94,1
    - Dst: QuantLib::detail::eps1
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:95,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:97,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:98,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:99,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: QuantLib::detail::eps2
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:100,1
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: QuantLib::detail::direct
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::detail::eps1
    - std::exp
    - std::log
    - std::sin
    - Real
    - std::fabs
    - std::sqrt
    - QuantLib::detail::eps2
    linkageType: ''
    returnType: Array
    signature: "Array direct(const Array &x, const std::vector<bool> &,\n                 const
      std::vector<Real> &, const Real)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaStdDevDerivative
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - strike
    - forward
    - stdDev
    - addParams
    argTypes:
    - Real
    - Real
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionName: QuantLib::detail::weight
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - blackFormulaStdDevDerivative
    linkageType: ''
    returnType: Real
    signature: "Real weight(const Real strike, const Real forward, const Real stdDev,\n
      \               const std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<type>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - t
    - forward
    - params
    - addParams
    argTypes:
    - Time
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: QuantLib::detail::instance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 368
    functionsReached:
    - ext::make_shared<type>
    linkageType: ''
    returnType: ext::shared_ptr<type>
    signature: "ext::shared_ptr<type> instance(const Time t, const Real &forward,\n
      \                                    const std::vector<Real> &params,\n                                     const
      std::vector<Real> &addParams)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:132,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:134,1
    - Dst: "ext::shared_ptr<\n                Interpolation::Impl>"
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:137,1
    - Dst: "detail::XABRInterpolationImpl<\n                I1, I2,\n                detail::ZabrSpecs<Evaluation>
        >::ZabrSpecs<Evaluation> >"
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 15
    argNames:
    - xBegin
    - xEnd
    - yBegin
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    - gammaIsFixed
    argTypes:
    - I1
    - I1
    - I2
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 146
    functionName: QuantLib::ZabrInterpolation::ZabrInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - "ext::shared_ptr<\n                Interpolation::Impl>"
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - "detail::XABRInterpolationImpl<\n                I1, I2,\n                detail::ZabrSpecs<Evaluation>
      >::ZabrSpecs<Evaluation> >"
    linkageType: ''
    returnType: void
    signature: "void ZabrInterpolation(\n        const I1 &xBegin, // x = strikes\n
      \       const I1 &xEnd,\n        const I2 &yBegin, // y = volatilities\n        Time
      t,           // option expiry\n        const Real &forward, Real alpha, Real
      beta, Real nu, Real rho,\n        Real gamma, bool alphaIsFixed, bool betaIsFixed,
      bool nuIsFixed,\n        bool rhoIsFixed, bool gammaIsFixed, bool vegaWeighted
      = true,\n        const ext::shared_ptr<EndCriteria> &endCriteria =\n            ext::shared_ptr<EndCriteria>(),\n
      \       const ext::shared_ptr<OptimizationMethod> &optMethod =\n            ext::shared_ptr<OptimizationMethod>(),\n
      \       const Real errorAccept = 0.0020, const bool useMaxError = false,\n        const
      Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: QuantLib::ZabrInterpolation::expiry
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real expiry() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 148
    functionName: QuantLib::ZabrInterpolation::forward
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real forward() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: QuantLib::ZabrInterpolation::alpha
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: QuantLib::ZabrInterpolation::beta
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: QuantLib::ZabrInterpolation::nu
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real nu() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: QuantLib::ZabrInterpolation::rho
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rho() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 153
    functionName: QuantLib::ZabrInterpolation::gamma
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real gamma() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 154
    functionName: QuantLib::ZabrInterpolation::rmsError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real rmsError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 155
    functionName: QuantLib::ZabrInterpolation::maxError
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: Real
    signature: Real maxError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: '&interpolationWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> &interpolationWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: coeffs
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 159
    functionName: QuantLib::ZabrInterpolation::endCriteria
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - coeffs
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type endCriteria()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>*>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:163,1
    - Dst: get
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: '& coeffs() const'
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - dynamic_cast<detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>*>
    - get
    linkageType: ''
    returnType: detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>>
    signature: detail::XABRCoeffHolder<detail::ZabrSpecs<Evaluation>> & coeffs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<EndCriteria>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:183,1
    - Dst: ext::shared_ptr<OptimizationMethod>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:184,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:191,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 12
    argNames:
    - t
    - forward
    - alpha
    - beta
    - nu
    - rho
    - gamma
    - alphaIsFixed
    - betaIsFixed
    - nuIsFixed
    - rhoIsFixed
    - gammaIsFixed
    argTypes:
    - Time
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - bool
    - bool
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 192
    functionName: QuantLib::Zabr::Zabr
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ext::shared_ptr<OptimizationMethod>
    - ext::shared_ptr<EndCriteria>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void Zabr(Time t,\n         Real forward,\n         Real alpha,\n
      \        Real beta,\n         Real nu,\n         Real rho,\n         Real gamma,\n
      \        bool alphaIsFixed,\n         bool betaIsFixed,\n         bool nuIsFixed,\n
      \        bool rhoIsFixed,\n         bool gammaIsFixed,\n         bool vegaWeighted
      = false,\n         ext::shared_ptr<EndCriteria> endCriteria = ext::shared_ptr<EndCriteria>(),\n
      \        ext::shared_ptr<OptimizationMethod> optMethod = ext::shared_ptr<OptimizationMethod>(),\n
      \        const Real errorAccept = 0.0020,\n         const bool useMaxError =
      false,\n         const Size maxGuesses = 50)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ZabrInterpolation<Evaluation>
      Src: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xBegin
    - xEnd
    - yBegin
    argTypes:
    - I1
    - I1
    - I2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 201
    functionName: QuantLib::Zabr::interpolate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrinterpolation.hpp
    functionUses: 0
    functionsReached:
    - ZabrInterpolation<Evaluation>
    linkageType: ''
    returnType: Interpolation
    signature: "Interpolation interpolate(const I1 &xBegin, const I1 &xEnd,\n                              const
      I2 &yBegin) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(BusinessDayConvention bdc,\n
      \                                      const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(const Date& refDate,\n                                       const
      Calendar& cal,\n                                       BusinessDayConvention
      bdc,\n                                       const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(Natural settlDays,\n                                       const
      Calendar& cal,\n                                       BusinessDayConvention
      bdc,\n                                       const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:42,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVol
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - optionDateFromTenor
    - QuantLib::BlackAtmVolCurve::atmVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(const Period& optionTenor,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:48,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVol
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - timeFromReference
    - QuantLib::BlackAtmVolCurve::atmVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(const Date& d,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:54,1
    - Dst: atmVolImpl
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - checkRange
    - atmVolImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(Time t,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:60,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVariance
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::BlackAtmVolCurve::atmVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(const Period& optionTenor,\n                                       bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:66,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVariance
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::BlackAtmVolCurve::atmVariance
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(const Date& d,\n                                       bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:72,1
    - Dst: atmVarianceImpl
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 2
    functionsReached:
    - atmVarianceImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(Time t,\n                                       bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackAtmVolCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:77,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackAtmVolCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<BlackAtmVolCurve>*>
    linkageType: ''
    returnType: void
    signature: void BlackAtmVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - bdc
    - ' dc'
    argTypes:
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(BusinessDayConvention bdc,\n
      \                                      const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' refDate'
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Date
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(const Date& refDate,\n                                       const
      Calendar& cal,\n                                       BusinessDayConvention
      bdc,\n                                       const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - settlDays
    - ' cal'
    - bdc
    - ' dc'
    argTypes:
    - Natural
    - Calendar
    - BusinessDayConvention
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: QuantLib::BlackAtmVolCurve::BlackAtmVolCurve
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void BlackAtmVolCurve::BlackAtmVolCurve(Natural settlDays,\n                                       const
      Calendar& cal,\n                                       BusinessDayConvention
      bdc,\n                                       const DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:42,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVol
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 3
    functionsReached:
    - optionDateFromTenor
    - QuantLib::BlackAtmVolCurve::atmVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(const Period& optionTenor,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:48,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVol
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 4
    functionsReached:
    - timeFromReference
    - QuantLib::BlackAtmVolCurve::atmVol
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(const Date& d,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:54,1
    - Dst: atmVolImpl
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: QuantLib::BlackAtmVolCurve::atmVol
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 4
    functionsReached:
    - checkRange
    - atmVolImpl
    linkageType: ''
    returnType: Volatility
    signature: "Volatility BlackAtmVolCurve::atmVol(Time t,\n                                        bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: optionDateFromTenor
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:60,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVariance
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' optionTenor'
    - extrapolate
    argTypes:
    - Period
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::BlackAtmVolCurve::atmVariance
    - optionDateFromTenor
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(const Period& optionTenor,\n                                       bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timeFromReference
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:66,1
    - Dst: QuantLib::BlackAtmVolCurve::atmVariance
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' d'
    - extrapolate
    argTypes:
    - Date
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 4
    functionsReached:
    - QuantLib::BlackAtmVolCurve::atmVariance
    - timeFromReference
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(const Date& d,\n                                       bool
      extrapolate) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: checkRange
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:72,1
    - Dst: atmVarianceImpl
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - extrapolate
    argTypes:
    - Time
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: QuantLib::BlackAtmVolCurve::atmVariance
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 4
    functionsReached:
    - atmVarianceImpl
    - checkRange
    linkageType: ''
    returnType: Real
    signature: "Real BlackAtmVolCurve::atmVariance(Time t,\n                                       bool
      extrapolate) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Visitor<BlackAtmVolCurve>*>
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:77,1
    - Dst: auto*::visit
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:79,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - AcyclicVisitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: QuantLib::BlackAtmVolCurve::accept
    functionSourceFile: /src/quantlib/ql/experimental/volatility/blackatmvolcurve.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - auto*::visit
    - dynamic_cast<Visitor<BlackAtmVolCurve>*>
    linkageType: ''
    returnType: void
    signature: void BlackAtmVolCurve::accept(AcyclicVisitor& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:30,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:34,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:39,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - surfaces
    - curves
    argTypes:
    - std::vector<Handle<InterestRateVolSurface> >
    - std::vector<Handle<AbcdAtmVolCurve> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::VolatilityCube::VolatilityCube
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.cpp
    functionUses: 0
    functionsReached:
    - size
    - referenceDate
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityCube::VolatilityCube(std::vector<Handle<InterestRateVolSurface>
      > surfaces,\n                                   std::vector<Handle<AbcdAtmVolCurve>
      > curves)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:29,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:30,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:30,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:34,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:34,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:39,1
    - Dst: referenceDate
      Src: /src/quantlib/ql/experimental/volatility/volcube.cpp:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - surfaces
    - curves
    argTypes:
    - std::vector<Handle<InterestRateVolSurface> >
    - std::vector<Handle<AbcdAtmVolCurve> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: QuantLib::VolatilityCube::VolatilityCube
    functionSourceFile: /src/quantlib/ql/experimental/volatility/volcube.cpp
    functionUses: 0
    functionsReached:
    - size
    - referenceDate
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void VolatilityCube::VolatilityCube(std::vector<Handle<InterestRateVolSurface>
      > surfaces,\n                                   std::vector<Handle<AbcdAtmVolCurve>
      > curves)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::NoArbSabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::NoArbSabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::NoArbSabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::NoArbSabrSmileSection::model
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<NoArbSabrModel>
    signature: ext::shared_ptr<NoArbSabrModel> model()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::NoArbSabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: QuantLib::NoArbSabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: QuantLib::NoArbSabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::NoArbSabrSmileSection::model
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<NoArbSabrModel>
    signature: ext::shared_ptr<NoArbSabrModel> model()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:33,1
    - Dst: QuantLib::NoArbSabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - sabrParams
    - shift
    - volatilityType
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::NoArbSabrSmileSection::NoArbSabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - std::move
    - QuantLib::NoArbSabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrSmileSection::NoArbSabrSmileSection(Time timeToExpiry,\n
      \                                                Rate forward,\n                                                 std::vector<Real>
      sabrParams,\n                                                 Real shift,\n
      \                                                VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:40,1
    - Dst: QuantLib::NoArbSabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - forward
    - sabrParams
    - ' dc'
    - shift
    - volatilityType
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::NoArbSabrSmileSection::NoArbSabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::NoArbSabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrSmileSection::NoArbSabrSmileSection(\n        const
      Date& d, Rate forward, std::vector<Real> sabrParams, const DayCounter& dc, Real
      shift, VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:50,1
    - Dst: ext::make_shared<NoArbSabrModel>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:55,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::NoArbSabrSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 2
    functionsReached:
    - size
    - ext::make_shared<NoArbSabrModel>
    - exerciseTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NoArbSabrSmileSection::init()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: QuantLib::NoArbSabrSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real NoArbSabrSmileSection::optionPrice(Rate strike, Option::Type
      type,\n                                        Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::NoArbSabrSmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real NoArbSabrSmileSection::digitalOptionPrice(Rate strike, Option::Type
      type,\n                                               Real discount, Real) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::density
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - discount
    argTypes:
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::NoArbSabrSmileSection::density
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::density
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrSmileSection::density(Rate strike, Real discount, Real)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:86,1
    - Dst: QuantLib::NoArbSabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:88,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:88,1
    - Dst: unsafeSabrVolatility
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:94,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:94,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 98
    functionName: QuantLib::NoArbSabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - volatilityType
    - QuantLib::NoArbSabrSmileSection::optionPrice
    - unsafeSabrVolatility
    - std::sqrt
    - blackFormulaImpliedStdDev
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:33,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:33,1
    - Dst: QuantLib::NoArbSabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - sabrParams
    - shift
    - volatilityType
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: QuantLib::NoArbSabrSmileSection::NoArbSabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - DayCounter
    - std::move
    - QuantLib::NoArbSabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrSmileSection::NoArbSabrSmileSection(Time timeToExpiry,\n
      \                                                Rate forward,\n                                                 std::vector<Real>
      sabrParams,\n                                                 Real shift,\n
      \                                                VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:40,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:40,1
    - Dst: QuantLib::NoArbSabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - forward
    - sabrParams
    - ' dc'
    - shift
    - volatilityType
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    - Real
    - VolatilityType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: QuantLib::NoArbSabrSmileSection::NoArbSabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::NoArbSabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: "void NoArbSabrSmileSection::NoArbSabrSmileSection(\n        const
      Date& d, Rate forward, std::vector<Real> sabrParams, const DayCounter& dc, Real
      shift, VolatilityType volatilityType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:46,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:50,1
    - Dst: ext::make_shared<NoArbSabrModel>
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:55,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionName: QuantLib::NoArbSabrSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 4
    functionsReached:
    - size
    - ext::make_shared<NoArbSabrModel>
    - exerciseTime
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void NoArbSabrSmileSection::init()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: QuantLib::NoArbSabrSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 3
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real NoArbSabrSmileSection::optionPrice(Rate strike, Option::Type
      type,\n                                        Real discount) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::digitalOptionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: QuantLib::NoArbSabrSmileSection::digitalOptionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::digitalOptionPrice
    linkageType: ''
    returnType: Real
    signature: "Real NoArbSabrSmileSection::digitalOptionPrice(Rate strike, Option::Type
      type,\n                                               Real discount, Real) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::NoArbSabrSmileSection::density
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - strike
    - discount
    argTypes:
    - Rate
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: QuantLib::NoArbSabrSmileSection::density
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::NoArbSabrSmileSection::density
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrSmileSection::density(Rate strike, Real discount, Real)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:86,1
    - Dst: QuantLib::NoArbSabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:87,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:88,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:88,1
    - Dst: unsafeSabrVolatility
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:94,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:94,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 98
    functionName: QuantLib::NoArbSabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/noarbsabrsmilesection.cpp
    functionUses: 0
    functionsReached:
    - exerciseTime
    - volatilityType
    - QuantLib::NoArbSabrSmileSection::optionPrice
    - unsafeSabrVolatility
    - std::sqrt
    - blackFormulaImpliedStdDev
    linkageType: ''
    returnType: Real
    signature: Real NoArbSabrSmileSection::volatilityImpl(Rate strike) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - alpha
    - beta
    - gamma
    - rho
    - s0
    - r
    - ' referenceDate'
    - ' dc'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::SABRVolTermStructure::SABRVolTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void SABRVolTermStructure(Real alpha,\n                             Real
      beta,\n                             Real gamma,\n                             Real
      rho,\n                             Real s0,\n                             Real
      r,\n                             const Date& referenceDate,\n                             const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::SABRVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::SABRVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::SABRVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:52,1
    - Dst: sabrVolatility
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::SABRVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - sabrVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NullCalendar
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 8
    argNames:
    - alpha
    - beta
    - gamma
    - rho
    - s0
    - r
    - ' referenceDate'
    - ' dc'
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Date
    - DayCounter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: QuantLib::SABRVolTermStructure::SABRVolTermStructure
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - NullCalendar
    linkageType: ''
    returnType: void
    signature: "void SABRVolTermStructure(Real alpha,\n                             Real
      beta,\n                             Real gamma,\n                             Real
      rho,\n                             Real s0,\n                             Real
      r,\n                             const Date& referenceDate,\n                             const
      DayCounter& dc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Date::maxDate
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: QuantLib::SABRVolTermStructure::maxDate
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::Date::maxDate
    linkageType: ''
    returnType: Date
    signature: Date maxDate() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: QuantLib::SABRVolTermStructure::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: QuantLib::SABRVolTermStructure::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Rate
    signature: Rate maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:52,1
    - Dst: sabrVolatility
      Src: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - strike
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: QuantLib::SABRVolTermStructure::blackVolImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/sabrvoltermstructure.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    - sabrVolatility
    linkageType: ''
    returnType: Volatility
    signature: Volatility blackVolImpl(Time t, Real strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ZabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ZabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ZabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - forward
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:65,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::ZabrSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrSmileSection::optionPrice
    - Evaluation
    linkageType: ''
    returnType: Real
    signature: Real optionPrice(Rate strike, Option::Type type = Option::Call, Real
      discount = 1.0) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::ZabrSmileSection::model
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZabrModel>
    signature: ext::shared_ptr<ZabrModel> model()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:72,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::ZabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::ZabrSmileSection::volatilityImpl
    - Evaluation
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:77,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:77,1
    - Dst: init2
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:78,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:78,1
    - Dst: init3
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:79,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::ZabrSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - init3
    - init2
    - Evaluation
    - QuantLib::ZabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: void init(const std::vector<Real> &moneyness)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:121,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:121,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - zabrParams
    - ' moneyness'
    - fdRefinement
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: QuantLib::ZabrSmileSection<Evaluation>::ZabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZabrSmileSection<Evaluation>::init
    - DayCounter
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::ZabrSmileSection(Time timeToExpiry,\n
      \                                              Rate forward,\n                                               std::vector<Real>
      zabrParams,\n                                               const std::vector<Real>&
      moneyness,\n                                               const Size fdRefinement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:133,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:133,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - forward
    - zabrParams
    - ' dc'
    - ' moneyness'
    - fdRefinement
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: QuantLib::ZabrSmileSection<Evaluation>::ZabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::ZabrSmileSection(const Date& d,\n
      \                                              Rate forward,\n                                               std::vector<Real>
      zabrParams,\n                                               const DayCounter&
      dc,\n                                               const std::vector<Real>&
      moneyness,\n                                               const Size fdRefinement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<ZabrModel>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:142,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - exerciseTime
    - ext::make_shared<ZabrModel>
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &,\n
      \                                       ZabrShortMaturityLognormal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:150,1
    - Dst: ZabrShortMaturityLognormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 3
    functionsReached:
    - ZabrShortMaturityLognormal
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &a,\n
      \                                       ZabrShortMaturityNormal)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:159,1
    - Dst: ext::make_shared<ZabrModel>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:161,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:162,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:171,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:172,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:174,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:176,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:184,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:191,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 194
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 3
    functionsReached:
    - exerciseTime
    - ext::make_shared<ZabrModel>
    - std::vector<Real>
    - push_back
    - std::vector<Real>::empty
    - size
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &moneyness,\n
      \                                       ZabrLocalVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:199,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 4
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &moneyness,\n
      \                                       ZabrFullFd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 203
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrShortMaturityLognormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 206
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrShortMaturityNormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - fdPrice
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrLocalVolatility)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:217,1
    - Dst: fullFdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 220
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - fullFdPrice
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrFullFd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrShortMaturityLognormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrShortMaturityNormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:230,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:230,1
    - Dst: insert
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:231,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:231,1
    - Dst: ext::shared_ptr<Interpolation>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:233,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:233,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:248,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:249,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:252,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 253
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - std::log
    - begin
    - ext::shared_ptr<Interpolation>
    - CubicInterpolation::CubicInterpolation
    - enableExtrapolation
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrLocalVolatility)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init3
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:257,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::init3
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrFullFd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Real strike, Option::Type
      type,\n                                          Real discount,\n                                          ZabrShortMaturityLognormal)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:272,1
    - Dst: normalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 275
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - normalVolatility
    - exerciseTime
    - std::sqrt
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Real strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrShortMaturityNormal)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:281,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 287
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - back
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Rate strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrLocalVolatility)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:293,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 294
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Rate strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrFullFd)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:300,1
    - Dst: lognormalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 302
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - std::max
    - lognormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                             ZabrShortMaturityLognormal)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:311,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:316,1
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:316,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:317,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:318,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 305
    functionDepth: 3
    functionLinenumber: 305
    functionLinenumberEnd: 322
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    - exerciseTime
    - std::sqrt
    - forward
    - blackFormulaImpliedStdDev
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                             ZabrShortMaturityNormal)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:327,1
    - Dst: ZabrShortMaturityNormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - ZabrShortMaturityNormal
    - QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                                  ZabrLocalVolatility)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:333,1
    - Dst: ZabrShortMaturityNormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - ZabrShortMaturityNormal
    - QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                                  ZabrFullFd)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: QuantLib::ZabrSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::ZabrSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::ZabrSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - forward
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:65,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: QuantLib::ZabrSmileSection::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrSmileSection::optionPrice
    - Evaluation
    linkageType: ''
    returnType: Real
    signature: Real optionPrice(Rate strike, Option::Type type = Option::Call, Real
      discount = 1.0) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::ZabrSmileSection::model
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ZabrModel>
    signature: ext::shared_ptr<ZabrModel> model()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:72,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::ZabrSmileSection::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrSmileSection::volatilityImpl
    - Evaluation
    linkageType: ''
    returnType: Volatility
    signature: Volatility volatilityImpl(Rate strike) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:77,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:77,1
    - Dst: init2
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:78,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:78,1
    - Dst: init3
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:79,1
    - Dst: Evaluation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: QuantLib::ZabrSmileSection::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - init3
    - init2
    - Evaluation
    - QuantLib::ZabrSmileSection::init
    linkageType: ''
    returnType: void
    signature: void init(const std::vector<Real> &moneyness)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DayCounter
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:121,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:121,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - timeToExpiry
    - forward
    - zabrParams
    - ' moneyness'
    - fdRefinement
    argTypes:
    - Time
    - Rate
    - std::vector<Real>
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: QuantLib::ZabrSmileSection<Evaluation>::ZabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZabrSmileSection<Evaluation>::init
    - DayCounter
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::ZabrSmileSection(Time timeToExpiry,\n
      \                                              Rate forward,\n                                               std::vector<Real>
      zabrParams,\n                                               const std::vector<Real>&
      moneyness,\n                                               const Size fdRefinement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Date
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:133,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:133,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ' d'
    - forward
    - zabrParams
    - ' dc'
    - ' moneyness'
    - fdRefinement
    argTypes:
    - Date
    - Rate
    - std::vector<Real>
    - DayCounter
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: QuantLib::ZabrSmileSection<Evaluation>::ZabrSmileSection
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - Date
    - std::move
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::ZabrSmileSection(const Date& d,\n
      \                                              Rate forward,\n                                               std::vector<Real>
      zabrParams,\n                                               const DayCounter&
      dc,\n                                               const std::vector<Real>&
      moneyness,\n                                               const Size fdRefinement)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<ZabrModel>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:142,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 6
    functionsReached:
    - exerciseTime
    - ext::make_shared<ZabrModel>
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &,\n
      \                                       ZabrShortMaturityLognormal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:150,1
    - Dst: ZabrShortMaturityLognormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 7
    functionsReached:
    - ZabrShortMaturityLognormal
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &a,\n
      \                                       ZabrShortMaturityNormal)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:157,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:159,1
    - Dst: ext::make_shared<ZabrModel>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:161,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:162,1
    - Dst: std::vector<Real>::empty
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:171,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:172,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:174,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:176,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:184,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:191,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 194
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 7
    functionsReached:
    - exerciseTime
    - ext::make_shared<ZabrModel>
    - std::vector<Real>
    - push_back
    - std::vector<Real>::empty
    - size
    - clear
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &moneyness,\n
      \                                       ZabrLocalVolatility)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:199,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - moneyness
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 8
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::init
    linkageType: ''
    returnType: void
    signature: "void ZabrSmileSection<Evaluation>::init(const std::vector<Real> &moneyness,\n
      \                                       ZabrFullFd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 203
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrShortMaturityLognormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 206
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrShortMaturityNormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - fdPrice
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrLocalVolatility)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:215,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:217,1
    - Dst: fullFdPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 220
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init2
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 0
    functionsReached:
    - size
    - resize
    - fullFdPrice
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init2(ZabrFullFd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrShortMaturityLognormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 226
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrShortMaturityNormal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:230,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:230,1
    - Dst: insert
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:231,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:231,1
    - Dst: ext::shared_ptr<Interpolation>
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:233,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:234,1
    - Dst: CubicInterpolation::CubicInterpolation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:233,1
    - Dst: enableExtrapolation
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:241,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:248,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:249,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:252,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 253
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 1
    functionsReached:
    - back
    - std::log
    - begin
    - ext::shared_ptr<Interpolation>
    - CubicInterpolation::CubicInterpolation
    - enableExtrapolation
    - end
    - insert
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrLocalVolatility)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::init3
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:257,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionName: QuantLib::ZabrSmileSection<Evaluation>::init3
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::init3
    linkageType: ''
    returnType: void
    signature: void ZabrSmileSection<Evaluation>::init3(ZabrFullFd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::AtmAdjustedSmileSection::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::AtmAdjustedSmileSection::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Real strike, Option::Type
      type,\n                                          Real discount,\n                                          ZabrShortMaturityLognormal)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bachelierBlackFormula
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:272,1
    - Dst: normalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Real
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 275
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - normalVolatility
    - exerciseTime
    - std::sqrt
    - bachelierBlackFormula
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Real strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrShortMaturityNormal)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:281,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 287
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - back
    - exp
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Rate strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrLocalVolatility)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:293,1
    - Dst: ZabrLocalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - strike
    - type
    - discount
    argTypes:
    - Rate
    - Option::Type
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 294
    functionName: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 3
    functionsReached:
    - ZabrLocalVolatility
    - QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::optionPrice(Rate strike, Option::Type
      type,\n                                               Real discount,\n                                               ZabrFullFd)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:300,1
    - Dst: lognormalVolatility
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 302
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - std::max
    - lognormalVolatility
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                             ZabrShortMaturityLognormal)
      const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:311,1
    - Dst: blackFormulaImpliedStdDev
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:316,1
    - Dst: forward
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:316,1
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::optionPrice
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:317,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:318,1
    - Dst: exerciseTime
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 305
    functionDepth: 3
    functionLinenumber: 305
    functionLinenumberEnd: 322
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::ZabrSmileSection<Evaluation>::optionPrice
    - exerciseTime
    - std::sqrt
    - forward
    - blackFormulaImpliedStdDev
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                             ZabrShortMaturityNormal)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:327,1
    - Dst: ZabrShortMaturityNormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 3
    functionsReached:
    - ZabrShortMaturityNormal
    - QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                                  ZabrLocalVolatility)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:333,1
    - Dst: ZabrShortMaturityNormal
      Src: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - strike
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    functionSourceFile: /src/quantlib/ql/experimental/volatility/zabrsmilesection.hpp
    functionUses: 4
    functionsReached:
    - ZabrShortMaturityNormal
    - QuantLib::ZabrSmileSection<Evaluation>::volatilityImpl
    linkageType: ''
    returnType: Real
    signature: "Real ZabrSmileSection<Evaluation>::volatilityImpl(Rate strike,\n                                                  ZabrFullFd)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SviSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::SviSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::SviSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: QuantLib::SviSmileSection::minStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real minStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: QuantLib::SviSmileSection::maxStrike
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real maxStrike() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: QuantLib::SviSmileSection::atmLevel
    functionSourceFile: /src/quantlib/ql/experimental/volatility/svismilesection.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real atmLevel() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: ~Intensity()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Intensity()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: QuantLib::FireflyAlgorithm::Intensity::distance
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real distance(const Array& x, const Array& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: QuantLib::FireflyAlgorithm::Intensity::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm *fa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - beta0
    - betaMin
    - gamma
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::ExponentialIntensity::ExponentialIntensity
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExponentialIntensity(Real beta0, Real betaMin, Real gamma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - valueX
    - valueY
    - d
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::ExponentialIntensity::intensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real intensityImpl(Real valueX, Real valueY, Real d) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - beta0
    - betaMin
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: QuantLib::InverseLawSquareIntensity::InverseLawSquareIntensity
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverseLawSquareIntensity(Real beta0, Real betaMin)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - valueX
    - valueY
    - d
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::InverseLawSquareIntensity::intensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real intensityImpl(Real valueX, Real valueY, Real d) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: ~RandomWalk()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomWalk()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: walkImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: QuantLib::FireflyAlgorithm::RandomWalk::walk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - walkImpl
    linkageType: ''
    returnType: void
    signature: void walk()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::FireflyAlgorithm::RandomWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm *fa)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:211,1
    - Dst: std::mt19937
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dist
    argTypes:
    - Distribution
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: QuantLib::DistributionRandomWalk::DistributionRandomWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::detail::instance
    - std::move
    - std::mt19937
    linkageType: ''
    returnType: void
    signature: "void DistributionRandomWalk(Distribution dist, \n                                        Real
      delta = 0.9, \n                                        unsigned long seed =
      SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' xRW'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::DistributionRandomWalk::walkImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void walkImpl(Array& xRW) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FireflyAlgorithm::RandomWalk::init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:220,1
    - Dst: setDimension
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::DistributionRandomWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FireflyAlgorithm::RandomWalk::init
    - setDimension
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm* fa) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:234,1
    - Dst: std::normal_distribution<QuantLib::Real>
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: QuantLib::GaussianWalk::GaussianWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::normal_distribution<QuantLib::Real>
    linkageType: ''
    returnType: void
    signature: "void GaussianWalk(Real sigma, \n                              Real
      delta = 0.9, \n                              unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:247,1
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: QuantLib::LevyFlightWalk::LevyFlightWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - LevyFlightDistribution
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void LevyFlightWalk(Real alpha, \n                                Real
      xm = 0.5, \n                                Real delta = 0.9,\n                                unsigned
      long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::DecreasingGaussianWalk::DecreasingGaussianWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void DecreasingGaussianWalk(\n            Real sigma,\n            Real
      delta = 0.9,\n            unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecreasingGaussianWalk::walkImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' xRW'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 272
    functionName: QuantLib::DecreasingGaussianWalk::walkImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DecreasingGaussianWalk::walkImpl
    linkageType: ''
    returnType: void
    signature: void walkImpl(Array& xRW) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecreasingGaussianWalk::init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: QuantLib::DecreasingGaussianWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::DecreasingGaussianWalk::init
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm* fa) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: ~Intensity()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Intensity()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: QuantLib::FireflyAlgorithm::Intensity::distance
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real distance(const Array& x, const Array& y) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: QuantLib::FireflyAlgorithm::Intensity::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm *fa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - beta0
    - betaMin
    - gamma
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: QuantLib::ExponentialIntensity::ExponentialIntensity
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExponentialIntensity(Real beta0, Real betaMin, Real gamma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - valueX
    - valueY
    - d
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionName: QuantLib::ExponentialIntensity::intensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - std::exp
    linkageType: ''
    returnType: Real
    signature: Real intensityImpl(Real valueX, Real valueY, Real d) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - beta0
    - betaMin
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: QuantLib::InverseLawSquareIntensity::InverseLawSquareIntensity
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverseLawSquareIntensity(Real beta0, Real betaMin)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - valueX
    - valueY
    - d
    argTypes:
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: QuantLib::InverseLawSquareIntensity::intensityImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real intensityImpl(Real valueX, Real valueY, Real d) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 176
    functionName: ~RandomWalk()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RandomWalk()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: walkImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: QuantLib::FireflyAlgorithm::RandomWalk::walk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - walkImpl
    linkageType: ''
    returnType: void
    signature: void walk()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 199
    functionName: QuantLib::FireflyAlgorithm::RandomWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm *fa)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:211,1
    - Dst: std::mt19937
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dist
    argTypes:
    - Distribution
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: QuantLib::DistributionRandomWalk::DistributionRandomWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - Array
    - QuantLib::detail::instance
    - std::move
    - std::mt19937
    linkageType: ''
    returnType: void
    signature: "void DistributionRandomWalk(Distribution dist, \n                                        Real
      delta = 0.9, \n                                        unsigned long seed =
      SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' xRW'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: QuantLib::DistributionRandomWalk::walkImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void walkImpl(Array& xRW) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FireflyAlgorithm::RandomWalk::init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:220,1
    - Dst: setDimension
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: QuantLib::DistributionRandomWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::FireflyAlgorithm::RandomWalk::init
    - setDimension
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm* fa) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:234,1
    - Dst: std::normal_distribution<QuantLib::Real>
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: QuantLib::GaussianWalk::GaussianWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::normal_distribution<QuantLib::Real>
    linkageType: ''
    returnType: void
    signature: "void GaussianWalk(Real sigma, \n                              Real
      delta = 0.9, \n                              unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:247,1
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - alpha
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: QuantLib::LevyFlightWalk::LevyFlightWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - LevyFlightDistribution
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void LevyFlightWalk(Real alpha, \n                                Real
      xm = 0.5, \n                                Real delta = 0.9,\n                                unsigned
      long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - sigma
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: QuantLib::DecreasingGaussianWalk::DecreasingGaussianWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void DecreasingGaussianWalk(\n            Real sigma,\n            Real
      delta = 0.9,\n            unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecreasingGaussianWalk::walkImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' xRW'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 272
    functionName: QuantLib::DecreasingGaussianWalk::walkImpl
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DecreasingGaussianWalk::walkImpl
    linkageType: ''
    returnType: void
    signature: void walkImpl(Array& xRW) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::DecreasingGaussianWalk::init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fa
    argTypes:
    - FireflyAlgorithm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionName: QuantLib::DecreasingGaussianWalk::init
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::DecreasingGaussianWalk::init
    linkageType: ''
    returnType: void
    signature: void init(FireflyAlgorithm* fa) override
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:42,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:49,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:51,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:60,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:60,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:62,1
    - Dst: Size::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:66,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:67,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:67,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:70,1
    - Dst: auto::layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:76,1
    - Dst: auto::layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:83,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:84,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:93,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: LaplaceOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:107,1
    - Dst: prod
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:116,1
    - Dst: SparseMatrix::begin1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:121,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:122,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:124,1
    - Dst: y_
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: QuantLib::LaplaceInterpolation::fullCoordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: SparseMatrix::end1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: auto::index1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: SparseMatrix::end1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: std::to_string
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: auto::index1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:131,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:133,1
    - Dst: dplus
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:135,1
    - Dst: dim
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:137,1
    - Dst: dminus
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:138,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:149,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:153,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:158,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:158,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:160,1
    - Dst: auto::begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:163,1
    - Dst: auto::end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:163,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:164,1
    - Dst: auto::index2
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:164,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:169,1
    - Dst: BiCGstab
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:177,1
    - Dst: f_A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:177,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 82
    argCount: 4
    argNames:
    - y
    - x
    - relTol
    - maxIterMultiplier
    argTypes:
    - std::function<Real(const std::vector<Size>&)>
    - std::vector<std::vector<Real>>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 178
    functionName: QuantLib::LaplaceInterpolation::LaplaceInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::to_string
    - ext::make_shared<Predefined1dMesher>
    - SparseMatrix::end1
    - std::vector::reserve
    - ext::make_shared<FdmMesherComposite>
    - Real
    - f_A
    - SparseMatrix::begin1
    - std::plus<>
    - ext::make_shared<FdmLinearOpLayout>
    - dminus
    - auto::begin
    - std::vector::push_back
    - QuantLib::LaplaceInterpolation::fullCoordinates
    - auto::index2
    - SecondDerivativeOp
    - prod
    - dplus
    - Size::size
    - dim
    - size
    - coordinates
    - LaplaceOp
    - g
    - y_
    - toMatrix
    - Null<Real>
    - auto::layout
    - push_back
    - QL_FAIL
    - index
    - std::vector::size
    - QL_REQUIRE
    - std::vector::begin
    - resize
    - std::move
    - std::vector::end
    - BiCGstab
    - auto::index1
    - std::accumulate
    - auto::end
    - std::vector::empty
    linkageType: ''
    returnType: void
    signature: "void LaplaceInterpolation::LaplaceInterpolation(std::function<Real(const
      std::vector<Size>&)> y,\n                                               std::vector<std::vector<Real>>
      x,\n                                               Real relTol,\n                                               Size
      maxIterMultiplier)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:76,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::LaplaceOp
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - push_back
    - layout
    linkageType: ''
    returnType: void
    signature: void LaplaceOp(const ext::shared_ptr<FdmMesher>& mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::size
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 164
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Size
    signature: Size size() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::setTime
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void setTime(Time t1, Time t2) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 8
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply(const array_type& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply_mixed(const Array& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply_direction(Size direction, const Array& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' r'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array solve_splitting(Size direction, const Array& r, Real s) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - s
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array preconditioner(const Array& r, Real s) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: QuantLib::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - toMatrix
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> toMatrixDecomp() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' g'
    argTypes:
    - SparseMatrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::f_A
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void f_A(const SparseMatrix& g)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::prod
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: operator()(const Array& x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::prod
    linkageType: ''
    returnType: Array
    signature: Array operator()(const Array& x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:183,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 188
    functionName: QuantLib::LaplaceInterpolation::projectedCoordinates
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LaplaceInterpolation::projectedCoordinates(const
      std::vector<Size>& coordinates) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:192,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:193,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' projectedCoordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionName: QuantLib::LaplaceInterpolation::fullCoordinates
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 1
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LaplaceInterpolation::fullCoordinates(const std::vector<Size>&
      projectedCoordinates) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:203,1
    - Dst: y_
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:205,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:206,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:208,1
    - Dst: projectedCoordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 212
    functionName: LaplaceInterpolation::operator()(const std::vector<Size>& coordinates)
      const
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - y_
    - Null<Real>
    - index
    - size
    - projectedCoordinates
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LaplaceInterpolation::operator()(const std::vector<Size>& coordinates)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:221,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:222,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:224,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:225,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:225,1
    - Dst: std::iota
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:229,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:230,1
    - Dst: std::iota
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:236,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:240,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:241,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:242,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:242,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:243,1
    - Dst: interpolation
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - ' A'
    - ' x'
    - ' y'
    - relTol
    - maxIterMultiplier
    argTypes:
    - Matrix
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 246
    functionName: QuantLib::laplaceInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::Null
    - resize
    - rows
    - begin
    - columns
    - interpolation
    - std::iota
    - A
    - end
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void laplaceInterpolation(Matrix& A,\n                              const
      std::vector<Real>& x,\n                              const std::vector<Real>&
      y,\n                              Real relTol,\n                              Size
      maxIterMultiplier)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:42,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:47,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:48,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:49,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:51,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:51,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:54,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:60,1
    - Dst: std::vector::empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:60,1
    - Dst: ext::make_shared<FdmLinearOpLayout>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:62,1
    - Dst: Size::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:66,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:67,1
    - Dst: ext::make_shared<Predefined1dMesher>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:67,1
    - Dst: ext::make_shared<FdmMesherComposite>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:70,1
    - Dst: auto::layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:76,1
    - Dst: auto::layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:83,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:84,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:85,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:86,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:88,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:91,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:93,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: LaplaceOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:103,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:107,1
    - Dst: prod
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:116,1
    - Dst: SparseMatrix::begin1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:119,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:121,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:122,1
    - Dst: coordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:124,1
    - Dst: y_
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: QuantLib::LaplaceInterpolation::fullCoordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: SparseMatrix::end1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: auto::index1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:127,1
    - Dst: SparseMatrix::end1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: std::to_string
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: auto::index1
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:129,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:131,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:133,1
    - Dst: dplus
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:135,1
    - Dst: dim
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:137,1
    - Dst: dminus
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:138,1
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::plus<>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:148,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:149,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:153,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:157,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:158,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:158,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:160,1
    - Dst: auto::begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:163,1
    - Dst: auto::end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:163,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:164,1
    - Dst: auto::index2
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:164,1
    - Dst: g
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:169,1
    - Dst: BiCGstab
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:177,1
    - Dst: f_A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:177,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 82
    argCount: 4
    argNames:
    - y
    - x
    - relTol
    - maxIterMultiplier
    argTypes:
    - std::function<Real(const std::vector<Size>&)>
    - std::vector<std::vector<Real>>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 178
    functionName: QuantLib::LaplaceInterpolation::LaplaceInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::to_string
    - ext::make_shared<Predefined1dMesher>
    - SparseMatrix::end1
    - std::vector::reserve
    - ext::make_shared<FdmMesherComposite>
    - Real
    - f_A
    - SparseMatrix::begin1
    - std::plus<>
    - ext::make_shared<FdmLinearOpLayout>
    - dminus
    - auto::begin
    - std::vector::push_back
    - QuantLib::LaplaceInterpolation::fullCoordinates
    - auto::index2
    - SecondDerivativeOp
    - prod
    - dplus
    - Size::size
    - dim
    - size
    - coordinates
    - LaplaceOp
    - g
    - y_
    - toMatrix
    - Null<Real>
    - auto::layout
    - push_back
    - QL_FAIL
    - index
    - std::vector::size
    - QL_REQUIRE
    - std::vector::begin
    - resize
    - std::move
    - std::vector::end
    - BiCGstab
    - auto::index1
    - std::accumulate
    - auto::end
    - std::vector::empty
    linkageType: ''
    returnType: void
    signature: "void LaplaceInterpolation::LaplaceInterpolation(std::function<Real(const
      std::vector<Size>&)> y,\n                                               std::vector<std::vector<Real>>
      x,\n                                               Real relTol,\n                                               Size
      maxIterMultiplier)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:76,1
    - Dst: layout
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:77,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    - Dst: SecondDerivativeOp
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' mesher'
    argTypes:
    - ext::shared_ptr<FdmMesher>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::LaplaceOp
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - SecondDerivativeOp
    - push_back
    - layout
    linkageType: ''
    returnType: void
    signature: void LaplaceOp(const ext::shared_ptr<FdmMesher>& mesher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: QuantLib::size
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 165
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Size
    signature: Size size() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t1
    - t2
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: QuantLib::setTime
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: void
    signature: void setTime(Time t1, Time t2) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - array_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::apply
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 8
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply(const array_type& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::apply_mixed
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply_mixed(const Array& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - direction
    - ' r'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: QuantLib::apply_direction
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array apply_direction(Size direction, const Array& r) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - direction
    - ' r'
    - s
    argTypes:
    - Size
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: QuantLib::solve_splitting
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array solve_splitting(Size direction, const Array& r, Real s) const
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - s
    argTypes:
    - Array
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::preconditioner
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: Array
    signature: Array preconditioner(const Array& r, Real s) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:96,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    - Dst: toMatrix
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: QuantLib::toMatrixDecomp
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - QuantLib::size
    - toMatrix
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<SparseMatrix>
    signature: std::vector<SparseMatrix> toMatrixDecomp() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' g'
    argTypes:
    - SparseMatrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::f_A
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void f_A(const SparseMatrix& g)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prod
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' x'
    argTypes:
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: operator()(const Array& x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - prod
    linkageType: ''
    returnType: Array
    signature: Array operator()(const Array& x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:183,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 188
    functionName: QuantLib::LaplaceInterpolation::projectedCoordinates
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LaplaceInterpolation::projectedCoordinates(const
      std::vector<Size>& coordinates) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:192,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:193,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' projectedCoordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionName: QuantLib::LaplaceInterpolation::fullCoordinates
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 2
    functionsReached:
    - size
    linkageType: ''
    returnType: std::vector<Size>
    signature: std::vector<Size> LaplaceInterpolation::fullCoordinates(const std::vector<Size>&
      projectedCoordinates) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:201,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:203,1
    - Dst: y_
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:205,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:206,1
    - Dst: index
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:208,1
    - Dst: projectedCoordinates
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' coordinates'
    argTypes:
    - std::vector<Size>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 212
    functionName: LaplaceInterpolation::operator()(const std::vector<Size>& coordinates)
      const
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - y_
    - Null<Real>
    - index
    - size
    - projectedCoordinates
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real LaplaceInterpolation::operator()(const std::vector<Size>& coordinates)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:221,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:222,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:224,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:225,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:225,1
    - Dst: std::iota
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:226,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:229,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:230,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:230,1
    - Dst: std::iota
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:231,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:236,1
    - Dst: rows
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:240,1
    - Dst: columns
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:241,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:242,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:242,1
    - Dst: A
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:243,1
    - Dst: interpolation
      Src: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - ' A'
    - ' x'
    - ' y'
    - relTol
    - maxIterMultiplier
    argTypes:
    - Matrix
    - std::vector<Real>
    - std::vector<Real>
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 246
    functionName: QuantLib::laplaceInterpolation
    functionSourceFile: /src/quantlib/ql/experimental/math/laplaceinterpolation.cpp
    functionUses: 0
    functionsReached:
    - empty
    - QuantLib::Null
    - resize
    - rows
    - begin
    - columns
    - interpolation
    - std::iota
    - A
    - end
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: "void laplaceInterpolation(Matrix& A,\n                              const
      std::vector<Real>& x,\n                              const std::vector<Real>&
      y,\n                              Real relTol,\n                              Size
      maxIterMultiplier)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - X
    - ','
    - Y
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: QL_PIECEWISE_FUNCTION
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewisefunction.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QL_PIECEWISE_FUNCTION(X, Y, x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::GaussianQuadMultidimIntegrator::VectorIntegrator::VectorIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VectorIntegrator(Size n, Real mu = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: order
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:60,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:61,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:67,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: operator()(const F& f) const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - std::transform
    - std::vector::begin
    - std::vector::end
    - f
    - order
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::order
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::GaussianQuadMultidimIntegrator::order
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::order
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integrate<RetType_T>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<RetType_T (\n            const std::vector<Real>& arg)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionName: "operator()(const std::function<RetType_T (\n            const std::vector<Real>&
      arg)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - integrate<RetType_T>
    linkageType: ''
    returnType: RetType_T
    signature: "RetType_T operator()(const std::function<RetType_T (\n            const
      std::vector<Real>& arg)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:132,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:136,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 139
    functionName: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    - QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    - QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    linkageType: ''
    returnType: void
    signature: void spawnFcts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:150,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<Real (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real scalarIntegrator(\n            const std::function<Real (const
      std::vector<Real>& arg1)>& f,\n            const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integralV_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:159,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<std::vector<Real>(const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionName: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    - integralV_
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> vectorIntegratorVR(\n            const std::function<std::vector<Real>(const
      std::vector<Real>& arg1)>& f,\n            const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:193,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 194
    functionName: "GaussianQuadMultidimIntegrator::operator()(\n        const std::function<Real
      (const std::vector<Real>& v1)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::operator()(\n        const std::function<Real
      (const std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:205,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: "GaussianQuadMultidimIntegrator::integrate<Real>(\n        const
      std::function<Real (const std::vector<Real>& v1)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::integrate<Real>(\n        const
      std::function<Real (const std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integralV_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:213,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<std::vector<Real> (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: "GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& v1)>&
      f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integralV_
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& v1)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<Real (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: "GaussianQuadMultidimIntegrator::scalarIntegrator<1>(\n        const
      std::function<Real (const std::vector<Real>& arg1)>& f,\n        const Real
      mFctr) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::scalarIntegrator<1>(\n        const
      std::function<Real (const std::vector<Real>& arg1)>& f,\n        const Real
      mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<std::vector<Real> (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: "GaussianQuadMultidimIntegrator::vectorIntegratorVR<1>(\n        const
      std::function<std::vector<Real> (const std::vector<Real>& arg1)>& f,\n        const
      Real mFctr) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> GaussianQuadMultidimIntegrator::vectorIntegratorVR<1>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& arg1)>&
      f,\n        const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scalarIntegrator<1>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:241,1
    - Dst: vectorIntegratorVR<1>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionName: GaussianQuadMultidimIntegrator::spawnFcts<1>() const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - scalarIntegrator<1>
    - vectorIntegratorVR<1>
    linkageType: ''
    returnType: void
    signature: void GaussianQuadMultidimIntegrator::spawnFcts<1>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: QuantLib::GaussianQuadMultidimIntegrator::VectorIntegrator::VectorIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void VectorIntegrator(Size n, Real mu = 0.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: order
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:60,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:61,1
    - Dst: std::for_each
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:62,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:67,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::end
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:69,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: operator()(const F& f) const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::for_each
    - std::transform
    - std::vector::begin
    - std::vector::end
    - f
    - order
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(const F& f) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::order
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: QuantLib::GaussianQuadMultidimIntegrator::order
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::order
    linkageType: ''
    returnType: Size
    signature: Size order() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integrate<RetType_T>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<RetType_T (\n            const std::vector<Real>& arg)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionName: "operator()(const std::function<RetType_T (\n            const std::vector<Real>&
      arg)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - integrate<RetType_T>
    linkageType: ''
    returnType: RetType_T
    signature: "RetType_T operator()(const std::function<RetType_T (\n            const
      std::vector<Real>& arg)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:132,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:136,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 139
    functionName: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    - QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    - QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    linkageType: ''
    returnType: void
    signature: void spawnFcts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:150,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<Real (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::scalarIntegrator
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real scalarIntegrator(\n            const std::function<Real (const
      std::vector<Real>& arg1)>& f,\n            const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integralV_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:159,1
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<std::vector<Real>(const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionName: QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::vectorIntegratorVR
    - integralV_
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> vectorIntegratorVR(\n            const std::function<std::vector<Real>(const
      std::vector<Real>& arg1)>& f,\n            const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:193,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 194
    functionName: "GaussianQuadMultidimIntegrator::operator()(\n        const std::function<Real
      (const std::vector<Real>& v1)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::operator()(\n        const std::function<Real
      (const std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integral_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:205,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: "GaussianQuadMultidimIntegrator::integrate<Real>(\n        const
      std::function<Real (const std::vector<Real>& v1)>& f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integral_
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::integrate<Real>(\n        const
      std::function<Real (const std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integralV_
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:213,1
    - Dst: std::cref
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<std::vector<Real> (const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: "GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& v1)>&
      f) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - std::cref
    - integralV_
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& v1)>&
      f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<Real (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionName: "GaussianQuadMultidimIntegrator::scalarIntegrator<1>(\n        const
      std::function<Real (const std::vector<Real>& arg1)>& f,\n        const Real
      mFctr) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real GaussianQuadMultidimIntegrator::scalarIntegrator<1>(\n        const
      std::function<Real (const std::vector<Real>& arg1)>& f,\n        const Real
      mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' f'
    - mFctr
    argTypes:
    - std::function<std::vector<Real> (const std::vector<Real>& arg1)>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: "GaussianQuadMultidimIntegrator::vectorIntegratorVR<1>(\n        const
      std::function<std::vector<Real> (const std::vector<Real>& arg1)>& f,\n        const
      Real mFctr) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> GaussianQuadMultidimIntegrator::vectorIntegratorVR<1>(\n
      \       const std::function<std::vector<Real> (const std::vector<Real>& arg1)>&
      f,\n        const Real mFctr) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scalarIntegrator<1>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:241,1
    - Dst: vectorIntegratorVR<1>
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.hpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionName: GaussianQuadMultidimIntegrator::spawnFcts<1>() const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.hpp
    functionUses: 0
    functionsReached:
    - scalarIntegrator<1>
    - vectorIntegratorVR<1>
    linkageType: ''
    returnType: void
    signature: void GaussianQuadMultidimIntegrator::spawnFcts<1>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::TCopulaPolicy::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits::tOrders::resize
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:75,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:76,1
    - Dst: degrees_of_freedom
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: QuantLib::TCopulaPolicy::getInitTraits
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - static_cast<Integer>
    - degrees_of_freedom
    - initTraits::tOrders::resize
    linkageType: ''
    returnType: initTraits
    signature: initTraits getInitTraits() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: '& varianceFactors() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & varianceFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::TCopulaPolicy::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::TCopulaPolicy::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:110,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 115
    functionName: QuantLib::TCopulaPolicy::density
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::BSMRNDCalculator::pdf
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:132,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:132,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - back
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:140,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 145
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:67,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: QuantLib::TCopulaPolicy::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits::tOrders::resize
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:74,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:75,1
    - Dst: static_cast<Integer>
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:76,1
    - Dst: degrees_of_freedom
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: QuantLib::TCopulaPolicy::getInitTraits
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - static_cast<Integer>
    - degrees_of_freedom
    - initTraits::tOrders::resize
    linkageType: ''
    returnType: initTraits
    signature: initTraits getInitTraits() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: '& varianceFactors() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & varianceFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:89,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: QuantLib::TCopulaPolicy::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::cdf
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:96,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: QuantLib::TCopulaPolicy::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - back
    - QuantLib::BSMRNDCalculator::cdf
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:110,1
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 115
    functionName: QuantLib::TCopulaPolicy::density
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::BSMRNDCalculator::pdf
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:122,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:132,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:132,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::quantile
    - back
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:140,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:140,1
    - Dst: QuantLib::quantile
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 145
    functionName: QuantLib::TCopulaPolicy::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::quantile
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:41,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:42,1
    - Dst: QuantLib::CumulativeBehrensFisher::polynCharactT
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:47,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:48,1
    - Dst: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:54,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:56,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:57,1
    - Dst: pop_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:59,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:67,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:67,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:68,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - ' degreesFreedom'
    - ' factors'
    argTypes:
    - std::vector<Integer>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 70
    functionName: QuantLib::CumulativeBehrensFisher::CumulativeBehrensFisher
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - rend
    - std::vector<Real>
    - push_back
    - static_cast<Real>
    - rbegin
    - QuantLib::CumulativeBehrensFisher::polynCharactT
    - std::sqrt
    - pop_back
    - size
    - QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeBehrensFisher::CumulativeBehrensFisher(const std::vector<Integer>&
      degreesFreedom,\n                                                     const
      std::vector<Real>& factors)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:81,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:82,1
    - Dst: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - n
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 92
    functionName: QuantLib::CumulativeBehrensFisher::polynCharactT
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 1
    functionsReached:
    - static_cast<Real>
    - push_back
    - std::sqrt
    - QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> CumulativeBehrensFisher::polynCharactT(Natural n)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:105,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:107,1
    - Dst: std::max<Integer>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:108,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 113
    functionName: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 2
    functionsReached:
    - empty
    - std::min
    - std::max<Integer>
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> CumulativeBehrensFisher::convolveVectorPolynomials(\n
      \       const std::vector<Real>& v1,\n        const std::vector<Real>& v2) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:119,1
    - Dst: std::atan2
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:124,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:126,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:126,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:127,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: CumulativeBehrensFisher::operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::Factorial::get
    - std::atan2
    - std::sin
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - size
    linkageType: ''
    returnType: Probability
    signature: Probability CumulativeBehrensFisher::operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:136,1
    - Dst: std::atan2
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:138,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:140,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:140,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:141,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: QuantLib::CumulativeBehrensFisher::density
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::atan2
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - size
    - std::cos
    linkageType: ''
    returnType: Probability
    signature: Probability CumulativeBehrensFisher::density(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:153,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' degreesFreedom'
    - ' factors'
    - accuracy
    argTypes:
    - std::vector<Integer>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::InverseCumulativeBehrensFisher::InverseCumulativeBehrensFisher
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeBehrensFisher::InverseCumulativeBehrensFisher(\n
      \       const std::vector<Integer>& degreesFreedom,\n        const std::vector<Real>&
      factors,\n        Real accuracy)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:170,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:175,1
    - Dst: distrib_
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - q
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 177
    functionName: InverseCumulativeBehrensFisher::operator()(const Probability q)
      const
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - distrib_
    - QuantLib::InverseCumulativeNormal::standard_value
    - Brent
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeBehrensFisher::operator()(const Probability q)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:32,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:38,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:39,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:41,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:42,1
    - Dst: QuantLib::CumulativeBehrensFisher::polynCharactT
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:42,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:45,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:47,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:48,1
    - Dst: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:54,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:56,1
    - Dst: rend
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:57,1
    - Dst: pop_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:59,1
    - Dst: rbegin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:60,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:66,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:67,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:67,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:68,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - ' degreesFreedom'
    - ' factors'
    argTypes:
    - std::vector<Integer>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 70
    functionName: QuantLib::CumulativeBehrensFisher::CumulativeBehrensFisher
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - rend
    - std::vector<Real>
    - push_back
    - static_cast<Real>
    - rbegin
    - QuantLib::CumulativeBehrensFisher::polynCharactT
    - std::sqrt
    - pop_back
    - size
    - QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void CumulativeBehrensFisher::CumulativeBehrensFisher(const std::vector<Integer>&
      degreesFreedom,\n                                                     const
      std::vector<Real>& factors)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:75,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:81,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:82,1
    - Dst: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - n
    argTypes:
    - Natural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 92
    functionName: QuantLib::CumulativeBehrensFisher::polynCharactT
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 2
    functionsReached:
    - static_cast<Real>
    - push_back
    - std::sqrt
    - QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    - size
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> CumulativeBehrensFisher::polynCharactT(Natural n)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:98,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:102,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:105,1
    - Dst: std::vector::size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:107,1
    - Dst: std::max<Integer>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:108,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:108,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:109,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ' v1'
    - ' v2'
    argTypes:
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 113
    functionName: QuantLib::CumulativeBehrensFisher::convolveVectorPolynomials
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 4
    functionsReached:
    - empty
    - std::min
    - std::max<Integer>
    - size
    - std::vector::size
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> CumulativeBehrensFisher::convolveVectorPolynomials(\n
      \       const std::vector<Real>& v1,\n        const std::vector<Real>& v2) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::atan
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:117,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:119,1
    - Dst: std::atan2
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:120,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:121,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:124,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:126,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:126,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:127,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: CumulativeBehrensFisher::operator()(const Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - std::atan
    - QuantLib::Factorial::get
    - std::atan2
    - std::sin
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - size
    linkageType: ''
    returnType: Probability
    signature: Probability CumulativeBehrensFisher::operator()(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:136,1
    - Dst: std::atan2
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:137,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:138,1
    - Dst: QuantLib::Factorial::get
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:140,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:140,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:141,1
    - Dst: static_cast<Real>
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: QuantLib::CumulativeBehrensFisher::density
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Factorial::get
    - std::atan2
    - static_cast<Real>
    - std::pow
    - std::sqrt
    - size
    - std::cos
    linkageType: ''
    returnType: Probability
    signature: Probability CumulativeBehrensFisher::density(const Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:152,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:153,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' degreesFreedom'
    - ' factors'
    - accuracy
    argTypes:
    - std::vector<Integer>
    - std::vector<Real>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionName: QuantLib::InverseCumulativeBehrensFisher::InverseCumulativeBehrensFisher
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: void
    signature: "void InverseCumulativeBehrensFisher::InverseCumulativeBehrensFisher(\n
      \       const std::vector<Integer>& degreesFreedom,\n        const std::vector<Real>&
      factors,\n        Real accuracy)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:170,1
    - Dst: Brent
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:175,1
    - Dst: distrib_
      Src: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - q
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 177
    functionName: InverseCumulativeBehrensFisher::operator()(const Probability q)
      const
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.cpp
    functionUses: 0
    functionsReached:
    - distrib_
    - QuantLib::InverseCumulativeNormal::standard_value
    - Brent
    linkageType: ''
    returnType: Real
    signature: Real InverseCumulativeBehrensFisher::operator()(const Probability q)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:29,1
    - Dst: QuantLib::MultidimIntegral::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' integrators'
    argTypes:
    - std::vector<ext::shared_ptr<Integrator> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 32
    functionName: QuantLib::MultidimIntegral::MultidimIntegral
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::MultidimIntegral::spawnFcts
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultidimIntegral::MultidimIntegral(\n            const std::vector<ext::shared_ptr<Integrator>
      >& integrators)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:28,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:29,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:29,1
    - Dst: QuantLib::MultidimIntegral::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' integrators'
    argTypes:
    - std::vector<ext::shared_ptr<Integrator> >
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 32
    functionName: QuantLib::MultidimIntegral::MultidimIntegral
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::MultidimIntegral::spawnFcts
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void MultidimIntegral::MultidimIntegral(\n            const std::vector<ext::shared_ptr<Integrator>
      >& integrators)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& degreeFreedom() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Integer>
    signature: std::vector<Integer> & degreeFreedom() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: '& factors() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: '& degreeFreedom() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Integer>
    signature: std::vector<Integer> & degreeFreedom() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: '& factors() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/convolvedstudentt.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionName: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::FarlieGumbelMorgensternCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FarlieGumbelMorgensternCopulaRng<RNG>::FarlieGumbelMorgensternCopulaRng(\n
      \                                                      const RNG& ug, Real th)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:59,1
    - Dst: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:60,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:63,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:64,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:66,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:67,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp
    functionUses: 1
    functionsReached:
    - sample_type
    - QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
    - pow
    - std::vector::push_back
    - sqrt
    linkageType: ''
    returnType: typename FarlieGumbelMorgensternCopulaRng<RNG>::sample_type
    signature: typename FarlieGumbelMorgensternCopulaRng<RNG>::sample_type FarlieGumbelMorgensternCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionName: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::FarlieGumbelMorgensternCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FarlieGumbelMorgensternCopulaRng<RNG>::FarlieGumbelMorgensternCopulaRng(\n
      \                                                      const RNG& ug, Real th)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:59,1
    - Dst: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:60,1
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:63,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:64,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:66,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:67,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/farliegumbelmorgensterncopularng.hpp
    functionUses: 2
    functionsReached:
    - sample_type
    - QuantLib::FarlieGumbelMorgensternCopulaRng<RNG>::next
    - pow
    - std::vector::push_back
    - sqrt
    linkageType: ''
    returnType: typename FarlieGumbelMorgensternCopulaRng<RNG>::sample_type
    signature: typename FarlieGumbelMorgensternCopulaRng<RNG>::sample_type FarlieGumbelMorgensternCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZigguratRng::nextGaussian
      Src: /src/quantlib/ql/experimental/math/zigguratrng.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::ZigguratRng::next
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZigguratRng::nextGaussian
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/experimental/math/zigguratrng.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.hpp
    functionUses: 35
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ZigguratRng::nextGaussian
      Src: /src/quantlib/ql/experimental/math/zigguratrng.hpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: QuantLib::ZigguratRng::next
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::ZigguratRng::nextGaussian
    linkageType: ''
    returnType: sample_type
    signature: sample_type next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rsg_type
      Src: /src/quantlib/ql/experimental/math/zigguratrng.hpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dimension
    - seed
    argTypes:
    - Size
    - BigNatural
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: QuantLib::make_sequence_generator
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.hpp
    functionUses: 35
    functionsReached:
    - rsg_type
    linkageType: ''
    returnType: rsg_type
    signature: "rsg_type make_sequence_generator(Size dimension,\n                                                BigNatural
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::LevyFlightDistribution::param_type::param_type
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void param_type(Real xm = 1.0, Real alpha = 1.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::LevyFlightDistribution::param_type::xm
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::LevyFlightDistribution::param_type::alpha
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::LevyFlightDistribution::LevyFlightDistribution
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LevyFlightDistribution(Real xm = 1.0, Real alpha = 1.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevyFlightDistribution::xm
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:82,1
    - Dst: QuantLib::LevyFlightDistribution::alpha
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' parm'
    argTypes:
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::LevyFlightDistribution::LevyFlightDistribution
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LevyFlightDistribution::alpha
    - QuantLib::LevyFlightDistribution::xm
    linkageType: ''
    returnType: void
    signature: void LevyFlightDistribution(const param_type& parm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::LevyFlightDistribution::xm
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::LevyFlightDistribution::alpha
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 97
    functionName: QuantLib::LevyFlightDistribution::BOOST_PREVENT_MACRO_SUBSTITUTION
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BOOST_PREVENT_MACRO_SUBSTITUTION () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: QuantLib::LevyFlightDistribution::BOOST_PREVENT_MACRO_SUBSTITUTION
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BOOST_PREVENT_MACRO_SUBSTITUTION () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::LevyFlightDistribution::param
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: param_type
    signature: param_type param() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevyFlightDistribution::xm
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:108,1
    - Dst: QuantLib::LevyFlightDistribution::alpha
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' parm'
    argTypes:
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::LevyFlightDistribution::param
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LevyFlightDistribution::alpha
    - QuantLib::LevyFlightDistribution::xm
    linkageType: ''
    returnType: void
    signature: void param(const param_type& parm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::LevyFlightDistribution::reset
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:130,1
    - Dst: std::uniform_real_distribution<Real>
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' eng'
    argTypes:
    - Engine
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: operator()(Engine& eng) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - pow
    - std::uniform_real_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real operator()(Engine& eng) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' eng'
    - ' parm'
    argTypes:
    - Engine
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: operator()(Engine& eng, const param_type& parm) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - LevyFlightDistribution
    linkageType: ''
    returnType: Real
    signature: Real operator()(Engine& eng, const param_type& parm) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: QuantLib::LevyFlightDistribution::param_type::param_type
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void param_type(Real xm = 1.0, Real alpha = 1.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::LevyFlightDistribution::param_type::xm
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: QuantLib::LevyFlightDistribution::param_type::alpha
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: QuantLib::LevyFlightDistribution::LevyFlightDistribution
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void LevyFlightDistribution(Real xm = 1.0, Real alpha = 1.0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevyFlightDistribution::xm
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:82,1
    - Dst: QuantLib::LevyFlightDistribution::alpha
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' parm'
    argTypes:
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: QuantLib::LevyFlightDistribution::LevyFlightDistribution
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LevyFlightDistribution::alpha
    - QuantLib::LevyFlightDistribution::xm
    linkageType: ''
    returnType: void
    signature: void LevyFlightDistribution(const param_type& parm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: QuantLib::LevyFlightDistribution::xm
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real xm() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::LevyFlightDistribution::alpha
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real alpha() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 97
    functionName: QuantLib::LevyFlightDistribution::BOOST_PREVENT_MACRO_SUBSTITUTION
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BOOST_PREVENT_MACRO_SUBSTITUTION () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: QuantLib::LevyFlightDistribution::BOOST_PREVENT_MACRO_SUBSTITUTION
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real BOOST_PREVENT_MACRO_SUBSTITUTION () const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 103
    functionName: QuantLib::LevyFlightDistribution::param
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: param_type
    signature: param_type param() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LevyFlightDistribution::xm
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:108,1
    - Dst: QuantLib::LevyFlightDistribution::alpha
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' parm'
    argTypes:
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: QuantLib::LevyFlightDistribution::param
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::LevyFlightDistribution::alpha
    - QuantLib::LevyFlightDistribution::xm
    linkageType: ''
    returnType: void
    signature: void param(const param_type& parm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 115
    functionName: QuantLib::LevyFlightDistribution::reset
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reset()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionName: operator()(Real x) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: Real
    signature: Real operator()(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:130,1
    - Dst: std::uniform_real_distribution<Real>
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' eng'
    argTypes:
    - Engine
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: operator()(Engine& eng) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - pow
    - std::uniform_real_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real operator()(Engine& eng) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' eng'
    - ' parm'
    argTypes:
    - Engine
    - param_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: operator()(Engine& eng, const param_type& parm) const
    functionSourceFile: /src/quantlib/ql/experimental/math/levyflightdistribution.hpp
    functionUses: 0
    functionsReached:
    - LevyFlightDistribution
    linkageType: ''
    returnType: Real
    signature: Real operator()(Engine& eng, const param_type& parm) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - d
    - v
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: operator()(Real d, std::vector<Real> v)
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector<Real>::begin
    - std::vector<Real>::end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real d, std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - d
    - v
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: operator()(Real d, std::vector<Real> v)
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector<Real>::begin
    - std::vector<Real>::end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real d, std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<std::vector<Real>  (\n            const std::vector<Real>& arg)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::LMIntegration::integrateV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integrateV(\n            const std::function<std::vector<Real>
      \ (\n            const std::vector<Real>& arg)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: ~LMIntegration()
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LMIntegration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::IntegrationBase::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationBase()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dimension
    - order
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationBase(Size dimension, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussianQuadMultidimIntegrator::integrate<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - GaussianQuadMultidimIntegrator::integrate<Real>
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(const std::vector<Real>& arg)>&
      f) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<std::vector<Real>(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::integrateV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integrateV(\n            const std::function<std::vector<Real>(const
      std::vector<Real>& arg)>& f)\n            const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: ~IntegrationBase() override
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IntegrationBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' integrators'
    - a
    - b
    argTypes:
    - std::vector<ext::shared_ptr<Integrator> >
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::IntegrationBase<MultidimIntegral>::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void IntegrationBase(\n            const std::vector<ext::shared_ptr<Integrator>
      >& integrators, \n            Real a, Real b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MultidimIntegral::operator()
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::IntegrationBase<MultidimIntegral>::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - MultidimIntegral::operator()
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(const std::vector<Real>& arg)>&
      f) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: ~IntegrationBase() override
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IntegrationBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::cumulativeY
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: QuantLib::LatentModel::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::cumulativeY
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::cumulativeZ
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionName: QuantLib::LatentModel::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::cumulativeZ
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:299,1
    - Dst: QuantLib::LatentModel::size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:299,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 303
    functionName: QuantLib::LatentModel::density
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::size
    - QuantLib::LatentModel::density
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeDensity
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionName: QuantLib::LatentModel::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeDensity
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeY
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionName: QuantLib::LatentModel::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeY
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeZ
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::LatentModel::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeZ
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::allFactorCumulInverter
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::LatentModel::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::LatentModel::allFactorCumulInverter
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> allFactorCumulInverter(const std::vector<Real>& probs)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:340,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:340,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:342,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:342,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:344,1
    - Dst: QuantLib::LatentModel::numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' allFactors'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 345
    functionName: QuantLib::LatentModel::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::LatentModel::numFactors
    - end
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& allFactors, \n                            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 350
    functionName: '& copula() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: copulaType
    signature: copulaType & copula() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:412,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:413,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - copulaType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 414
    functionName: QuantLib::LatentModel::FactorSampler::FactorSampler
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void FactorSampler(const copulaType& copula, \n                BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:427,1
    - Dst: QuantLib::allFactorCumulInverter
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 430
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::allFactorCumulInverter
    - nextSequence
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: "ext::make_shared<\n                            IntegrationBase<GaussianQuadMultidimIntegrator>
        >"
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:461,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:468,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:470,1
    - Dst: ext::make_shared<TrapezoidIntegral<Default> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:471,1
    - Dst: ext::make_shared<IntegrationBase<MultidimIntegral> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:484,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 490
    functionName: QuantLib::LatentModel::IntegrationFactory::createLMIntegration
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - ext::make_shared<IntegrationBase<MultidimIntegral> >
    - QL_FAIL
    - ext::make_shared<TrapezoidIntegral<Default> >
    - "ext::make_shared<\n                            IntegrationBase<GaussianQuadMultidimIntegrator>
      >"
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: "ext::shared_ptr<LMIntegration> createLMIntegration(\n                Size
      dimension, \n                LatentModelIntegrationType::LatentModelIntegrationType
      type = \n                    #ifndef QL_PATCH_SOLARIS\n                    LatentModelIntegrationType::GaussianQuadrature)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 492
    functionName: QuantLib::LatentModel::IntegrationFactory::IntegrationFactory
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 499
    functionName: QuantLib::LatentModel::size
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 501
    functionName: QuantLib::LatentModel::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 503
    functionName: QuantLib::LatentModel::numTotalFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numTotalFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 563
    functionName: '& factorWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: std::vector<std::vector<Real> > & factorWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 565
    functionName: '& idiosyncFctrs() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & idiosyncFctrs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:571,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:572,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:572,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:573,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - iVar1
    - iVar2
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 575
    functionName: QuantLib::LatentModel::latentVariableCorrel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Real
    signature: Real latentVariableCorrel(Size iVar1, Size iVar2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:585,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:586,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 581
    functionDepth: 2
    functionLinenumber: 581
    functionLinenumberEnd: 587
    functionName: QuantLib::LatentModel::integratedExpectedValue
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - integration
    - QuantLib::LatentModel::density
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integratedExpectedValue(\n            const std::function<Real(const
      std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:596,1
    - Dst: M
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<std::vector<Real>(\n                const std::vector<Real>&
      v1)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 598
    functionName: QuantLib::LatentModel::integratedExpectedValueV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - integration
    - M
    - QuantLib::LatentModel::density
    - f
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integratedExpectedValueV(\n            // const
      std::function<std::vector<Real>(\n            const std::function<std::vector<Real>(\n
      \               const std::vector<Real>& v1)>& f ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 605
    functionName: '& integration() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:649,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:650,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:652,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:653,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:653,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:654,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:655,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:656,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:656,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' ini'
    argTypes:
    - std::vector<std::vector<Real> >
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 661
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - push_back
    - Real
    - std::sqrt
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const std::vector<std::vector<Real>
      >& factorWeights,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:668,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:671,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:673,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:673,1
    - Dst: copulaType
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' ini'
    argTypes:
    - std::vector<Real>
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 676
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - push_back
    - copulaType
    - emplace_back
    - std::sqrt
    - size
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const std::vector<Real>&
      factorWeights,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:683,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - correlSqr
    - nVariables
    - ' ini'
    argTypes:
    - Real
    - Size
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 689
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const Real correlSqr,\n
      \       Size nVariables,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:696,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:697,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:697,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:700,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:700,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' singleFactorCorrel'
    - nVariables
    - ' ini'
    argTypes:
    - Handle<Quote>
    - Size
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 706
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::vector<Real>
    - std::sqrt
    - value
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const Handle<Quote>&
      singleFactorCorrel,\n        Size nVariables,\n        const typename Impl::initTraits&
      ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<Real> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:717,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:719,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:720,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:720,1
    - Dst: copulaType
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:721,1
    - Dst: getInitTraits
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:721,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 723
    functionName: QuantLib::LatentModel<Impl>::update
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - getInitTraits
    - notifyObservers
    - value
    - std::vector<Real>
    - copulaType
    - std::sqrt
    - std::vector<std::vector<Real> >
    linkageType: ''
    returnType: void
    signature: void LatentModel<Impl>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:752,1
    - Dst: BoxMullerGaussianRng<urng_type>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:753,1
    - Dst: urng_type
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - GaussianCopulaPolicy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: "QuantLib::LatentModel<TC>\n        ::FactorSampler <RandomSequenceGenerator<BoxMullerGaussianRng<URNG>
      > ,\n            dummy>::FactorSampler"
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - urng_type
    - BoxMullerGaussianRng<urng_type>
    linkageType: ''
    returnType: void
    signature: "void FactorSampler(const GaussianCopulaPolicy& copula,\n                               BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 756
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:776,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:776,1
    - Dst: varianceFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:779,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:781,1
    - Dst: PolarStudentTRng<urng_type>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - TCopulaPolicy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 782
    functionName: "QuantLib::LatentModel<TC>\n        ::FactorSampler<RandomSequenceGenerator<PolarStudentTRng<URNG>
      > , \n            dummy>::FactorSampler"
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - push_back
    - PolarStudentTRng<urng_type>
    - varianceFactors
    - numFactors
    linkageType: ''
    returnType: void
    signature: void FactorSampler(const TCopulaPolicy& copula, BigNatural seed = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:785,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:786,1
    - Dst: value::size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:787,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:788,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 783
    functionDepth: 2
    functionLinenumber: 783
    functionLinenumberEnd: 790
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - next
    - QuantLib::size
    - value::size
    - back
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - d
    - v
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: operator()(Real d, std::vector<Real> v)
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector<Real>::begin
    - std::vector<Real>::end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real d, std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    - Dst: std::vector<Real>::begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - d
    - v
    argTypes:
    - Real
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: operator()(Real d, std::vector<Real> v)
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector<Real>::begin
    - std::vector<Real>::end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> operator()(Real d, std::vector<Real> v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<std::vector<Real>  (\n            const std::vector<Real>& arg)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: QuantLib::LMIntegration::integrateV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integrateV(\n            const std::function<std::vector<Real>
      \ (\n            const std::vector<Real>& arg)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: ~LMIntegration()
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LMIntegration()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: QuantLib::IntegrationBase::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationBase()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dimension
    - order
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationBase(Size dimension, Size order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussianQuadMultidimIntegrator::integrate<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - GaussianQuadMultidimIntegrator::integrate<Real>
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(const std::vector<Real>& arg)>&
      f) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<std::vector<Real>(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: QuantLib::IntegrationBase<GaussianQuadMultidimIntegrator>::integrateV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - GaussianQuadMultidimIntegrator::integrate<std::vector<Real>>
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integrateV(\n            const std::function<std::vector<Real>(const
      std::vector<Real>& arg)>& f)\n            const override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 127
    functionName: ~IntegrationBase() override
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IntegrationBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:139,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' integrators'
    - a
    - b
    argTypes:
    - std::vector<ext::shared_ptr<Integrator> >
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: QuantLib::IntegrationBase<MultidimIntegral>::IntegrationBase
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: void
    signature: "void IntegrationBase(\n            const std::vector<ext::shared_ptr<Integrator>
      >& integrators, \n            Real a, Real b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MultidimIntegral::operator()
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& arg)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: QuantLib::IntegrationBase<MultidimIntegral>::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - MultidimIntegral::operator()
    linkageType: ''
    returnType: Real
    signature: Real integrate(const std::function<Real(const std::vector<Real>& arg)>&
      f) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: ~IntegrationBase() override
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IntegrationBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::cumulativeY
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: QuantLib::LatentModel::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::cumulativeY
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::cumulativeZ
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionName: QuantLib::LatentModel::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::cumulativeZ
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:299,1
    - Dst: QuantLib::LatentModel::size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:299,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 303
    functionName: QuantLib::LatentModel::density
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::LatentModel::size
    - QuantLib::LatentModel::density
    - QL_REQUIRE
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeDensity
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionName: QuantLib::LatentModel::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeDensity
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeY
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionName: QuantLib::LatentModel::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeY
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::inverseCumulativeZ
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: QuantLib::LatentModel::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::inverseCumulativeZ
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::LatentModel::allFactorCumulInverter
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: QuantLib::LatentModel::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::LatentModel::allFactorCumulInverter
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> allFactorCumulInverter(const std::vector<Real>& probs)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:340,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:340,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:342,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:342,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:344,1
    - Dst: QuantLib::LatentModel::numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' allFactors'
    - iVar
    argTypes:
    - std::vector<Real>
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 345
    functionName: QuantLib::LatentModel::latentVarValue
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - QuantLib::LatentModel::numFactors
    - end
    linkageType: ''
    returnType: Real
    signature: "Real latentVarValue(const std::vector<Real>& allFactors, \n                            Size
      iVar) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 350
    functionName: '& copula() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: copulaType
    signature: copulaType & copula() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:412,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:413,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - copulaType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 414
    functionName: QuantLib::LatentModel::FactorSampler::FactorSampler
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - std::vector<Real>
    linkageType: ''
    returnType: void
    signature: "void FactorSampler(const copulaType& copula, \n                BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:427,1
    - Dst: allFactorCumulInverter
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 430
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    - allFactorCumulInverter
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: "ext::make_shared<\n                            IntegrationBase<GaussianQuadMultidimIntegrator>
        >"
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:461,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:468,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:470,1
    - Dst: ext::make_shared<TrapezoidIntegral<Default> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:471,1
    - Dst: ext::make_shared<IntegrationBase<MultidimIntegral> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:484,1
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - dimension
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 490
    functionName: QuantLib::LatentModel::IntegrationFactory::createLMIntegration
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - ext::make_shared<IntegrationBase<MultidimIntegral> >
    - QL_FAIL
    - ext::make_shared<TrapezoidIntegral<Default> >
    - "ext::make_shared<\n                            IntegrationBase<GaussianQuadMultidimIntegrator>
      >"
    - std::vector::push_back
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: "ext::shared_ptr<LMIntegration> createLMIntegration(\n                Size
      dimension, \n                LatentModelIntegrationType::LatentModelIntegrationType
      type = \n                    #ifndef QL_PATCH_SOLARIS\n                    LatentModelIntegrationType::GaussianQuadrature)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 492
    functionName: QuantLib::LatentModel::IntegrationFactory::IntegrationFactory
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IntegrationFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 499
    functionName: QuantLib::LatentModel::size
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 501
    functionName: QuantLib::LatentModel::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 503
    functionName: QuantLib::LatentModel::numTotalFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numTotalFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 563
    functionName: '& factorWeights() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<std::vector<Real> >
    signature: std::vector<std::vector<Real> > & factorWeights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 565
    functionName: '& idiosyncFctrs() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> & idiosyncFctrs() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:571,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:572,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:572,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:573,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - iVar1
    - iVar2
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 575
    functionName: QuantLib::LatentModel::latentVariableCorrel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - end
    - begin
    - Real
    - std::inner_product
    linkageType: ''
    returnType: Real
    signature: Real latentVariableCorrel(Size iVar1, Size iVar2) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:585,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:586,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - std::function<Real(const std::vector<Real>& v1)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 581
    functionDepth: 2
    functionLinenumber: 581
    functionLinenumberEnd: 587
    functionName: QuantLib::LatentModel::integratedExpectedValue
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - integration
    - QuantLib::LatentModel::density
    - f
    linkageType: ''
    returnType: Real
    signature: "Real integratedExpectedValue(\n            const std::function<Real(const
      std::vector<Real>& v1)>& f) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: integration
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:596,1
    - Dst: M
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    - Dst: QuantLib::LatentModel::density
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - "std::function<std::vector<Real>(\n                const std::vector<Real>&
      v1)>"
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 598
    functionName: QuantLib::LatentModel::integratedExpectedValueV
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - integration
    - M
    - QuantLib::LatentModel::density
    - f
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> integratedExpectedValueV(\n            // const
      std::function<std::vector<Real>(\n            const std::function<std::vector<Real>(\n
      \               const std::vector<Real>& v1)>& f ) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 605
    functionName: '& integration() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    linkageType: ''
    returnType: ext::shared_ptr<LMIntegration>
    signature: ext::shared_ptr<LMIntegration> & integration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:649,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:650,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:652,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:653,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:653,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:654,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:654,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:655,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:656,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:656,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:658,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' ini'
    argTypes:
    - std::vector<std::vector<Real> >
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 661
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - push_back
    - Real
    - std::sqrt
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const std::vector<std::vector<Real>
      >& factorWeights,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:668,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:671,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:673,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:673,1
    - Dst: copulaType
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' ini'
    argTypes:
    - std::vector<Real>
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 676
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - push_back
    - copulaType
    - emplace_back
    - std::sqrt
    - size
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const std::vector<Real>&
      factorWeights,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:683,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - correlSqr
    - nVariables
    - ' ini'
    argTypes:
    - Real
    - Size
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 689
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - std::sqrt
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const Real correlSqr,\n
      \       Size nVariables,\n        const typename Impl::initTraits& ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:696,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:697,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:697,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:700,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:700,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' singleFactorCorrel'
    - nVariables
    - ' ini'
    argTypes:
    - Handle<Quote>
    - Size
    - typename Impl::initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 706
    functionName: QuantLib::LatentModel<Impl>::LatentModel
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::vector<Real>
    - std::sqrt
    - value
    linkageType: ''
    returnType: void
    signature: "void LatentModel<Impl>::LatentModel(\n        const Handle<Quote>&
      singleFactorCorrel,\n        Size nVariables,\n        const typename Impl::initTraits&
      ini)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<Real> >
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:717,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:718,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:719,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:720,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:720,1
    - Dst: copulaType
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:721,1
    - Dst: getInitTraits
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:721,1
    - Dst: notifyObservers
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 723
    functionName: QuantLib::LatentModel<Impl>::update
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - getInitTraits
    - notifyObservers
    - value
    - std::vector<Real>
    - copulaType
    - std::sqrt
    - std::vector<std::vector<Real> >
    linkageType: ''
    returnType: void
    signature: void LatentModel<Impl>::update()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:752,1
    - Dst: BoxMullerGaussianRng<urng_type>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:753,1
    - Dst: urng_type
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - GaussianCopulaPolicy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: "QuantLib::LatentModel<TC>\n        ::FactorSampler <RandomSequenceGenerator<BoxMullerGaussianRng<URNG>
      > ,\n            dummy>::FactorSampler"
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - numFactors
    - urng_type
    - BoxMullerGaussianRng<urng_type>
    linkageType: ''
    returnType: void
    signature: "void FactorSampler(const GaussianCopulaPolicy& copula,\n                               BigNatural
      seed = 0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextSequence
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 756
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - nextSequence
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:776,1
    - Dst: numFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:776,1
    - Dst: varianceFactors
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:779,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:781,1
    - Dst: PolarStudentTRng<urng_type>
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' copula'
    argTypes:
    - TCopulaPolicy
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 782
    functionName: "QuantLib::LatentModel<TC>\n        ::FactorSampler<RandomSequenceGenerator<PolarStudentTRng<URNG>
      > , \n            dummy>::FactorSampler"
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Real>
    - push_back
    - PolarStudentTRng<urng_type>
    - varianceFactors
    - numFactors
    linkageType: ''
    returnType: void
    signature: void FactorSampler(const TCopulaPolicy& copula, BigNatural seed = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:785,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:786,1
    - Dst: value::size
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:787,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/latentmodel.hpp:788,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 790
    functionName: '& nextSequence() const'
    functionSourceFile: /src/quantlib/ql/experimental/math/latentmodel.hpp
    functionUses: 0
    functionsReached:
    - size
    - next
    - back
    - value::size
    linkageType: ''
    returnType: sample_type
    signature: sample_type & nextSequence() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: ~Inertia()
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Inertia()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 151
    functionName: QuantLib::ParticleSwarmOptimization::Inertia::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization *pso)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::TrivialInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: QuantLib::TrivialInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::SimpleRandomInertia::SimpleRandomInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleRandomInertia(Real threshold = 0.5, unsigned long seed =
      SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: QuantLib::SimpleRandomInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 193
    functionName: QuantLib::SimpleRandomInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: QuantLib::DecreasingInertia::DecreasingInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DecreasingInertia(Real threshold = 0.5)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 216
    functionName: QuantLib::DecreasingInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - maxIterations
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: QuantLib::DecreasingInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - minInertia
    - maxInertia
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::AdaptiveInertia::AdaptiveInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AdaptiveInertia(Real minInertia, Real maxInertia, Size sh = 5,
      Size sl = 2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 244
    functionName: QuantLib::AdaptiveInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:265,1
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:266,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - alpha
    - threshold
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 268
    functionName: QuantLib::LevyFlightInertia::LevyFlightInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - Array
    - LevyFlightDistribution
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void LevyFlightInertia(Real alpha, Size threshold,\n                          unsigned
      long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 274
    functionName: QuantLib::LevyFlightInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:286,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 294
    functionName: QuantLib::LevyFlightInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParticleSwarmOptimization::Inertia::init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:298,1
    - Dst: setDimension
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: QuantLib::LevyFlightInertia::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - setDimension
    - QuantLib::ParticleSwarmOptimization::Inertia::init
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization* pso) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 321
    functionName: ~Topology()
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Topology()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: QuantLib::ParticleSwarmOptimization::Topology::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization *pso)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::GlobalTopology::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M) override
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 365
    functionName: QuantLib::GlobalTopology::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void findSocialBest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::KNeighbors::KNeighbors
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void KNeighbors(Size K = 1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: QuantLib::KNeighbors::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void setSize(Size M) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 130
    functionName: ~Inertia()
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Inertia()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 151
    functionName: QuantLib::ParticleSwarmOptimization::Inertia::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization *pso)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: QuantLib::TrivialInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionName: QuantLib::TrivialInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:180,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: QuantLib::SimpleRandomInertia::SimpleRandomInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void SimpleRandomInertia(Real threshold = 0.5, unsigned long seed =
      SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: QuantLib::SimpleRandomInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 193
    functionName: QuantLib::SimpleRandomInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: QuantLib::DecreasingInertia::DecreasingInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void DecreasingInertia(Real threshold = 0.5)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: maxIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 216
    functionName: QuantLib::DecreasingInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - maxIterations
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: QuantLib::DecreasingInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - minInertia
    - maxInertia
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionName: QuantLib::AdaptiveInertia::AdaptiveInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AdaptiveInertia(Real minInertia, Real maxInertia, Size sh = 5,
      Size sl = 2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 244
    functionName: QuantLib::AdaptiveInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:265,1
    - Dst: LevyFlightDistribution
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:266,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - alpha
    - threshold
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 268
    functionName: QuantLib::LevyFlightInertia::LevyFlightInertia
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - Array
    - LevyFlightDistribution
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: "void LevyFlightInertia(Real alpha, Size threshold,\n                          unsigned
      long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<Size>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - M
    - N
    - c0
    - ' endCriteria'
    argTypes:
    - Size
    - Size
    - Real
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 274
    functionName: QuantLib::LevyFlightInertia::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - std::vector<Size>
    linkageType: ''
    returnType: void
    signature: void setSize(Size M, Size N, Real c0, const EndCriteria& endCriteria)
      override
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:286,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 294
    functionName: QuantLib::LevyFlightInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - nextReal
    linkageType: ''
    returnType: void
    signature: void setValues() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ParticleSwarmOptimization::Inertia::init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:298,1
    - Dst: setDimension
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: QuantLib::LevyFlightInertia::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - setDimension
    - QuantLib::ParticleSwarmOptimization::Inertia::init
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization* pso) override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 321
    functionName: ~Topology()
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Topology()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - pso
    argTypes:
    - ParticleSwarmOptimization*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: QuantLib::ParticleSwarmOptimization::Topology::init
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init(ParticleSwarmOptimization *pso)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 348
    functionName: QuantLib::GlobalTopology::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSize(Size M) override
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 365
    functionName: QuantLib::GlobalTopology::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void findSocialBest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: QuantLib::KNeighbors::KNeighbors
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void KNeighbors(Size K = 1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: QuantLib::KNeighbors::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.hpp
    functionUses: 0
    functionsReached:
    - QL_ENSURE
    linkageType: ''
    returnType: void
    signature: void setSize(Size M) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::SamplerLogNormal::SamplerLogNormal
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerLogNormal(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:52,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - distribution_
    - Array::size
    - exp
    - sqrt
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::SamplerGaussian::SamplerGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerGaussian(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:74,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::SamplerRingGaussian::SamplerRingGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SamplerRingGaussian(Array lower,\n                          Array
      upper,\n                          unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:99,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:99,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:127,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::SamplerMirrorGaussian::SamplerMirrorGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SamplerMirrorGaussian(Array lower,\n                            Array
      upper,\n                            unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:133,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:133,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 142
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::SamplerCauchy::SamplerCauchy
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerCauchy(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:164,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:181,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:182,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::SamplerVeryFastAnnealing::SamplerVeryFastAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::detail::instance
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SamplerVeryFastAnnealing(Array lower,\n                               Array
      upper,\n                               unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:190,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:193,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:194,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:194,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:195,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 200
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - distribution_
    - std::pow
    - Array::size
    - QuantLib::size
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::ProbabilityBoltzmann::ProbabilityBoltzmann
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void ProbabilityBoltzmann(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:229,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 230
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - distribution_
    - std::max_element
    - exp
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 242
    functionName: QuantLib::ProbabilityBoltzmannDownhill::ProbabilityBoltzmannDownhill
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void ProbabilityBoltzmannDownhill(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:248,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - distribution_
    - std::max_element
    - exp
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 260
    functionName: QuantLib::TemperatureBoltzmann::TemperatureBoltzmann
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureBoltzmann(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:264,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - Array::size
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: QuantLib::TemperatureCauchy::TemperatureCauchy
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureCauchy(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 277
    functionDepth: 2
    functionLinenumber: 277
    functionLinenumberEnd: 282
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: QuantLib::TemperatureCauchy1D::TemperatureCauchy1D
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureCauchy1D(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 2
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 306
    functionName: QuantLib::TemperatureExponential::TemperatureExponential
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureExponential(Real initialTemp, Size dimension, Real
      power = 0.95)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:310,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 312
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - QuantLib::size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:325,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:326,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 4
    argNames:
    - initialTemp
    - finalTemp
    - maxSteps
    - dimension
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 328
    functionName: QuantLib::TemperatureVeryFastAnnealing::TemperatureVeryFastAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::pow
    - std::log
    linkageType: ''
    returnType: void
    signature: void TemperatureVeryFastAnnealing(Real initialTemp, Real finalTemp,
      Real maxSteps, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:332,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:333,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 329
    functionDepth: 2
    functionLinenumber: 329
    functionLinenumberEnd: 334
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Array::size
    - QuantLib::size
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::ReannealingTrivial
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReannealingTrivial()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:361,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:362,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:369,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:369,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:370,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:370,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:371,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 377
    functionName: QuantLib::ReannealingFiniteDifferences::ReannealingFiniteDifferences
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ReannealingFiniteDifferences(Real initialTemp,\n                                   Size
      dimension,\n                                   const Array& lower = Array(),\n
      \                                  const Array& upper = Array(),\n                                   Real
      stepSize = 1e-7,\n                                   Real minSize = 1e-10,\n
      \                                  Real functionTol = 1e-10)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - P
    argTypes:
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 378
    functionName: QuantLib::ReannealingFiniteDifferences::setProblem
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setProblem(Problem &P)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:381,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:381,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:382,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:382,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:389,1
    - Dst: QuantLib::value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:389,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:401,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ' steps'
    - currentPoint
    - currentValue
    - ' currTemp'
    argTypes:
    - Array
    - Array
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 379
    functionDepth: 2
    functionLinenumber: 379
    functionLinenumberEnd: 406
    functionName: "operator()(Array & steps, const Array &currentPoint,\n            Real
      currentValue, const Array & currTemp)"
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::value
    - std::log
    - Integer
    - std::pow
    - std::fabs
    - QuantLib::size
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void operator()(Array & steps, const Array &currentPoint,\n            Real
      currentValue, const Array & currTemp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QuantLib::SamplerLogNormal::SamplerLogNormal
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerLogNormal(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:51,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:52,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    - distribution_
    - Array::size
    - exp
    - sqrt
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: QuantLib::SamplerGaussian::SamplerGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerGaussian(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:71,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:72,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:73,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:74,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:93,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: QuantLib::SamplerRingGaussian::SamplerRingGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SamplerRingGaussian(Array lower,\n                          Array
      upper,\n                          unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:96,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:97,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:98,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:99,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:99,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:125,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:127,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: QuantLib::SamplerMirrorGaussian::SamplerMirrorGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SamplerMirrorGaussian(Array lower,\n                            Array
      upper,\n                            unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:130,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:131,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:132,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:133,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:133,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 142
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - std::sqrt
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: QuantLib::SamplerCauchy::SamplerCauchy
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void SamplerCauchy(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:163,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:164,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::size
    - distribution_
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:181,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:182,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:182,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lower
    - upper
    argTypes:
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: QuantLib::SamplerVeryFastAnnealing::SamplerVeryFastAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::detail::instance
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void SamplerVeryFastAnnealing(Array lower,\n                               Array
      upper,\n                               unsigned long seed = SeedGenerator::instance().get())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:187,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:188,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:189,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:190,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:193,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:194,1
    - Dst: static_cast<int>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:194,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:195,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - newPoint
    - currentPoint
    - temp
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 200
    functionName: operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - distribution_
    - std::pow
    - Array::size
    - size
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newPoint, const Array &currentPoint, const Array
      &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 225
    functionName: QuantLib::ProbabilityBoltzmann::ProbabilityBoltzmann
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void ProbabilityBoltzmann(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:228,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:229,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 230
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - distribution_
    - std::max_element
    - exp
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::instance
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 242
    functionName: QuantLib::ProbabilityBoltzmannDownhill::ProbabilityBoltzmannDownhill
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::instance
    linkageType: ''
    returnType: void
    signature: void ProbabilityBoltzmannDownhill(unsigned long seed = SeedGenerator::instance().get())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max_element
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: Array::begin
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: Array::end
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:247,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:248,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - currentValue
    - newValue
    - temp
    argTypes:
    - Real
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: operator()(Real currentValue, Real newValue, const Array &temp)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - Array::begin
    - Array::end
    - distribution_
    - std::max_element
    - exp
    linkageType: ''
    returnType: bool
    signature: bool operator()(Real currentValue, Real newValue, const Array &temp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 260
    functionName: QuantLib::TemperatureBoltzmann::TemperatureBoltzmann
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureBoltzmann(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:262,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:263,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:264,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - std::log
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: QuantLib::TemperatureCauchy::TemperatureCauchy
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureCauchy(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:278,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:279,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 282
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: QuantLib::TemperatureCauchy1D::TemperatureCauchy1D
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureCauchy1D(Real initialTemp, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:293,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:294,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:295,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::pow
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 306
    functionName: QuantLib::TemperatureExponential::TemperatureExponential
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TemperatureExponential(Real initialTemp, Size dimension, Real
      power = 0.95)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:308,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:309,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:310,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 312
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::pow
    - Array::size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:325,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:326,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 4
    argNames:
    - initialTemp
    - finalTemp
    - maxSteps
    - dimension
    argTypes:
    - Real
    - Real
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 328
    functionName: QuantLib::TemperatureVeryFastAnnealing::TemperatureVeryFastAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - std::pow
    - std::log
    linkageType: ''
    returnType: void
    signature: void TemperatureVeryFastAnnealing(Real initialTemp, Real finalTemp,
      Real maxSteps, Size dimension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:330,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:331,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:332,1
    - Dst: exp
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:333,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - newTemp
    - currTemp
    - steps
    argTypes:
    - Array
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 334
    functionName: operator()(Array &newTemp, const Array &currTemp, const Array &steps)
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - std::pow
    - Array::size
    - size
    - exp
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void operator()(Array &newTemp, const Array &currTemp, const Array
      &steps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 343
    functionName: QuantLib::ReannealingTrivial
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReannealingTrivial()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:361,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:362,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:369,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:369,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:370,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:370,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:371,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:371,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - initialTemp
    - dimension
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 377
    functionName: QuantLib::ReannealingFiniteDifferences::ReannealingFiniteDifferences
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - size
    - Array
    - empty
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ReannealingFiniteDifferences(Real initialTemp,\n                                   Size
      dimension,\n                                   const Array& lower = Array(),\n
      \                                  const Array& upper = Array(),\n                                   Real
      stepSize = 1e-7,\n                                   Real minSize = 1e-10,\n
      \                                  Real functionTol = 1e-10)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - P
    argTypes:
    - Problem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 378
    functionName: QuantLib::ReannealingFiniteDifferences::setProblem
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setProblem(Problem &P)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:381,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:381,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:382,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:382,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:389,1
    - Dst: value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:389,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:400,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:401,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:403,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp:404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ' steps'
    - currentPoint
    - currentValue
    - ' currTemp'
    argTypes:
    - Array
    - Array
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 406
    functionName: "operator()(Array & steps, const Array &currentPoint,\n            Real
      currentValue, const Array & currTemp)"
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealingfunctors.hpp
    functionUses: 0
    functionsReached:
    - value
    - std::log
    - Integer
    - std::pow
    - std::fabs
    - size
    - std::abs
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void operator()(Array & steps, const Array &currentPoint,\n            Real
      currentValue, const Array & currTemp)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - eng
    - dist
    - dim
    argTypes:
    - Engine
    - Distribution
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionName: QuantLib::IsotropicRandomWalk::IsotropicRandomWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 0
    functionsReached:
    - empty
    - Array
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IsotropicRandomWalk(Engine eng,\n                            Distribution
      dist,\n                            Size dim,\n                            Array
      weights = Array(),\n                            unsigned long seed = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:60,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:63,1
    - Dst: cos
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:65,1
    - Dst: sin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:66,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:67,1
    - Dst: cos
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:69,1
    - Dst: sin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:70,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:73,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - first
    argTypes:
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 78
    functionName: QuantLib::IsotropicRandomWalk::nextReal
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 1
    functionsReached:
    - cos
    - begin
    - distribution_
    - sin
    - QuantLib::IsotropicRandomWalk::nextReal
    linkageType: ''
    returnType: void
    signature: void nextReal(InputIterator first)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dim
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 0
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void setDimension(Size dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dim
    - ' weights'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void setDimension(Size dim, const Array& weights)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:97,1
    - Dst: QuantLib::IsotropicRandomWalk::setDimension
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - dim
    - ' lowerBound'
    - ' upperBound'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 110
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 1
    functionsReached:
    - size
    - QuantLib::IsotropicRandomWalk::setDimension
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setDimension(Size dim,\n            const Array& lowerBound,
      const Array& upperBound)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:51,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:52,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:55,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - eng
    - dist
    - dim
    argTypes:
    - Engine
    - Distribution
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionName: QuantLib::IsotropicRandomWalk::IsotropicRandomWalk
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 0
    functionsReached:
    - empty
    - Array
    - std::move
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void IsotropicRandomWalk(Engine eng,\n                            Distribution
      dist,\n                            Size dim,\n                            Array
      weights = Array(),\n                            unsigned long seed = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:59,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:60,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:63,1
    - Dst: cos
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:65,1
    - Dst: sin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:66,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:67,1
    - Dst: cos
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:69,1
    - Dst: sin
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:70,1
    - Dst: QuantLib::IsotropicRandomWalk::nextReal
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:73,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - first
    argTypes:
    - InputIterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 78
    functionName: QuantLib::IsotropicRandomWalk::nextReal
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 2
    functionsReached:
    - cos
    - begin
    - distribution_
    - sin
    - QuantLib::IsotropicRandomWalk::nextReal
    linkageType: ''
    returnType: void
    signature: void nextReal(InputIterator first)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dim
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 1
    functionsReached:
    - Array
    linkageType: ''
    returnType: void
    signature: void setDimension(Size dim)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:84,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dim
    - ' weights'
    argTypes:
    - Size
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 1
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void setDimension(Size dim, const Array& weights)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:95,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:95,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:97,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:97,1
    - Dst: QuantLib::IsotropicRandomWalk::setDimension
      Src: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - dim
    - ' lowerBound'
    - ' upperBound'
    argTypes:
    - Size
    - Array
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 110
    functionName: QuantLib::IsotropicRandomWalk::setDimension
    functionSourceFile: /src/quantlib/ql/experimental/math/isotropicrandomwalk.hpp
    functionUses: 2
    functionsReached:
    - size
    - QuantLib::IsotropicRandomWalk::setDimension
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void setDimension(Size dim,\n            const Array& lowerBound,
      const Array& upperBound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - degFreedom
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::PolarStudentTRng::PolarStudentTRng
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolarStudentTRng(Real degFreedom, BigNatural seed = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - degFreedom
    - ' urng'
    argTypes:
    - Real
    - URNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::PolarStudentTRng::PolarStudentTRng
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolarStudentTRng(Real degFreedom, const URNG& urng)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PolarStudentTRng<URNG>::next
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:82,1
    - Dst: QuantLib::PolarStudentTRng<URNG>::next
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::PolarStudentTRng<URNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 1
    functionsReached:
    - std::pow
    - std::sqrt
    - QuantLib::PolarStudentTRng<URNG>::next
    linkageType: ''
    returnType: typename PolarStudentTRng<URNG>::sample_type
    signature: typename PolarStudentTRng<URNG>::sample_type PolarStudentTRng<URNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - degFreedom
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: QuantLib::PolarStudentTRng::PolarStudentTRng
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolarStudentTRng(Real degFreedom, BigNatural seed = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - degFreedom
    - ' urng'
    argTypes:
    - Real
    - URNG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: QuantLib::PolarStudentTRng::PolarStudentTRng
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void PolarStudentTRng(Real degFreedom, const URNG& urng)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::PolarStudentTRng<URNG>::next
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:82,1
    - Dst: QuantLib::PolarStudentTRng<URNG>::next
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:83,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:86,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: QuantLib::PolarStudentTRng<URNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/polarstudenttrng.hpp
    functionUses: 2
    functionsReached:
    - std::pow
    - std::sqrt
    - QuantLib::PolarStudentTRng<URNG>::next
    linkageType: ''
    returnType: typename PolarStudentTRng<URNG>::sample_type
    signature: typename PolarStudentTRng<URNG>::sample_type PolarStudentTRng<URNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:32,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:34,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: tOrders::size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:49,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:52,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:57,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:58,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' vals'
    argTypes:
    - std::vector<std::vector<Real> >
    - initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 64
    functionName: QuantLib::TCopulaPolicy::TCopulaPolicy
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - std::vector::reserve
    - tOrders::size
    - begin
    - push_back
    - Real
    - emplace_back
    - std::sqrt
    - size
    - back
    - end
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TCopulaPolicy::TCopulaPolicy(\n        const std::vector<std::vector<Real>
      >& factorWeights, \n        const initTraits& vals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:75,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:78,1
    - Dst: QuantLib::TCopulaPolicy::inverseCumulativeDensity
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:79,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:81,1
    - Dst: QuantLib::TCopulaPolicy::inverseCumulativeZ
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 84
    functionName: QuantLib::TCopulaPolicy::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector::begin
    - begin
    - QuantLib::TCopulaPolicy::inverseCumulativeDensity
    - QuantLib::TCopulaPolicy::inverseCumulativeZ
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> TCopulaPolicy::allFactorCumulInverter(\n        const
      std::vector<Real>& probs) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:32,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:34,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:39,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:39,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: tOrders::size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:44,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:48,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:49,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:49,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:50,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:52,1
    - Dst: std::vector::reserve
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:56,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:57,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:58,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:60,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ' factorWeights'
    - ' vals'
    argTypes:
    - std::vector<std::vector<Real> >
    - initTraits
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 64
    functionName: QuantLib::TCopulaPolicy::TCopulaPolicy
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - std::vector::reserve
    - tOrders::size
    - begin
    - push_back
    - Real
    - emplace_back
    - std::sqrt
    - size
    - back
    - end
    - std::vector::push_back
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void TCopulaPolicy::TCopulaPolicy(\n        const std::vector<std::vector<Real>
      >& factorWeights, \n        const initTraits& vals)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:70,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:71,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:75,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:77,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:78,1
    - Dst: QuantLib::TCopulaPolicy::inverseCumulativeDensity
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:79,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:80,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:81,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:81,1
    - Dst: QuantLib::TCopulaPolicy::inverseCumulativeZ
      Src: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 84
    functionName: QuantLib::TCopulaPolicy::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/tcopulapolicy.cpp
    functionUses: 0
    functionsReached:
    - std::transform
    - std::vector::begin
    - begin
    - QuantLib::TCopulaPolicy::inverseCumulativeDensity
    - QuantLib::TCopulaPolicy::inverseCumulativeZ
    - size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: std::vector<Real>
    signature: "std::vector<Real> TCopulaPolicy::allFactorCumulInverter(\n        const
      std::vector<Real>& probs) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:36,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:38,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:39,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:44,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:50,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:50,1
    - Dst: sp
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:51,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:51,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - A
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 57
    functionName: QuantLib::moorePenroseInverse
    functionSourceFile: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp
    functionUses: 0
    functionsReached:
    - SVD::singularValues
    - QuantLib::Null
    - Matrix::rows
    - SVD::U
    - sp
    - std::max
    - QuantLib::transpose
    - Matrix::columns
    - std::abs
    - SVD::V
    linkageType: ''
    returnType: Matrix
    signature: "Matrix moorePenroseInverse(const Matrix &A,\n                                  const
      Real tol = Null<Real>())"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:36,1
    - Dst: Matrix::rows
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:38,1
    - Dst: Matrix::columns
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:39,1
    - Dst: QuantLib::Null
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:44,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:45,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:50,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:50,1
    - Dst: sp
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:51,1
    - Dst: SVD::singularValues
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:51,1
    - Dst: SVD::V
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    - Dst: QuantLib::transpose
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    - Dst: SVD::U
      Src: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - A
    argTypes:
    - Matrix
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 57
    functionName: QuantLib::moorePenroseInverse
    functionSourceFile: /src/quantlib/ql/experimental/math/moorepenroseinverse.hpp
    functionUses: 0
    functionsReached:
    - SVD::singularValues
    - QuantLib::Null
    - Matrix::rows
    - SVD::U
    - sp
    - std::max
    - QuantLib::transpose
    - Matrix::columns
    - std::abs
    - SVD::V
    linkageType: ''
    returnType: Matrix
    signature: "Matrix moorePenroseInverse(const Matrix &A,\n                                  const
      Real tol = Null<Real>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: moment_
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: moment_(n, x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::initMoments
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - BOOST_PP_LOCAL_ITERATE
    linkageType: ''
    returnType: std::vector<std::function<Real(Real, Real)> >
    signature: std::vector<std::function<Real(Real, Real)> > initMoments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: moment_
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: moment_(n, x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::initMoments
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - BOOST_PP_LOCAL_ITERATE
    linkageType: ''
    returnType: std::vector<std::function<Real(Real, Real)> >
    signature: std::vector<std::function<Real(Real, Real)> > initMoments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:90,1
    - Dst: initMoments
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - lambda
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::GaussNonCentralChiSquaredPolynomial
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - initMoments
    - empty
    linkageType: ''
    returnType: void
    signature: "void GaussNonCentralChiSquaredPolynomial::GaussNonCentralChiSquaredPolynomial(\n
      \       Real nu, Real lambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::moment
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GaussNonCentralChiSquaredPolynomial::moment(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:102,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::w
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    - boost::math::non_central_chi_squared_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real GaussNonCentralChiSquaredPolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: moment_
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: moment_(n, x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::initMoments
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - BOOST_PP_LOCAL_ITERATE
    linkageType: ''
    returnType: std::vector<std::function<Real(Real, Real)> >
    signature: std::vector<std::function<Real(Real, Real)> > initMoments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: moment_
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: moment_(n, x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOOST_PP_LOCAL_ITERATE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 81
    functionName: QuantLib::initMoments
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - BOOST_PP_LOCAL_ITERATE
    linkageType: ''
    returnType: std::vector<std::function<Real(Real, Real)> >
    signature: std::vector<std::function<Real(Real, Real)> > initMoments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: BOOST_PP_LOCAL_MACRO
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOOST_PP_LOCAL_MACRO(n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:90,1
    - Dst: initMoments
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - nu
    - lambda
    argTypes:
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::GaussNonCentralChiSquaredPolynomial
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - initMoments
    - empty
    linkageType: ''
    returnType: void
    signature: "void GaussNonCentralChiSquaredPolynomial::GaussNonCentralChiSquaredPolynomial(\n
      \       Real nu, Real lambda)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:96,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::moment
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real GaussNonCentralChiSquaredPolynomial::moment(Size i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::BSMRNDCalculator::pdf
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:102,1
    - Dst: boost::math::non_central_chi_squared_distribution<Real>
      Src: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: QuantLib::GaussNonCentralChiSquaredPolynomial::w
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiannoncentralchisquaredpolynomial.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::BSMRNDCalculator::pdf
    - boost::math::non_central_chi_squared_distribution<Real>
    linkageType: ''
    returnType: Real
    signature: Real GaussNonCentralChiSquaredPolynomial::w(Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:34,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:36,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:37,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - M
    - topology
    - inertia
    - c1
    - c2
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Topology>
    - ext::shared_ptr<Inertia>
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::ParticleSwarmOptimization::ParticleSwarmOptimization
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::abs
    - std::move
    - QL_ENSURE
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void ParticleSwarmOptimization::ParticleSwarmOptimization(Size M,\n
      \                                                        ext::shared_ptr<Topology>
      topology,\n                                                         ext::shared_ptr<Inertia>
      inertia,\n                                                         Real c1,\n
      \                                                        Real c2,\n                                                         unsigned
      long seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - M
    - topology
    - inertia
    - omega
    - c1
    - c2
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Topology>
    - ext::shared_ptr<Inertia>
    - Real
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: QuantLib::ParticleSwarmOptimization::ParticleSwarmOptimization
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ParticleSwarmOptimization::ParticleSwarmOptimization(Size M,\n
      \                                                        ext::shared_ptr<Topology>
      topology,\n                                                         ext::shared_ptr<Inertia>
      inertia,\n                                                         Real omega,\n
      \                                                        Real c1,\n                                                         Real
      c2,\n                                                         unsigned long
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:54,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:55,1
    - Dst: setSize
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:56,1
    - Dst: setSize
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:58,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:59,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:60,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:61,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:63,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:64,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:64,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:65,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:65,1
    - Dst: SobolRsg::nextSequence
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:73,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:74,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:75,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:76,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:77,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:86,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:86,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:87,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:87,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:91,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:92,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 93
    functionName: QuantLib::ParticleSwarmOptimization::startState
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - SobolRsg::nextSequence
    - Array
    - push_back
    - Problem::constraint
    - emplace_back
    - Problem::value
    - setSize
    - Problem::currentValue
    - back
    - reserve
    - init
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ParticleSwarmOptimization::startState(Problem &P, const EndCriteria
      &endCriteria)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:96,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:96,1
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:99,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:102,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:103,1
    - Dst: QuantLib::ParticleSwarmOptimization::startState
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:107,1
    - Dst: findSocialBest
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:125,1
    - Dst: setValues
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:128,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:140,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:140,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:154,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:174,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:175,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 177
    functionName: QuantLib::ParticleSwarmOptimization::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - EndCriteria::maxStationaryStateIterations
    - Problem::reset
    - QuantLib::ParticleSwarmOptimization::startState
    - findSocialBest
    - Problem::setFunctionValue
    - nextReal
    - Problem::constraint
    - EndCriteria::maxIterations
    - Problem::value
    - Problem::setCurrentValue
    - setValues
    - QL_REQUIRE
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type ParticleSwarmOptimization::minimize(Problem &P, const
      EndCriteria &endCriteria)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:193,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:193,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:196,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:196,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 206
    functionName: QuantLib::AdaptiveInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    linkageType: ''
    returnType: void
    signature: void AdaptiveInertia::setValues()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:213,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:215,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 241
    functionName: QuantLib::KNeighbors::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    linkageType: ''
    returnType: void
    signature: void KNeighbors::findSocialBest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - defaultClubs
    - totalClubs
    - maxClubs
    - minClubs
    - resetIteration
    - seed
    argTypes:
    - Size
    - Size
    - Size
    - Size
    - Size
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 260
    functionName: QuantLib::ClubsTopology::ClubsTopology
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ClubsTopology::ClubsTopology(Size defaultClubs,\n                                 Size
      totalClubs,\n                                 Size maxClubs,\n                                 Size
      minClubs,\n                                 Size resetIteration,\n                                 unsigned
      long seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:266,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:266,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:267,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:267,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:272,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:273,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:281,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:281,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:282,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:282,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 284
    functionName: QuantLib::ClubsTopology::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::vector<std::vector<bool> >
    - std::vector<bool>
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::setSize(Size M)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ClubsTopology::leaveRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:337,1
    - Dst: QuantLib::ClubsTopology::joinRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:341,1
    - Dst: QuantLib::ClubsTopology::joinRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:347,1
    - Dst: QuantLib::ClubsTopology::leaveRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:351,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 367
    functionName: QuantLib::ClubsTopology::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ClubsTopology::joinRandomClub
    - QuantLib::ClubsTopology::leaveRandomClub
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::findSocialBest()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:370,1
    - Dst: param_type
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:370,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - particle
    - currentClubs
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 383
    functionName: QuantLib::ClubsTopology::leaveRandomClub
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 1
    functionsReached:
    - param_type
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::leaveRandomClub(Size particle, Size currentClubs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:387,1
    - Dst: param_type
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:387,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - particle
    - currentClubs
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 400
    functionName: QuantLib::ClubsTopology::joinRandomClub
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 1
    functionsReached:
    - param_type
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::joinRandomClub(Size particle, Size currentClubs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:34,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:34,1
    - Dst: QL_ENSURE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:36,1
    - Dst: std::abs
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:37,1
    - Dst: sqrt
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - M
    - topology
    - inertia
    - c1
    - c2
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Topology>
    - ext::shared_ptr<Inertia>
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: QuantLib::ParticleSwarmOptimization::ParticleSwarmOptimization
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::abs
    - std::move
    - QL_ENSURE
    - sqrt
    linkageType: ''
    returnType: void
    signature: "void ParticleSwarmOptimization::ParticleSwarmOptimization(Size M,\n
      \                                                        ext::shared_ptr<Topology>
      topology,\n                                                         ext::shared_ptr<Inertia>
      inertia,\n                                                         Real c1,\n
      \                                                        Real c2,\n                                                         unsigned
      long seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:49,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 7
    argNames:
    - M
    - topology
    - inertia
    - omega
    - c1
    - c2
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Topology>
    - ext::shared_ptr<Inertia>
    - Real
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: QuantLib::ParticleSwarmOptimization::ParticleSwarmOptimization
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void ParticleSwarmOptimization::ParticleSwarmOptimization(Size M,\n
      \                                                        ext::shared_ptr<Topology>
      topology,\n                                                         ext::shared_ptr<Inertia>
      inertia,\n                                                         Real omega,\n
      \                                                        Real c1,\n                                                         Real
      c2,\n                                                         unsigned long
      seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:53,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:54,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:55,1
    - Dst: setSize
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:56,1
    - Dst: setSize
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:57,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:58,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:59,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:60,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:61,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:62,1
    - Dst: Array
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:63,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:64,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:64,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:65,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:65,1
    - Dst: SobolRsg::nextSequence
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:73,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:74,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:75,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:76,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:77,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:78,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:86,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:86,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:87,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:87,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:91,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:92,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 93
    functionName: QuantLib::ParticleSwarmOptimization::startState
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 1
    functionsReached:
    - SobolRsg::nextSequence
    - Array
    - push_back
    - Problem::constraint
    - emplace_back
    - Problem::value
    - setSize
    - Problem::currentValue
    - back
    - reserve
    - init
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ParticleSwarmOptimization::startState(Problem &P, const EndCriteria
      &endCriteria)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:96,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:96,1
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:99,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:102,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:103,1
    - Dst: QuantLib::ParticleSwarmOptimization::startState
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:107,1
    - Dst: findSocialBest
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:125,1
    - Dst: setValues
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:128,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:140,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:140,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:154,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:174,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:175,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 177
    functionName: QuantLib::ParticleSwarmOptimization::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - EndCriteria::maxStationaryStateIterations
    - Problem::reset
    - QuantLib::ParticleSwarmOptimization::startState
    - findSocialBest
    - Problem::setFunctionValue
    - nextReal
    - Problem::constraint
    - EndCriteria::maxIterations
    - Problem::value
    - Problem::setCurrentValue
    - setValues
    - QL_REQUIRE
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type ParticleSwarmOptimization::minimize(Problem &P, const
      EndCriteria &endCriteria)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:193,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:193,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:196,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:196,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 206
    functionName: QuantLib::AdaptiveInertia::setValues
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    linkageType: ''
    returnType: void
    signature: void AdaptiveInertia::setValues()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:213,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:215,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 241
    functionName: QuantLib::KNeighbors::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::max
    - std::min
    linkageType: ''
    returnType: void
    signature: void KNeighbors::findSocialBest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:252,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:254,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:256,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - defaultClubs
    - totalClubs
    - maxClubs
    - minClubs
    - resetIteration
    - seed
    argTypes:
    - Size
    - Size
    - Size
    - Size
    - Size
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 260
    functionName: QuantLib::ClubsTopology::ClubsTopology
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ClubsTopology::ClubsTopology(Size defaultClubs,\n                                 Size
      totalClubs,\n                                 Size maxClubs,\n                                 Size
      minClubs,\n                                 Size resetIteration,\n                                 unsigned
      long seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:266,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:266,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:267,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:267,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:272,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:273,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:281,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:281,1
    - Dst: std::vector<std::vector<bool> >
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:282,1
    - Dst: std::vector<bool>
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:282,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - M
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 284
    functionName: QuantLib::ClubsTopology::setSize
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - std::vector<std::vector<bool> >
    - std::vector<bool>
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::setSize(Size M)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ClubsTopology::leaveRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:337,1
    - Dst: QuantLib::ClubsTopology::joinRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:341,1
    - Dst: QuantLib::ClubsTopology::joinRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:347,1
    - Dst: QuantLib::ClubsTopology::leaveRandomClub
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:351,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 367
    functionName: QuantLib::ClubsTopology::findSocialBest
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::ClubsTopology::joinRandomClub
    - QuantLib::ClubsTopology::leaveRandomClub
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::findSocialBest()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:370,1
    - Dst: param_type
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:370,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - particle
    - currentClubs
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 383
    functionName: QuantLib::ClubsTopology::leaveRandomClub
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 2
    functionsReached:
    - param_type
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::leaveRandomClub(Size particle, Size currentClubs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:387,1
    - Dst: param_type
      Src: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp:387,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - particle
    - currentClubs
    argTypes:
    - Size
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 400
    functionName: QuantLib::ClubsTopology::joinRandomClub
    functionSourceFile: /src/quantlib/ql/experimental/math/particleswarmoptimization.cpp
    functionUses: 2
    functionsReached:
    - param_type
    - distribution_
    linkageType: ''
    returnType: void
    signature: void ClubsTopology::joinRandomClub(Size particle, Size currentClubs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<Real> >
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:41,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:43,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:43,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: QuantLib::GaussianCopulaPolicy
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - std::vector<std::vector<Real> >
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GaussianCopulaPolicy(\n            const std::vector<std::vector<Real>
      >& factorWeights = \n                std::vector<std::vector<Real> >(), \n            const
      initTraits& dummy = int())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::getInitTraits
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - initTraits
    linkageType: ''
    returnType: initTraits
    signature: initTraits getInitTraits() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: density_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::density
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - density_
    - begin
    - Real
    - std::accumulate
    - end
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 3
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:112,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:112,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 110
    functionDepth: 3
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionName: QuantLib::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 1
    functionsReached:
    - std::vector::resize
    - QuantLib::InverseCumulativeNormal::standard_value
    - std::vector::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> allFactorCumulInverter(const std::vector<Real>& probs)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector<std::vector<Real> >
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:41,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:43,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:43,1
    - Dst: std::inner_product
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:47,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:48,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:48,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: QuantLib::GaussianCopulaPolicy
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - std::inner_product
    - begin
    - Real
    - std::vector<std::vector<Real> >
    - QuantLib::size
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void GaussianCopulaPolicy(\n            const std::vector<std::vector<Real>
      >& factorWeights = \n                std::vector<std::vector<Real> >(), \n            const
      initTraits& dummy = int())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::numFactors
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size numFactors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: initTraits
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::getInitTraits
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - initTraits
    linkageType: ''
    returnType: initTraits
    signature: initTraits getInitTraits() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - val
    - iVariable
    argTypes:
    - Real
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: QuantLib::cumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeY(Real val, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cumulative_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - z
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: QuantLib::cumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - cumulative_
    linkageType: ''
    returnType: Probability
    signature: Probability cumulativeZ(Real z) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: Real
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:86,1
    - Dst: density_
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' m'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionName: QuantLib::density
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - density_
    - begin
    - Real
    - std::accumulate
    - end
    linkageType: ''
    returnType: Probability
    signature: Probability density(const std::vector<Real>& m) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iVariable
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: QuantLib::inverseCumulativeY
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeY(Probability p, Size iVariable) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - Probability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 3
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: QuantLib::inverseCumulativeZ
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeZ(Probability p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - iFactor
    argTypes:
    - Probability
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 3
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: QuantLib::inverseCumulativeDensity
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::InverseCumulativeNormal::standard_value
    linkageType: ''
    returnType: Real
    signature: Real inverseCumulativeDensity(Probability p, Size iFactor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::resize
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:112,1
    - Dst: QuantLib::size
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:112,1
    - Dst: std::transform
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: std::vector::begin
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:113,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' probs'
    argTypes:
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 110
    functionDepth: 3
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionName: QuantLib::allFactorCumulInverter
    functionSourceFile: /src/quantlib/ql/experimental/math/gaussiancopulapolicy.hpp
    functionUses: 1
    functionsReached:
    - std::vector::resize
    - QuantLib::InverseCumulativeNormal::standard_value
    - std::vector::begin
    - begin
    - std::transform
    - QuantLib::size
    - end
    linkageType: ''
    returnType: std::vector<Real>
    signature: std::vector<Real> allFactorCumulInverter(const std::vector<Real>& probs)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: QuantLib::ClaytonCopulaRng<RNG>::ClaytonCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/claytoncopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ClaytonCopulaRng<RNG>::ClaytonCopulaRng(const RNG& ug, Real th)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ClaytonCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:59,1
    - Dst: QuantLib::ClaytonCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:60,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:64,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:65,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::ClaytonCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/claytoncopularng.hpp
    functionUses: 1
    functionsReached:
    - std::pow
    - QuantLib::ClaytonCopulaRng<RNG>::next
    - std::vector::push_back
    - sample_type
    linkageType: ''
    returnType: typename ClaytonCopulaRng<RNG>::sample_type
    signature: typename ClaytonCopulaRng<RNG>::sample_type ClaytonCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:50,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: QuantLib::ClaytonCopulaRng<RNG>::ClaytonCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/claytoncopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void ClaytonCopulaRng<RNG>::ClaytonCopulaRng(const RNG& ug, Real th)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ClaytonCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:59,1
    - Dst: QuantLib::ClaytonCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:60,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::pow
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:64,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:65,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/claytoncopularng.hpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: QuantLib::ClaytonCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/claytoncopularng.hpp
    functionUses: 2
    functionsReached:
    - std::pow
    - QuantLib::ClaytonCopulaRng<RNG>::next
    - std::vector::push_back
    - sample_type
    linkageType: ''
    returnType: typename ClaytonCopulaRng<RNG>::sample_type
    signature: typename ClaytonCopulaRng<RNG>::sample_type ClaytonCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dimension
    - quadOrder
    - mu
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::GaussianQuadMultidimIntegrator::GaussianQuadMultidimIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadMultidimIntegrator::GaussianQuadMultidimIntegrator(\n
      \       Size dimension, Size quadOrder, Real mu)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimquadrature.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dimension
    - quadOrder
    - mu
    argTypes:
    - Size
    - Size
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 36
    functionName: QuantLib::GaussianQuadMultidimIntegrator::GaussianQuadMultidimIntegrator
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimquadrature.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GaussianQuadMultidimIntegrator::spawnFcts
    linkageType: ''
    returnType: void
    signature: "void GaussianQuadMultidimIntegrator::GaussianQuadMultidimIntegrator(\n
      \       Size dimension, Size quadOrder, Real mu)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::FrankCopulaRng<RNG>::FrankCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/frankcopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FrankCopulaRng<RNG>::FrankCopulaRng(const RNG& ug, Real th)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FrankCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:57,1
    - Dst: QuantLib::FrankCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:63,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::FrankCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/frankcopularng.hpp
    functionUses: 1
    functionsReached:
    - std::exp
    - sample_type
    - std::log
    - QuantLib::FrankCopulaRng<RNG>::next
    - std::vector::push_back
    linkageType: ''
    returnType: typename FrankCopulaRng<RNG>::sample_type
    signature: typename FrankCopulaRng<RNG>::sample_type FrankCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ug'
    - th
    argTypes:
    - RNG
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: QuantLib::FrankCopulaRng<RNG>::FrankCopulaRng
    functionSourceFile: /src/quantlib/ql/experimental/math/frankcopularng.hpp
    functionUses: 0
    functionsReached:
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void FrankCopulaRng<RNG>::FrankCopulaRng(const RNG& ug, Real th)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::FrankCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:57,1
    - Dst: QuantLib::FrankCopulaRng<RNG>::next
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:58,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:60,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:62,1
    - Dst: std::vector::push_back
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:63,1
    - Dst: sample_type
      Src: /src/quantlib/ql/experimental/math/frankcopularng.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: QuantLib::FrankCopulaRng<RNG>::next
    functionSourceFile: /src/quantlib/ql/experimental/math/frankcopularng.hpp
    functionUses: 2
    functionsReached:
    - std::exp
    - sample_type
    - std::log
    - QuantLib::FrankCopulaRng<RNG>::next
    - std::vector::push_back
    linkageType: ''
    returnType: typename FrankCopulaRng<RNG>::sample_type
    signature: typename FrankCopulaRng<RNG>::sample_type FrankCopulaRng<RNG>::next()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:30,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: std::unique
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:36,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - integrator
    - criticalPoints
    - avoidCriticalPoints
    argTypes:
    - ext::shared_ptr<Integrator>
    - std::vector<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::PiecewiseIntegral::PiecewiseIntegral
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp
    functionUses: 0
    functionsReached:
    - std::sort
    - resize
    - begin
    - std::move
    - std::unique
    - static_cast<bool (*)(Real, Real)>
    - end
    linkageType: ''
    returnType: void
    signature: "void PiecewiseIntegral::PiecewiseIntegral(ext::shared_ptr<Integrator>
      integrator,\n                                         std::vector<Real> criticalPoints,\n
      \                                        const bool avoidCriticalPoints)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:29,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:30,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:33,1
    - Dst: std::unique
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:35,1
    - Dst: static_cast<bool (*)(Real, Real)>
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:36,1
    - Dst: resize
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:37,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - integrator
    - criticalPoints
    - avoidCriticalPoints
    argTypes:
    - ext::shared_ptr<Integrator>
    - std::vector<Real>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: QuantLib::PiecewiseIntegral::PiecewiseIntegral
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.cpp
    functionUses: 0
    functionsReached:
    - std::sort
    - resize
    - begin
    - std::move
    - std::unique
    - static_cast<bool (*)(Real, Real)>
    - end
    linkageType: ''
    returnType: void
    signature: "void PiecewiseIntegral::PiecewiseIntegral(ext::shared_ptr<Integrator>
      integrator,\n                                         std::vector<Real> criticalPoints,\n
      \                                        const bool avoidCriticalPoints)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: "operator()(\n            const std::function<Real (const std::vector<Real>&)>&
      f,\n            const std::vector<Real>& a,\n            const std::vector<Real>&
      b) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real operator()(\n            const std::function<Real (const std::vector<Real>&)>&
      f,\n            const std::vector<Real>& a,\n            const std::vector<Real>&
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' f'
    - z
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: "MultidimIntegral::vectorBinder<0> (\n        const std::function<Real
      (const std::vector<Real>&)>& f, \n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::vectorBinder<0> (\n        const std::function<Real
      (const std::vector<Real>&)>& f, \n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: MultidimIntegral::spawnFcts<1>() const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultidimIntegral::spawnFcts<1>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::vectorBinder
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 143
    functionName: QuantLib::MultidimIntegral::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached:
    - QuantLib::MultidimIntegral::vectorBinder
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::integrate(\n        const std::function<Real
      (const std::vector<Real>&)>& f,\n        const std::vector<Real>& a,\n        const
      std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::integrate
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' f'
    - z
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::MultidimIntegral::vectorBinder
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultidimIntegral::integrate
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::vectorBinder (\n        const std::function<Real
      (const std::vector<Real>&)>& f,\n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: QuantLib::MultidimIntegral::spawnFcts
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 3
    functionsReached:
    - QuantLib::MultidimIntegral::spawnFcts
    linkageType: ''
    returnType: void
    signature: void MultidimIntegral::spawnFcts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:53,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: "operator()(\n            const std::function<Real (const std::vector<Real>&)>&
      f,\n            const std::vector<Real>& a,\n            const std::vector<Real>&
      b) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached:
    - size
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real operator()(\n            const std::function<Real (const std::vector<Real>&)>&
      f,\n            const std::vector<Real>& a,\n            const std::vector<Real>&
      b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' f'
    - z
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: "MultidimIntegral::vectorBinder<0> (\n        const std::function<Real
      (const std::vector<Real>&)>& f, \n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached:
    - f
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::vectorBinder<0> (\n        const std::function<Real
      (const std::vector<Real>&)>& f, \n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: MultidimIntegral::spawnFcts<1>() const
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MultidimIntegral::spawnFcts<1>() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::vectorBinder
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' f'
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 134
    functionDepth: 3
    functionLinenumber: 134
    functionLinenumberEnd: 143
    functionName: QuantLib::MultidimIntegral::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::MultidimIntegral::vectorBinder
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::integrate(\n        const std::function<Real
      (const std::vector<Real>&)>& f,\n        const std::vector<Real>& a,\n        const
      std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::integrate
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ' f'
    - z
    - ' a'
    - ' b'
    argTypes:
    - std::function<Real (const std::vector<Real>&)>
    - Real
    - std::vector<Real>
    - std::vector<Real>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionName: QuantLib::MultidimIntegral::vectorBinder
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::MultidimIntegral::integrate
    linkageType: ''
    returnType: Real
    signature: "Real MultidimIntegral::vectorBinder (\n        const std::function<Real
      (const std::vector<Real>&)>& f,\n        Real z,\n        const std::vector<Real>&
      a,\n        const std::vector<Real>& b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::MultidimIntegral::spawnFcts
      Src: /src/quantlib/ql/experimental/math/multidimintegrator.hpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: QuantLib::MultidimIntegral::spawnFcts
    functionSourceFile: /src/quantlib/ql/experimental/math/multidimintegrator.hpp
    functionUses: 4
    functionsReached:
    - QuantLib::MultidimIntegral::spawnFcts
    linkageType: ''
    returnType: void
    signature: void MultidimIntegral::spawnFcts() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 210
    functionName: QuantLib::ZigguratRng::ZigguratRng
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZigguratRng::ZigguratRng(unsigned long seed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:217,1
    - Dst: static_cast<long>
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:222,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:229,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:232,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:233,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 239
    functionName: QuantLib::ZigguratRng::nextGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - QuantLib::InverseCumulativeNormal::standard_value
    - nextReal
    - static_cast<long>
    - nextInt32
    linkageType: ''
    returnType: Real
    signature: Real ZigguratRng::nextGaussian() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 210
    functionName: QuantLib::ZigguratRng::ZigguratRng
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ZigguratRng::ZigguratRng(unsigned long seed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nextInt32
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:217,1
    - Dst: static_cast<long>
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:222,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:229,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:229,1
    - Dst: QuantLib::InverseCumulativeNormal::standard_value
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:232,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/zigguratrng.cpp:233,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 239
    functionName: QuantLib::ZigguratRng::nextGaussian
    functionSourceFile: /src/quantlib/ql/experimental/math/zigguratrng.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - QuantLib::InverseCumulativeNormal::standard_value
    - nextReal
    - static_cast<long>
    - nextInt32
    linkageType: ''
    returnType: Real
    signature: Real ZigguratRng::nextGaussian() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - f
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::PiecewiseIntegral::integrate_h
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp
    functionUses: 0
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real PiecewiseIntegral::integrate_h(const std::function<Real(Real)>
      &f,\n                                           Real a, Real b) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:73,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:75,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:76,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:76,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:80,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:85,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:89,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:91,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:92,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:97,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:97,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - f
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 101
    functionName: QuantLib::PiecewiseIntegral::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - empty
    - begin
    - std::min
    - QuantLib::PiecewiseIntegral::integrate_h
    - back
    - end
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real PiecewiseIntegral::integrate(const std::function<Real(Real)>
      &f,\n                                         Real a, Real b) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - f
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: QuantLib::PiecewiseIntegral::integrate_h
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp
    functionUses: 1
    functionsReached:
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real PiecewiseIntegral::integrate_h(const std::function<Real(Real)>
      &f,\n                                           Real a, Real b) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:69,1
    - Dst: std::lower_bound
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:71,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:73,1
    - Dst: empty
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:75,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:76,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:76,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:80,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:85,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:86,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:86,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:89,1
    - Dst: close_enough
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:91,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:92,1
    - Dst: QuantLib::PiecewiseIntegral::integrate_h
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:97,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp:97,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - f
    - a
    - b
    argTypes:
    - std::function<Real(Real)>
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 101
    functionName: QuantLib::PiecewiseIntegral::integrate
    functionSourceFile: /src/quantlib/ql/experimental/math/piecewiseintegral.hpp
    functionUses: 0
    functionsReached:
    - std::lower_bound
    - empty
    - begin
    - std::min
    - QuantLib::PiecewiseIntegral::integrate_h
    - back
    - end
    - close_enough
    linkageType: ''
    returnType: Real
    signature: "Real PiecewiseIntegral::integrate(const std::function<Real(Real)>
      &f,\n                                         Real a, Real b) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - M
    - intensity
    - randomWalk
    - Mde
    - mutation
    - crossover
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Intensity>
    - ext::shared_ptr<RandomWalk>
    - Size
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 40
    functionName: QuantLib::FireflyAlgorithm::FireflyAlgorithm
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FireflyAlgorithm::FireflyAlgorithm(Size M,\n                                       ext::shared_ptr<Intensity>
      intensity,\n                                       ext::shared_ptr<RandomWalk>
      randomWalk,\n                                       Size Mde,\n                                       Real
      mutation,\n                                       Real crossover,\n                                       unsigned
      long seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:43,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:44,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:45,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:46,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:47,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:48,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:48,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:49,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:49,1
    - Dst: SobolRsg::nextSequence
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:57,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:58,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:67,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:67,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:71,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 73
    functionName: QuantLib::FireflyAlgorithm::startState
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - SobolRsg::nextSequence
    - emplace_back
    - Problem::constraint
    - Problem::value
    - Problem::currentValue
    - back
    - reserve
    - init
    linkageType: ''
    returnType: void
    signature: void FireflyAlgorithm::startState(Problem &P, const EndCriteria &endCriteria)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:76,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:76,1
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:78,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:81,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:82,1
    - Dst: QuantLib::FireflyAlgorithm::startState
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:84,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:122,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:126,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:129,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:136,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:138,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:152,1
    - Dst: findBrightest
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:170,1
    - Dst: walk
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:173,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:194,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:195,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:216,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:217,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 83
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 219
    functionName: QuantLib::FireflyAlgorithm::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - EndCriteria::maxStationaryStateIterations
    - walk
    - Problem::reset
    - std::sort
    - findBrightest
    - Problem::setFunctionValue
    - QuantLib::FireflyAlgorithm::startState
    - begin
    - distribution_
    - nextReal
    - std::isnan
    - Problem::constraint
    - EndCriteria::maxIterations
    - Problem::value
    - Problem::setCurrentValue
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type FireflyAlgorithm::minimize(Problem &P, const EndCriteria
      &endCriteria)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: intensityImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:240,1
    - Dst: distance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:240,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 244
    functionName: FireflyAlgorithm::Intensity::findBrightest()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - distance
    - intensityImpl
    linkageType: ''
    returnType: void
    signature: void FireflyAlgorithm::Intensity::findBrightest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:35,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:35,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - M
    - intensity
    - randomWalk
    - Mde
    - mutation
    - crossover
    - seed
    argTypes:
    - Size
    - ext::shared_ptr<Intensity>
    - ext::shared_ptr<RandomWalk>
    - Size
    - Real
    - Real
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 40
    functionName: QuantLib::FireflyAlgorithm::FireflyAlgorithm
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void FireflyAlgorithm::FireflyAlgorithm(Size M,\n                                       ext::shared_ptr<Intensity>
      intensity,\n                                       ext::shared_ptr<RandomWalk>
      randomWalk,\n                                       Size Mde,\n                                       Real
      mutation,\n                                       Real crossover,\n                                       unsigned
      long seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:43,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:44,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:45,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:46,1
    - Dst: reserve
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:47,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:48,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:48,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:49,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:49,1
    - Dst: SobolRsg::nextSequence
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:57,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:58,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:59,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:60,1
    - Dst: back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:61,1
    - Dst: emplace_back
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:67,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:67,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:71,1
    - Dst: init
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 73
    functionName: QuantLib::FireflyAlgorithm::startState
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 1
    functionsReached:
    - SobolRsg::nextSequence
    - emplace_back
    - Problem::constraint
    - Problem::value
    - Problem::currentValue
    - back
    - reserve
    - init
    linkageType: ''
    returnType: void
    signature: void FireflyAlgorithm::startState(Problem &P, const EndCriteria &endCriteria)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:76,1
    - Dst: Problem::constraint
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:76,1
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:78,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:81,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:82,1
    - Dst: QuantLib::FireflyAlgorithm::startState
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:84,1
    - Dst: std::sort
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:113,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:122,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:126,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:129,1
    - Dst: distribution_
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:136,1
    - Dst: nextReal
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:138,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:152,1
    - Dst: findBrightest
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:170,1
    - Dst: walk
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:173,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:194,1
    - Dst: std::isnan
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:195,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:216,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:217,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 83
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 219
    functionName: QuantLib::FireflyAlgorithm::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - EndCriteria::maxStationaryStateIterations
    - walk
    - Problem::reset
    - std::sort
    - findBrightest
    - Problem::setFunctionValue
    - QuantLib::FireflyAlgorithm::startState
    - begin
    - distribution_
    - nextReal
    - std::isnan
    - Problem::constraint
    - EndCriteria::maxIterations
    - Problem::value
    - Problem::setCurrentValue
    - end
    - QL_REQUIRE
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type FireflyAlgorithm::minimize(Problem &P, const EndCriteria
      &endCriteria)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: intensityImpl
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:240,1
    - Dst: distance
      Src: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp:240,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 244
    functionName: FireflyAlgorithm::Intensity::findBrightest()
    functionSourceFile: /src/quantlib/ql/experimental/math/fireflyalgorithm.cpp
    functionUses: 0
    functionsReached:
    - distance
    - intensityImpl
    linkageType: ''
    returnType: void
    signature: void FireflyAlgorithm::Intensity::findBrightest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ReannealingTrivial
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:84,1
    - Dst: ext::make_shared<LevenbergMarquardt>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' sampler'
    - ' probability'
    - temperature
    argTypes:
    - Sampler
    - Probability
    - Temperature
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 99
    functionName: QuantLib::HybridSimulatedAnnealing::HybridSimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - ReannealingTrivial
    - ext::make_shared<LevenbergMarquardt>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HybridSimulatedAnnealing(const Sampler& sampler,\n                                 const
      Probability& probability,\n                                 Temperature temperature,\n
      \                                const Reannealing& reannealing = ReannealingTrivial(),\n
      \                                Real startTemperature = 200.0,\n                                 Real
      endTemperature = 0.01,\n                                 Size reAnnealSteps
      = 50,\n                                 ResetScheme resetScheme = ResetToBestPoint,\n
      \                                Size resetSteps = 150,\n                                 const
      ext::shared_ptr<OptimizationMethod>& localOptimizer =\n                                     ext::make_shared<LevenbergMarquardt>(),\n
      \                                LocalOptimizeScheme optimizeScheme = EveryBestPoint)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:120,1
    - Dst: setProblem
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:121,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:122,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:123,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:128,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:129,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:137,1
    - Dst: sampler_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:143,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:146,1
    - Dst: probability_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:149,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:151,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:152,1
    - Dst: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:153,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:154,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:155,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:164,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:165,1
    - Dst: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:166,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:167,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:168,1
    - Dst: reannealing_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:186,1
    - Dst: temperature_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:209,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:223,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:224,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 226
    functionName: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature,
      Reannealing>::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp
    functionUses: 1
    functionsReached:
    - reannealing_
    - EndCriteria::maxStationaryStateIterations
    - Problem::reset
    - sampler_
    - Problem::setFunctionValue
    - setProblem
    - QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
    - probability_
    - Problem::functionValue
    - EndCriteria::maxIterations
    - Array::size
    - Problem::value
    - Problem::setCurrentValue
    - temperature_
    - Problem::currentValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type HybridSimulatedAnnealing<Sampler, Probability, Temperature,
      Reannealing>::minimize(Problem &P, const EndCriteria &endCriteria)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ReannealingTrivial
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:84,1
    - Dst: ext::make_shared<LevenbergMarquardt>
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:91,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' sampler'
    - ' probability'
    - temperature
    argTypes:
    - Sampler
    - Probability
    - Temperature
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 99
    functionName: QuantLib::HybridSimulatedAnnealing::HybridSimulatedAnnealing
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp
    functionUses: 0
    functionsReached:
    - ReannealingTrivial
    - ext::make_shared<LevenbergMarquardt>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HybridSimulatedAnnealing(const Sampler& sampler,\n                                 const
      Probability& probability,\n                                 Temperature temperature,\n
      \                                const Reannealing& reannealing = ReannealingTrivial(),\n
      \                                Real startTemperature = 200.0,\n                                 Real
      endTemperature = 0.01,\n                                 Size reAnnealSteps
      = 50,\n                                 ResetScheme resetScheme = ResetToBestPoint,\n
      \                                Size resetSteps = 150,\n                                 const
      ext::shared_ptr<OptimizationMethod>& localOptimizer =\n                                     ext::make_shared<LevenbergMarquardt>(),\n
      \                                LocalOptimizeScheme optimizeScheme = EveryBestPoint)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: Problem::reset
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:120,1
    - Dst: setProblem
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:121,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:122,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:123,1
    - Dst: EndCriteria::maxIterations
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:128,1
    - Dst: EndCriteria::maxStationaryStateIterations
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:129,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:137,1
    - Dst: sampler_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:143,1
    - Dst: Problem::value
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:146,1
    - Dst: probability_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:149,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:151,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:152,1
    - Dst: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:153,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:154,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:155,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:164,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:165,1
    - Dst: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:166,1
    - Dst: Problem::currentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:167,1
    - Dst: Problem::functionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:168,1
    - Dst: reannealing_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:186,1
    - Dst: temperature_
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:209,1
    - Dst: Problem::setCurrentValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:223,1
    - Dst: Problem::setFunctionValue
      Src: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp:224,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 2
    argNames:
    - P
    - endCriteria
    argTypes:
    - Problem
    - EndCriteria
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 226
    functionName: QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature,
      Reannealing>::minimize
    functionSourceFile: /src/quantlib/ql/experimental/math/hybridsimulatedannealing.hpp
    functionUses: 2
    functionsReached:
    - reannealing_
    - EndCriteria::maxStationaryStateIterations
    - Problem::reset
    - sampler_
    - Problem::setFunctionValue
    - setProblem
    - QuantLib::HybridSimulatedAnnealing<Sampler, Probability, Temperature, Reannealing>::minimize
    - probability_
    - Problem::functionValue
    - EndCriteria::maxIterations
    - Array::size
    - Problem::value
    - Problem::setCurrentValue
    - temperature_
    - Problem::currentValue
    linkageType: ''
    returnType: EndCriteria::Type
    signature: EndCriteria::Type HybridSimulatedAnnealing<Sampler, Probability, Temperature,
      Reannealing>::minimize(Problem &P, const EndCriteria &endCriteria)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:43,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:45,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:45,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:48,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:49,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:53,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:58,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:64,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:64,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:66,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:68,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:68,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:69,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:69,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:71,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:73,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:73,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:75,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:80,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:82,1
    - Dst: ext::make_shared<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:83,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::fixingDays
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:86,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:86,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:87,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:87,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:90,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:91,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:92,1
    - Dst: BlackIborCouponPricer::BlackIborCouponPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:92,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:94,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - swap
    - termStructure
    - volatilityStructure
    argTypes:
    - ext::shared_ptr<IrregularSwap>
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 102
    functionName: "HaganIrregularSwaptionEngine::Basket::Basket(\n        ext::shared_ptr<IrregularSwap>
      swap,\n        Handle<YieldTermStructure> termStructure,\n        Handle<SwaptionVolatilityStructure>
      volatilityStructure)"
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Leg::push_back
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::fixingDays
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - NPV
    - ext::shared_ptr::accrualEndDate
    - ext::shared_ptr::isInArrears
    - clear
    - fixedLeg
    - floatingLeg
    - ext::shared_ptr::setPricer
    - BlackIborCouponPricer::BlackIborCouponPricer
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::shared_ptr::rate
    - size
    - QuantLib::CashFlows::bps
    - DiscountingSwapEngine::DiscountingSwapEngine
    - push_back
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::make_shared<IborCoupon>
    - ext::shared_ptr::iborIndex
    - ext::make_shared<FixedRateCoupon>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - QL_REQUIRE
    - QuantLib::CashFlows::npv
    - std::move
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: void
    signature: "void HaganIrregularSwaptionEngine::Basket::Basket(\n        ext::shared_ptr<IrregularSwap>
      swap,\n        Handle<YieldTermStructure> termStructure,\n        Handle<SwaptionVolatilityStructure>
      volatilityStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:112,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:123,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:124,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:130,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:140,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:140,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:143,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:148,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:148,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:150,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:152,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:152,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:156,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:156,1
    - Dst: SVD::solveFor
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:163,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 164
    functionName: HaganIrregularSwaptionEngine::Basket::compute(Rate lambda) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - SVD::solveFor
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array HaganIrregularSwaptionEngine::Basket::compute(Rate lambda) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:173,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:174,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 177
    functionName: HaganIrregularSwaptionEngine::Basket::operator()(Rate lambda) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - Array::size
    - compute
    - type
    linkageType: ''
    returnType: Real
    signature: Real HaganIrregularSwaptionEngine::Basket::operator()(Rate lambda)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:184,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:185,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:186,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:189,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:192,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:193,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:194,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:199,1
    - Dst: ext::shared_ptr::fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:199,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:204,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:205,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 213
    functionName: HaganIrregularSwaptionEngine::Basket::component(Size i) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - floatingLeg
    - QuantLib::CashFlows::bps
    - ext::shared_ptr::fixedLeg
    - Period
    - type
    - ext::dynamic_pointer_cast<IborCoupon>
    - MakeVanillaSwap
    - ext::shared_ptr::iborIndex
    - startDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> HaganIrregularSwaptionEngine::Basket::component(Size
      i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:224,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:225,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:226,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - volatilityStructure
    - termStructure
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 228
    functionName: QuantLib::HaganIrregularSwaptionEngine::HaganIrregularSwaptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HaganIrregularSwaptionEngine::HaganIrregularSwaptionEngine(\n
      \       Handle<SwaptionVolatilityStructure> volatilityStructure,\n        Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:235,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:235,1
    - Dst: ext::shared_ptr::fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:243,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:244,1
    - Dst: ext::shared_ptr::floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:246,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:247,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:248,1
    - Dst: Leg::clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:253,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:257,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:258,1
    - Dst: ext::make_shared<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:260,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::fixingDays
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:263,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:263,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:267,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:268,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:269,1
    - Dst: BlackIborCouponPricer::BlackIborCouponPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:269,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:271,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:275,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:280,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:284,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:285,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:287,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:290,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:290,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:292,1
    - Dst: ext::make_shared<IrregularSwap>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:297,1
    - Dst: swap::type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:297,1
    - Dst: Bisection::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:313,1
    - Dst: Bisection::setLowerBound
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:314,1
    - Dst: Bisection::setUpperBound
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:315,1
    - Dst: Bisection::solve
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:316,1
    - Dst: QuantLib::HaganIrregularSwaptionEngine::HKPrice
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 326
    functionName: QuantLib::HaganIrregularSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Leg::push_back
    - ext::shared_ptr::dayCounter
    - swap::type
    - ext::shared_ptr::fixingDays
    - ext::shared_ptr::date
    - ext::shared_ptr::isInArrears
    - ext::shared_ptr::accrualEndDate
    - clear
    - Bisection::setMaxEvaluations
    - ext::shared_ptr::setPricer
    - BlackIborCouponPricer::BlackIborCouponPricer
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - QuantLib::HaganIrregularSwaptionEngine::HKPrice
    - Bisection::setUpperBound
    - ext::shared_ptr::nominal
    - ext::shared_ptr::referencePeriodEnd
    - ext::shared_ptr::rate
    - Bisection::setLowerBound
    - ext::make_shared<IrregularSwap>
    - Bisection::solve
    - QuantLib::CashFlows::bps
    - push_back
    - ext::shared_ptr::type
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::make_shared<IborCoupon>
    - ext::shared_ptr::iborIndex
    - ext::make_shared<FixedRateCoupon>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - QL_REQUIRE
    - ext::shared_ptr::floatingLeg
    - QuantLib::CashFlows::npv
    - ext::shared_ptr::fixedLeg
    - Leg::clear
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void HaganIrregularSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:338,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:338,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:342,1
    - Dst: BachelierSwaptionEngine::BachelierSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:343,1
    - Dst: weights
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:347,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:351,1
    - Dst: component
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:352,1
    - Dst: Swaption
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:353,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:354,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' basket'
    - ' exercise'
    argTypes:
    - Basket
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 359
    functionName: QuantLib::HaganIrregularSwaptionEngine::HKPrice
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 1
    functionsReached:
    - BachelierSwaptionEngine::BachelierSwaptionEngine
    - Swaption::NPV
    - component
    - Swaption
    - weights
    - volatilityType
    - Array::size
    - Swaption::setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real HaganIrregularSwaptionEngine::HKPrice(Basket& basket,\n                                               ext::shared_ptr<Exercise>&
      exercise) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:42,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:43,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:45,1
    - Dst: DiscountingSwapEngine::DiscountingSwapEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:45,1
    - Dst: setPricingEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:48,1
    - Dst: NPV
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:49,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:53,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:54,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:58,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:61,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:62,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:64,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:64,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:66,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:67,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:68,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:68,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:69,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:69,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:71,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:73,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:73,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:75,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:79,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:80,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:82,1
    - Dst: ext::make_shared<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:83,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:84,1
    - Dst: ext::shared_ptr::fixingDays
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:85,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:86,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:86,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:87,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:87,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:90,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:91,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:92,1
    - Dst: BlackIborCouponPricer::BlackIborCouponPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:92,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:94,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:98,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - swap
    - termStructure
    - volatilityStructure
    argTypes:
    - ext::shared_ptr<IrregularSwap>
    - Handle<YieldTermStructure>
    - Handle<SwaptionVolatilityStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 102
    functionName: "HaganIrregularSwaptionEngine::Basket::Basket(\n        ext::shared_ptr<IrregularSwap>
      swap,\n        Handle<YieldTermStructure> termStructure,\n        Handle<SwaptionVolatilityStructure>
      volatilityStructure)"
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Leg::push_back
    - ext::shared_ptr::dayCounter
    - ext::shared_ptr::fixingDays
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - NPV
    - ext::shared_ptr::accrualEndDate
    - ext::shared_ptr::isInArrears
    - clear
    - fixedLeg
    - floatingLeg
    - ext::shared_ptr::setPricer
    - BlackIborCouponPricer::BlackIborCouponPricer
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - ext::shared_ptr::referencePeriodEnd
    - ext::shared_ptr::rate
    - size
    - QuantLib::CashFlows::bps
    - DiscountingSwapEngine::DiscountingSwapEngine
    - push_back
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::make_shared<IborCoupon>
    - ext::shared_ptr::iborIndex
    - ext::make_shared<FixedRateCoupon>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - QL_REQUIRE
    - QuantLib::CashFlows::npv
    - std::move
    - setPricingEngine
    - ext::shared_ptr<PricingEngine>
    linkageType: ''
    returnType: void
    signature: "void HaganIrregularSwaptionEngine::Basket::Basket(\n        ext::shared_ptr<IrregularSwap>
      swap,\n        Handle<YieldTermStructure> termStructure,\n        Handle<SwaptionVolatilityStructure>
      volatilityStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:112,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:123,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:123,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:124,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:130,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:140,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:140,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:143,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:148,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:148,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:150,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:152,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:152,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:156,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:156,1
    - Dst: SVD::solveFor
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:163,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 164
    functionName: HaganIrregularSwaptionEngine::Basket::compute(Rate lambda) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - fixedLeg
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::nominal
    - ext::shared_ptr::rate
    - SVD::solveFor
    - QL_REQUIRE
    linkageType: ''
    returnType: Array
    signature: Array HaganIrregularSwaptionEngine::Basket::compute(Rate lambda) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:169,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:173,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:174,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - lambda
    argTypes:
    - Rate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 177
    functionName: HaganIrregularSwaptionEngine::Basket::operator()(Rate lambda) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - Integer
    - Array::size
    - compute
    - type
    linkageType: ''
    returnType: Real
    signature: Real HaganIrregularSwaptionEngine::Basket::operator()(Rate lambda)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:184,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:184,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:185,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:186,1
    - Dst: Period
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:189,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:192,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:193,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:194,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:199,1
    - Dst: ext::shared_ptr::fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:199,1
    - Dst: MakeVanillaSwap
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:204,1
    - Dst: type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:205,1
    - Dst: startDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - Size
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 213
    functionName: HaganIrregularSwaptionEngine::Basket::component(Size i) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - floatingLeg
    - QuantLib::CashFlows::bps
    - ext::shared_ptr::fixedLeg
    - Period
    - type
    - ext::dynamic_pointer_cast<IborCoupon>
    - MakeVanillaSwap
    - ext::shared_ptr::iborIndex
    - startDate
    - QL_REQUIRE
    linkageType: ''
    returnType: ext::shared_ptr<VanillaSwap>
    signature: ext::shared_ptr<VanillaSwap> HaganIrregularSwaptionEngine::Basket::component(Size
      i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:224,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:225,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:226,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - volatilityStructure
    - termStructure
    argTypes:
    - Handle<SwaptionVolatilityStructure>
    - Handle<YieldTermStructure>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 228
    functionName: QuantLib::HaganIrregularSwaptionEngine::HaganIrregularSwaptionEngine
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - std::move
    linkageType: ''
    returnType: void
    signature: "void HaganIrregularSwaptionEngine::HaganIrregularSwaptionEngine(\n
      \       Handle<SwaptionVolatilityStructure> volatilityStructure,\n        Handle<YieldTermStructure>
      termStructure)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:235,1
    - Dst: ext::shared_ptr::type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:235,1
    - Dst: ext::shared_ptr::fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:243,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:244,1
    - Dst: ext::shared_ptr::floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:246,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:247,1
    - Dst: QuantLib::CashFlows::bps
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:248,1
    - Dst: Leg::clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:253,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:257,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:258,1
    - Dst: ext::make_shared<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:260,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:261,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::fixingDays
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::iborIndex
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:262,1
    - Dst: ext::shared_ptr::gearing
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:263,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:263,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:264,1
    - Dst: ext::shared_ptr::isInArrears
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:267,1
    - Dst: ext::shared_ptr::setPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:268,1
    - Dst: ext::shared_ptr<FloatingRateCouponPricer>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:269,1
    - Dst: BlackIborCouponPricer::BlackIborCouponPricer
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:269,1
    - Dst: Leg::push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:271,1
    - Dst: QuantLib::CashFlows::npv
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:275,1
    - Dst: clear
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:280,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:284,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:285,1
    - Dst: ext::make_shared<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:287,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::rate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:288,1
    - Dst: ext::shared_ptr::dayCounter
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::accrualEndDate
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:289,1
    - Dst: ext::shared_ptr::referencePeriodStart
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:290,1
    - Dst: ext::shared_ptr::referencePeriodEnd
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:290,1
    - Dst: push_back
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:292,1
    - Dst: ext::make_shared<IrregularSwap>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:297,1
    - Dst: swap::type
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:297,1
    - Dst: Bisection::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:313,1
    - Dst: Bisection::setLowerBound
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:314,1
    - Dst: Bisection::setUpperBound
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:315,1
    - Dst: Bisection::solve
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:316,1
    - Dst: QuantLib::HaganIrregularSwaptionEngine::HKPrice
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 326
    functionName: QuantLib::HaganIrregularSwaptionEngine::calculate
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - Leg::push_back
    - ext::shared_ptr::dayCounter
    - swap::type
    - ext::shared_ptr::fixingDays
    - ext::shared_ptr::date
    - ext::shared_ptr::isInArrears
    - ext::shared_ptr::accrualEndDate
    - clear
    - Bisection::setMaxEvaluations
    - ext::shared_ptr::setPricer
    - BlackIborCouponPricer::BlackIborCouponPricer
    - ext::shared_ptr::referencePeriodStart
    - ext::shared_ptr::accrualStartDate
    - QuantLib::HaganIrregularSwaptionEngine::HKPrice
    - Bisection::setUpperBound
    - ext::shared_ptr::nominal
    - ext::shared_ptr::referencePeriodEnd
    - ext::shared_ptr::rate
    - Bisection::setLowerBound
    - ext::make_shared<IrregularSwap>
    - Bisection::solve
    - QuantLib::CashFlows::bps
    - push_back
    - ext::shared_ptr::type
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::make_shared<IborCoupon>
    - ext::shared_ptr::iborIndex
    - ext::make_shared<FixedRateCoupon>
    - ext::shared_ptr<FloatingRateCouponPricer>
    - QL_REQUIRE
    - ext::shared_ptr::floatingLeg
    - QuantLib::CashFlows::npv
    - ext::shared_ptr::fixedLeg
    - Leg::clear
    - ext::shared_ptr::gearing
    linkageType: ''
    returnType: void
    signature: void HaganIrregularSwaptionEngine::calculate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:338,1
    - Dst: volatilityType
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:338,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:342,1
    - Dst: BachelierSwaptionEngine::BachelierSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:343,1
    - Dst: weights
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:347,1
    - Dst: Array::size
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:351,1
    - Dst: component
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:352,1
    - Dst: Swaption
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:353,1
    - Dst: Swaption::setPricingEngine
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:354,1
    - Dst: Swaption::NPV
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ' basket'
    - ' exercise'
    argTypes:
    - Basket
    - ext::shared_ptr<Exercise>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 359
    functionName: QuantLib::HaganIrregularSwaptionEngine::HKPrice
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.cpp
    functionUses: 2
    functionsReached:
    - BachelierSwaptionEngine::BachelierSwaptionEngine
    - Swaption::NPV
    - component
    - Swaption
    - weights
    - volatilityType
    - Array::size
    - Swaption::setPricingEngine
    - ext::shared_ptr<PricingEngine>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: "Real HaganIrregularSwaptionEngine::HKPrice(Basket& basket,\n                                               ext::shared_ptr<Exercise>&
      exercise) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::IrregularSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IrregularSettlement::Type
    signature: IrregularSettlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IrregularSwaption::type
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::IrregularSwaption::type
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 1
    functionsReached:
    - QuantLib::IrregularSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IrregularSwap>
    signature: ext::shared_ptr<IrregularSwap> & underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::IrregularSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: QuantLib::IrregularSwaption::settlementType
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IrregularSettlement::Type
    signature: IrregularSettlement::Type settlementType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IrregularSwaption::type
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: QuantLib::IrregularSwaption::type
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 2
    functionsReached:
    - QuantLib::IrregularSwaption::type
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: '& underlyingSwap() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IrregularSwap>
    signature: ext::shared_ptr<IrregularSwap> & underlyingSwap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: QuantLib::IrregularSwaption::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::HaganIrregularSwaptionEngine::Basket::weights
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - compute
    linkageType: ''
    returnType: Array
    signature: Array weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: '& lambda() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::HaganIrregularSwaptionEngine::Basket::swap
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IrregularSwap>
    signature: ext::shared_ptr<IrregularSwap> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute
      Src: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: QuantLib::HaganIrregularSwaptionEngine::Basket::weights
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached:
    - compute
    linkageType: ''
    returnType: Array
    signature: Array weights() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: '& lambda() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real & lambda() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: QuantLib::HaganIrregularSwaptionEngine::Basket::swap
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/haganirregularswaptionengine.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<IrregularSwap>
    signature: ext::shared_ptr<IrregularSwap> swap() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:55,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:56,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: BlackSwaptionEngine::BlackSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    argTypes:
    - IrregularSwaption
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::IrregularImpliedVolHelper::IrregularImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - std::move
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackSwaptionEngine::BlackSwaptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void IrregularImpliedVolHelper::IrregularImpliedVolHelper(\n            const
      IrregularSwaption& swaption,\n            Handle<YieldTermStructure> discountCurve,\n
      \           Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:68,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:69,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: IrregularImpliedVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:76,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:77,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:78,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionName: QuantLib::IrregularImpliedVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::derivative(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:55,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:56,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: BlackSwaptionEngine::BlackSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    argTypes:
    - IrregularSwaption
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::IrregularImpliedVolHelper::IrregularImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - std::move
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackSwaptionEngine::BlackSwaptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void IrregularImpliedVolHelper::IrregularImpliedVolHelper(\n            const
      IrregularSwaption& swaption,\n            Handle<YieldTermStructure> discountCurve,\n
      \           Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:68,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:69,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: IrregularImpliedVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:76,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:77,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:78,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionName: QuantLib::IrregularImpliedVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:95,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - IrregularSettlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: "& operator<<(std::ostream& out,\n                             IrregularSettlement::Type
      t)"
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             IrregularSettlement::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - swap
    - ' exercise'
    - delivery
    argTypes:
    - ext::shared_ptr<IrregularSwap>
    - ext::shared_ptr<Exercise>
    - IrregularSettlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::IrregularSwaption::IrregularSwaption
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IrregularSwaption::IrregularSwaption(ext::shared_ptr<IrregularSwap>
      swap,\n                                         const ext::shared_ptr<Exercise>&
      exercise,\n                                         IrregularSettlement::Type
      delivery)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:108,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::IrregularSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool IrregularSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IrregularSwaption::setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:113,1
    - Dst: dynamic_cast<IrregularSwaption::arguments*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionName: QuantLib::IrregularSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::IrregularSwaption::setupArguments
    - dynamic_cast<IrregularSwaption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwaption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: IrregularSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:139,1
    - Dst: QuantLib::IrregularSwaption::isExpired
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:139,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:144,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - targetValue
    - ' discountCurve'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 146
    functionName: QuantLib::IrregularSwaption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - calculate
    - QuantLib::IrregularSwaption::isExpired
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility IrregularSwaption::impliedVolatility(\n                              Real
      targetValue,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              Volatility guess,\n                              Real
      accuracy,\n                              Natural maxEvaluations,\n                              Volatility
      minVol,\n                              Volatility maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:55,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:56,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: BlackSwaptionEngine::BlackSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    argTypes:
    - IrregularSwaption
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::IrregularImpliedVolHelper::IrregularImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - std::move
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackSwaptionEngine::BlackSwaptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void IrregularImpliedVolHelper::IrregularImpliedVolHelper(\n            const
      IrregularSwaption& swaption,\n            Handle<YieldTermStructure> discountCurve,\n
      \           Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:68,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:69,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: IrregularImpliedVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:76,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:77,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:78,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionName: QuantLib::IrregularImpliedVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::derivative(Volatility x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:55,1
    - Dst: ext::make_shared<SimpleQuote>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:56,1
    - Dst: ext::shared_ptr<PricingEngine>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: BlackSwaptionEngine::BlackSwaptionEngine
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:59,1
    - Dst: setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: getArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:61,1
    - Dst: dynamic_cast<const Instrument::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    - Dst: getResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' swaption'
    - discountCurve
    - targetValue
    argTypes:
    - IrregularSwaption
    - Handle<YieldTermStructure>
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: QuantLib::IrregularImpliedVolHelper::IrregularImpliedVolHelper
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - getResults
    - std::move
    - getArguments
    - dynamic_cast<const Instrument::results*>
    - BlackSwaptionEngine::BlackSwaptionEngine
    - ext::shared_ptr<PricingEngine>
    - setupArguments
    - ext::make_shared<SimpleQuote>
    linkageType: ''
    returnType: void
    signature: "void IrregularImpliedVolHelper::IrregularImpliedVolHelper(\n            const
      IrregularSwaption& swaption,\n            Handle<YieldTermStructure> discountCurve,\n
      \           Real targetValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:68,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:69,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: IrregularImpliedVolHelper::operator()(Volatility x) const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - calculate
    - setValue
    - value
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::operator()(Volatility x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:76,1
    - Dst: setValue
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:77,1
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:78,1
    - Dst: additionalResults::find
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:80,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: additionalResults::end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:81,1
    - Dst: ext::any_cast<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionName: QuantLib::IrregularImpliedVolHelper::derivative
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - additionalResults::end
    - calculate
    - setValue
    - value
    - additionalResults::find
    - ext::any_cast<Real>
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularImpliedVolHelper::derivative(Volatility x) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:95,1
    - Dst: Integer
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' out'
    - t
    argTypes:
    - std::ostream
    - IrregularSettlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 97
    functionName: "& operator<<(std::ostream& out,\n                             IrregularSettlement::Type
      t)"
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - Integer
    linkageType: ''
    returnType: std::ostream
    signature: "std::ostream & operator<<(std::ostream& out,\n                             IrregularSettlement::Type
      t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<Payoff>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:102,1
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:102,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - swap
    - ' exercise'
    - delivery
    argTypes:
    - ext::shared_ptr<IrregularSwap>
    - ext::shared_ptr<Exercise>
    - IrregularSettlement::Type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: QuantLib::IrregularSwaption::IrregularSwaption
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - registerWith
    - ext::shared_ptr<Payoff>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void IrregularSwaption::IrregularSwaption(ext::shared_ptr<IrregularSwap>
      swap,\n                                         const ext::shared_ptr<Exercise>&
      exercise,\n                                         IrregularSettlement::Type
      delivery)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::detail::simple_event::simple_event
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:108,1
    - Dst: dates
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: QuantLib::IrregularSwaption::isExpired
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::detail::simple_event::simple_event
    - dates
    linkageType: ''
    returnType: bool
    signature: bool IrregularSwaption::isExpired() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::IrregularSwaption::setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:113,1
    - Dst: dynamic_cast<IrregularSwaption::arguments*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:115,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionName: QuantLib::IrregularSwaption::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 2
    functionsReached:
    - QuantLib::IrregularSwaption::setupArguments
    - dynamic_cast<IrregularSwaption::arguments*>
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwaption::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:125,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:126,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: IrregularSwaption::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwaption::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:139,1
    - Dst: QuantLib::IrregularSwaption::isExpired
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:139,1
    - Dst: NewtonSafe::setMaxEvaluations
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:144,1
    - Dst: NewtonSafe::solve
      Src: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - targetValue
    - ' discountCurve'
    - guess
    - accuracy
    - maxEvaluations
    - minVol
    - maxVol
    argTypes:
    - Real
    - Handle<YieldTermStructure>
    - Volatility
    - Real
    - Natural
    - Volatility
    - Volatility
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 146
    functionName: QuantLib::IrregularSwaption::impliedVolatility
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswaption.cpp
    functionUses: 0
    functionsReached:
    - NewtonSafe::setMaxEvaluations
    - calculate
    - QuantLib::IrregularSwaption::isExpired
    - NewtonSafe::solve
    - QL_REQUIRE
    linkageType: ''
    returnType: Volatility
    signature: "Volatility IrregularSwaption::impliedVolatility(\n                              Real
      targetValue,\n                              const Handle<YieldTermStructure>&
      discountCurve,\n                              Volatility guess,\n                              Real
      accuracy,\n                              Natural maxEvaluations,\n                              Volatility
      minVol,\n                              Volatility maxVol) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::IrregularSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::IrregularSwap::type
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type IrregularSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: '& IrregularSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & IrregularSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: '& IrregularSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & IrregularSwap::floatingLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: QuantLib::IrregularSwap::arguments::arguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void arguments()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: QuantLib::IrregularSwap::type
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Swap::Type
    signature: Swap::Type IrregularSwap::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: '& IrregularSwap::fixedLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & IrregularSwap::fixedLeg() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: '& IrregularSwap::floatingLeg() const'
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Leg
    signature: Leg & IrregularSwap::floatingLeg() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:64,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - type
    - ' fixLeg'
    - ' floatLeg'
    argTypes:
    - Type
    - Leg
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 66
    functionName: QuantLib::IrregularSwap::IrregularSwap
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - registerWith
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void IrregularSwap::IrregularSwap(\n                     Type type,\n
      \                    const Leg& fixLeg,\n                     const Leg& floatLeg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:73,1
    - Dst: dynamic_cast<IrregularSwap::arguments*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:75,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:84,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:86,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:90,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:92,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:94,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:95,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:96,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:97,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:101,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:104,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:105,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:106,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:109,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:111,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:113,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:114,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:116,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:117,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:118,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:119,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:124,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 128
    functionName: QuantLib::IrregularSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - std::vector<Spread>
    - fixedLeg
    - floatingLeg
    - ext::shared_ptr::accrualStartDate
    - std::vector<Date>
    - ext::shared_ptr::nominal
    - size
    - dynamic_cast<IrregularSwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::amount
    - std::vector<Time>
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:133,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::IrregularSwap::fairRate
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IrregularSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:139,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::IrregularSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread IrregularSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:145,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::IrregularSwap::fixedLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::fixedLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: QuantLib::IrregularSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:157,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: QuantLib::IrregularSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::IrregularSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:168,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:170,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: QuantLib::IrregularSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:175,1
    - Dst: dynamic_cast<const IrregularSwap::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:177,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:182,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:183,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:186,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:188,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:191,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:193,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 196
    functionName: QuantLib::IrregularSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - dynamic_cast<const IrregularSwap::results*>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 223
    functionName: IrregularSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:226,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:227,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: IrregularSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::results::reset()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: QL_FAIL
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:51,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:57,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:57,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:58,1
    - Dst: begin
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:63,1
    - Dst: end
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:63,1
    - Dst: registerWith
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:64,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - type
    - ' fixLeg'
    - ' floatLeg'
    argTypes:
    - Type
    - Leg
    - Leg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 66
    functionName: QuantLib::IrregularSwap::IrregularSwap
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - QL_FAIL
    - registerWith
    - end
    - begin
    linkageType: ''
    returnType: void
    signature: "void IrregularSwap::IrregularSwap(\n                     Type type,\n
      \                    const Leg& fixLeg,\n                     const Leg& floatLeg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupArguments
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:73,1
    - Dst: dynamic_cast<IrregularSwap::arguments*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:75,1
    - Dst: fixedLeg
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:84,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:86,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:86,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:87,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:90,1
    - Dst: ext::dynamic_pointer_cast<FixedRateCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:92,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:94,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:95,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:96,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:97,1
    - Dst: floatingLeg
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:101,1
    - Dst: std::vector<Date>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:104,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:104,1
    - Dst: std::vector<Time>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:105,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:105,1
    - Dst: std::vector<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:106,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:106,1
    - Dst: std::vector<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:107,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:109,1
    - Dst: ext::dynamic_pointer_cast<IborCoupon>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:111,1
    - Dst: ext::shared_ptr::accrualStartDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:113,1
    - Dst: ext::shared_ptr::date
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:114,1
    - Dst: ext::shared_ptr::fixingDate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:116,1
    - Dst: ext::shared_ptr::accrualPeriod
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:117,1
    - Dst: ext::shared_ptr::spread
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:118,1
    - Dst: ext::shared_ptr::nominal
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:119,1
    - Dst: ext::shared_ptr::amount
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:122,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:124,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - args
    argTypes:
    - PricingEngine::arguments*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 128
    functionName: QuantLib::IrregularSwap::setupArguments
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - ext::dynamic_pointer_cast<FixedRateCoupon>
    - ext::shared_ptr::accrualPeriod
    - ext::shared_ptr::spread
    - ext::shared_ptr::date
    - std::vector<Spread>
    - fixedLeg
    - floatingLeg
    - ext::shared_ptr::accrualStartDate
    - std::vector<Date>
    - ext::shared_ptr::nominal
    - size
    - dynamic_cast<IrregularSwap::arguments*>
    - QuantLib::CPISwap::setupArguments
    - Null<Real>
    - std::vector<Real>
    - ext::dynamic_pointer_cast<IborCoupon>
    - ext::shared_ptr::amount
    - std::vector<Time>
    - ext::shared_ptr::fixingDate
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::setupArguments(PricingEngine::arguments* args)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:132,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:133,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: QuantLib::IrregularSwap::fairRate
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Rate
    signature: Rate IrregularSwap::fairRate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:138,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:139,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: QuantLib::IrregularSwap::fairSpread
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Spread>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Spread
    signature: Spread IrregularSwap::fairSpread() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:144,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:145,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionName: QuantLib::IrregularSwap::fixedLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::fixedLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:150,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:151,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionName: QuantLib::IrregularSwap::floatingLegBPS
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::floatingLegBPS() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:156,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:157,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: QuantLib::IrregularSwap::fixedLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::fixedLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: calculate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:162,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:163,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: QuantLib::IrregularSwap::floatingLegNPV
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Real>
    - calculate
    - QL_REQUIRE
    linkageType: ''
    returnType: Real
    signature: Real IrregularSwap::floatingLegNPV() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::setupExpired
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:168,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:170,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: QuantLib::IrregularSwap::setupExpired
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Spread>
    - QuantLib::CPISwap::setupExpired
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::setupExpired() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::CPISwap::fetchResults
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:175,1
    - Dst: dynamic_cast<const IrregularSwap::results*>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:177,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:182,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:183,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:186,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:188,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:191,1
    - Dst: Null<Real>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:193,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - r
    argTypes:
    - PricingEngine::results*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 196
    functionName: QuantLib::IrregularSwap::fetchResults
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - Null<Real>
    - dynamic_cast<const IrregularSwap::results*>
    - Null<Spread>
    - QuantLib::CPISwap::fetchResults
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::fetchResults(const PricingEngine::results* r) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::Option::arguments::validate
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:200,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:202,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:205,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:208,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:211,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:214,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:217,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    - Dst: size
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 223
    functionName: IrregularSwap::arguments::validate() const
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - size
    - QuantLib::Option::arguments::validate
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::arguments::validate() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::VarianceSwap::results::reset
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:226,1
    - Dst: Null<Rate>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:227,1
    - Dst: Null<Spread>
      Src: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: IrregularSwap::results::reset()
    functionSourceFile: /src/quantlib/ql/experimental/swaptions/irregularswap.cpp
    functionUses: 0
    functionsReached:
    - Null<Rate>
    - QuantLib::VarianceSwap::results::reset
    - Null<Spread>
    linkageType: ''
    returnType: void
    signature: void IrregularSwap::results::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:40,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 17
    argNames:
    - x0
    - alpha
    - beta
    - gamma
    - delta
    - eps
    - zeta
    - d
    - k
    - tau
    - sig2
    - a
    - b
    - theta1
    - theta2
    - theta3
    - psi
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::GemanRoncoroniProcess::GemanRoncoroniProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - ext::shared_ptr<discretization>
    linkageType: ''
    returnType: void
    signature: "void GemanRoncoroniProcess::GemanRoncoroniProcess(\n                                      Real
      x0, \n                                      Real alpha, Real beta, \n                                      Real
      gamma, Real delta, \n                                      Real eps, Real zeta,
      Real d, \n                                      Real k,  Real tau,\n                                      Real
      sig2, Real a, Real b,\n                                      Real theta1, Real
      theta2, Real theta3,\n                                      Real psi)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::GemanRoncoroniProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:57,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:58,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:59,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::GemanRoncoroniProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sin
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    - Dst: squared
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::GemanRoncoroniProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::diffusion(Time t, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:70,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t0
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::GemanRoncoroniProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::cos
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::stdDeviation(Time t0, Real /*x0*/, Time
      dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<urng_type>
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:80,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:83,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:84,1
    - Dst: QuantLib::GemanRoncoroniProcess::evolve
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: QuantLib::GemanRoncoroniProcess::evolve
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 1
    functionsReached:
    - ext::make_shared<urng_type>
    - next
    - QuantLib::GemanRoncoroniProcess::evolve
    linkageType: ''
    returnType: Real
    signature: "Real GemanRoncoroniProcess::evolve(Time t0, Real x0, \n                                       Time
      dt, Real dw) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:93,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:94,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:97,1
    - Dst: QuantLib::StochasticProcess1D::evolve
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:100,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:103,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:103,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - t0
    - x0
    - dt
    - dw
    - ' du'
    argTypes:
    - Time
    - Real
    - Time
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 115
    functionName: QuantLib::GemanRoncoroniProcess::evolve
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 1
    functionsReached:
    - std::exp
    - std::log
    - std::sin
    - QuantLib::StochasticProcess1D::evolve
    - std::fabs
    - std::cos
    linkageType: ''
    returnType: Real
    signature: "Real GemanRoncoroniProcess::evolve(Time t0, Real x0, Time dt,\n                                       Real
      dw, const Array& du) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ext::shared_ptr<discretization>
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:40,1
    - Dst: EulerDiscretization::EulerDiscretization
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 17
    argNames:
    - x0
    - alpha
    - beta
    - gamma
    - delta
    - eps
    - zeta
    - d
    - k
    - tau
    - sig2
    - a
    - b
    - theta1
    - theta2
    - theta3
    - psi
    argTypes:
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 50
    functionName: QuantLib::GemanRoncoroniProcess::GemanRoncoroniProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - EulerDiscretization::EulerDiscretization
    - ext::shared_ptr<discretization>
    linkageType: ''
    returnType: void
    signature: "void GemanRoncoroniProcess::GemanRoncoroniProcess(\n                                      Real
      x0, \n                                      Real alpha, Real beta, \n                                      Real
      gamma, Real delta, \n                                      Real eps, Real zeta,
      Real d, \n                                      Real k,  Real tau,\n                                      Real
      sig2, Real a, Real b,\n                                      Real theta1, Real
      theta2, Real theta3,\n                                      Real psi)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: QuantLib::GemanRoncoroniProcess::x0
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::x0() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:57,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:58,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:59,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: QuantLib::GemanRoncoroniProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sin
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::drift(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    - Dst: squared
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: QuantLib::GemanRoncoroniProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::cos
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::diffusion(Time t, Real /*x*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: squared
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:70,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:70,1
    - Dst: std::sqrt
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:72,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t0
    - dt
    argTypes:
    - Time
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: QuantLib::GemanRoncoroniProcess::stdDeviation
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 0
    functionsReached:
    - std::exp
    - std::cos
    - std::sqrt
    - squared
    linkageType: ''
    returnType: Real
    signature: Real GemanRoncoroniProcess::stdDeviation(Time t0, Real /*x0*/, Time
      dt) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ext::make_shared<urng_type>
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:80,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:83,1
    - Dst: next
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:84,1
    - Dst: QuantLib::GemanRoncoroniProcess::evolve
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - x0
    - dt
    - dw
    argTypes:
    - Time
    - Real
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionName: QuantLib::GemanRoncoroniProcess::evolve
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 2
    functionsReached:
    - ext::make_shared<urng_type>
    - next
    - QuantLib::GemanRoncoroniProcess::evolve
    linkageType: ''
    returnType: Real
    signature: "Real GemanRoncoroniProcess::evolve(Time t0, Real x0, \n                                       Time
      dt, Real dw) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:93,1
    - Dst: std::cos
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:94,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:97,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:97,1
    - Dst: QuantLib::StochasticProcess1D::evolve
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:100,1
    - Dst: std::fabs
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:103,1
    - Dst: std::sin
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:103,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - t0
    - x0
    - dt
    - dw
    - ' du'
    argTypes:
    - Time
    - Real
    - Time
    - Real
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 115
    functionName: QuantLib::GemanRoncoroniProcess::evolve
    functionSourceFile: /src/quantlib/ql/experimental/processes/gemanroncoroniprocess.cpp
    functionUses: 2
    functionsReached:
    - std::exp
    - std::log
    - std::sin
    - QuantLib::StochasticProcess1D::evolve
    - std::fabs
    - std::cos
    linkageType: ''
    returnType: Real
    signature: "Real GemanRoncoroniProcess::evolve(Time t0, Real x0, Time dt,\n                                       Real
      dw, const Array& du) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' x0'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - lowerTimeBorderForStressTest
    - upperTimeBorderForStressTest
    - lowerAssetBorderForStressTest
    - upperAssetBorderForStressTest
    - stressLevel
    - ' disc'
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Time
    - Time
    - Real
    - Real
    - Real
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 41
    functionName: QuantLib::VegaStressedBlackScholesProcess::VegaStressedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VegaStressedBlackScholesProcess::VegaStressedBlackScholesProcess(\n
      \            const Handle<Quote>& x0,\n             const Handle<YieldTermStructure>&
      dividendTS,\n             const Handle<YieldTermStructure>& riskFreeTS,\n             const
      Handle<BlackVolTermStructure>& blackVolTS,\n             Time lowerTimeBorderForStressTest,\n
      \            Time upperTimeBorderForStressTest,\n             Real lowerAssetBorderForStressTest,\n
      \            Real upperAssetBorderForStressTest,\n             Real stressLevel,\n
      \            const ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::VegaStressedBlackScholesProcess::getLowerTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getLowerTimeBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::VegaStressedBlackScholesProcess::getUpperTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getUpperTimeBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::VegaStressedBlackScholesProcess::getLowerAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getLowerAssetBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::VegaStressedBlackScholesProcess::getUpperAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getUpperAssetBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::VegaStressedBlackScholesProcess::getStressLevel
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getStressLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - LTB
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::VegaStressedBlackScholesProcess::setLowerTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setLowerTimeBorderForStressTest(Time
      LTB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - UTB
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::VegaStressedBlackScholesProcess::setUpperTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setUpperTimeBorderForStressTest(Time
      UTB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - LAB
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::VegaStressedBlackScholesProcess::setLowerAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setLowerAssetBorderForStressTest(Real
      LAB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - UBA
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::VegaStressedBlackScholesProcess::setUpperAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setUpperAssetBorderForStressTest(Real
      UBA)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - SL
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::VegaStressedBlackScholesProcess::setStressLevel
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setStressLevel(Real SL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:104,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 108
    functionName: QuantLib::VegaStressedBlackScholesProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 10
    argNames:
    - ' x0'
    - ' dividendTS'
    - ' riskFreeTS'
    - ' blackVolTS'
    - lowerTimeBorderForStressTest
    - upperTimeBorderForStressTest
    - lowerAssetBorderForStressTest
    - upperAssetBorderForStressTest
    - stressLevel
    - ' disc'
    argTypes:
    - Handle<Quote>
    - Handle<YieldTermStructure>
    - Handle<YieldTermStructure>
    - Handle<BlackVolTermStructure>
    - Time
    - Time
    - Real
    - Real
    - Real
    - ext::shared_ptr<discretization>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 41
    functionName: QuantLib::VegaStressedBlackScholesProcess::VegaStressedBlackScholesProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void VegaStressedBlackScholesProcess::VegaStressedBlackScholesProcess(\n
      \            const Handle<Quote>& x0,\n             const Handle<YieldTermStructure>&
      dividendTS,\n             const Handle<YieldTermStructure>& riskFreeTS,\n             const
      Handle<BlackVolTermStructure>& blackVolTS,\n             Time lowerTimeBorderForStressTest,\n
      \            Time upperTimeBorderForStressTest,\n             Real lowerAssetBorderForStressTest,\n
      \            Real upperAssetBorderForStressTest,\n             Real stressLevel,\n
      \            const ext::shared_ptr<discretization>& disc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::VegaStressedBlackScholesProcess::getLowerTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getLowerTimeBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: QuantLib::VegaStressedBlackScholesProcess::getUpperTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getUpperTimeBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::VegaStressedBlackScholesProcess::getLowerAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getLowerAssetBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: QuantLib::VegaStressedBlackScholesProcess::getUpperAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getUpperAssetBorderForStressTest()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: QuantLib::VegaStressedBlackScholesProcess::getStressLevel
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::getStressLevel() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - LTB
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: QuantLib::VegaStressedBlackScholesProcess::setLowerTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setLowerTimeBorderForStressTest(Time
      LTB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - UTB
    argTypes:
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: QuantLib::VegaStressedBlackScholesProcess::setUpperTimeBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setUpperTimeBorderForStressTest(Time
      UTB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - LAB
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: QuantLib::VegaStressedBlackScholesProcess::setLowerAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setLowerAssetBorderForStressTest(Real
      LAB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - UBA
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: QuantLib::VegaStressedBlackScholesProcess::setUpperAssetBorderForStressTest
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setUpperAssetBorderForStressTest(Real
      UBA)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - SL
    argTypes:
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: QuantLib::VegaStressedBlackScholesProcess::setStressLevel
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - update
    linkageType: ''
    returnType: void
    signature: void VegaStressedBlackScholesProcess::setStressLevel(Real SL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:104,1
    - Dst: QuantLib::GeneralizedBlackScholesProcess::diffusion
      Src: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - t
    - x
    argTypes:
    - Time
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 108
    functionName: QuantLib::VegaStressedBlackScholesProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/processes/vegastressedblackscholesprocess.cpp
    functionUses: 0
    functionsReached:
    - QuantLib::GeneralizedBlackScholesProcess::diffusion
    linkageType: ''
    returnType: Real
    signature: Real VegaStressedBlackScholesProcess::diffusion(Time t, Real x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:37,1
    - Dst: QL_REQUIRE
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - process
    - Y0
    - beta
    - jumpIntensity
    - eta
    argTypes:
    - ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    - Real
    - Real
    - Real
    - Real
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: QuantLib::ExtOUWithJumpsProcess::ExtOUWithJumpsProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - QL_REQUIRE
    linkageType: ''
    returnType: void
    signature: "void ExtOUWithJumpsProcess::ExtOUWithJumpsProcess(\n        ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
      process,\n        Real Y0,\n        Real beta,\n        Real jumpIntensity,\n
      \       Real eta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: QuantLib::ExtOUWithJumpsProcess::size
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExtOUWithJumpsProcess::size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: QuantLib::ExtOUWithJumpsProcess::factors
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Size
    signature: Size ExtOUWithJumpsProcess::factors() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: QuantLib::ExtOUWithJumpsProcess::getExtendedOrnsteinUhlenbeckProcess
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess>
    signature: ext::shared_ptr<ExtendedOrnsteinUhlenbeckProcess> ExtOUWithJumpsProcess::getExtendedOrnsteinUhlenbeckProcess()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: QuantLib::ExtOUWithJumpsProcess::beta
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtOUWithJumpsProcess::beta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: QuantLib::ExtOUWithJumpsProcess::jumpIntensity
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtOUWithJumpsProcess::jumpIntensity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: QuantLib::ExtOUWithJumpsProcess::eta
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Real
    signature: Real ExtOUWithJumpsProcess::eta() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: x0
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 66
    functionName: QuantLib::ExtOUWithJumpsProcess::initialValues
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 0
    functionsReached:
    - x0
    linkageType: ''
    returnType: Array
    signature: Array ExtOUWithJumpsProcess::initialValues() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtOUWithJumpsProcess::drift
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: QuantLib::ExtOUWithJumpsProcess::drift
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtOUWithJumpsProcess::drift
    linkageType: ''
    returnType: Array
    signature: Array ExtOUWithJumpsProcess::drift(Time t, const Array& x) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtOUWithJumpsProcess::diffusion
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - t
    - ' x'
    argTypes:
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: QuantLib::ExtOUWithJumpsProcess::diffusion
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtOUWithJumpsProcess::diffusion
    linkageType: ''
    returnType: Matrix
    signature: Matrix ExtOUWithJumpsProcess::diffusion(Time t, const Array& x) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QuantLib::ExtOUWithJumpsProcess::evolve
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:86,1
    - Dst: std::exp
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:87,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:89,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:89,1
    - Dst: cumNormalDist_
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:89,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:92,1
    - Dst: std::max
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:94,1
    - Dst: std::min
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:94,1
    - Dst: cumNormalDist_
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:94,1
    - Dst: std::log
      Src: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - t0
    - ' x0'
    - dt
    - ' dw'
    argTypes:
    - Time
    - Array
    - Time
    - Array
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 100
    functionName: QuantLib::ExtOUWithJumpsProcess::evolve
    functionSourceFile: /src/quantlib/ql/experimental/processes/extouwithjumpsprocess.cpp
    functionUses: 1
    functionsReached:
    - QuantLib::ExtOUWithJumpsProcess::evolve
    - std::exp
    - std::log
    - std::max
    - cumNormalDist_
    - std::min
    link